zabbix是开源 优秀 分布式 一体化监控软件 cacti 数据采集 NAGIOS(难过死)配置繁琐,界面不友好 安装时需同步时间 一.zabbix-server 安装脚本 参考:https://www.zabbix.com/download?zabbix=3.2&os_distribution=centos&os_version=7&db=MySQL https://www.zabbix.com/documentation/3.2/manual ```bash #!/usr/bin/env bash #================================================================ # # systemos=centos7.2 # #this is zabbix_server install script # Author:xw thank you!!! # Date:2018.5.15 # Description:install zabbix-server zabbix-agent # wang.cong@aliyun.com #================================================================ #-----Vars----- zabbix_log_file=/var/log/zabbix_install.log mysql_root_password=southnews zabbix_db_password=zabbix install_log_file=/var/log/install.log #install Dead work install_Initialization(){ echo "Now clean the log file" >> ${zabbix_log_file} echo > ${zabbix_log_file} systemctl stop firewalld.service && systemctl disable firewalld.service >> ${zabbix_log_file} 2>&1 setenforce 0 >> ${zabbix_log_file} 2>&1 sed -i "s/^SELINUX=enforcing/SELINUX=disabled/g" /etc/selinux/config >> ${zabbix_log_file} 2>&1 . /etc/init.d/functions if [ $(echo $?) -eq 0 ];then echo "system Dead work is success" >> ${install_log_file} 2>&1 fi } #install lamp Environmental Science install_LAMP(){ rpm -Uvh http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm >> ${zabbix_log_file} 2>&1 yum -y install mysql-community-server >> ${zabbix_log_file} 2>&1 yum install -y mysql php php-mysql httpd >> ${zabbix_log_file} 2>&1 if [ $(echo $?) -eq 0 ];then echo "LAMP INSTALL is success" >> ${install_log_file} 2>&1 fi } #isntall zabbix-server install_zabbix(){ rpm -i http://repo.zabbix.com/zabbix/3.2/rhel/7/x86_64/zabbix-release-3.2-1.el7.noarch.rpm>> ${zabbix_log_file} 2>&1 yum install zabbix-server-mysql zabbix-web-mysql zabbix-server zabbix-agent -y >> ${zabbix_log_file} 2>&1 if [ $(echo $?) -eq 0 ];then echo "zabbix-server INSTALL is success" >> ${install_log_file} 2>&1 fi } #Initialization mysql install_Initialization-mysql(){ systemctl start mysqld >> ${zabbix_log_file} 2>&1 mysqladmin -uroot password ${mysql_root_password} >> ${zabbix_log_file} 2>&1 mysql -uroot -p${mysql_root_password} -e "create database zabbix character set utf8;" >> ${zabbix_log_file} 2>&1 mysql -uroot -p${mysql_root_password} -e "grant all privileges on zabbix.* to zabbix@localhost identified by 'zabbix';" >> ${zabbix_log_file} 2>&1 mysql -uroot -p${mysql_root_password} -e "flush privileges;" >> ${zabbix_log_file} 2>&1 cd /usr/share/doc/zabbix-server-mysql-3.2.11/ zcat create.sql.gz |mysql -uzabbix -pzabbix zabbix if [ $(echo $?) -eq 0 ];then echo "Initialization-mysql is success" >> ${install_log_file} 2>&1 fi } #install Modify the configuration file install_Modify-the-configuration-file(){ sed -i 's/.*DBHost=.*/DBHost=localhost/' /etc/zabbix/zabbix_server.conf; >/dev/null sed -i 's/.*DBName=.*/DBName=zabbix/' /etc/zabbix/zabbix_server.conf; >/dev/null sed -i 's/.*DBUser=.*/DBUser=zabbix/' /etc/zabbix/zabbix_server.conf; >/dev/null sed -i "s/.*DBPassword=.*/DBPassword=${zabbix_db_password}/" /etc/zabbix/zabbix_server.conf; >/dev/null sed -i "s#.*php_value date.timezone.*#\tphp_value date.timezone Asia/ShangHai#" /etc/httpd/conf.d/zabbix.conf >/dev/null } #install start all service install_start_service(){ systemctl enable zabbix-server > /dev/null systemctl start zabbix-server >> ${zabbix_log_file} 2>&1 systemctl restart httpd > /dev/null systemctl start mysqld > /dev/null ss -lnt | grep 10051 ss -lnt | grep 80 if [ $(echo $?) -eq 0 ];then echo "start all service is success" >> ${install_log_file} 2>&1 fi } main(){ install_Initialization sleep 5 install_LAMP sleep 5 install_zabbix sleep 5 install_Initialization-mysql sleep 5 install_Modify-the-configuration-file sleep 5 install_start_service } main