1. 程式人生 > >簡單批量安裝zabbix_agent軟件

簡單批量安裝zabbix_agent軟件

ice 設置 如果 copy模塊 需要 con 批量安裝 task director

記錄一次批量安裝zabbix_agent
 由於要安裝的系統裏面是其他組安裝了openstack不想用他們的源來安裝不知道什麽版本的agent所以我就寫一個簡單的批量安裝我們自己版本的zabbix_agent

     知識點 ansible的一些命令,會點系統的都能看懂。

    首先有這麽幾個文件和目錄 
    hosts
    readme.txt
    roles
    zabbix.yml
先看readme.txt
直接運行,註意遠程用戶的修改
ansible-playbook -i hosts zabbix.yml

如果報錯,rpm包已經安裝就這樣忽略rpm包的安裝
ansible-playbook -i hosts zabbix.yml  --skip-tags=rpm_yes

hosts裏面修改需要安裝的機器列表

如果是密鑰連接
eval `ssh-agent`
ssh-add
之後就可以運行了。

hosts裏面就是ansible的INVENTORY : Ansible管理主機的清單
[zabbix]
1.1.1.1
2.2.2.2
[aa]
3.3.3.3
4.4.4.4
之後就是zabbiy.yml文件

  • hosts: zabbix #這個就是指定要在那些機器上安裝,在hosts裏面對應
    remote_user: wuyantao #遠程機器的用戶 要安裝的機器上要有
    sudo: yes #是否需要sudo 因為要安裝rpm所以要sudo
    vars:
    zabbix_ServerActive: 1.1.1.1 #定義變量 就是agent.conf裏面的值的替換
    zabbix_Server: 2.2.2.2
    roles:
    • zabbix #指定執行的roles裏面的那個
      之後就是看roles裏面的zabbix內容了就是安裝
      主要看task裏面的mian.yml配置

  • name: create-software
    file: path=/home/{{ansible_env.SUDO_USER}}/software state=directory
    這段就是創建了目錄放一些需要用的文件

  • name: copy-rpm
    copy: src={{item}} dest=/home/{{ansible_env.SUDO_USER}}/software/ mode=0644
    with_items:

    • scripts.tar.gz
    • zabbix-agent-3.2.6-1.el7.x86_64.rpm
    • zabbix_agentd.tar.gz
    • zabbix-get-3.2.6-1.el7.x86_64.rpm
    • zabbix-sender-3.2.6-1.el7.x86_64.rpm
      copy模塊就是復制文件到目錄裏面
  • name: shell
    shell: rpm -ivh /home/{{ansible_env.SUDO_USER}}/software/{{item}}
    with_items:

    • zabbix-agent-3.2.6-1.el7.x86_64.rpm
    • zabbix-get-3.2.6-1.el7.x86_64.rpm
    • zabbix-sender-3.2.6-1.el7.x86_64.rpm
      tags: rpm_yes
      shell模塊就是用rpm命令直接安裝特定的包,如果報錯就是已經安裝了rpm_zabbix包了通過tags可以跳過這個name
  • name: unarchive_scripts
    unarchive: src=/home/{{ansible_env.SUDO_USER}}/software/scripts.tar.gz dest=/etc/zabbix/ copy=no mode=755
    unarchive解壓模塊解壓到特定的目錄裏面

  • name: copy files
    copy: src={{item}} dest=/etc/zabbix/zabbix_agentd.d/ mode=0644 owner=root
    with_fileglob:

    • ../templates/zabbix_agentd.d/*.conf
      notify: restart zabbix-agent
      也是copy模塊實際上可以寫到一起不過沒有安裝rpm包就沒有zabbix目錄copy就會出錯。
  • name: start-zabbix-agent
    service: name=zabbix-agent state=started enabled=yes
    就是把服務開啟 設置開機啟動這個可以設置到最後

  • name: copy-zabbix-agentd-conf
    template: src=zabbix_agentd.conf.j2 dest=/etc/zabbix/zabbix_agentd.conf mode=0644
    notify: restart zabbix-agent
    修改配置並重啟

文件下載在 http://down.51cto.com/data/2453090

簡單批量安裝zabbix_agent軟件