问题描述
rancher ui 突然不能访问, 日志可以看出证书已经过期。
time="2021-12-29T08:27:32.616638402Z" level=info msg="Waiting for master node startup: resource name may not be empty"
2021-12-29 08:27:32.985756 I | http: TLS handshake error from 127.0.0.1:35568: remote error: tls: bad certificate
time="2021-12-29T08:27:32.987398748Z" level=error msg="server https://127.0.0.1:6443/cacerts is not trusted: Get https://127.0.0.1:6443/cacerts: x509: certificate has expired or is not yet valid"
2021-12-29 08:27:32.987447 I | http: TLS handshake error from 127.0.0.1:35570: remote error: tls: bad certificate
time="2021-12-29T08:27:33.620623487Z" level=info msg="Waiting for master node startup: resource name may not be empty"
2021/12/29 08:27:34 [INFO] Waiting for server to become available: Get "https://127.0.0.1:6443/version?timeout=15m0s": x509: certificate has expired or is not yet valid: current time 2021-12-29T08:27:34Z is after 2021-12-28T06:35:39
解决方案
1. 进入 rancher server 容器,执行相关操作
docker exec -it rancher /bin/sh
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
2. 请求刷新参数
curl --insecure -sfL https://localhost:8443/v3
3. 重启rancher server 容器
docker restart rancher