Rancher Server2.5.5 升级证书后集群状态Unavailable

Rancher Server 设置

  • Rancher 版本:2.5.5
  • 安装选项 (Docker install/Helm Chart): Docker install

下游集群信息

  • Kubernetes 版本: 1.20.4
  • Cluster Type (Local/Downstream): Downstream-导入

**问题描述:今天访问rancher-ui发现无法访问,通过docker的ps进程发现docker处于运行状态,通过docker logs日志分析看到是由于证书过期导致的问题,于是考虑通过网上的方案进行证书升级

重现步骤:
#进入容器
docker exec -it 86df42d792cf bash
#按步骤删除证书
kubectl --insecure-skip-tls-verify -n kube-system delete secrets k3s-serving
kubectl --insecure-skip-tls-verify delete secret serving-cert -n cattle-system
rm -f /var/lib/rancher/k3s/server/tls/dynamic-cert.json
#退出docker容器
exit
#重启后继续进入容器执行相关命令
docker exec -it 86df42d792cf bash
#看系统日志显示的是6443端口,故使用此端口
curl --insecure -sfL https://localhost:6443/v3
结果:
rancher-ui能访问了,但是对应的集群发现状态变为了Unavailable
同时无法通过rancher-ui创建新的集群,并报异常
截图:
#愿导入集群报不可用


#新建集群报错

其他上下文信息:

日志
1 个赞

localhost 要换成 rancher server 的 ip 地址

我容器内是443,映射的主机端口是9443 ,那这里我执行的应该是
curl --insecure -sfL https://localhost:443/v3
对么?

curl --insecure -sfL https://localhost:443/v3
执行了这个语句服务依旧Unavailable

那你的agent是通过localhost去链接的???

你还是替换成对应的ip和端口试试

解决了,莫名其妙的好了!

就进入容器
curl --insecure -sfL https://localhost:443/v3

我的不行呢

我的是同一台,但是还是不行呢

请提供详细的操作步骤

curl --insecure -sfL https://localhost:443/v3
我的是单节点,从docker容器进去执行这一段话,然后就耐心的等等,然后就好了

通过官网地址:如何为 Rancher 轮换证书? | Rancher文档

独立容器 Rancher Server 证书更新

这里操作,进入容器操作完上述步骤后,执行
curl --insecure -sfL https://localhost:443/v3
退出容器重启容器后,登录rancher的管理台
不要着急,喝杯水,等一等,然后就好了。

参考我的解决方案。如果还没解决可以私信我。

留个联系方式呢老哥
我QQ 1105524522

timedatectl set-ntp true/false
date -s “2021-12-01 00:00:00”

#容器里删
#k3s-serving
kubectl --insecure-skip-tls-verify -n kube-system delete secrets k3s-serving
#cattle-system
kubectl --insecure-skip-tls-verify delete secret serving-cert -n cattle-system
kubectl --insecure-skip-tls-verify delete secret cattle-webhook-tls -n cattle-system
#重启
docker restart 1
curl --insecure -sfL https://xxx.com/v3
#在容器里也执行过 curl --insecure -sfL https://localhost:443/v3、 curl --insecure -sfL https://127.0.0.1:443/v3、curl --insecure -sfL https://xx.com:443/v3
#再重启
docker restart 1

最后的结果是k3s-serving是可以生成,其他几个证书没有生成。

先确定rancher对应版本是2.5.5吧
我这个情况是证书到期后rancher控制台打不开,然后去教程里找的相应操作执行的,一开始执行使用的端口有问题,但是这样的操作不影响rancher控制台的使用,后面发现原本加入的集群状态都不可用,所以才继续寻找的解决方案,执行了相关的操作。这期间我发现了原集群(现不可用状态集群)agent 节点不可用,又执行了重启agent 节点的操作,然后等待一会儿就可以了。
你那边目前是哪里出现了问题呢,也可以通过docker日志看看

你的每一步详细步骤麻烦发一下呢,谢谢,

加你扣扣了。