k8s部署-54-如何完善k8s中Prometheus(普罗米修斯)监控项目呢?本文带你了解
Posted 公号运维家
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了k8s部署-54-如何完善k8s中Prometheus(普罗米修斯)监控项目呢?本文带你了解相关的知识,希望对你有一定的参考价值。
我们现在已经搭建好prometheus(普罗米修斯)监控了,那么是不是Prometheus中有些参数需要调整修改呢?默认都是正确的吗?我们接下来看看。
1、查看监控内容
浏览器登录我们的prometheus
(普罗米修斯)监控系统;
http://prometheus.yunweijia.com
然后点击status
中的Targets
菜单,显示如下图;
然后我们可看到有些是不可以监控到的,比如k8s
中的一些组件controller-manager
、etcd
等都无法检测到,当然了,无法检测到是因为我们的安装方式是二进制,如果是别的kubespary
,亦或者是kubeadm
的方式,就不会存在这些问题了,那么我们也是需要解决这个问题的,看看如何解决吧。
2、Prometheus
监控二进制安装k8s
的一些组件
(1)prometheus监控controller-manager的修改
[root@node1 ~]# cd prometheus-operator/
[root@node1 prometheus-operator]# ls
charts Chart.yaml ci CONTRIBUTING.md crds hack README.md requirements.lock requirements.yaml templates values.yaml
[root@node1 prometheus-operator]# vim values.yaml
# 搜索 kubeControllerManager 字样,我的在 758 行
# 修改成如下信息
kubeControllerManager:
enabled: true
endpoints:
- 192.168.112.130 # 这里进行了修改,写上了我们两个master的主节点
- 192.168.112.131
https: false # 配置成https的请求方式
[root@node1 prometheus-operator]#
(2)prometheus监控etcd的修改
监控etcd
的话,需要通过https
的方式,那么我们需要实现做一些准备工作,比如创建一个secret
并声明证书之类的;
首先我们看下证书所在位置;
[root@node1 ~]# ls /etc/etcd/
ca.pem kubernetes-key.pem kubernetes.pem
[root@node1 ~]#
创建一个secret
;
[root@node1 ~]# kubectl create secret generic etcd-certs --from-file=/etc/etcd/ca.pem --from-file=/etc/etcd/kubernetes-key.pem --from-file=/etc/etcd/kubernetes.pem
secret/etcd-certs created
[root@node1 ~]#
查看一个该secret
的yaml
文件,确认是否无误;
[root@node1 ~]# kubectl get secret etcd-certs -o yaml
apiVersion: v1
data:
ca.pem: LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUR4RENDQXF5Z0F3SUJBZ0lVZUJ0Wi93ZzUwUzYvN0l6eUFmTmpDOHNxSktNd0RRWUpLb1pJaHZjTkFRRUwKQlFBd2FERUxNQWtHQTFVRUJoTUNWVk14RHpBTkJnTlZCQWdUQms5eVpXZHZiakVSTUE4R0ExVUVCeE1JVUc5eQpkR3hoYm1ReEV6QVJCZ05WQkFvVENrdDFZbVZ5Ym1WMFpYTXhDekFKQmdOVkJBc1
# ---省略部分展现---
# ---省略部分展现---
# ---省略部分展现---
manager: kubectl-create
operation: Update
time: "2022-05-04T15:16:57Z"
name: etcd-certs
namespace: default
resourceVersion: "814232"
selfLink: /api/v1/namespaces/default/secrets/etcd-certs
uid: e414a5ef-2e7a-4ffb-bdcd-d02daecb4482
type: Opaque
[root@node1 ~]#
从上面看,应该没有什么问题哈;
修改监控项;
[root@node1 ~]# cd prometheus-operator/
[root@node1 prometheus-operator]# vim values.yaml
# 搜索 kubeEtcd 字样,我的在891行
kubeEtcd:
enabled: true
endpoints:
- 192.168.110.130 # 将三个etcd节点的IP地址,配置上
- 192.168.110.131
- 192.168.110.132
serviceMonitor:
interval: ""
scheme: https # 访问方式改成 http
insecureSkipVerify: false
serverName: ""
# 以下文件的存放位置为 /etc/prometheus/secrets/ + 上面创建的secret的名字 + 具体证书名字
caFile: "/etc/prometheus/secrets/etcd-certs/ca.pem" # 指定ca
certFile: "/etc/prometheus/secrets/etcd-certs/kubernetes.pem" # 指定cert
keyFile: "/etc/prometheus/secrets/etcd-certs/kubernetes-key.pem" # 指定key
# 搜索 prometheus 字样,在这个配置段落中找一个 secrets:[],我的在 1675 行左右
secrets:
- etcd-certs # 这里添加上我们上面创建的 secret 的名字
[root@node1 prometheus-operator]#
(3)prometheus监控Scheduler的修改
修改Scheduler
的端口号和绑定IP;
# 需要注意,我们有两个节点,都需要进行修改哈
[root@node1 ~]# vim /etc/systemd/system/kube-scheduler.service
# 两个参数修改如下
--bind-address=0.0.0.0 \\
--port=10251 \\
[root@node1 ~]# systemctl daemon-reload
[root@node1 ~]# systemctl restart kube-scheduler
修改监控项;
[root@node1 prometheus-operator]# vim values.yaml
# 搜索 kubeScheduler 字样,我的在951行
kubeScheduler:
enabled: true
endpoints:
- 192.168.112.130 # 添加Scheduler的IP地址
- 192.168.112.131
[root@node1 prometheus-operator]#
(4)prometheus监控kube-proxy的修改
由于我们没有使用kube-proxy
,所以我们只需要把他关闭监控即可;
剩余内容请转至VX公众号 “运维家” ,回复 “160” 查看。
------ 以下内容为防伪内容,忽略即可 ------
------ 以下内容为防伪内容,忽略即可 ------
------ 以下内容为防伪内容,忽略即可 ------
运维工程师加班吗,湖南省it运维工程师就业,杭州运维工程师人力外包哪家实惠,云南景洪云计算运维工程师,镇江市网络运维工程师招聘,世达内推职位网络运维工程师,佳音顺达运维工程师,系统运维工程师学习有用吗,深圳系统运维工程师待遇怎么样,电子运维工程师收入,unix运维工程师证书,奇安信运维工程师薪资北京,运维工程师好还是前端开发好,资兴县运维工程师学费,北京运维工程师外包哪家好,运维工程师评分,机房运维工程师需要电工证吗,日本运维工程师,南京运维工程师收入,运维工程师调薪申请理由怎么写。
以上是关于k8s部署-54-如何完善k8s中Prometheus(普罗米修斯)监控项目呢?本文带你了解的主要内容,如果未能解决你的问题,请参考以下文章