使用ansible部署普罗米修斯的Node_exporter主机探针

部署需求分析

使用ansible批量部署node-exporter监控客户端

node-exporter解压安装目录为home

添加至Linux服务重新加载,启动模块并设置开机启动

测试环境(centos 7——3.10.0-1160.el7.x86_64)运行成功

因为部署步骤较少,单个playbook即可,未使用到roles


部署准备

下载node_exporter-0.14.0.linux-amd64.tar.gz 压缩包到主控端

配置node_exporter.service 服务文件并放到指定目录


部署配置文件

node_exporter.service

[Unit]

Description=node_exporter

Requires=network.target remote-fs.target

After=network.target remote-fs.target

[Service]

Type=simple

User=root

Group=root

ExecStart=/home/node_exporter-0.14.0.linux-amd64/node_exporter --web.listen-address=:0.0.0.0:9100

ExecReload=/bin/kill -HUP $MAINPID

KillMode=process

Restart=on-failure

RestartSec=5s

[Install]

WantedBy=multi-user.target

ansible-playbook

---

#node_exporter install

hosts: all

remote_user: root

gather_facts: false

tasks:

name: install node_exporter

unarchive: src=/etc/ansible/files/node_exporter-0.14.0.linux-amd64.tar.gz dest=/home

name: add  service

copy: src=/etc/ansible/files/node_exporter.service dest=/usr/lib/systemd/system/

name: reload service

shell: systemctl daemon-reload

name: enabled and start node_exporter

service: name=node_exporter state=started enabled=yes


部署遇到的问题与解决

问题描述

运行ansible-playbook后出现服务启动报错,

原因分析与解决

使用journalctl -u node_exporter.service 查看被控端启动日子发现:

查看发现报错与node_exporter.service中定义的network.target有关,无法添加依赖性,后续发现为原版本书写错误导致识别不到修正后正常启动,ansible运行成功

Playbook运行成功

被控端端口成功启动:


扩展

Templates的使用

一些配置文件涉及到有变量参数,判断以及循环时,我们可以使用templates来更方便的帮我们完成工作,node_exporter部署中我们也可以把配置文件以.j2结尾放在templates目录中来预防以后复杂的情况

文件目录格式必须为以下形式:

Playbook内容:

Templates成功运行:

Handlers和Notify的使用

因为时常会遇到配置文件修改的情况,我们可以使用Handlers 触发器的这种形式来仅针对修改的内容做出相应的改变

Playbook内容:

测试:当node_exporter由9100改为9111

Handler触发:

被控端端口改变:

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Yo-ke

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值