前提
Rke 完成k8s集羣部署,測試各項功能正常後,在爲master 添加vip,實現高可用,此時再次請求api接口報錯:
vip:172.20.101.252
master:172.20.101.157, 172.20.101.164, 172.20.101.165
報錯:
Unable to connect to the server: x509: certificate is valid for
172.20.101.157, 172.20.101.164, 172.20.101.165, 127.0.0.1, 10.43.0.1, not 172.20.101.252
解決辦法:
修改rke cluster.yml 文件,更新集羣證書;
解決辦法1:
編輯集羣配置文件,添加需要外圍IP地址和相關域名:
vi cluster.yml
authentication:
strategy: x509
sans:
- "172.20.101.252"
- "k8sdev.ptmind.com"
然後執行,證書輪換
rke cert rotate
證書輪換之後,Kubernetes組件將自動重新啓動。證書輪換可用於下列服務:
etcd
kubelet
kube-apiserver
kube-proxy
kube-scheduler
kube-controller-manager
方法2
推薦方法:
使用--service 指定單個服務,比如kubelet:
rke cert rotate --service kubelet
原因
生成證書配置文件時,沒有vip在訪問列表清單;