基于ansible自动化定义zabbix-keys

                              基于ansible自动化定义zabbix-keysnode

     zabbix的应用很普遍,我就很少说了,今天咱们来实现基于ansible自定义zabbix—keys,这东西可谓在zabbix的应用中重中之重。ansible这个也是一个很是好用自动化部署工具 。ansible结合zabbix自定义keys,不管在企业,生产环境也是普遍在应用的。  shell

 一样的主机环境咱们准备两台:vim

    node1:172.25.0.29 # 服务端bash

    node2:172.25.0.30 # 客户端ssh

一、进入ansible的hosts文件:添加相应的主机tcp

[root@node1 ~]# vim /etc/ansible/hosts 
[zabbix_install]
172.25.0.30

二、编写咱们的本身定义的key到客户端而且启动ide

[root@node1 ansible]# cat zabbix_key.yaml 
- hosts: zabbix_install
  remote_user: root
  tasks:
  - name: copy
    copy: src=/usr/local/zabbix/etc/zabbix_agentd.conf.d/{{ keys }}.conf  dest=/usr/local/zabbix/etc/zabbix_agentd.conf.d/{{ keys }}.conf 
    notify: reload zabbix
  handlers: 
    - name: reload zabbix
      shell: /etc/init.d/zabbix_agentd restart

查看咱们的自定义keys,查看tcp的链接status  工具

[root@node1 ~]# cat /usr/local/zabbix/etc/zabbix_agentd.conf.d/tcp_status.conf 
UserParameter=netstats[*],netstat -an | awk '/^tcp/{s[$NF]++}END{for (i in s) print i,s[i]}'  | grep $1 | awk '{print $$2}'
测试一下keys
[root@node1 ~]# /usr/local/zabbix/bin/zabbix_get -s 172.25.0.29 -k netstats[LISTEN] 
15

咱们发现能够成功的测试

三、推送命令:spa

ansible-playbook  -e keys=tcp_status zabbix_key.yaml 
[root@node1 ansible]# ansible-playbook  -e keys=tcp_status zabbix_key.yaml 
PLAY [zabbix_install] ****************************************************************************
TASK [Gathering Facts] ***************************************************************************
ok: [172.25.0.30]
TASK [copy] **************************************************************************************
ok: [172.25.0.30]
PLAY RECAP ***************************************************************************************
172.25.0.30                : ok=2    changed=0    unreachable=0    failed=0

  

四、去到客户端查看,咱们能够看到tcp_status.conf的文件了

[root@node2 ~]# cat /usr/local/zabbix/etc/zabbix_agentd.conf.d/tcp_status.conf 
UserParameter=netstats[*],netstat -an | awk '/^tcp/{s[$NF]++}END{for (i in s) print i,s[i]}'  | grep $1 | awk '{print $$2}'

五、访问服务端的,添加咱们的自定义监控,点击自定义模板:

c7148b6c405cc63de08f05de8b009512.jpg-wh_

六、而后添加监控项名称为$1status,键值为netstats[ESTABLISHED]

f3c2ca6b84596911e0661128d2c1b152.jpg-wh_

七、而后咱们再添加图像,绑定咱们的监控项:

d30178bd4cfa1c67dcf233e00e28e227.jpg-wh_

八、点击主机node2,而后咱们添加模板

b3ba79abd0347522717487162b6131cd.jpg-wh_

九、选择node2,添加模板,而后咱们就能够对咱们分主机进行自动义keys

d951671fdeec2e094b07fc5ae1d9ac02.jpg-wh_

 总结:

    基于ansible结合zabbix自定义keys,可以很好实现自动化管理客户端,可是在咱们作以前。咱们要作好ssh的公私玥的认证。才能实现ansible的推送。

相关文章
相关标签/搜索