前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Kubernetes 1.20.5 upgrade1.21.0后遗症

Kubernetes 1.20.5 upgrade1.21.0后遗症

原创
作者头像
对你无可奈何
修改2021-05-14 10:27:14
5350
修改2021-05-14 10:27:14
举报
文章被收录于专栏:运维专栏

前因后果:

1. 升级后的报警

Kubernetes 1.20.5 upgrade 1.21.0,升级完成突然发现Prometheus discover中两个服务down了,收到微信报警

image.png
image.png

登陆Prometheus控制台一看controller-manager kube-scheduler服务确实是down:

image.png
image.png

2. 查看服务状态确认相关服务是正常状态

登陆集群查看kubectl get pods -n kube-system服务都是正常的。当然了也可以kubectl logs -f $podname -n kube-system去查看一下相关pod的log日志进行确认一下。

image.png
image.png

3. 定位原因

仔细一想是不是升级的时候controller-manager kube-scheduler服务的配置文件给升级了呢...记得在搭建Prometheus-oprator的时候手动修改过两个服务的配置文件what仔细一想也对...upgrade的时候 它难道把两个配置文件改了?

4. 修改kube-controller-manage kube-scheduler配置文件

继续参照:Kubernetes 1.20.5 安装Prometheus-Oprator中1.5 查看controller-manager kube-scheduler服务的配置:

注:配置文件路径为:/etc/kubernetes/manifests

cat cat kube-controller-manager.yaml 发现--bind-address=127.0.0.1了 恢复了初始的设置,在安装Prometheus-oprator的时候将其修改为0.0.0.0的同理修改。

image.png
image.png

修改scheduler配置文件--bind-address=0.0.0.0

image.png
image.png

注: 修改配置文件是针对所有master节点配置文件的。

5. 重启kubelet服务

重启 三个master节点kubelet服务:

注:我记得应该修改了相关的配置服务 控制平面的相关pods是会重启的吧?重启kubelet只是个人确保一下啊正常......

代码语言:txt
复制
 systemctl restart kubelet

等待服务跑起来running......

image.png
image.png

6. 确认Prometheus控制台status状态up

登陆Prometheus web控制台确认监控恢复正常状态:

image.png
image.png

问题复盘:

  1. 必须认同升级是必然的过程。保证集群的健康安装需要保证集群的不断updata,当然并不一定是最新的。
  2. 相关服务的安装修改需要熟练牢记。就像Prometheus-oprator中controller-manager kube-scheduler服务一样,起码能明确记得修改过两个相关配置文件。确认服务正常后,可以去很明确的查看定位配置文件的修改。
  3. 监控还是很有必要的,不管你是轻视还是重视。很大程度上面可以避免更多的失误,作为一个衡量指标

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 前因后果:
    • 1. 升级后的报警
      • 2. 查看服务状态确认相关服务是正常状态
        • 3. 定位原因
          • 4. 修改kube-controller-manage kube-scheduler配置文件
            • 5. 重启kubelet服务
              • 6. 确认Prometheus控制台status状态up
              • 问题复盘:
              相关产品与服务
              容器服务
              腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
              领券
              问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档