方式:
1)使用unarchive模块解压node_exporter的软件包到远程主机的/opt目录下
2) 执行启动脚本,启动node_exporter
步骤:
1.在hosts文件下加入被管理的主机清单(这里添加为zookeeper组),和连接密钥
$ cat /etc/ansible/hosts
[zookeeper]
10.30.19.101:22022
10.30.33.21:22022
10.30.21.70:22022
10.30.25.219:22022
[es:vars]
ansible_ssh_private_key_file='/root/ssh.pem'
2.在ansible本地下载node_exporter二进制包:
$ wget https://download.fastgit.org/prometheus/node_exporter/releases/download/v1.2.2/node_exporter-1.2.2.linux-amd64.tar.gz
3.编写启动/停止脚本,启动node_export 仅需要在解压后的目录下执行./node_exporter即可,我们可以编写node_exporter的启动脚本,通过script模块在被管理的机子上执行,即可完成node_exporter的启动,以下是node_exporter的启动脚本(这里更改了一些启动参数)
$ cat start.sh
#!/bin/bash
nohup /opt/node_exporter/node_exporter --collector.disable-defaults \
--collector.cpu \
--collector.diskstats \
--collector.loadavg \
--collector.meminfo \
--collector.netdev \
--collector.netstat \
--collector.filesystem \
--collector.vmstat \
--collector.uname \
--collector.time \
--collector.infiniband \
--collector.stat \
--log.level="error" > /opt/node_exporter/nohup.txt &
$ cat stop.sh
#!/bin/bash
i=`netstat -ntlp | grep node_exporter | awk '{print $7}' | awk -F '/' '{print $1}'`
kill -15 $i
解压node_exporter压缩包,将start.sh和stop.sh放入node_exporter目录下并重新打包node_exporter目录:
$ tar -xvf node_exporter-1.2.2.linux-amd64.tar.gz
$ copy start.sh node_exporter-1.2.2.linux-amd64
$ copy stop.sh node_exporter-1.2.2.linux-amd64
$ tar -czvf node_exporter-1.2.2.linux-amd64.tar.gz node_exporter-1.2.2.linux-amd64
4..编写安装node_exporter的playbook
playbook内容为:通过unarchive模块将node_exporter的二进制包解压到被管理的主机上,重命名解压后的目录,执行启动脚本,启动node_exporter。
$ cat node_exporter.yaml
---
- hosts: zookeeper
remote_user: tier2
tasks:
- name: copy node_exporter
unarchive:
src: /root/ansible/node_exporter/node_exporter-1.2.2.linux-amd64.tar.gz
dest: /opt
- name: rename
shell: 'mv /opt/node_exporter-1.2.2.linux-amd64 /opt/node_exporter'
- name: start
shell: 'chmod +x /opt/node_exporter/start.sh && chmod +x /opt/node_exporter/stop.sh && /opt/node_exporter/start.sh'
5.执行ansible-playbook node_exporter.yaml,完成!
版权声明:本文为lovely_nn原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。