当前位置:网站首页>Kubernetes static pod (static POD)
Kubernetes static pod (static POD)
2022-07-08 00:35:00 【Zhang quandan, Foxconn quality inspector】

The stack etcd colony : There are... In a cluster 3 individual master, Every master There's... In it etcd This pod, This pod Usually by kubelet Self management .
kubelet Will read one config, This config Defined static pod path,kubelet Its function is to maintain pod Life cycle of , He has several ways to load pod List of , One way is to listen api server, Another way is that it will scan the local static pod path, Scan this directory , It needs to see if there is any pod detailed list , If any, load directly .
This pattern is etcd Will be in every master Deployment above , It is deployed statically .
Stackable benefits :apiserver and etcd Are tightly bound , all apiserver Your request is in loopback Send to etcd, The read operation can be read directly , The read operation does not need to go through master, The read operation does not need to be called through the network , I left here , Secondly, these components are put together for management and maintenance , Data can be read without network calls . also etcd It's a heavy plate , It's right disk io There are requirements , Other applications are not so demanding , So it is also ok Of .
What is? Static Pod
static state Pod On the specified node by kubelet Daemons manage directly , Unwanted API The server regulatory . With... Managed by the control plane Pod( for example ,Deployment) Different ;kubelet Monitor each static state Pod( Restart after it crashes ).
static state Pod Will always be bound to a specified node Kubelet.
kubelet Will try to pass Kubernetes API The server is for each static server Pod Automatically create a Mirror image Pod. This means that the static running on the node Pod Yes API Services are visible , But not through API Server to control . Pod The name will use the node host name starting with a hyphen as the suffix .
The most common Static Pod
- etcd
- kube-apiserver
- kube-controller-manager
- kube-scheduler
How to create Static Pod
Static files
By looking at kubelet Of service The file shows :

Running kubelet The configured directory will be scanned regularly ( For example, in the example /etc/kubernetes/manifests Catalog ) Changes in , And according to the document / Vanished Pod To add / Delete Pod.
Http request
kubelet Periodically from –manifest-url= Download at the address specified by the parameter ⽂ Pieces of , And translate it into Json/Yaml Format
pod Definition . Subsequent operations ⽅ Form and –pod-manifest-path= identical ,kubelet It will be downloaded again from time to time ⽂ Pieces of , When ⽂ Stop or start the static state correspondingly when the component changes pod; The process and principle are the same, so I won't introduce them in detail here .
static state Pod By kubelet There are only specific Node Upper Pod. these Pod Cannot pass API Server Conduct management , I can't go with RC、Deployment perhaps DaemonSet relation , And there is no health check , This type of Pod from kubelet Created , And only in kubelet Where Node Up operation .
Create static Pod There are two ways :
The configuration file
HTTP
One 、 The configuration file
First, set when necessary kubelet Launch parameters “--podmainifest-path”, Or in kubelet Set... In the configuration file of staticPodPath, The specified path is kubelet Monitoring path ( If k8s Clusters are composed of kubeadm build , The default is stored in the directory /etc/kubernetes/manifests Next ),kubelet The directory will be checked regularly , And according to the yaml Document and json File to create Pod operation .
for example : The configuration directory is /etc/kubelet.d, The configuration startup parameter is --podmainifest-path=/etc/kubelet.d, And then restart kubelet.
stay /etc/kubelet.d Devolution of the catalogue static_pod.yaml file , The contents are as follows :
---
apiVersion: v1
kind: Pod
metadata:
name: static-pod
labels:
name: static-pod
spec:
containers:
- name: static-pod
image: nginx
ports:
- name: web
containerPort: 80
Wait a moment , You can find that the cluster has started a pod( If it has not been started for a long time , Check the system log 、var/log/messages)
$ kubectl get pods --all-namespaces
NAMESPACE NAME READY STATUS RESTARTS AGE
default static-pod-host-192-168-100-121 1/1 Running 0 8s
The pod Can't use API Server Delete , If you try to delete it, it will make the pod be in pending state , And will never be deleted . If you want to delete this pod, Just store before yaml File directory , Delete the relevant yaml File can
Two 、HTTP The way
Same as through setting kubelet Start parameter of ‘--manifest-url’,kubelet It will be regular from this URL Address download Pod The definition file for , And yanl perhaps json File format for parsing , Then create pod, The implementation method is the same as that of the configuration file
边栏推荐
- Deep dive kotlin synergy (XXII): flow treatment
- Thinkphp内核工单系统源码商业开源版 多用户+多客服+短信+邮件通知
- ABAP ALV LVC模板
- v-for遍历元素样式失效
- Trust orbtk development issues 2022
- 【愚公系列】2022年7月 Go教学课程 006-自动推导类型和输入输出
- 搭建ADG过程中复制报错 RMAN-03009 ORA-03113
- Development of a horse tourism website (optimization of servlet)
- 5G NR 系统消息
- Installation and configuration of sublime Text3
猜你喜欢

Zhou Hongqi, 52 ans, est - il encore jeune?

大数据开源项目,一站式全自动化全生命周期运维管家ChengYing(承影)走向何方?

Is Zhou Hongyi, 52, still young?

Notice on organizing the second round of the Southwest Division (Sichuan) of the 2021-2022 National Youth electronic information intelligent innovation competition

从Starfish OS持续对SFO的通缩消耗,长远看SFO的价值

2022-07-07:原本数组中都是大于0、小于等于k的数字,是一个单调不减的数组, 其中可能有相等的数字,总体趋势是递增的。 但是其中有些位置的数被替换成了0,我们需要求出所有的把0替换的方案数量:

How does starfish OS enable the value of SFO in the fourth phase of SFO destruction?

3年经验,面试测试岗20K都拿不到了吗?这么坑?

爬虫实战(八):爬表情包

应用实践 | 数仓体系效率全面提升!同程数科基于 Apache Doris 的数据仓库建设
随机推荐
取消select的默认样式的向下箭头和设置select默认字样
Stm32f1 and stm32cubeide programming example - rotary encoder drive
手写一个模拟的ReentrantLock
Emotional post station 010: things that contemporary college students should understand
C language 005: common examples
51 communicates with the Bluetooth module, and 51 drives the Bluetooth app to light up
Su embedded training - Day3
ReentrantLock 公平锁源码 第0篇
3 years of experience, can't you get 20K for the interview and test post? Such a hole?
爬虫实战(八):爬表情包
Basic principle and usage of dynamic library, -fpic option context
Tapdata 的 2.0 版 ,开源的 Live Data Platform 现已发布
玩轉Sonar
Service Mesh的基本模式
接口测试进阶接口脚本使用—apipost(预/后执行脚本)
攻防世界Web进阶区unserialize3题解
The underlying principles and templates of new and delete
SDNU_ACM_ICPC_2022_Summer_Practice(1~2)
How to insert highlighted code blocks in WPS and word
接口测试要测试什么?