zoukankan      html  css  js  c++  java
  • Ansible实现zabbix服务器agent端批量部署

    项目需求:由于搭建zabbix,需要每台服务器都需要安装监控端(agent)正常的的操作是一台一台去安装,这样确实有点浪费时间,这里为大家准备了一款开源

    的自动化运维工具Ansible,相信大家也很熟悉,话不多说,开始部署。

    这里我已经提前安装好ansible了,如果不知道怎么安装的小伙伴可以看我上一遍随笔。

    修改主机名以及/etc/ansible/hosts  把需要执行的机器添加进入,并生成秘钥,成免交互(上篇文章都有)

    192.168.30.21    ansible

    192.168.30.25    client1

    192.168.30.26    client2

    [root@ansible ~]# vim zabbix-agent.sh

    #!/bin/bash

    HN=$(hostname)

    if  [ ! -f /etc/yum.repos.d/zabbix.repo ]

    then

        rpm -Uvh http://repo.zabbix.com/zabbix/3.2/rhel/7/x86_64/zabbix-release-3.2-1.el7.noarch.rpm

    fi

    rpm -q zabbix-agent &>/dev/null

    [ $? -ne 0 ] && yum -y install zabbix-agent

    cp /etc/zabbix/zabbix_agentd.conf{,-$(date +%F%T)}

    sed -i 's/Server=127.0.0.1/Server=192.168.30.21/g' /etc/zabbix/zabbix_agentd.conf

    sed -i 's/ServerActive=127.0.0.1/ServerActive=192.168.30.21/g' /etc/zabbix/zabbix_agentd.conf

    sed -i 's/Hostname=Zabbix server/Server=$HN/g' /etc/zabbix/zabbix_agentd.conf

    systemctl restart zabbix-agent

    [root@ansible ~]# vim /etc/ansible/zabbix-agent.yml

    - hosts: cloud

      remote_user: root

      tasks:

        - name: install yum

          copy: src=/root/zabbix-agent.sh dest=/opt/zabbix-agent.sh mode=777

          notify:

            - script agent

      handlers:

        - name: script agent

          command: /opt/zabbix-agent.sh

    预执行-C

    [root@ansible ansible]# ansible-playbook -C /etc/ansible/zabbix-agent.yml

    [root@ansible ansible]# ansible-playbook  /etc/ansible/zabbix-agent.yml

    查看端口开启状态

    [root@client1 ~]# netstat -anpt |grep 10050

    tcp        0      0 0.0.0.0:10050           0.0.0.0:*               LISTEN      3358/zabbix_agentd  

    tcp6       0      0 :::10050                :::*                    LISTEN      3358/zabbix_agentd  

    这样多台服务器的agent端已经成功批量部署多台,然后可以在zabbixagent端再添加监控项,再添加告警通知到邮箱

  • 相关阅读:
    JS 循环遍历JSON数据 分类: JS技术 JS JQuery 2010-12-01 13:56 43646人阅读 评论(5) 收藏 举报 jsonc JSON数据如:{"options":"[{
    CLLocation的属性以及使用的解释
    单片机小白学步系列(十六) 单片机/计算机系统概述:模块化思想
    关于android中的单位(dp、sp)
    手动脱RLPack壳实战
    集成环信时遇到的问题file not found: libEaseMobClientSDK.a
    Cocos2dx 小技巧(九)现成的粒子特效
    设计模式
    2011 ACM-ICPC 成都赛区A题 Alice and Bob (博弈动规)
    hdu 2544 最短路(SPFA算法)
  • 原文地址:https://www.cnblogs.com/zc1741845455/p/10881074.html
Copyright © 2011-2022 走看看