kubernetes中的静态POD

我们都知道,pod是kubelet创建的,那么创建的流程是什么呐?

此时我们需要了解k8s中config.yaml配置文件了:

他的存放路径: 【/var/lib/kubelet/config.yaml】

一、查看静态pod的路径

K8S@k8s-master \~\]$ sudo cat /var/lib/kubelet/config.yaml apiVersion: kubelet.config.k8s.io/v1beta1 .... shutdownGracePeriod: 0s shutdownGracePeriodCriticalPods: 0s **staticPodPath: /etc/kubernetes/manifests** streamingConnectionIdleTimeout: 0s syncFrequency: 0s volumeStatsAggPeriod: 0s

我们发现,这里的名称都是我们的k8s集群中master节点的组件

K8S@k8s-master \~\]$ sudo ls -l /etc/kubernetes/manifests/ 总用量 16 -rw-------. 1 root root 2246 2月 20 2023 etcd.yaml -rw------- 1 root root 3382 5月 5 2023 kube-apiserver.yaml -rw-------. 1 root root 2877 2月 20 2023 kube-controller-manager.yaml -rw-------. 1 root root 1464 2月 20 2023 kube-scheduler.yaml

查看我们发现这些都是pod资源文件

K8S@k8s-master \~\]$ sudo cat /etc/kubernetes/manifests/etcd.yaml apiVersion: v1 kind: Pod metadata: ..... \[K8S@k8s-master \~\]$ sudo cat /etc/kubernetes/manifests/kube-apiserver.yaml apiVersion: v1 kind: Pod metadata: ..... \[K8S@k8s-master \~\]$ sudo cat /etc/kubernetes/manifests/kube-controller-manager.yaml apiVersion: v1 kind: Pod metadata: ..... \[K8S@k8s-master \~\]$ sudo cat /etc/kubernetes/manifests/kube-scheduler.yaml apiVersion: v1 kind: Pod metadata: .....

所谓的静态pod,就是kubelet自己监视的目录,如果这个目录有pod资源清单,则会在当前节点自动创建pod,

不需要手动kubectl apply -f xxx.yaml,就是我们只要把pod的资源文件移到**/etc/kubernetes/manifests/**目录下,就是自动创建

静态pod的创建,只在当前节点上创建,pod的名称会自动给你加一个当前节点名称后缀

操作案例

root@master study-demo\]# cat firstpod.yml apiVersion: v1 kind: Pod metadata: name: first-pod labels: app: demo spec: containers: - name: busybox-container image: nginx \[root@master study-demo\]# kubectl get pod No resources found in default namespace. \[root@master study-demo\]# cp firstpod.yml **/etc/kubernetes/manifests/** #拷贝到pod静态资源文件中 \[root@master study-demo\]# ls -l /etc/kubernetes/manifests/ 总用量 20 -rw------- 1 root root 2256 3月 29 16:03 etcd.yaml -rw-r--r-- 1 root root 143 4月 18 16:39 firstpod.yml -rw------- 1 root root 3381 3月 29 16:03 kube-apiserver.yaml -rw------- 1 root root 2877 3月 29 16:03 kube-controller-manager.yaml -rw------- 1 root root 1464 3月 29 16:03 kube-scheduler.yaml \[root@master study-demo\]# kubectl get pod #我们发现重启了 NAME READY STATUS RESTARTS AGE first-pod-master 1/1 Running 0 22s \[root@master study-demo\]# kubectl get pod -o wide NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READINESS GATES first-pod-master 1/1 Running 0 28s 10.244.0.24 master \ \

相关推荐
z***56569 分钟前
Nginx(搭建高可用集群)
运维·nginx·firefox
小糖学代码22 分钟前
网络:4.1加餐 - 进程间关系与守护进程
linux·网络
m***667341 分钟前
【Sql Server】sql server 2019设置远程访问,外网服务器需要设置好安全组入方向规则
运维·服务器·安全
天草二十六_简村人1 小时前
docker安装index-tts,实现文本转语音的本地私有化部署
运维·docker·ai·容器·ai编程
百***86461 小时前
springboot整合libreoffice(两种方式,使用本地和远程的libreoffice);docker中同时部署应用和libreoffice
spring boot·后端·docker
观望过往1 小时前
Docker 全面技术指南:从基础概念到企业级应用实践
运维·docker·容器
小小测试开发1 小时前
JMeter高级用法全解析:从性能测试到自动化监控,解锁压测工具的隐藏实力
运维·jmeter·自动化
小兔薯了1 小时前
6. Linux 硬盘分区管理
linux·运维·服务器
努力的Andy1 小时前
Linux 云服务器新增硬盘:从分区、格式化到挂载的完整指南
linux·运维·服务器
裤裤兔1 小时前
linux卡在启动界面的解决办法
linux·运维·服务器·centos·centos7·linux系统