zabbix3.0/3.2/3.4自动安装脚本

自动化安装zabbix脚本(3.0/3.2/3.4)

一、zabbix简介

zabbix是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。zabbix能监视各种网络参数,保证服务器系统的安全运营;并提供灵活的通知机制以让系统管理员快速定位/解决存在的各种问题。

二、zabbix特点

1.企业级的、开源的、分布式

2.灵活的告警机制、存储数据提供杰出的报告及图形

3.通过内置的绘图方法实现监控数据实时绘图

4.允许灵活地自定义问题阀值

5.支持主动与被动方式(agent、snmp、ipmi、自定义脚本)

三、自动化安装zabbix(3.0/3.2)脚本

#!/bin/bash
#Date 2017/8/31
#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
    /usr/sbin/ntpdate time1.aliyun.com
    echo "*/5 * * * * /usr/sbin/ntpdate -s time1.aliyun.com">>/var/spool/cron/root    
fi
clear
echo "##########################################"
echo "#       Auto Install zabbix.            ##"
echo "#       Press Ctrl + C to cancel        ##"
echo "#       Any key to continue             ##"
echo "##########################################"
echo "(1) Install zabbix3.0"
echo "(2) Install zabbix3.2"
echo "(3) Install zabbix3.4"
echo "(4) 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)
    URL="http://repo.zabbix.com/zabbix/3.4/rhel/6/x86_64/zabbix-release-3.4-1.el6.noarch.rpm"
    VER=zabbix-3.4
;;
4)
    echo -e "\033[41;37m You choice channel! \033[0m" && exit 0
;;
*)
    echo -e "\033[41;37m Input Error! Place input{1|2|3|4} \033[0m" && exit 1
;;
esac
clear
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
if [ $? -eq 0 ];then
    yum -y install `yum list|grep php71w|awk ‘{printf ("%s ",$1)}‘` --skip-broken
fi
if [ $? -eq 0 ];then
    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
fi
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"
else
    echo -e "\033[32m PHP install file.please check /tmp/php-install.log \033[0m"
fi
yum install -y ntpdate mailx dos2unix vim zcat wget net-snmp-utils gcc gcc-c++ autoconf httpd libxml* mysql mysql-server  httpd-manua
l 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 clear
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
fi
if [ "$VER" == "zabbix-3.0" ];then
    yum install -y zabbix-agent.x86_64 zabbix-get.x86_64 zabbix-server-mysql.x86_64 zabbix-web.noarch zabbix-web-mysql.noarch
elif [ "$VER" == "zabbix-3.2" ];then
    if [ -d $TDIR ];then
        cd $TDIR
    else
            /bin/mkdir $TDIR && cd $TDIR
    fi
    if [ $? -eq 0 ];then
        for PAG in zabbix-server-mysql-3.2.7-1.el6.x86_64.rpm zabbix-web-3.2.7-1.el6.noarch.rpm zabbix-web-mysql-3.2.7-1.el6.
noarch.rpm         do
            wget -c --timeout=5 http://repo.zabbix.com/zabbix/3.2/rhel/6/x86_64/deprecated/$PAG
        done
        wget -c --timeout=5 http://repo.zabbix.com/zabbix/3.2/rhel/6/x86_64/zabbix-agent-3.2.7-1.el6.x86_64.rpm
        yum localinstall -y zabbix-server-mysql* zabbix-web-mysql* zabbix-agent zabbix-web*
        if [ $? -eq 0 ];then
            exit 1 && echo "Zabbix Softward install fail,Please check dirname /tools"
        fi
    fi
elif [ "$VER" == "zabbix-3.4" ];then
    if [ -d $TDIR ];then
        cd $TDIR
    else
            /bin/mkdir $TDIR && cd $TDIR
    fi
    if [ $? -eq 0 ];then
        for PAG in zabbix-server-mysql-3.4.0-1.el6.x86_64.rpm zabbix-web-3.4.0-1.el6.noarch.rpm zabbix-web-mysql-3.4.0-1.el6.
noarch.rpm         do
            wget -c --timeout=5 --tries=35 --user-agent="Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US) AppleWebKit/534.
16 (KHTML, like Gecko)Chrome/10.0.648.204 Safari/534.16" http://repo.zabbix.com/zabbix/3.4/rhel/6/x86_64/deprecated/$PAG        done
        wget -c --timeout=5 --tries=35 --user-agent="Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US) AppleWebKit/534.16 (KHTM
L, like Gecko)Chrome/10.0.648.204 Safari/534.16" http://repo.zabbix.com/zabbix/3.4/rhel/6/x86_64/zabbix-agent-3.4.0-1.el6.x86_64.rpm        yum localinstall -y zabbix-*
        if [ $? -ne 0 ];then
            "Zabbix Softward install fail,Please check dirname /tools" && exit 1
        fi
    fi
else
    echo "error zabbixi version"
fi
if [ $? -eq 0 ];then
mysql -uroot -e "create database zabbix character set utf8;" 
mysql -uroot -e "grant all privileges on zabbix.* to [email protected] identified by ‘zabbix‘;"
mysql -uroot -e "flush privileges;"
fi
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
if [ $? -eq 0 ];then
    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
