rancher控制台的https证书有效期一年,到期后需要手动更新证书。
当rancher证书过期后,会导致rancher控制台无法访问的问题。
查看rancher日志
通过rancher容器的日志,判断是否证书过期问题
docker logs -f --tail=10 smartbi-rancher
如下图,提示x509:certificate has expried or is not yet valid,说明rancher控制台证书过期了。
2.2.4版本解决方案
rancher版本2.2.4版本,可以参考以下解决方案
查看证书有效期
cd Smartbi_All/rancher_data/management-state/tls
openssl x509 -enddate -noout -in localhost.crt
如下图,证书有效期是到2022年9月23号
处理方法
重命名证书
mv localhost.crt localhost.crt_bak
mv localhost.key localhost.key_bak
mv token-node.crt token-node.crt_bak
mv token-node.key token-node.key_bak
重启smartbi-rancher容器
docker restart smartbi-rancher
重启smartbi-rancher容器后会自动生成新的localhost.crt证书。
rancher版本2.4版本解决方案
方案一
删除tls证书内容
直接删除tls目录所有内容 包括.key .crt temporary-certs目录
rm -rf Smartbi_All/rancher_data/k3s/server/tls/*
重启rancher控制台
docker restart smartbi-rancher
重启后可以看看是否能正常访问rancher控制台
如果方案一解决不了问题,可以继续查看以下方案二
方案二
进入smartbi-rancher容器
docker exec -it smartbi-rancher /bin/bash
容器中执行命令
进入 smartbi-rancher 容器,在容器里面执行删除证书操作
kubectl --insecure-skip-tls-verify -n kube-system delete secrets k3s-serving
kubectl --insecure-skip-tls-verify -n cattle-system delete secret serving-cert
rm -f /var/lib/rancher/k3s/server/tls/dynamic-cert.json
在宿主机服务器上执行命令
请求刷新参数(rancher控制台的ip和端口)
curl --insecure -sfL https://ip:port/v3
重启rancher server 容器
docker restart smartbi-rancher
重启后看看是否能正常访问rancher控制台