為了方便把安裝Zabbix的過(guò)程整理成自動(dòng)化一鍵部署腳本,有興趣可以參考,都是些基本的命令:

網(wǎng)站的建設(shè)
創(chuàng)新互聯(lián)建站專(zhuān)注網(wǎng)站定制,經(jīng)驗(yàn)豐富,不做模板,主營(yíng)網(wǎng)站定制開(kāi)發(fā).小程序定制開(kāi)發(fā),H5頁(yè)面制作!給你煥然一新的設(shè)計(jì)體驗(yàn)!已為
發(fā)電機(jī)租賃等企業(yè)提供專(zhuān)業(yè)服務(wù)。#!/bin/bash
#Zabbix 一鍵部署腳本
#安裝zabbix3.0.4,依賴(lài)php-5.6.25
src_home=`pwd`
echo -n "正在配置iptables防火墻……"
/etc/init.d/iptables save >> /dev/null
chkconfig iptables off
if [ $? -eq 0 ];then
echo -n "Iptables防火墻初始化完畢!"
fi
echo -n "正在關(guān)閉SELinux……"
setenforce 0 > /dev/null 2>&1
sed -i '/^SELINUX=/s/=.*/=disabled/' /etc/selinux/config
if [ $? -eq 0 ];then
echo -n "SELinux初始化完畢!"
fi
echo -n "正在安裝nginx yum 源……"
yum -y install wget
wget http://nginx.org/packages/centos/6/noarch/RPMS/nginx-release-centos-6-0.el6.ngx.noarch.rpm
rpm -ivh nginx-release-centos-6-0.el6.ngx.noarch.rpm
if [ $? -eq 0 ];then
echo -n "Nginx yum 源 初始化完畢!"
fi
echo -n "正在安裝epel-release yum 源……"
rpm -Uvh http://mirrors.ustc.edu.cn/fedora/epel/6/x86_64/epel-release-6-8.noarch.rpm
rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm
if [ $? -eq 0 ];then
echo -n "epel-release yum 源 初始化完畢!"
fi
echo -n "正在安裝php-5.6.25的編譯所需相關(guān)軟件……"
yum -y install make gcc nginx libmcrypt php-mcrypt mysql-server mysql-devel net-snmp-devel libcurl-devel php php-mysql php-bcmath php-mbstring php-gd php-xml bzip2-devel libmcrypt-devel libxml2-devel gd gd-devel libcurl*
if [ $? -eq 0 ];then
echo -n "php-5.6.25依賴(lài)初始化完畢!"
fi
echo -n "正在添加zabbix用戶(hù)……"
useradd -M -s /sbin/nologin zabbix && echo "OK"
echo -n "正在啟動(dòng)mysqld服務(wù)……"
service mysqld start
if [ $? -eq 0 ];then
echo -n "Mysql啟動(dòng)完畢!"
fi
#echo -n "正在為mysql的root用戶(hù)設(shè)置密碼……"
#mysql_user_root_password="password"
#mysql_user_zabbix_password="zabbix"
#mysqladmin -uroot -p password $mysql_user_root_password
echo "正在執(zhí)行mysql語(yǔ)句,創(chuàng)建zabbix數(shù)據(jù)庫(kù),授權(quán)zabbix訪(fǎng)問(wèn)數(shù)據(jù)庫(kù)"
mysql -e "create database zabbix character set utf8;grant all privileges on zabbix.* to zabbix@'%' identified by 'zabbix';grant all privileges on zabbix.* to zabbix@'127.0.0.1' identified by 'zabbix';grant all privileges on zabbix.* to zabbix@localhost identified by 'zabbix';flush privileges;"
#echo "正在執(zhí)行mysql語(yǔ)句,創(chuàng)建zabbix數(shù)據(jù)庫(kù),授權(quán)zabbix訪(fǎng)問(wèn)數(shù)據(jù)庫(kù)"
#mysql -uroot -p"$mysql_user_root_password" -e "create database zabbix character set utf8" && echo "創(chuàng)建zabbix數(shù)據(jù)庫(kù)完成"
#mysql -uroot -p"$mysql_user_root_password" -e "grant all privileges on zabbix.* to zabbix@localhost identified by '$mysql_user_zabbix_password'" && echo "授權(quán)zabbix本地登錄數(shù)據(jù)庫(kù)"
#mysql -uroot -p"$mysql_user_root_password" -e "grant all privileges on zabbix.* to zabbix@'%' identified by '$mysql_user_zabbix_password'" && echo "授權(quán)任何主機(jī)本地登錄數(shù)據(jù)庫(kù)"
#zabbix一鍵部署第三方軟件包的解壓目錄
echo -n "編譯安裝php-5.6.25....可能需要幾分鐘"
tar zxf ${src_home}/php-5.6.25.tar.gz
cd ${src_home}/php-5.6.25 && ./configure --prefix=/usr/local/php --with-config-file-path=/etc --enable-fpm --with-libxml-dir --with-gd --with-jpeg-dir --with-png-dir --with-freetype-dir --with-iconv-dir --with-zlib-dir --with-mcrypt --enable-soap --enable-gd-native-ttf --enable-mbstring --enable-exif --with-pear --with-curl --enable-bcmath --with-gettext --with-mysqli --enable-sockets
cd ${src_home}/php-5.6.25 && make -j 4 && make install
cd
echo -n "正在配置啟動(dòng)php-fpm....請(qǐng)稍等"
/bin/cp ${src_home}/php-5.6.25/php.ini-production /etc/php.ini
cp ${src_home}/php-5.6.25/sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
chmod 777 /etc/init.d/php-fpm
cd /usr/local/php/etc/ && cp php-fpm.conf.default php-fpm.conf
cd
service php-fpm start
if [ $? -eq 0 ];then
echo -n "php-fpm啟動(dòng)完畢!"
fi
#zabbix編譯安裝
echo -n "正在導(dǎo)入zabbix數(shù)據(jù)到mysql數(shù)據(jù)庫(kù)中...."
tar zxf ${src_home}/zabbix-3.0.4.tar.gz
mysql -uzabbix -pzabbix zabbix < ${src_homie}/zabbix-3.0.4/database/mysql/schema.sql
mysql -uzabbix -pzabbix zabbix < ${src_homie}/zabbix-3.0.4/database/mysql/p_w_picpaths.sql
mysql -uzabbix -pzabbix zabbix < ${src_homie}/zabbix-3.0.4/database/mysql/data.sql
if [ $? -eq 0 ];then
echo -n "zabbix數(shù)據(jù)導(dǎo)入啟動(dòng)完畢!"
fi
echo -n "正在安裝zabbix編譯依賴(lài)軟件包....可能需要幾分鐘"
yum -y install net-snmp-devel curl-devel javacc java-1.8*
echo -n "編譯安裝Zabbix-server....可能需要幾分鐘"
cd ${src_home}/zabbix-3.0.4 && ./configure --prefix=/usr/local/zabbix --enable-server --enable-proxy --enable-agent --with-net-snmp --with-libcurl --enable-java --with-mysql
make -j 4 && make install
echo -n "正在制作Zabbix-server啟動(dòng)腳本...."
echo -e "zabbix-agent 10050/tcp #ZabbixAgent\nzabbix-agent 10050/udp #Zabbix Agent\nzabbix-trapper 10051/tcp #ZabbixTrapper\nzabbix-trapper 10051/udp #Zabbix Trapper" >> /etc/services
cp ${src_home}/zabbix-3.0.4/misc/init.d/fedora/core/zabbix_server /etc/init.d/
cp ${src_home}/zabbix-3.0.4/misc/init.d/fedora/core/zabbix_agentd /etc/init.d/
cd
chmod 777 /etc/init.d/zabbix_*
sed -i '/BASEDIR=/s/$/\/zabbix/' /etc/init.d/zabbix_server
sed -i '/BASEDIR=/s/$/\/zabbix/' /etc/init.d/zabbix_agentd
echo -n "正在配置zabbix配置文件...."
cd /usr/local/zabbix/etc
sed '/# DBHost=localhost/a\DBHost=localhost' zabbix_server.conf -i
sed '/# DBPassword=/a\DBPassword=zabbix' zabbix_server.conf -i
sed '/# EnableRemoteCommands=0/a\EnableRemoteCommands=1' zabbix_agentd.conf -i
sed '/# ListenPort=10050/a\ListenPort=10050' zabbix_agentd.conf -i
sed '/# User=zabbix/a\User=zabbix' zabbix_agentd.conf -i
sed '/# AllowRoot=0/a\AllowRoot=1' zabbix_agentd.conf -i
sed '/# UnsafeUserParameters=0/a\UnsafeUserParameters=1' zabbix_agentd.conf -i
if [ $? -eq 0 ];then
echo -n "zabbix配置完畢!"
fi
echo -n "正在啟動(dòng)zabbix_server and zabbix_agent...."
service zabbix_server start
service zabbix_agentd start
chkconfig zabbix_server on
chkconfig zabbix_agentd on
cd
echo -n "正在配置nginx反代zabbix...."
cp -r ${src_home}/zabbix-3.0.4/frontends/php /usr/share/nginx/html/zabbix
cd /etc/nginx/conf.d/ && mv default.conf default.conf.bak
cp ${src_home}/zabbix.conf /etc/nginx/conf.d/
echo -n "配置完成,正在啟動(dòng)nginx web server...."
service nginx start
if [ $? -eq 0 ];then
echo -n "Nginx啟動(dòng)完畢!"
fi
echo -n "正在進(jìn)行最后的zabbix Install ,php參數(shù)修改....."
sed '/^post_max_size =/s/=.*/= 16M/' /etc/php.ini -i
sed '/^max_execution_time =/s/=.*/= 300/' /etc/php.ini -i
sed '/^max_input_time =/s/=.*/= 300/' /etc/php.ini -i
sed -i '/^;date.timezone/a\date.timezone = Asia/Shanghai' /etc/php.ini
sed -i '/^;always_populate_raw_post_data.*/a\always_populate_raw_post_data = -1' /etc/php.ini
sed -i '/^mysqli.default_socket =/s/=.*/= \/var\/lib\/mysql\/mysql.sock/' /etc/php.ini
echo -n "正在重新啟動(dòng)php服務(wù)....."
/etc/init.d/php-fpm restart
echo -n "正在初始化zabbix Server...."
cp ${src_home}/zabbix.conf.php /usr/share/nginx/html/zabbix/conf/
echo -n "正在做最后的Zabbix Server重啟....."
/etc/init.d/zabbix_server restart
if [ $? -eq 0 ];then
echo -n "Zabbix Server 啟動(dòng)完畢!"
fi
echo -n "正在解決zabbix server 亂碼問(wèn)題,請(qǐng)你耐心等待....."
cd /usr/share/nginx/html/zabbix/fonts && mv DejaVuSans.ttf DejaVuSans.ttf.bak
cp ${src_home}/msyh.ttf .
cd ../include/ && sed -i 's/DejaVuSans/msyh/g' defines.inc.php
cd
echo -n "恭喜你,Zabbix 部署到此完成,如有問(wèn)題,請(qǐng)參照腳本單獨(dú)解決?。?!"
echo -e -n "后續(xù)的操作:1、通過(guò)http://ip/zabbix 訪(fǎng)問(wèn)你的zabbix Web頁(yè)面,下一步....一直到底。2、你可能需要配置Nginx域名,通過(guò)域名訪(fǎng)問(wèn)Zabbix Server.... 3、你需要自己自定義或者使用系統(tǒng)自帶模板,添加主機(jī)等等...."
腳本跑完沒(méi)報(bào)錯(cuò),在你的瀏覽器里輸入:http://172.16.2.21/zabbix/ 應(yīng)該可以看到下面的頁(yè)面:

一鍵部署tar包我已經(jīng)打包好了,請(qǐng)到附件下載:
連接:http://pan.baidu.com/s/1nuTaX2D 密碼:yckv
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務(wù)器15元起步,三天無(wú)理由+7*72小時(shí)售后在線(xiàn),公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性?xún)r(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專(zhuān)為企業(yè)上云打造定制,能夠滿(mǎn)足用戶(hù)豐富、多元化的應(yīng)用場(chǎng)景需求。
網(wǎng)站標(biāo)題:分分鐘一鍵部署ZabbixServer-創(chuàng)新互聯(lián)
標(biāo)題路徑:
http://weahome.cn/article/ejicc.html