最近在使用阿里云流水线发布应用的时,发现 k3s 默认的证书仅针对所在服务器的内网有效,在流水线添加集群的时候会报错 unable to connect to the server: x509: certificate is valid for 10.43.0.1, 127.0.0.1, 172.30.186.237, ::1, not xx.xx.xx.xx(你的外网 ip),这时候需要重新给你的公网ip 生成一下证书,具体操作如下:
1. 先停掉 k3s 服务
sudo systemctl stop k3s
2. 备份现有证书
sudo cp /var/lib/rancher/k3s/server/tls/server-ca.crt /var/lib/rancher/k3s/server/tls/server-ca.crt.bak
sudo cp /var/lib/rancher/k3s/server/tls/server-ca.key /var/lib/rancher/k3s/server/tls/server-ca.key.bak
sudo cp /var/lib/rancher/k3s/server/tls/server.crt /var/lib/rancher/k3s/server/tls/server.crt.bak
sudo cp /var/lib/rancher/k3s/server/tls/server.key /var/lib/rancher/k3s/server/tls/server.key.bak
3. 编辑 k3s 配置文件
编辑配置文件: