9.2.1. 安装kube-state-metrics
9.2.1.1. 查看K8S集群版本
进入k8s集群主节点 执行命令查询K8S部署版本
9.2.1.2. 查找集群对应的采集器版本
kube-state-metrics采集器跟K8S版本有适配兼容的限制,版本如果差异过大,可能会导致kube-state-metrics无法采集到K8S的相关指标数据。因此kube-state-metrics部署版本要适配K8S集群版本。 访问kube-state-metrics仓库:GitHub - kubernetes/kube-state-metrics: Add-on agent to generate and expose cluster-level metrics. 打开后,在左上角可以查看对应的分支版本,默认是最新版主分支。
选择对应版本后,下拉,可以看到最近的适配版本信息。
这里分支选择了release-2.2.然后看到kube-state-metrics的v2.2.4版本可以支持K8S的v1.21版本,因此这里部署kube-state-metrics的v2.2.4版本。
9.2.1.3. 拉取kube-state-metrics部署文件
首先使用国内的git源进行拉取 拉取地址:猫科动物/kube-state-metrics 使用下面命令进行拉取(若没有git,直接yum安装一个)
然后切换到可用的分支
这个是最新版的文件,需要进行一个版本切换,这里的release根据自己的选择的版本调整即可。
然后查看目前版本是多少
9.2.1.4. 修改部署镜像源
部署文件内使用的镜像源默认是国外的,访问速度很慢,而且有可能无法访问。因此切换为国内的部署镜像源 直接进行批量替换
9.2.1.5. 直接部署
直接使用kubectl命令使用该目录下的所有部署文件进行部署
查看kube-state-metrics服务启动情况
等待1-2分钟后,再次查看,可见kube-state-metrics服务已经正常运行了
9.2.1.6. 创建对外访问services
部署好kube-state-metrics服务后,默认是没法对外访问的。 使用命令查看kube-state-metrics服务的service服务
复制原先的service.yaml部署文件
将配置文件中的内容修改为
然后直接指定配置文件进行部署
9.2.1.7. 访问测试
直接使用K8S集群IP+对外端口/metrics,进行访问,若出现以下页面,并且有指标数据,说明部署成功。
9.2.2. 导入kube-state-metrics模板
kube-state-metrics监控模板,联系技术中心获取 prometheus_kube_state_metrics_20230313.xml 登录zabbix原生界面: 登录地址:部署IP/z 默认登录信息:Admin/ITIM_p@ssw0rd
登录后:配置>模板>导入
选择kube-state-metrics模板
然后导入
9.2.3. 迁移kube-state-metrics模板
然后登录乐维监控系统 打开监控中心>资源配置>模板迁移>未迁移模板 找到刚导入的kube-state-metrics模板,点击右边的迁移
根据图,进行迁移配置,然后点击确定,即能完成模板迁移。
9.2.4. 添加监控
然后回到监控中心>综合监控>资源列表 然后点击右上角的新建,即可开始新建监控对象
找到容器类型中,刚迁移的模板,点击创建
然后根据图来添加基础信息,最后点击提交即可
指标地址可看9.2.1.7
9.2.5. 查看监控情况
添加完监控后,等待几分钟,然后查看监控情况: 添加完后,会在监控中心>综合监控>资源列表里面有刚添加的监控对象
点击进入监控详情
在指标列表中即可查看指标数据。若出现指标数据,说明监控添加成功