天天看點

zabbix_agent自動部署安裝

一、先編譯個zabbix_zgent

1、下載下傳安裝zabbix

wget "http://sourceforge.net/projects/zabbix/files/ZABBIX%20Latest%20Stable/3.4.3/zabbix-3.4.3.tar.gz"

tar zxf zabbix-3.4.3.tar.gz

cd /tmp/zabbix-3.4.3

./configure   --prefix=/usr/local/webserver/zabbix/ --enable-agent

make

make install

2、配置zabbix用戶端

cd /usr/local/webserver/zabbix/etc/

vim zabbix_agentd.conf

    Server=zabbix_server IP

    ServerActive=zabbix_server IP

    Hostname=本機的主機名

3、啟動zabbix_agent服務 

/usr/local/webserver/zabbix/sbin/zabbix_agentd

netstat -ntlp(預設端口10050)

ps -ef |grep zabbix

4、打包寫腳本

(為了以後友善批量部署agent,我們把這次編譯好的zabbix_agent打包,寫個shell腳本自動部署安裝)

tar czf /tmp/zabbix_agent.tar.gz /usr/local/webserver/zabbix/

vim /tmp/zabbix_agent_install.sh

    #zabbix_agent 自動部署腳本

    #!/bin/sh

    #判斷zabbix使用者在不在

    id zabbix >& /dev/null || {

           groupadd -g 2012 zabbix;

           useradd -s /sbin/nologin -u 2014 -g 2012 -M zabbix >& /dev/null

    }

    #判斷檔案目錄在不在(目錄一定要和編譯的保持一緻,否則服務起不起來)

    [ -d /usr/local/webserver ] || mkdir -p /usr/local/webserver

    [ -d /usr/local/webserver/zabbix ] && /bin/rm -rf /usr/local/webserver/zabbix

    #安裝zabbix_agent

    cd /tmp

    wget "http://10.8.97.136/zabbix-agent/zabbix.tar.gz" >/dev/null

    [ -f zabbix.tar.gz ] || echo install fail zabbix package not found

    tar zxf zabbix.tar.gz -C /usr/local/webserver/

    cp /usr/local/webserver/zabbix/sbin/zabbix_agentd  /etc/init.d/zabbix_agentd

    #/etc/services檔案是記錄網絡服務名和它們對應使用的端口号及協定

    grep zabbix /etc/service || {

        echo "zabbix-agent    10050/tcp" >>/etc/service

        echo "zabbix-agent    10050/udp" >>/etc/service

        echo "zabbix-trapper  10051/tcp" >>/etc/service

        echo "zabbix-trapper  10051/udp" >>/etc/service

    sed -i -e "/^Hostname/s/^.*$/Hostname=`hostname`/" /usr/local/webserver/zabbix/etc/zabbix_agentd.conf

    #chkconfig zabbix_agentd on   #這個報錯說不支援 再研究why

    /etc/init.d/zabbix_agentd restart >& /dev/null

    rm -rf /tmp/zabbix.tar.gz

    rm -rf /tmp/zabbix_agent_install.sh

    #pgrep指令以名稱為依據從運作程序隊列中查找程序,并顯示查找到的程序id

    pgrep zabbix >& /dev/null && echo "install sucessful" || echo "install fail"

5、腳本寫好測試沒問題,就可以放在web伺服器上,以後安裝agent就可以直接執行

    curl -i  http://xxx.xxx.xxx/xxx/zabbix_agent_install.sh |/bin/sh

     本文轉自西鼠 51CTO部落格,原文連結:http://blog.51cto.com/10630401/1978803,如需轉載請自行聯系原作者