Kubernetes向APIServer证书中添加更多的域名或者IP

背景

通过kubeadm部署完成以后,忘记把公网的域名和ip地址放入到apiserver的证书里面了。通过以下的步骤可以重新更新一下apiserver证书里面的地址。

步骤

1. 备份现有的Cluster配置文件

kubectl -n kube-system get configmap kubeadm-config -o jsonpath='{.data.ClusterConfiguration}' > kubeadm.yaml

2. 在yaml以下的段添加公网ip和域名

apiServer:
  certSANs:
  - "172.29.50.162"#公网IP
  - "k8s.domain.com"#公网域名
  - "other-k8s.domain.net"
  extraArgs:
    authorization-mode: Node,RBAC
  timeoutForControlPlane: 4m0s

3. 备份老的apiserver的证书文件

mkdir -p /etc/kubernetes/pki/backup
mv /etc/kubernetes/pki/apiserver.{crt,key} /etc/kubernetes/pki/backup/

4. 生产新的apiserver证书文件

cd /etc/kubernetes/pki/
kubeadm init phase certs apiserver --config kubeadm.yaml

5. 登录到apiserver所在的节点,kill 掉apiserver的容器

docker ps | grep kube-apiserver | grep -v pause
docker kill <containerID> #上面步骤grep 出来的容器ID

6. 在config文件中将apiserver地址更新为公网ip或者域名

 7. 通过kubectl验证

参考文章:

Adding a Name to the Kubernetes API Server Certificate - Scott's Weblog - The weblog of an IT pro focusing on cloud computing, Kubernetes, Linux, containers, and networkinghttps://blog.scottlowe.org/2019/07/30/adding-a-name-to-kubernetes-api-server-certificate/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值