zabbix一键部署脚本----亲测可用

环境:centos7.9

网络:外网通

其他:无

两个脚本任选一执行即可

基于nginx,脚本如下:

#!/bin/bash
#function:zabbix
#author:tommypeng  20220727
#####root判断#####
if
  [  "$USER"  != "root"   ]
then
   echo "错误:非root用户,权限不足!"
  exit  0
fi
###############防火墙及SElinux############
systemctl stop firewalld && systemctl disable firewalld  && echo "防火墙已经关闭"
sed -i 's/SELINUX=.*/SELINUX=disabled/g'  /etc/selinux/config  && echo "关闭selinux"
###########清理旧版本###########
rpm -qa | grep mariadb >  /root/888.txt
rpm -qa | grep mysql  >>  /root/888.txt
PLIST=$(cat  /root/888.txt)
for  PKGNAME   in    $PLIST
do
      rpm -e --nodeps   $PKGNAME   &&  echo  "老旧包已经清理完毕" 
done
rm -rf  /root/888.txt  &&  echo "临时文件已删除"
sleep 8
##############网络测试##############
ping   -c  3  www.baidu.com
if
  [ $? = 0 ]
  then
    echo "外网通讯良好!"
  else
    echo  "丫的你在逗我吗?网都没有安装个毛线!"
   exit  1
fi
###########安装MDB##############
yum -y install mariadb mariadb-server #安装mariadb
if
  [ $? = 0 ]
  then
    echo "MDB安装成功!"
  else
    echo  "MDB安装失败,即将退出!"
   exit  1
fi
systemctl start mariadb   &&  systemctl enable mariadb
###########php############
yum install -y php php-mysql
if
  [ $? = 0 ]
  then
    echo "php安装成功!"
  else
    echo  "php安装失败,即将退出!"
   exit  1
fi
##########php配置###########
sed -i '384s/30/300/'  /etc/php.ini
sed -i '394s/60/300/'  /etc/php.ini
sed -i '672s/8/16/'  /etc/php.ini
sed -i '878adate.timezone = Asia/Shanghai'  /etc/php.ini
###########zabbix仓库#########
rpm -ivh http://repo.zabbix.com/zabbix/3.4/rhel/7/x86_64/zabbix-release-3.4-2.el7.noarch.rpm
if
  [ $? = 0 ]
  then
    echo "zabbix仓库安装成功!"
  else
    echo  "zabbix仓库安装失败,即将退出!"
   exit  1
fi
###########zabbix安装###########
yum install -y zabbix-server-mysql zabbix-get zabbix-web zabbix-web-mysql zabbix-agent zabbix-sender
if
  [ $? = 0 ]
  then
    echo "zabbix安装成功!"
  else
    echo  "zabbix安装失败,即将退出!"
   exit  1
fi
############配置数据库##########
echo  "create database zabbix character set utf8 collate utf8_bin;" |mysql
mysql -e "grant all privileges on zabbix.* to zabbix@'%' identified by 'zabbix';"
mysql -e "flush privileges;"
sleep  4
cd /usr/share/doc/zabbix-server-mysql-3.4.15/  &&  gunzip create.sql.gz
mysql -e "use zabbix;source create.sql;"
sleep 5
############配置zabbix############
sed -i  '91s/#/ /'    /etc/zabbix/zabbix_server.conf
sed  -i  '124aDBPassword=zabbix'  /etc/zabbix/zabbix_server.conf
sleep 3
systemctl  start zabbix-server.service   &&systemctl  enable zabbix-server.service 
##########安装nginx###########
yum -y install yum-utils
cat >> /etc/yum.repos.d/nginx.repo <<EOF
[nginx-stable]
name=nginx stable repo
baseurl=http://nginx.org/packages/centos/7/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes=true

[nginx-mainline]
name=nginx mainline repo
baseurl=http://nginx.org/packages/mainline/centos/7/x86_64/
gpgcheck=1
enabled=0
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes=true
EOF
yum-config-manager --enable nginx-mainline
yum -y install nginx php-fpm
if
  [ $? = 0 ]
  then
    echo "nginx安装成功!"
  else
    echo  "nginx安装失败,即将退出!"
   exit  1
