prometheus+node_exporter+grafana监控K8S信息

prometheus+node_exporter+grafana监控K8S

1.prometheus部署

包下载地址:https://prometheus.io/download/

将包传至/opt

解压
tar xf prometheus-2.53.3.linux-amd64.tar.gz

移动到 /usr/local/prometheus
mv prometheus-2.53.3.linux-amd64 /usr/local/prometheus

prometheus配置文件,可以根据需求更改配置
/usr/local/prometheus/prometheus.yml


配置systemd,用systemctl来管理prometheus

复制代码
cat > /usr/lib/systemd/system/prometheus.service <<'EOF'
[Unit]
Description=Prometheus Server
Documentation=https://prometheus.io
After=network.target
   
[Service]
Type=simple
ExecStart=/usr/local/prometheus/prometheus \
--config.file=/usr/local/prometheus/prometheus.yml \
--storage.tsdb.path=/usr/local/prometheus/data/ \
--storage.tsdb.retention=15d \
--web.enable-lifecycle
     
ExecReload=/bin/kill -HUP $MAINPID
Restart=on-failure
   
[Install]
WantedBy=multi-user.target
EOF

启动prometheus

systemctl start prometheus

systemctl enable prometheus

netstat -lntp | grep 9090



Status-Targets 下看到prometheus状态为up

代表能正常采集到数据



2.node_exporter部署

在集群中每个需要监控的K8s节点上部署node_exporter

下载node_exporter包

地址:https://prometheus.io/download/

上传包至/opt

解压包
tar xf node_exporter-1.8.2.linux-amd64.tar.gz

移动到 /usr/local/bin
mv node_exporter-1.8.2.linux-amd64 /usr/local/bin


配置systemd,用systemctl来管理node_exporter

复制代码
cat > /usr/lib/systemd/system/node_exporter.service <<'EOF'
[Unit]
Description=node_exporter
Documentation=https://prometheus.io/
After=network.target
 
[Service]
Type=simple
ExecStart=/usr/local/bin/node_exporter \
--collector.ntp \
--collector.mountstats \
--collector.systemd \
--collector.tcpstat
 
ExecReload=/bin/kill -HUP $MAINPID
Restart=on-failure
 
[Install]
WantedBy=multi-user.target
EOF

启动node_exporter

systemctl start node_exporter

systemctl enable node_exporter

netstat -lntp | grep :9100


3.修改prometheus配置文件

修改prometheus配置文件,在末尾加入被监控的k8s集群信息

vim /usr/local/prometheus/prometheus.yml

复制代码
  - job_name: nodes
    metrics_path: "/metrics"
    static_configs:
    - targets:
	  - 192.168.xx.x:9100
	  - 192.168.xx.x:9100
	  - 192.168.xx.x:9100
      labels:
        service: kubernetes

重载prometheus服务

systemctl reload prometheus

再次打开prometheus,验证k8s集群数据是否采集到


4.grafana部署

grafana官网:https://grafana.com/grafana/download/11.5.0

安装grafana

sudo yum install -y https://dl.grafana.com/enterprise/release/grafana-enterprise-11.5.0-1.x86_64.rpm


启动grafana

复制代码
systemctl start grafana-server

systemctl enable grafana-server

netstat -lntp | grep 3000

访问http://grafana服务IP:3000/

用户名/密码:admin/admin

进入主界面

配置数据源

添加新的数据源

选择prometheus

配置prometheus地址

在最下方点保存

添加模版

导入模版

在模版网站,选择模版,复制ID

我用的模版地址:

https://grafana.com/grafana/dashboards/16098-node-exporter-dashboard-20240520-job/

导入ID

最后在面板上查看监控的k8s的信息即可


参考文档:

https://blog.csdn.net/G_D0120/article/details/139652201?fromshare=blogdetail\&sharetype=blogdetail\&sharerId=139652201\&sharerefer=PC\&sharesource=Wangjiachenga\&sharefrom=from_link

https://blog.csdn.net/weixin_42171272/article/details/138714827?fromshare=blogdetail\&sharetype=blogdetail\&sharerId=138714827\&sharerefer=PC\&sharesource=Wangjiachenga\&sharefrom=from_link

相关推荐
阿里云云原生1 小时前
HiClaw 发布 v1.1.0,提供 Kubernetes 集群部署实现,支持 Hermes Worker 运行时
kubernetes
Cat_Rocky2 小时前
kubernetes ingress粗浅学习
学习·容器·kubernetes
PH = 74 小时前
K8S集群部署Dashboard
云原生·容器·kubernetes
陈陈CHENCHEN7 小时前
【Kubernetes】Ubuntu 24.04 二进制方式部署 K8s
云原生·容器·kubernetes
成为你的宁宁8 小时前
【K8s Service 基础知识、五大类型应用机制及Endpoint 深度解析】
云原生·容器·kubernetes
老卢聊运维8 小时前
K8s 资源一直 Terminating?kubectl 强制删除完整实操手册
云原生·容器·kubernetes
眷蓝天8 小时前
Kubernetes Ingress 资源对象
云原生·容器·kubernetes
Nice_Fold8 小时前
Kubernetes Ingress 七层负载均衡与Nginx实现
nginx·kubernetes·负载均衡
ん贤8 小时前
Kubernetes入门
云原生·容器·kubernetes
shizhan_cloud9 小时前
K8S部署LNMP架构 ECShop
kubernetes