K8S实践Ⅸ(集群监控)
发表于:2025-12-02 作者:千家信息网编辑
千家信息网最后更新 2025年12月02日,一、PrometheusOperator介绍PrometheusOperator是CoreOS开源的一套用于管理在Kubernetes集群上的Prometheus的控制器,简化在Kubernetes上
千家信息网最后更新 2025年12月02日K8S实践Ⅸ(集群监控)
一、PrometheusOperator介绍
PrometheusOperator是CoreOS开源的一套用于管理在Kubernetes集群上的Prometheus的控制器,简化在Kubernetes上部署、管理和运行Prometheus和Alertmanager集群的操作。
二、部署
1.从官方下载部署文件
# git clone https://github.com/coreos/kube-prometheus.git2.更改镜像仓库地址
# mkdir prometheus# cp kube-prometheus/manifests/* prometheus/# sed -i 's#k8s.gcr.io#gcr.azk8s.cn/google_containers#g' prometheus/*# sed -i 's#quay.io#quay.azk8s.cn#g' prometheus/*# cat prometheus/* | grep image3.部署所有资源
# kubectl apply -f prometheus/4.查看创建的ns和crd
# kubectl get ns |grep monitoringmonitoring Active 3m30s# kubectl get crdNAME CREATED ATalertmanagers.monitoring.coreos.com 2019-09-10T09:13:00Zpodmonitors.monitoring.coreos.com 2019-09-10T09:13:00Zprometheuses.monitoring.coreos.com 2019-09-10T09:13:01Zprometheusrules.monitoring.coreos.com 2019-09-10T09:13:02Zservicemonitors.monitoring.coreos.com 2019-09-10T09:13:03Z5.查看monitoring下所有的pod和svc
# kubectl get pod -n monitoringNAME READY STATUS RESTARTS AGEalertmanager-main-0 2/2 Running 0 23halertmanager-main-1 2/2 Running 0 23halertmanager-main-2 2/2 Running 0 23hgrafana-57bfdd47f8-bhkvv 1/1 Running 0 23hkube-state-metrics-8cf4797dc-7dg4w 4/4 Running 0 23hnode-exporter-446xd 2/2 Running 0 23hnode-exporter-8sbsf 2/2 Running 0 23hnode-exporter-dk7qk 2/2 Running 0 23hnode-exporter-vdsqg 2/2 Running 0 23hnode-exporter-w7czt 2/2 Running 0 23hnode-exporter-wx7vj 2/2 Running 0 23hprometheus-adapter-6b9989ccbd-bcl2h 1/1 Running 0 23hprometheus-k8s-0 3/3 Running 1 23hprometheus-k8s-1 3/3 Running 1 23hprometheus-operator-7894d75578-rg2gl 1/1 Running 0 23h# kubectl get svc -n monitoringNAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGEalertmanager-main NodePort 10.97.155.71 9093:30093/TCP 23halertmanager-operated ClusterIP None 9093/TCP,9094/TCP,9094/UDP 23hgrafana NodePort 10.110.28.251 3000:30030/TCP 23hkube-state-metrics ClusterIP None 8443/TCP,9443/TCP 23hnode-exporter ClusterIP None 9100/TCP 23hprometheus-adapter ClusterIP 10.111.75.114 443/TCP 23hprometheus-k8s NodePort 10.109.3.70 9090:30090/TCP 23hprometheus-operated ClusterIP None 9090/TCP 23hprometheus-operator ClusterIP None 8080/TCP 23h 6.更改端口模式为NodePort映射端口
# kubectl edit svc prometheus-k8s -n monitoringservice/prometheus-k8s edited# kubectl edit svc grafana -n monitoringservice/grafana edited# kubectl edit svc alertmanager-main -n monitoringservice/alertmanager-main edited# kubectl get svc -n monitoring | grep NodePortalertmanager-main NodePort 10.97.155.71 9093:30093/TCP 21hgrafana NodePort 10.110.28.251 3000:30030/TCP 21hprometheus-k8s NodePort 10.109.3.70 9090:30090/TCP 21h 7.访问测试
三、配置
1.查看prometheus的targets页面

发现kube-controller-manager 和 kube-scheduler 这两个系统组件没有监控到,此处和ServiceMonitor 的定义有关系
# cat prometheus/prometheus-serviceMonitorKubeScheduler.yamlapiVersion: monitoring.coreos.com/v1kind: ServiceMonitormetadata: labels: k8s-app: kube-scheduler name: kube-scheduler namespace: monitoringspec: endpoints: - interval: 30s port: http-metrics jobLabel: k8s-app namespaceSelector: matchNames: - kube-system selector: matchLabels: k8s-app: kube-schedulerselector.matchLabels在kube-system这个命名空间下面匹配具有k8s-app=kube-scheduler这样的Service,但是系统中没有对应的Service。
2.创建kube-controller-manager 和 kube-scheduler对应的Service
# cat cms-svc.yaml apiVersion: v1kind: Servicemetadata: namespace: kube-system name: kube-controller-manager labels: k8s-app: kube-controller-managerspec: selector: component: kube-controller-manager ports: - name: http-metrics port: 10252 targetPort: 10252 protocol: TCP---apiVersion: v1kind: Servicemetadata: namespace: kube-system name: kube-scheduler labels: k8s-app: kube-schedulerspec: selector: component: kube-scheduler ports: - name: http-metrics port: 10251 targetPort: 10251 protocol: TCP# kubectl describe pod kube-controller-manager-k8s-master01 -n kube-systemLabels: component=kube-controller-manager tier=control-plane3.查看kube-controller-manager 和 kube-scheduler是否正常
4.访问Grafana

集群
端口
系统
管理
监控
两个
仓库
地址
官方
控制器
文件
模式
空间
组件
资源
镜像
页面
控制
有关
测试
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
dhc服务器绑定
数据库怎么标识自动增长
百宝云数据库怎么调用接入
路由器做服务器穿透
软件开发技术的基本要素
信息化网络技术是什么
更换谷歌云服务器
软件开发人员任务分解
网络安全公司市场占有率
网络安全实践活动诗句
负责信息网络技术相关工作
谷歌服务器怎么设置不用更新
阿里巴巴未来数据库
php下载服务器文件
体验计算机网络技术
常见的服务器有哪些
谁去维护比特币的技术网络安全
海淀hp服务器回收新报价
葫芦岛市夏创互联网科技有限公司
项城管理软件开发
杭州保赢网络技术有限公司
华为服务器删除阵列无法识别硬盘
网络安全最后一段总结
数据库授权视频教程
数据库单个用户怎么解决
烟草网络安全大检查
公交公司网络安全部署会议
网络安全周海报图标
2000 msde数据库
学籍管理系统数据库课设