建设一个网站的方法,最简单的网站制作,网站索引量突然下降,wordpress上传文件去重复使用Docker 单节点安装rancher#xff0c;然后在rancher中创建了一个k8s的集群。重启rancher所在的虚拟机后#xff0c;登录rancher发现这是新的实例#xff0c;集群信息丢失了。但是k8s集群还是好好的。
检查k8s的日志#xff0c;api server日志会报错
time2023-0…使用Docker 单节点安装rancher然后在rancher中创建了一个k8s的集群。重启rancher所在的虚拟机后登录rancher发现这是新的实例集群信息丢失了。但是k8s集群还是好好的。
检查k8s的日志api server日志会报错
time2023-04-13T02:31:20Z levelerror msgIssuer of last certificate found in chain (CNdynamiclistener-ca1680190230,Odynamiclistener-org) does not match with CA certificate Issuer (CNdynamiclistener-ca1680191229,Odynamiclistener-org). Please check if the configured server certificate contains all needed intermediate certificates and make sure they are in the correct order (server certificate first, intermediates after)
可以看到SSL的认证两边对不上因为rancher server和rancher agent需要通过SSL来通讯。而安装过程中选择了Rancher 生成的自签名证书新的rancher自己产生了新的签名证书而rancher agent还是用的老的签名证书。
在rancher网页上产看证书可以看到颁发者是1680190230而agent保存的证书颁发者是1680191229所以agent连不上rancher server并且rancher server也没有集群的信息。 解决方法是让agent更新新的SSL证书。可以参考rancher官方提供的方案《无需重新搭建集群轻松替换证书》https://blog.csdn.net/RancherLabs/article/details/115906198
1、在集群上配置kubectl工具。
http://mirror.rancher.cn/ 上可以下载kubectl工具注意版本需要跟集群一致。然后配置~/.kube/config文件就是rancher上下载的kubeconfig文件。
然后发命令验证一下
kubectl config get-contexts rancher很特殊kubectl命令需要加context才区分其中cluster2-localhost是直连本地k8s而cluster2是连接rancher。具体介绍看官方文档
https://docs.rancher.cn/docs/rancher2/cluster-admin/cluster-access/kubectl/_index/#!
那么在本地执行kubectl命令是类似这样的。
kubectl --context cluster2-localhost get nodes 2、删除agent
通过 kubectl 删除 daemonset.apps/cattle-node-agent和deployment.apps/cattle-cluster-agent
kubectl --context cluster2-localhost -n cattle-system delete daemonset.apps/cattle-node-agent deployment.apps/cattle-cluster-agent
3、在rancher中导入集群 可以看到黑框中的导入集群的命令在集群上发出。 稍等片刻cattle-cluster-agent和cattle-node-agent 将会重新运行
kubectl --context cluster2-localhost -n cattle-system get pods 4、rancher中集群状态正常