如何实现自动化部署node-exporter监控主机
今天我们来讨论一下node-exporter如何实现自动化安装,如果大家有更好的方案可以留言讨论。
node-exporter安装方案
分享一下我走过的node-exporter自动化安装方案:
1、如果是公有云或者私有云可以把node-exporter打到镜像文件中,每次创建服务器都会自动携带。(我现在使用的)
2、使用Jenkins+Ansible+Shell自动化部署
3、使用Shell半自动化部署
4、人工手动部署
我是从4到1的过程的,这里主要看一下shell脚本这块,脚本使用Jenkins+Ansible分发执行
[root@gtcq-ehr-psapp2 opt]# more install-node-exporter.sh
#!/bin/bash
#
#####################################
#@brief 自动化安装node-exporter脚本 使用内网资源下载服务器
#@author xiage
#@version 1.0
#@date 2021/3/10
#@log no
#####################################
#shell Env
cd /opt/
more /etc/hosts
echo "110.152.5.1 download-m.gt.cn" >> /etc/hosts
curl -O http://download-m.gt.cn/prometheus/node_exporter-0.16.0.linux-amd64.tar.gz
tar -zxvf node_exporter-0.16.0.linux-amd64.tar.gz -C /usr/local/
cd /usr/local/
mv node_exporter-0.16.0.linux-amd64 node_exporter
cat > /usr/lib/systemd/system/node_exporter.service <<EOF
[Unit]
Description=node_exporter
Documentation=https://prometheus.io/
After=network-online.target
[Service]
Type=simple
User=root
Group=root
ExecStart=/usr/local/node_exporter/node_exporter
Restart=on-failure
[Install]
WantedBy=multi-user.target
EOF
systemctl daemon-reload
systemctl enable node_exporter
systemctl stop node_exporter
systemctl start node_exporter
systemctl restart node_exporter
sed -i "s#110.152.17.11 download.gt.cn##g" /etc/hosts
more /etc/hosts
netstat -nltp|grep 9100
[root@gtcq-ehr-psapp2 opt]#