以下命令请在Centos 7下执行!!
一键安装请执行:
yum -y install wget && wget https://www.mancxi.cn/upload/2021/11/create_zabbix.sh && sh create_zabbix.sh
脚本源代码:
#!/bin/bash
webyuan=https://www.mancxi.cn
databaname=zabbix
mysqluser=zabbix
mysqlpasswd=zabbix
zabbix_download(){
yum=`yum repolist | awk -F: '/repolist/{print $2}' |sed 's/,//'`
[ $yum -gt 0 ] && echo "yum源可用" || echo "yum源不可用"
rpm -q wget
if [ $? -eq 0 ];then
echo "wget 已经安装"
else
echo "wget 未安装"
yum -y install wget
fi
mkdir ~/zabbix/
zabbix_banben=2
read -p "
选择zabbix版本
1.zabbix-4.2版本
2.zabbix-4.0版本
默认安装4.0版本,请输入您要安装的版本序号(1/2):" zabbix_banben
if [ $zabbix_banben == 1 ];then
wget -P ~/zabbix/ $webyuan/upload/2021/11/zabbix-4.2.6.tar.gz #下载zabbix软件tar包,来源于zabbix官网
elif [ $zabbix_banben == 2 ];then
wget -P ~/zabbix/ $webyuan/upload/2021/11/zabbix-4.0.12.tar.gz
elif [ $zabbix_banben -z ];then
echo "请输入你要安装的版本序号"
exit
fi
cd ~/zabbix/
tar -xzf ~/zabbix/zabbix-*
}
zabbix_install(){
yum -y install net-snmp-devel curl-devel libevent-devel gcc pcre-devel zliv-devel openssl-dvel mariadb mariadb-devel mariadb-server
cd ~/zabbix/zabbix-*
./configure --enable-server --enable-proxy --enable-agent --with-mysql=/usr/bin/mysql_config --with-net-snmp-devel --with-libcurl
make install
}
mysql_config(){
systemctl restart mariadb
mysql -e "create database ${databaname} character set utf8;"
mysql -e "grant all on zabbix.* to zabbix@'localhost' identified by 'zabbix';"
cd ~/zabbix/zabbix-*/database/mysql
mysql -u${mysqluser} -p${mysqlpasswd} ${databaname} < schema.sql
mysql -u${mysqluser} -p${mysqlpasswd} ${databaname} < images.sql
mysql -u${mysqluser} -p${mysqlpasswd} ${databaname} < data.sql
sed -i "85s/.*/DBHost=localhost/" /usr/local/etc/zabbix_server.conf
sed -i "95s/.*/DBName=${databaname}/" /usr/local/etc/zabbix_server.conf
sed -i "111s/.*/DBUser=${mysqluser}/" /usr/local/etc/zabbix_server.conf
sed -i "119s/.*/DBPassword=${mysqlpasswd}/" /usr/local/etc/zabbix_server.conf
sed -i '38s/.*/LogFile=\/tmp\/zabbix_server.log/' /usr/local/etc/zabbix_server.conf
}
zabbix_web(){
wget -P ~/zabbix/ $webyuan/upload/2021/11/nginx.tar.gz
cd ~/zabbix/
tar -zxvf ~/zabbix/nginx.tar.gz
cd ~/zabbix/nginx-*
./configure --user=nginx --group=nginx --with-http_ssl_module --with-http_stub_status_module
make && make install
sed -i '45s/ index index.html index.htm;/ index index.php index.html index.htm;/' /usr/local/nginx/conf/nginx.conf
sed -i '65s/#//' /usr/local/nginx/conf/nginx.conf
sed -i '66s/#//' /usr/local/nginx/conf/nginx.conf
sed -i '67s/#//' /usr/local/nginx/conf/nginx.conf
sed -i '68s/#//' /usr/local/nginx/conf/nginx.conf
sed -i '70s/#//' /usr/local/nginx/conf/nginx.conf
sed -i '71s/#//' /usr/local/nginx/conf/nginx.conf
sed -i '70s/fastcgi_params/fastcgi.conf/' /usr/local/nginx/conf/nginx.conf
sed -i '19a fastcgi_read_timeout 300;' /usr/local/nginx/conf/nginx.conf
sed -i '19a fastcgi_send_timeout 300;' /usr/local/nginx/conf/nginx.conf
sed -i '19a fastcgi_connect_timeout 300;' /usr/local/nginx/conf/nginx.conf
sed -i '19a fastcgi_buffer_size 32k;' /usr/local/nginx/conf/nginx.conf
sed -i '19a fastcgi_buffers 8 16k;' /usr/local/nginx/conf/nginx.conf
wget -P ~/zabbix/ $webyuan/upload/2021/11/webtatic-release.rpm
yum -y install epel-release iptables-services
yum -y install ~/zabbix/webtatic-release.rpm
yum -y install php56w-fpm php56w php56w-fpm php56w-mysql php56w-gd php56w-xml php56w-ldap php56w-bcmath php56w-mbstring
sed -i '878s/.*/date.timezone = Asia\/Shanghai/' /etc/php.ini
sed -i '384s/.*/max_execution_time = 300/' /etc/php.ini
sed -i '394s/.*/max_input_time = 300/' /etc/php.ini
sed -i '672s/.*/post_max_size = 32M/' /etc/php.ini
sed -i '705s/;//' /etc/php.ini
cp -a ~/zabbix/zabbix-4.2.6/frontends/php/* /usr/local/nginx/html/
chmod -R 777 /usr/local/nginx/html/*
chmod -R 777 /var/lib/php/session
setenforce 0 && sed -i 's/^SELINUX=.*$/SELINUX=disabled/g' /etc/selinux/config
iptables -F
service iptables save
}
zabbix_ok(){
rm -rf ~/zabbix
yum -y remove epel-release
useradd zabbix
useradd nginx
/usr/local/nginx/sbin/nginx
systemctl start php-fpm
zabbix_server
systemctl restart mariadb
iplist=`ip addr show |grep -w inet |awk '{print $2}' |awk -F '/' '{print $1}'`
ss -antup | grep *:80 && ss -antup | grep *:10051 && ss -antup | grep *:3306 && ss -antup | grep php-fpm
if [ $? -eq 0 ];then
echo "
zabbix监控机服务安装完成!
mariadb数据库服务安装完成(请及时更改root密码)
web页面搭建完成,请及时访问web页面进行最后一步安装
访问地址:
`
for i in $iplist;do
echo http://$i/
done
`
安装过程:
1.点击“Next step”
2.再次点击“Next step”
3.请在“Database port”编辑框填入“ 3306 ”
4.请在“Password”编辑框填入“zabbix”
5.剩下的请一直点“Next step”
"
fi
}
echo "1.安装zabbix监控端"
echo "2.zabbix服务器启停"
echo "3.exit退出不执行脚本"
read -p "请输入你要创建的虚拟项(1-3):" zz
case $zz in
1)
zabbix_download
zabbix_install
mysql_config
zabbix_web
zabbix_ok;;
2)
echo "1.启动全部zabbix服务"
echo "2.停止全部zabbix服务"
echo "3.exit退出不执行脚本"
read -p "请输入你要创建的虚拟项(1-3):" cc
case $cc in
1)
/usr/local/nginx/sbin/nginx
systemctl start php-fpm
systemctl start mariadb
zabbix_server;;
2)
/usr/local/nginx/sbin/nginx -s stop
systemctl stop php-fpm
systemctl stop mariadb;;
3)
exit;;
*)
echo "输入错误";;
esac;;
3)
exit;;
*)
echo "输入错误";;
esac