else
    echo -e "\033[32m iptables is stopd\033[0m"
fi
clear
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"
fi

四、版本特性与脚本执行

升级PHP版本为7.1,可以安装最新Zabbix3.4

1.执行脚本如下:

2.执行完成如下:

3.访问提示的URL进行访问:

4.点击Next setp

5.脚本内PHP参数已经修改完成,直接点击Next setp

6.填写脚本安装完成提示的Password,点击安装

7.点击下一步

8.点击下一步安装成功

时间: 2024-10-25 11:17:32

zabbix3.0/3.2/3.4自动安装脚本的相关文章

mysql自动安装脚本

为适应自己工作习惯和需要,花一点时间写了一个mysql自动安装脚本,供大家参考学习. 注意: 1.需要先安装cmake 2.数据库版本需要在第二步安装mysql时修改 3.该脚本是以root用户安装并启动 脚本内容如下: ######################################################################## #mysql自动安装脚本,其中变量/mysql_v_dir/和/port/可根据实际需要修改    # #执行脚本命令:sh mys

ipvsadm+keepalived+inotify-tools自动安装脚本

#!/bin/bash # # #this is install keepalived+lvs-DR # # tar_dir=/usr/src configure_yum() { echo "[rhel-local]">/etc/yum.repos.d/rhel-local.repo echo "baseurl=file:///media/Server">>/etc/yum.repos.d/rhel-local.repo echo "en

linux下PXE无人值守环境自动安装脚本

当时单位要安装一套linux的PXE无人值守装机程序,装完后花了九牛二虎之力写了一个自动安装脚本,以便今后安全方便,不过后来就没怎么用了,甚至都有些淡忘了,哈哈,分享出来,有研究PXE自动安装的可以看看,在使用的时候里面的ip地址要换掉的. #!/bin/sh #writer:gaolixu yum -y install dhcp tftp-server vsftpd syslinux xinetd if ! service dhcpd status ;then ############### 

mysql 自动备份和nginx自动安装脚本

一.自动备份Mysql脚本: 如下脚本为mysql自动备份脚本,仅供参考,可以根据实际情况修改. #!/bin/sh #auto backup mysql #wugk #Define PATH定义变量 BAKDIR=/data/backup/mysql/`date +%Y-%m-%d` MYSQLDB=webapp MYSQLPW=backup MYSQLUSR=backup #must use root user run scripts 必须使用root用户运行,$UID为系统变量 if [

ELK自动安装脚本

ELK自动安装脚本 一.简介 ELK由Elasticsearch.Logstash和Kibana三部分组件组成: Elasticsearch是个开源分布式搜索引擎,它的特点有:分布式,零配置,自动发现,索引自动分片,索引副本机制,restful风格接口,多数据源,自动搜索负载等. Logstash是一个完全开源的工具,它可以对你的日志进行收集.分析,并将其存储供以后使用 kibana 是一个开源和免费的工具,它可以为 Logstash 和 ElasticSearch 提供的日志分析友好的 Web

【MongDB运维】MongDB自动安装脚本--rpm包安装版

#!/bin/bash # Version:  v1.0 by Jason_Asia on 2014-05-14 # Desc:     auto install mongodb rpm packages software_dir=/home/dba/software/mongodb ##{{{ check mongodb install status mongod_thread_status="`netstat -nltp | grep mongod | wc -l`" if [ $

【redis运维】redis自动安装脚本(只安装redis)

Redis自动安装部署 本文总共分为4个部分: redis自动安装脚本目录结构说明: redis自动安装脚本内容: redis的操作系统服务脚本说明: 本文引用的资料链接地址. 说明:本文未涉及redis内存分配器部分的内容. 第一部分 Redis自动安装脚本目录结构说明: # ls 查看当前目录包含以下3个文件 -- install_redis.sh        # redis自动安装脚本 -- redis-2.8.9.tar.gz      # redis安装包(需make,make te

Linux中自动安装脚本

如何让你的主机自动的完成安装,自动的回答系统提出的问题,编写自动安装脚本即可实现,如下将详细解释自动脚本安装方法. systemd-config-kickstart  ##自动应答脚本制作工具 安装成功,在安装过程中systemd-config-kickstart 将做出脚本应答 进行选择语言选择 (1)Basic Configuration 安装过程的必须一致时区选择(可不选,在脚本中都有写到,这里做一个解释) Root passwd 填写Root密码,并确认,两次输入密码 Advanced

python3自动安装脚本,python3.x与python2.x共存

1.前言: python3过程中,通过搜索一些文章参考安装过程发现比较麻烦,而且还出现一些不可预期的报错.python3环境需要升级openssl,所以为了部署到其他环境更方便,写自动安装脚本方式,且安装模式为python3.x与python2.x共存,防止可能发生原有环境异常的情况. 现在我把脚本分享出来,希望可以帮助到有需要的人,业务采集监控python脚本文件不提供,因为那些跟实际业务开发关联比较紧,比较没有参考意义也不方便公开. shell自动安装脚本,只需按说明简单修改配置,和调用集成