自学内容网 自学内容网

03. prometheus 监控 Linux 主机

一、prometheus 监控 Linux 主机

1. 官网下载 node_exporter

官网:https://prometheus.io/download/

2. 上传到需要监控的Linux主机,解压并重命名

$ tar xvfz node_exporter-1.3.0.linux-amd64.tar.gz 
node_exporter-1.3.0.linux-amd64/
node_exporter-1.3.0.linux-amd64/LICENSE
node_exporter-1.3.0.linux-amd64/NOTICE
node_exporter-1.3.0.linux-amd64/node_exporter
$ mv node_exporter-1.3.0.linux-amd64 node_exporter

3. 启动 node_exporter,收集主机信息

$ nohup /media/vdc/prometheus/node_exporter/node_exporter &

4. 使用http协议 + 9100 端口收集 Linux 主机信息

如:127.0.0.1:9100/metrics

注:
这里监控的是本机主机;如果要监控远程主机,还需要打开远程主机的 9100 端口才可以访问收集到的信息,可参考后文内容——二、防火墙打开端口

5. 使用 Prometheus 监控可以拉取的 node 信息

prometheus.yml 添加配置:

job_name: 'node_exporter'
    static_configs:
        targets: ['10.90.244.145:9100']

6. 重启 prometheus

先关闭 prometheus 进程:

$ pkill prometheus

查看 9090 端口是否已释放:

$ lsof -i:9090

重启 prometheus:

$ ./prometheus --config.file="/home/10307952@zte.intra/prometheus-2.32.0/prometheus.yml" &

7. 在 prometheus 界面查看 Targets,可以看到已监控的主机节点信息

二、防火墙打开端口

如果要监控远程主机,还需要打开远程主机的对应端口,否则无法访问相应网址:

1. 方式一:使用 iptables 添加白名单(推荐使用):

$ iptables -I INPUT -s 10.90.244.145 -p tcp --dport 9100 -j ACCEPT # 开放9100端口给指定ip:10.90.244.145

$ iptables -I INPUT -p tcp --dport 9100 -j ACCEPT # 向所有机器开放9100端口

上述添加的规则重启后会失效,还需持久化。执行以下命令:

service iptables save

cat /etc/sysconfig/iptables

注意:

  • IPv4 规则信息会保存到 /etc/sysconfig/iptables 文件中,IPv6 规则保存到 /etc/sysconfig/ip6tables 文件中。必须执行 service iptables save 命令才会保存,保存后系统重启后会自动加载。
  • 如果报Unknown operation 'iptables' 错误的话,要安装依赖包 iptables-services(使用 yum 安装:yum install iptables-services)。

查看规则:

$ iptables -nL --line-number

删除已添加的白名单:

$ iptables -D INPUT number # number为上图中的序号num

2. 方式二:重载防火墙

 firewall-cmd --zone=public --add-port=3000/tcp --permanent  # 永久开启端口,3000是grafana的端口
 firewall-cmd --zone=public --add-port=9090/tcp --permanent  # 9090是prometheus默认端口
 firewall-cmd --zone=public --add-port=9100/tcp --permanent  # 9100是远程监控该主机的端口
 firewall-cmd --zone=public --add-port=9600/tcp --permanent  # 9600是上报自定义数据开放的端口
 firewall-cmd --reload  # 重新加载配置

原文地址:https://blog.csdn.net/weixin_45594025/article/details/139226596

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!