自動化安裝zabbix腳本(3.0/3.2)
一、zabbix簡介
zabbix是一個基于web界面的提供分布式系統監視以及網絡監視功能的企業級的開源解決方案。zabbix能監視各種網絡參數,保證伺服器系統的安全營運;并提供靈活的通知機制以讓系統管理者快速定位/解決存在的各種問題。
二、zabbix特點
1.企業級的、開源的、分布式
2.靈活的告警機制、存儲資料提供傑出的報告及圖形
3.通過内置的繪圖方法實作監控資料實時繪圖
4.允許靈活地自定義問題閥值
5.支援主動與被動方式(agent、snmp、ipmi、自定義腳本)
三、自動化安裝zabbix(3.0/3.2)腳本
#!/bin/bash
#date 2017/1/20
#mail [email protected]
[ $(id -u) != "0" ] && echo "error: you must be root to run this script" && exit 1
export path=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
sed -i "s/selinux=enforcing/selinux=disabled/" /etc/selinux/config
setenforce 0
which ntpdate
if [ $? -eq 0 ];then
/usr/sbin/ntpdate time1.aliyun.com
echo "*/5 * * * * /usr/sbin/ntpdate -s time1.aliyun.com">>/var/spool/cron/root
else
yum install ntpdate -y
fi
clear
echo "##########################################"
echo "# auto install zabbix. ##"
echo "# press ctrl + c to cancel ##"
echo "# any key to continue ##"
echo "(1) install zabbix3.0"
echo "(2) install zabbix3.2"
echo "(3) exit"
read -p "please input your choice:" num
case $num in
1)
url="http://repo.zabbix.com/zabbix/3.0/rhel/6/x86_64/zabbix-release-3.0-1.el6.noarch.rpm"
ver=zabbix-3.0
;;
2)
url="http://repo.zabbix.com/zabbix/3.2/rhel/6/x86_64/zabbix-release-3.2-1.el6.noarch.rpm"
ver=zabbix-3.2
3)
echo -e "\033[41;37m you choice channel! \033[0m" && exit 0
*)
echo -e "\033[41;37m input error! place input{1|2|3} \033[0m" && exit 1
esac
echo -e "\033[32m you choice install $ver.install\033[0m"
echo -e "\033[5m press any key to start install $ver... \033[0m"
read -n 1
tdir=/tools
ip=`ifconfig eth0 | grep "inet addr" | awk -f"[: ]+" '{print $4}'`
yum remove php* -y
rpm -uvh http://mirror.webtatic.com/yum/el6/latest.rpm
ls /etc/yum.repos.d/webtatic.repo
yum -y install `yum list|grep php55w|awk '{printf ("%s ",$1)}'` --skip-broken
sed -i "s/;date.timezone =/date.timezone = asia\/shanghai/g" /etc/php.ini
sed -i "s#`grep max_execution_time /etc/php.ini`#max_execution_time = 300#g" /etc/php.ini
#max_execution_time = 30
sed -i "s#`grep post_max_size /etc/php.ini`#post_max_size = 32m#g" /etc/php.ini
sed -i "s#`grep max_input_time\ = /etc/php.ini`#max_input_time = 300#g" /etc/php.ini
sed -i "s#`grep memory_limit /etc/php.ini`#memory_limit = 128m#g" /etc/php.ini
service php-fpm start /tmp/php-install.log 2>&1
stat=`echo $?`
port=`netstat -lntup|grep php-fpm|wc -l`
if [ $stat -eq 0 ] && [ $port -eq 1 ];then
echo -e "\033[32m php is install success! \033[0m"
echo -e "\033[32m php install file.please check /tmp/php-install.log \033[0m"
yum
install -y ntpdate mailx dos2unix vim zcat wget net-snmp-utils gcc
gcc-c++ autoconf httpd libxml* mysql mysql-server httpd-manual mod_ssl
mod_perl mod_auth_mysql mysql-connector-odbc mysql-devel
libdbi-dbd-mysql net-snmp-devel curl-devel unixodbc-devel openipmi-devel
java-devel fping
service mysqld start
groupadd zabbix -g 201
useradd -g zabbix -u 201 -m -s /sbin/nologin zabbix
rpm -ivh $url
ls /etc/yum.repos.d/zabbix.repo
zab=`echo $?`
if [ ! -d $tdir ];then
/bin/mkdir $tdir && cd $tdir
yum install -y zabbix-agent.x86_64 zabbix-get.x86_64 zabbix-server-mysql.x86_64 zabbix-web.noarch zabbix-web-mysql.noarch
if [ "$ver" == "zabbix-3.0" ];then
elif [ "$ver" == "zabbix-3.2" ];then
if [ -d $tdir ];then
cd $tdir
for
pag in zabbix-server-mysql-3.2.3-1.el6.x86_64.rpm
zabbix-web-3.2.3-1.el6.noarch.rpm
zabbix-web-mysql-3.2.3-1.el6.noarch.rpm
zabbix-agent-3.2.3-1.el6.x86_64.rpm
do
wget -c http://repo.zabbix.com/zabbix/3.2/rhel/6/x86_64/deprecated/$pag
done
yum install -y zabbix-server-mysql* zabbix-web-mysql* zabbix-agent zabbix-web*
echo "error zabbixi version"
mysql -uroot -e "create database zabbix character set utf8;"
mysql -uroot -e "grant all privileges on zabbix.* to zabbix@localhost identified by 'zabbix';"
mysql -uroot -e "flush privileges;"
cd /usr/share/doc
mysqldir=`ls -l /usr/share/doc/ | grep zabbix-server-mysql* | awk '{print $9}'`
cd $mysqldir
zcat create.sql.gz | mysql -uroot zabbix
mysqladmin -uroot password "mysqladmin"
cd /usr/share/
cp -r ./zabbix/ /var/www/html/zabbix
echo "dbpassword=zabbix" >> /etc/zabbix/zabbix_server.conf
service httpd start
service zabbix-server start
service zabbix-agent start
chkconfig httpd on
chkconfig mysqld on
chkconfig php-fpm on
chkconfig zabbix-server on
chkconfig zabbix-agent on
/etc/init.d/iptables status >/dev/null 2>&1
iptables -i input -p tcp --dport 443 -j accept &&
iptables -i input -p tcp --dport 10051 -j accept &&
iptables -i input -p tcp --dport 10050 -j accept &&
iptables -i input -p tcp --dport 3000 -j accept &&
#iptables -i input -p tcp --dport 3306 -j accept &&
service iptables save >/dev/null 2>&1
/etc/init.d/iptables restart
echo -e "\033[32m iptables is stopd\033[0m"
stat=`/bin/ps -ef|grep zabbix_server|grep -v grep|wc -l`
port=`/bin/netstat -lntup|grep zabbix_server|wc -l`
if [ $stat -ne 0 ] && [ $port -ne 0 ];then
echo -e "\033[42;37m zabbix$ver is install success,username:admin password:zabbix \033[0m"
echo -e "\033[42;37m mysql username:root password:mysqladmin \033[0m"
echo -e "\033[42;37m rul:https://$ip/zabbix \033[0m"
四、腳本說明
1.執行腳本如下:(選擇喜歡的版本安裝,目前最新的3.4官方有說明,但還未發現軟體包)
2.按任繼健回車開始安裝
3.安裝完成如下圖
4.通過浏覽器打開腳本執行完的url進行安裝即可。
本文出自 “kaliarch” 部落格,請務必保留此出處http://kaliarch.blog.51cto.com/8966921/1896968