配置檔適用性:級別 1
啟用 kubelet 用戶端憑證輪替。
![]() |
注意請參閱 Amazon EKS 文檔以獲取預設值。
|
--rotate-certificates
設定使 kubelet 在其現有憑證過期時通過創建新的 CSR 來輪換其客戶端憑證。這種自動定期輪換確保了不會因憑證過期而導致停機,從而解決了 CIA(機密性、完整性和可用性)安全三元組中的可用性問題。![]() |
注意此建議僅適用於您讓 kubelet 從 API 伺服器獲取其證書的情況。如果您的 kubelet 證書來自外部權威/工具(例如密碼保險箱),則您需要自行實施輪換。
|
![]() |
注意此功能還需要
RotateKubeletClientCertificate 功能閘道。 |
審計
- SSH 到每個節點並運行以下命令以查找 Kubelet 進程:
ps -ef | grep kubelet
- 如果上述命令的輸出包含
--RotateCertificate
可執行參數,請確認其設置為true
。 - 如果上述命令的輸出不包含
--RotateCertificate
可執行參數,則請檢查 Kubelet 配置文件。上述命令的輸出應返回類似--config /etc/kubernetes/kubelet/kubelet-config.json
的內容,這是 Kubelet 配置文件的位置資訊。 - 打開 Kubelet 配置文件:
cat /etc/kubernetes/kubelet/kubelet-config.json
- 確認
RotateCertificate
參數不存在,或設置為true
。
補救
修復方法 1
如果要修改 Kubelet 配置文件,請編輯 kubelet-config.json 文件
/etc/kubernetes/kubelet/kubelet-config.json
,並將以下參數設置為 true
:"RotateCertificate":true
此外,請確保 kubelet 服務檔案
/etc/systemd/system/kubelet.service.d/10-kubelet-args.conf
不將 --RotateCertificate
可執行參數設置為 false
,因為這會覆蓋 Kubelet 配置檔案。修復方法 2
如果使用可執行參數,請在每個工作節點上編輯 kubelet 服務檔案
/etc/systemd/system/kubelet.service.d/10-kubelet-args.conf
,並在 KUBELET_ARGS
變數字串的末尾添加以下參數:--RotateCertificate=true