您的位置:首页 > 其它

ansible部署zabbix客户端

2017-10-22 18:21 519 查看
第一次用ansible部署软件,ansible这款软件用得还不熟,所以摸索了挺久的。

由于ansible是基于ssh的,所以先在服务端生成秘钥,然后把公钥传到要部署的客户机。
ssh-keygen
ssh-copy-id 192.168.40.145
ssh-copy-id 192.168.40.146
然后同步一下时间。
安装软件:
yum install ansible -y
然后修改配置文件,添加要安装zabbix客户端的主机ip
[root@test ansible]# cat /etc/ansible/hosts
……
……
[zabbixclient]
192.168.40.145
192.168.40.146
然后将安装剧本写入文件中。
[root@test ansible]# cat instal_zabbixclient.yaml
- hosts: zabbixclient
tasks:
- name: install packages
yum: name=`item` state=latest
with_items:         ##使用with循环安装依赖包,如果好有其他依赖包没安装,可以写在下面。
- curl-devel
- name: sent packages tar
copy: src=/usr/local/src/zabbix-3.2.7.tar.gz dest=/usr/local/src/zabbix-3.2.7.tar.gz
- name: unzip the tar
shell: cd /usr/local/src/;tar -xf zabbix-3.2.7.tar.gz
- name: compile zabbix
shell: cd /usr/local/src/zabbix-3.2.7;./configure --with-net-snmp --with-libcurl --enable-agent --prefix=/usr/local/zabbix
- name: make
shell: cd /usr/local/src/zabbix-3.2.7;make && make install
- name: copy zabbix_agentd.conf
copy: src=/usr/local/zabbix/etc/zabbix_agentd.conf dest=/usr/local/zabbix/etc/
- name: copy zabbix_agentd
copy: src=/usr/local/src/zabbix-3.2.7/misc/init.d/fedora/core5/zabbix_agentd dest=/etc/init.d/ mode=700
- name: useradd zabbix
shell: useradd zabbix -s /sbin/nologin
- name: start zabbix_agentd
shell: /etc/init.d/zabbix_agentd start
然后先修改一下以上两个要copy过去的文件。
先将客户端配置文件zabbix_agented.conf的Server指向zabbix服务器:
sed -i 's/Server=127.0.0.1/Server=192.168.40.5/g' /usr/local/zabbix/etc/zabbix_agentd.conf
再将启动文件复制到/etc/init.d/目录下,然后修改一下启动路径:
cp   /usr/local/src/zabbix-3.2.7/misc/init.d/fedora/core5/zabbix_agentd  /etc/init.d/
sed -i  's/ZABBIX_BIN="\/usr\/local\/sbin\/zabbix_agentd/ZABBIX_BIN="\/usr\/local\/zabbix\/sbin\/zabbix_agentd"/g' /etc/init.d/zabbix_agentd
然后就可以测试一下ansible安装是否可以:
[root@test ansible]# ansible-playbook  -C instal_zabbixclient.yaml
PLAY [zabbixclient] **************************************************************************************************************************************************************
TASK [Gathering Facts] ***********************************************************************************************************************************************************
ok: [192.168.40.145]
ok: [192.168.40.146]
TASK [install packages] **********************************************************************************************************************************************************
ok: [192.168.40.146] => (item=[u'curl-devel'])
ok: [192.168.40.145] => (item=[u'curl-devel'])
TASK [sent packages tar] *********************************************************************************************************************************************************
ok: [192.168.40.145]
ok: [192.168.40.146]
TASK [unzip the tar] *************************************************************************************************************************************************************
skipping: [192.168.40.145]
skipping: [192.168.40.146]
TASK [compile zabbix] ************************************************************************************************************************************************************
skipping: [192.168.40.145]
skipping: [192.168.40.146]
TASK [make] **********************************************************************************************************************************************************************
skipping: [192.168.40.145]
skipping: [192.168.40.146]
TASK [copy zabbix_agentd.conf] ***************************************************************************************************************************************************
ok: [192.168.40.145]
ok: [192.168.40.146]
TASK [copy zabbix_agentd] ********************************************************************************************************************************************************
ok: [192.168.40.146]
ok: [192.168.40.145]
TASK [useradd zabbix] ************************************************************************************************************************************************************
skipping: [192.168.40.145]
skipping: [192.168.40.146]
TASK [start zabbix_agentd] *******************************************************************************************************************************************************
skipping: [192.168.40.146]
skipping: [192.168.40.145]
PLAY RECAP ***********************************************************************************************************************************************************************
192.168.40.145             : ok=5    changed=0    unreachable=0    failed=0
192.168.40.146             : ok=5    changed=0    unreachable=0    failed=0
直接执行:
[root@test ansible]# ansible-playbook  instal_zabbixclient.yaml
PLAY [zabbixclient] **************************************************************************************************************************************************************
TASK [Gathering Facts] ***********************************************************************************************************************************************************
ok: [192.168.40.145]
ok: [192.168.40.146]
TASK [install packages] **********************************************************************************************************************************************************
ok: [192.168.40.145] => (item=[u'curl-devel'])
ok: [192.168.40.146] => (item=[u'curl-devel'])
TASK [sent packages tar] *********************************************************************************************************************************************************
ok: [192.168.40.145]
ok: [192.168.40.146]
TASK [unzip the tar] *************************************************************************************************************************************************************
changed: [192.168.40.145]
changed: [192.168.40.146]
TASK [compile zabbix] ************************************************************************************************************************************************************
changed: [192.168.40.145]
changed: [192.168.40.146]
TASK [make] **********************************************************************************************************************************************************************
changed: [192.168.40.146]
changed: [192.168.40.145]
TASK [copy zabbix_agentd.conf] ***************************************************************************************************************************************************
ok: [192.168.40.145]
ok: [192.168.40.146]
TASK [copy zabbix_agentd] ********************************************************************************************************************************************************
ok: [192.168.40.145]
ok: [192.168.40.146]
TASK [useradd zabbix] ************************************************************************************************************************************************************
changed: [192.168.40.145]
changed: [192.168.40.146]
TASK [start zabbix_agentd] *******************************************************************************************************************************************************
changed: [192.168.40.145]
changed: [192.168.40.146]
PLAY RECAP ***********************************************************************************************************************************************************************
192.168.40.145             : ok=10   changed=5    unreachable=0    failed=0
192.168.40.146             : ok=10   changed=5    unreachable=0    failed=0


启动成功后就去服务端zabbix界面添加主机:



完。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  zabbix ansible