监控linux服务器
思路:
被监控端安装指标采集器,promethues 添加agent端指标采集接口的url,grafana读取promethues数据源展示监控数据。
node_exporter:用于监控Linux系统的指标采集器。
常用指标:
• CPU
• 内存
• 硬盘
• 网络流量
• 文件描述符
• 系统负载
• 系统服务
一.被监控端安装Node_exporter(在被监控端192.168.1.112安装)
cd /usr/local/jiankong
wgtet https://github.com/prometheus/node_exporter/releases/download/v1.1.2/node_exporter-1.1.2.linux-amd64.tar.gz
mv node_exporter-1.1.2.linux-amd64.tar.gz node_exporter
将node_exporter加入系统服务
vi /usr/lib/systemd/system/node_exporter.service
[Unit]
Description=node_exporter
[Service]
ExecStart=/usr/local/jiankong/node_exporter/node_exporter
ExecReload=/bin/kill -HUP $MAINPID
KillMode=process
Restart=on-failure
[Install]
WantedBy=multi-user.target
启动node_exporter
systemctl daemon-reload
systemctl start node_exporter
systemctl enable node_exporter
查看是否启动成功,并查看端口
image.png
此时服务成功启动,可以访问192.168.1.112:9100 查看暴露的指标
image.png
二.Promethues添加监控端
编辑配置文件。
vi /usr/local/monitor/prometheus/prometheus.yml
在scrape_configs下添加
- job_name: 'web'
metrics_path: '/metrics'
static_configs:
- targets: ['192.168.1.112:9100']
################################
解释
job_name:监控组名
metrics_path: 被监控端数据采集接口path
重载配置
systemctl reload promethues
三.Granfa展示数据
image.pngimage.png
我这里添加过了一次,所以提示覆盖。
image.png
添加完后:
image.png
附加:
刚才我们直接通过http就可以访问到数据采集接口上的数据。没有安全性。我们可以加入http认证实现输入密码才能访问接口。
分两步。1.客户端在node_exporter创建配置文件设置用户名密码。2.prometheus在配置文件中写入用户名密码。
1.创建一个用于接口访问的用户,如prometheus,并且加密密码。
usradd prometheus
echo "pro123456"|passwd --stdin prometheus
yum install httpd-tools –y
htpasswd -nBC 12 '' | tr -d ':\n'
2.客户端在node_exporter创建配置文件设置用户名密码
vim /usr/local/jiankong/node_exporter/config.yml (node_exporter根目录下)
basic_auth_users:
prometheus: $2y$12$QsjdF/1HnEdtr78tfq1GiOlfKb4oVTACsiz8ufQuK1.HMNTe/Tr4i
node_exporter系统服务文件指定config.yml的位置
image.png
重载服务。systemctl daemon-reload && systemcl reload node_exporter
刷新接口页面发现需要登陆 并且监控那边也挂了。
image.png
image.png
3.此时,在prometheus配置文件配置用户名密码重载即可
image.png
systemctl reload prometheus
刷新页面,监控状态恢复
image.png
网友评论