fi
###########nginx配置##########
sed  -i  '8s#/usr/share/nginx/html#/usr/share/#'       /etc/nginx/conf.d/default.conf 
sed  -i  '9s/index.html index.htm/index.html index.htm index.php/'          /etc/nginx/conf.d/default.conf
#sed  -i  '44s/html/\/usr\/share/'          /etc/nginx/conf.d/default.conf
sed   -i  '29s/#/ /'     /etc/nginx/conf.d/default.conf
sed   -i  '30s/#/ /'     /etc/nginx/conf.d/default.conf
sed   -i  '31s/#/ /'     /etc/nginx/conf.d/default.conf
sed   -i  '32s/#/ /'     /etc/nginx/conf.d/default.conf
sed   -i  '33s/#/ /'     /etc/nginx/conf.d/default.conf
sed   -i  '34s/#/ /'     /etc/nginx/conf.d/default.conf
sed   -i  '35s/#/ /'     /etc/nginx/conf.d/default.conf
sed   -i  '30s/html/\/usr\/share/'     /etc/nginx/conf.d/default.conf
sed   -i  '33s/\/scripts$fastcgi_script_name/\/usr\/share$fastcgi_script_name/'    /etc/nginx/conf.d/default.conf
sed   -i  '34a fastcgi_read_timeout 150;'     /etc/nginx/conf.d/default.conf
sed   -i  '35a fastcgi_buffer_size 128k;'     /etc/nginx/conf.d/default.conf
sed   -i  '35a  fastcgi_buffers 32 32k;'     /etc/nginx/conf.d/default.conf
cat >>  /etc/nginx/conf.d/default.conf  << EOF
 location = /favicon.ico {
        log_not_found off;
        access_log off;
    }
EOF
systemctl start nginx  &&  systemctl enable nginx
systemctl start php-fpm  &&  systemctl enable php-fpm
###########图形界面设置##########
IP=$(ip a  | grep "inet "|grep "ens33" | awk '{print $2}'| awk -F / '{print $1}')
echo  "使用浏览器访问http://$IP/zabbix/setup.php"
echo "
       zabbix服务web登录账号为:Admin  密码为zabbix
       zabbix服务配套数据库账号和密码均为:zabbix  "







基于apache,脚本如下(由我的学生尹斌同学提供,表扬):

#!/bin/bash
#function:zabbix
#author:yinbin 20220727
if [  $(id -u)  -ne 0  ];then
	echo -e "必须以root用户运行本脚本"
	exit 1
fi



	systemctl stop firewalld.service &&
	systemctl disable firewalld.service &&
	systemctl status firewalld &> /dev/null
	sed -i '/SELINUX/{s/enforcing/disabled/}' /etc/selinux/config 
	echo "防火墙等配置已关闭"
echo  "正在安装zabbix_repo源..."
rpm -ivh http://repo.zabbix.com/zabbix/3.4/rhel/7/x86_64/zabbix-release-3.4-1.el7.centos.noarch.rpm
if [ $? -eq 0 ];then
	echo  "zabbix 源安装完毕"
fi
yum -y install epel-release 
if [ $? -eq 0 ];then
	echo  "epel扩展源安装完成"
fi
echo  "正在安装zabbix...."
yum install zabbix-server-mysql zabbix-web-mysql -y 
if [ $? -eq 0 ];then
	echo  "zabbix-server安装完成"
fi
echo  "正在安装数据库.."
yum install mariadb-server mariadb -y
systemctl start mariadb && systemctl enable mariadb 
if [ $? -eq 0 ];then
	echo  "数据库启动成功"
fi
echo "正在执行mysql语句,创建zabbix数据库,授权zabbix访问数据库"
mysql -e "create database zabbix character set utf8;grant all privileges on zabbix.* to zabbix@'localhost' identified by 'zabbix';grant all privileges on zabbix.* to zabbix@'127.0.0.1' identified by 'zabbix';flush privileges;"
if [ $? -eq 0 ];then
	echo  "数据库初始化完成"
