• KubeSphere监控失效为NAN的问题


    前言

    在安装完KubSphere后可能会遇到监控体系无效的情况,如下图

    在这里插入图片描述

    在这里插入图片描述

    原因

    遇到这种情况先查看KubeSphere内置的监控组件prometheus-k8s是否正常,在集群的左侧菜单栏里有系统组件一项,查看系统组件的菜单是否正常

    在这里插入图片描述

    里面的KubeSphereKubernetes都是正常的,监控组件里有四个异常,这四个异常都是监控跟监控系统ui展示类相关的组件,列出来

    • prometheus-k8s:提供节点、工作负载、 API 对象的相关监控数据。
    • prometheus-operated:所有 Prometheus 实例对应的服务,供 Prometheus Operator 内部使用。
    • alertmanager-operated:Alertmanager 服务,用于集成 Prometheus 和 Alertmanager。
    • alertmanager-main:Alertmanager Web UI 服务。

    Prometheus负责对监控数据的采集,Alertmanager则集成了Prometheus将监控数据渲染到UI页面上让我们可以可视化的查看集群的负载情况。

    解决方案

    异常状态

    目前集群的组件状态是异常状态,我们查看prometheus组件的事件进行异常排查,点击异常容器组的名称进入详情页,以prometheus-k8s容器组为例
    在这里插入图片描述

    点击上图中的prometheus-k8s-0这个名称进入详情页面

    在这里插入图片描述

    在这个页面可以看容器的yaml配置文件及各容器的标签对外端口等信息,我们排查问题的话就需要在监控事件两个tab里追踪问题。

    监控项因为异常的是监控本身所以没有数据,剩下的就是查看事件信息

    在这里插入图片描述

    事件里的消息告知了异常产生的原因,cpu不足无法启动,这种情况就需要调整调度给prometheus-k8s足够的资源来进行启动,如果是单机的情况下最好是4C8G的配置。

    关闭状态

    如果是关闭状态的情况下可以重新调度启动一下组件。

    执行以下命令扩展部署:

    kubectl scale -n kubesphere-monitoring-system –replicas=1 sts prometheus-k8s
    
    • 1

    如果是使用k8s在线安装KubeSphere造成的监控无效的情况先查看监控里的prometheus等组件是否正常,如果正常的情况下查看prometheus的配置yaml

    查看yaml是否配置了对外暴露

    在这里插入图片描述

    上图的配置就是没有对外暴露的配置,按以下代码进行修改:

    spec:
        clusterIP: None
        ports:
            - name: https-main
        port: 8443
        protocol: TCP
        targetPort: https-main
            - name: https-self
        port: 9443
        protocol: TCP
        targetPort: https-self
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
  • 相关阅读:
    Hadoop3:MapReduce中实现自定义排序
    【计算机基础知识7】垃圾回收机制与内存泄漏
    presto框架【博学谷学习记录】
    @Bean 与 @Component 用在同一个类上,会发生什么?
    蓝桥杯第十一届c++大学B组详解
    dubbo 核心源码分析
    INA226 备忘
    软件测试实战项目,问题答疑
    latex方程组编写,一种可以保证方程编号自适应的方法
    二、RTMP协议 入门
  • 原文地址:https://blog.csdn.net/AnNanDu/article/details/126106346