簡單批量安裝zabbix_agent軟件
阿新 • • 發佈:2018-10-12
ice 設置 如果 copy模塊 需要 con 批量安裝 task director 記錄一次批量安裝zabbix_agent
hosts裏面就是ansible的INVENTORY : Ansible管理主機的清單
由於要安裝的系統裏面是其他組安裝了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-
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就會出錯。
- ../templates/zabbix_agentd.d/*.conf
-
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軟件