fi
zcat /usr/share/doc/zabbix-server-mysql-3.4.15/create.sql.gz | mysql -uzabbix -pzabbix zabbix 
if [ $? -eq 0 ];then
	echo  "数据导入完成"
fi
 
echo  "正在配置zabbix配置文件...."
cd /etc/zabbix
sed -i '/# DBHost=localhost/a\DBHost=localhost' zabbix_server.conf 
sed -i '/# DBPassword=/a\DBPassword=zabbix' zabbix_server.conf  
if [ $? -eq 0 ];then
        echo  "zabbix配置完毕!"
fi
systemctl start zabbix-server && systemctl enable zabbix-server  &> /dev/null
if [ $? -eq 0 ];then
	echo  "zabbix-server 服务已经启动"
fi
echo  "正在进行最后的zabbix Install ,php参数修改....."
sed -i '/^;date.timezone/a\date.timezone =  Asia/Shanghai' /etc/php.ini  &> /dev/null
systemctl start httpd && systemctl enable httpd   &> /dev/null
if [ $? -eq 0 ];then
	echo  "Apache 服务已经启动"
fi
 
######################################################## 
IP=$(ip a  | grep "inet "|grep "ens33" | awk '{print $2}'| awk -F / '{print $1}')
echo "Zabbix服务部署完成,请在游览器输入http://$IP/zabbix进行访问"
echo "Zabbix 账号密码都为zabbix"
echo "zabbix服务web登录账号为:Admin  密码为zabbix"

  • 2
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
您好!关于Zabbix的一安装脚本,可以使用以下的步骤进行安装: 1. 首先,确保您的服务器上已经安装了必要的依赖项,如Apache、PHP、MySQL等。可以使用以下命令来安装这些依赖项: ``` sudo apt update sudo apt install apache2 php mysql-server php-mysql ``` 2. 下载Zabbix的安装包并解压缩。您可以从Zabbix官方网站下载最新的稳定版本的安装包。假设您将其下载到`/tmp`目录下,可以使用以下命令进行解压缩: ``` tar -zxvf /tmp/zabbix-<version>.tar.gz -C /tmp/ ``` 3. 将解压缩后的文件复制到Apache的网站目录下。假设您的Apache网站目录是`/var/www/html`,可以使用以下命令进行复制: ``` sudo cp -r /tmp/zabbix-<version>/frontends/php/* /var/www/html/ ``` 4. 创建一个MySQL数据库和用户用于Zabbix。可以使用以下命令登录到MySQL控制台,并执行相应的SQL语句: ``` mysql -u root -p CREATE DATABASE zabbix CHARACTER SET utf8 COLLATE utf8_bin; GRANT ALL PRIVILEGES ON zabbix.* TO 'zabbix'@'localhost' IDENTIFIED BY '<password>'; FLUSH PRIVILEGES; quit ``` 5. 导入Zabbix的数据库架构和初始数据。可以使用以下命令进行导入: ``` cd /tmp/zabbix-<version>/database/mysql sudo mysql -u zabbix -p zabbix < schema.sql sudo mysql -u zabbix -p zabbix < images.sql sudo mysql -u zabbix -p zabbix < data.sql ``` 6. 配置Zabbix的Web界面。打开`/var/www/html/conf/zabbix.conf.php`文件,并根据您的MySQL数据库配置进行相应的更改: ``` <?php // Zabbix GUI configuration file. global $DB; $DB['TYPE'] = 'MYSQL'; $DB['SERVER'] = 'localhost'; $DB['PORT'] = '0'; $DB['DATABASE'] = 'zabbix'; $DB['USER'] = 'zabbix'; $DB['PASSWORD'] = '<password>'; // ... ``` 7. 最后,重启Apache服务以应用配置更改: ``` sudo systemctl restart apache2 ``` 完成以上步骤后,您应该能够通过浏览器访问Zabbix的Web界面,并进行进一步的配置和使用了。希望对您有所帮助!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

IT大白鼠

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值