Kubelet基於PodSpec工作。每個PodSpec是壹個描述Pod的YAML或JSON對象。Kubelet接受通過各種機制(主要是通過apiserver)提供的壹組POD規範,並確保這些POD規範中描述的容器正在運行且狀態良好。Kubelet不管理不是由Kubernetes創建的容器。
在hdss 01-221 . host . com和hdss01-222.host.com上運行:主機:
頒發kubelet證書:
在運維主機hdss01-200.host.com上:
創建壹個生成證書簽名請求(csr)的json配置文件:
主機:寫下已經使用和可能使用的ip地址。(壹定要先計劃好)
~]# cd /opt/certs/
certs]# vi kubelet-csr.json
{
" CN": "k8s-kubelet ",
"主機":[
"127.0.0.1",
"10.41.1.210",
"10.41.1.221",
"10.41.1.222",
"10.41.1.223",
"10.41.1.224",
"10.41.1.225",
"10.41.1.226",
"10.41.1.227",
"10.41.1.228"
],
"密鑰":{
“算法”:“rsa”,
【尺寸】:2048
},
"姓名":[
{
“C”:“CN”,
《聖》:《河南》,
“L”:“鄭州”,
“O”:“JX”,
“歐”:“xxzx”
}
]
}
certs]# cfssl gencert-ca = ca . PEM-ca-key = ca-key . PEM-config = ca-config . JSON-profile = server kube let-CSR . JSON | cfssl-JSON-bare kube let
將證書復制到操作節點hdss 01-221 . host . com和hdss01-222.host.com:
CD/opt/kubernetes/server/bin/cert
scp hdss 01-200:/opt/certs/kube let . PEM。
scp hdss 01-200:/opt/certs/kube let-key . PEM
創建配置kube delet . kube config:
只做壹次,生成的kubelet.kubeconfig會復制到其他節點。
conf]# CD/opt/kubernetes/server/bin/conf
集合-群集:
kubectl配置集-集群myk8s
-certificate-authority =/opt/kubernetes/server/bin/cert/ca . PEM
- embed-certs=true
-服務器=開:
cert]# CD/opt/kubernetes/server/bin/conf
conf]# scp hdss 01-221:/opt/kubernetes/server/bin/conf/kube delet . kube config。
準備暫停基本圖像:
在運維主機hdss01-200.host.com上操作:
下載圖像:
certs]# docker pull kubernetes/pause
給鏡子貼上標簽。
證書]#碼頭標簽f9d5 de 079539 harbor.od.com/public/pause:latest
上傳到私人圖書館:
harbor.od.com/public/pause:latest碼頭工人推
創建kubelet啟動腳本:
在hdss 01-221 . host . com上:
cat/opt/kubernetes/server/bin/kube let . sh
#!/bin/sh
。/庫伯萊
- anonymous-auth=false
-c組-驅動系統d
-群集-dns 192.168.0.2
- cluster-domain cluster.local
-runtime-cgroups =/systemd/system . slice
-kube let-cgroups =/systemd/system . slice
- fail-swap-on="false "
-客戶端ca文件。/cert/ca.pem
- tls-cert-file。/cert/kubelet.pem
-TLS-私鑰-文件。/cert/kubelet-key.pem
-hostname-override hdss 01-221 . host . com # hdss 01-222對hdss01-222.host.com進行相應的更改。
-圖像-氣相色譜-高閾值20
-圖像-GC-低閾值10
- kubeconfig。/conf/kube delet . kube config
-log-dir/data/logs/kubernetes/kube-kube let
-吊艙-紅外集裝箱-圖像harbor.od.com/public/pause:latest
- root-dir /data/kubelet
bin]# chmod +x kubelet.sh
bin]# mkdir-p/data/logs/kubernetes/kube-kube let/data/kube let
要創建主管配置,請執行以下操作:
在hdss 01-221 . host . com上:
bin]# cat/etc/supervisord . d/kube-kube let . ini
【節目:kube-kube let-01-221】# hdss 01-222 . host . com改為22。
command =/opt/kubernetes/server/bin/kube let . sh;程序(相對用路徑,可以帶參數)
num procs = 1;要啟動的進程副本數(def 1)
directory =/opt/kubernetes/server/bin;exec之前cwd到的目錄(def no cwd)
autostart = true從超級用戶開始(默認值:true)
autorestart = true意外退出時重新啟動(默認值:true)
startsecs = 30程序必須保持運行的秒數(定義。1)
開始重試次數= 3;串行啟動失敗的最大次數(默認為3)
exitcodes=0,2;進程的“預期”退出代碼(默認值為0,2)
stopsignal =退出;用於終止進程的信號(默認術語)
stopwaitsecs = 10;等待b4 SIGKILL的最大秒數(默認為10)
用戶= rootsetuid到這個UNIX帳戶來運行程序
redirect _ stderr = true將過程stderr重定向到stdout(默認為false)
stdout _ log file =/data/logs/kubernetes/kube-kube let/kube let . stdout . log;stderr日誌路徑,無對無。默認自動
stdout _ logfile _ maxbytes = 64MB最大日誌文件字節數b4循環(默認為50MB)
stdout _ log file _ backups = 4;stdout日誌文件備份的數量(默認為10)
stdout _ capture _ max bytes = 1MB;“捕獲模式”中的字節數(默認值為0)
stdout _ events _ enabled = false在stdout寫入時發出事件(默認為false)
bin]#主管更新
bin]#主管狀態
bin]# kubectl獲取節點
角色添加標簽,設置節點角色,同時添加兩個標簽。
bin]#kubectl標簽節點hdss 01-221 . host . com node-role.kubernetes.io/master=
bin]# kubectl標簽節點hdss 01-221 . host . com node-role.kubernetes.io/node=
bin]#kubectl標簽節點hdss 01-222 . host . com node-role.kubernetes.io/node=
bin]# kubectl標簽節點hdss 01-222 . host . com node-role.kubernetes.io/master=