网站建设从建立服务器开始常熟做网站的公司
2026/3/7 0:49:46 网站建设 项目流程
网站建设从建立服务器开始,常熟做网站的公司,wordpress使用主题,如何策划一个营销方案一、引言 这两天迁移网络#xff0c;直接重新部署docker还有k8#xff0c;结果全部搞定之后#xff0c;一开始的K8UI界面可以浏览的#xff0c;结果就刷新了一下发现直接掉了。 去到服务器#xff0c;发现一直在报错#xff1a; 二、原因 对于服务器输出的#xff1a;IP…一、引言这两天迁移网络直接重新部署docker还有k8结果全部搞定之后一开始的K8UI界面可以浏览的结果就刷新了一下发现直接掉了。去到服务器发现一直在报错二、原因对于服务器输出的IPVS no destination available一般是因为有 Service 用了externalTrafficPolicy:Local当 Node 上没有该 Service 对应 Pod 时Node 上的该 Service 对应 NodePort 的 IPVS 规则里RS 列表为空。当有流量打到这个 Node 的对应 NodePort 上时由于 RS 列表为空内核就会报这个 warning 日志。在云厂商托管的 K8S 服务里通常是 LB 会去主动探测 NodePort发到没有这个 Service 对应 Pod 实例的 Node 时报文被正常丢弃从而内核报 warning 日志。这个日志不会对服务造成影响可以忽略不管。如果是在腾讯云 TKE 环境里并且用的 TencentOS可以设置一个内核参数来抑制这个 warning 日志输出:sysctl -w net.ipv4.vs.ignore_no_rs_error1以上排错来自IPVS no destination available | Kubernetes 排障指南ok人家说了这个玩意不影响功能为啥我的还是有问题继续看。三、pod我发现虽然我的 k8s 的UI界面起不来但是我依赖于其中的 jekins 却可以启动包括nacos啥的都没有问题那就说明肯定其中的 pod 组件出了问题对于 pod 如果有小伙伴不理解的可以看这边文章K8s 核心概念深度解析Pod 是什么-CSDN博客ok开始排查kubectl get pods -n kubesphere-system回这里可以看到apiserverconsolecontroller-manager 这三个镜像都 ImagePullBackOff 拉取失败现在我们来检查一下看看我们的 docker 源是否有问题。rootk8s-master:~# docker pull kubesphere/ks-console:v3.4.1 Error response from daemon: Get https://registry-1.docker.io/v2/: net/http: request canceled while waiting for connection (Client.Timeout exceeded while awaiting headers)amazing拉不到我要的镜像哥们加速器也是配好的。一番搜查看到这篇文章kubesphere/ks-controller-manager:v3.4.1镜像无法拉取的问题 - KubeSphere 开发者社区这个哥们说镜像被清理了咱也不知道那就直接拉取他的东西到我们的docker源里面去。docker pull harrymore/ks-controller-manager:v3.4.1 docker tag harrymore/ks-controller-manager:v3.4.1 kubesphere/ks-controller-manager:v3.4.1接着修改一下拉取策略# 编辑 ks-console Deployment 配置 kubectl edit deployment ks-console -n kubesphere-system # 找到 spec.template.spec.containers[0] 段落 containers: - name: ks-console image: kubesphere/ks-console:v3.4.1 imagePullPolicy: IfNotPresent # 关键配置仅本地无镜像时才拉取 # 其他配置保持不变接着# 1. 删除异常 PodDeployment 会自动重建使用本地镜像 kubectl delete pod -n kubesphere-system -l appks-console,tierfrontend # 2. 实时查看 Pod 状态等待变为 Running/1/1 kubectl get pods -n kubesphere-system -l appks-console,tierfrontend -wok启动好了没有问题了。四、如果还是不行我的情况是因为突然去拉了官方的源可能是我重装的时候没有修改策略正常来说我都是直接拉我自己的私有仓库里的东西包括我的docker源应该都是包含我的镜像的。# 查看本地所有镜像docker images哥们后面才发现原来我有的重复拉取了后面把 Harrymore 的删掉了大家如果没有就拉取Harrymore的。如果你也有了以上的这些 ks-controller-manager 等镜像可以直接用以下命令就不需要一个个去修改策略了。# 1. 批量设置镜像拉取策略强制使用本地 Docker 镜像 kubectl -n kubesphere-system patch deployment ks-console --typejson -p[{op:replace,path:/spec/template/spec/containers/0/imagePullPolicy,value:IfNotPresent}] kubectl -n kubesphere-system patch deployment ks-apiserver --typejson -p[{op:replace,path:/spec/template/spec/containers/0/imagePullPolicy,value:IfNotPresent}] kubectl -n kubesphere-system patch deployment ks-controller-manager --typejson -p[{op:replace,path:/spec/template/spec/containers/0/imagePullPolicy,value:IfNotPresent}] # 2. 重启 kubelet让 kubelet 重新对接 Docker识别本地镜像 systemctl restart kubelet # 3. 滚动重启 KubeSphere 核心 Deployment触发 Pod 重建 kubectl -n kubesphere-system rollout restart deployment ks-console ks-apiserver ks-controller-manager # 4. 实时查看 Pod 状态等待全部变为 Running/1/1 kubectl get pods -n kubesphere-system -l app in (ks-apiserver,ks-console,ks-controller-manager) -w验证# 1. 查看 ks-console Service 的 Endpoints非空即为成功 kubectl describe service ks-console -n kubesphere-system | grep Endpoints # 2. 测试 KubeSphere 控制台访问返回 200/302 即为正常 curl -I http://192.168.100.27:30880END如果觉得这份基础知识点总结清晰别忘了动动小手点个赞再关注一下呀 后续还会分享更多有关面试问题的干货技巧同时一起解锁更多好用的功能少踩坑多提效 你的支持就是我更新的最大动力咱们下次分享再见呀

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询