zabbix 5.0一键安装

前提镜像源可用

#!/bin/bash
#set -x
echo "*************************************************
* zabbix 5.x一键安装脚本                        *
* 官方文档 https://www.zabbix.com/cn/download?  *
* 可用稳定版本5.0.16 5.4.5 5.4.6 5.4.7          *
* rc是候选版  apph1a是内测版                    *
* 官方安装包地址 https://repo.zabbix.com/zabbix *
* 环境 centos 8.3.2011 x86_64                   *
*************************************************"
read -p "Enter db_root_password > " dbrootpw  #输入数据库密码
read -p "Enter zabbix_dbpassword > " dbpassword #输入zabbix库密码
#zabbix 版本号
version=5.4.7
#多网卡自己填ip
IP=`ip add|grep global|awk -F'[ /]+' '{ print $3 }'|head -n 1`

#1、设置
echo  '调整selinux、关闭防火墙'
systemctl stop firewalld.service
systemctl disable firewalld.service
firewall-cmd --state
sed -i '/^SELINUX=.*/c SELINUX=disable' /etc/selinux/config
grep --color=auto '^SELINUX' /etc/selinux/config
setenforce 0

#更换源
yum install -y wget &> /dev/null
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-8.repo
#zabbix repo源 会下载5.4最新的子版本
rpm -Uvh https://repo.zabbix.com/zabbix/5.4/rhel/8/x86_64/zabbix-release-5.4-1.el8.noarch.rpm

#同步时间
[[ -f /usr/sbin/ntpdate ]] || { echo "install ntp";yum install ntp ntpdate -y &> /dev/null; }
#若没NTP则安装
/usr/sbin/ntpdate ntp6.aliyun.com
echo "*/3 * * * * /usr/sbin/ntpdate ntp6.aliyun.com  &> /dev/null" > /tmp/crontab
crontab /tmp/crontab
echo '------------执行完毕---------'

##########################################
#2 安装
yum  install mariadb-server -y
echo '启动数据库服务'
systemctl start mariadb && systemctl enable mariadb

sleep 5
netstat -antp|grep mysqld
#mysql_secure_installation #初始化设置密码,自动交互
[[ -f /usr/bin/expect ]] || { yum install expect -y; } #若没expect则安装
/usr/bin/expect << EOF
set timeout 30
spawn mysql_secure_installation
expect {
    "enter for none" { send "\r"; exp_continue}
    "Y/n" { send "Y\r" ; exp_continue}
    "password:" { send "$dbrootpw\r"; exp_continue}
    "new password:" { send "$dbrootpw\r"; exp_continue}
    "Y/n" { send "Y\r" ; exp_continue}
    eof { exit }
}
EOF
#测试
mysql -u root -p$dbrootpw -e "show databases;"
[ $? = 0 ] || { echo "mariadb初始化失败";exit; }

#创建zabbix库并授权
echo '创建数据库、用户授权'
mysql -u root -p$dbrootpw -e "create database zabbix character set utf8 collate utf8_bin;"
mysql -u root -p$dbrootpw -e "create user zabbix@localhost identified by '$dbpassword';"
mysql -u root -p$dbrootpw -e "grant all privileges on zabbix.* to zabbix@localhost;"
mysql -u root -p$dbrootpw -e "flush privileges;"

echo '安装zabbix----------------------------------------------------------------------------------------------------------'
#安装zabbix 推荐使用repo源安装,如果使用下载rpm包安装则需要安装依赖包
yum  install -y zabbix-server-mysql zabbix-web-mysql zabbix-nginx-conf zabbix-sql-scripts zabbix-agent
#导入数据库 如果你的版本和我不一样可能create.sql.gz所在位置不一样,可以 find / -name create.sql.gz 查一下
zcat /usr/share/doc/zabbix-sql-scripts/mysql/create.sql.gz | mysql -uzabbix -p$dppassword -h localhost zabbix
#配置zabbix
sed -i '/^# DBHost=/c DBHost=localhost' /etc/zabbix/zabbix_server.conf
sed -i '/^# DBPassword=/c DBPassword='$dbpassword'' /etc/zabbix/zabbix_server.conf
grep -n ^DB  /etc/zabbix/zabbix_server.conf
#配置php
sed -i 's/^;\(date.timezone =.*\)/\1 Asia\/Shanghai/' /etc/php.ini

#启动服务并添加为开机启动项
systemctl restart zabbix-server zabbix-agent nginx php-fpm
systemctl enable zabbix-server zabbix-agent nginx php-fpm
ss -tnl
echo=================================安装完成========================================echo 'Please visit http://'$IP' user:Admin passwd: zabbix  to further configuration!!!!!'

遇到的错误

A. zabbix-server错误
思路:查看zabbix-server日志   /var/log/zabbix/zabbix_server.log
一. zabbix和数据库连接出错
[Z3001] connection to database 'zabbix' failed: [1130] Host '10.166.30.33' is not allowed to connect to this MariaDB server
原因:当时我数据库授权的是localhost,但我zabbix配置的DBHost是本机ip地址,所以我zabbix以ip登录失败
排查方法:mysql -uzabbix -p$password -h $ip
解决办法:DBHost改成localhost

二. 数据未导入或导入出错 
[Z3005] query failed: [1146] Table 'zabbix.users' doesn't exist [select userid from users limit 1]
原因:我用脚本安装过5.0的版本,后来安装5.4.7版本的时候,发现create.sql.gz文件位置变了,不在zabbix-server-mysql目录下
排错办法: mysql -uzabbix -p$dbpassword -e "use zabbix;show tables;" | grep users
解决办法: 删除旧表zabbix,重新导入create.sql.gz

三. 导入出错
cannot use database "zabbix": its "users" table is empty (is this the Zabbix proxy database?)
原因:我之前没有删除旧表,导入了5.0版本的数据后又导入了5.4.7的
解决办法:删除旧表zabbix,重新导入create.sql.gz

++解决无法在仪表盘无法切换成中文问题
cat  /usr/share/zabbix/include/locales.inc.php  | grep 'zh_cn' #//查询是否支持中文,如果能查到
locale -a | grep "zh_CN" #//看系统是否安装了中文编码
yum search langpacks
yum install -y langpacks-zh_CN.noarch
#还是locale -a | grep "zh_CN" 查不到,安装glibc-common
yum install -y glibc-common

++ 解决监控图形乱码问题:
yum -y install wqy-microhei-fonts  #//安装文泉驿-微黑字体
mv /usr/share/zabbix/assets/fonts/graphfont.ttf{,.bak}   #//备份旧的绘图字体
cp  /usr/share/fonts/wqy-microhei/wqy-microhei.ttc  /usr/share/zabbix/assets/fonts/graphfont.ttf   #//部署新的绘图字体

执行完后首先需要将nginx.conf的server代码块注释掉,因为默认访问的是nginx下的www目录下,然后设置子配置文件conf.d里的zabbix.conf即可,最后restart nginx

参考:
https://my.oschina.net/u/4579491/blog/5163551

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
以下是在 CentOS 7 上安装 Zabbix 5.0 的步骤: 1. 安装必要的依赖 ``` sudo yum install epel-release -y sudo yum install wget vim net-tools -y ``` 2. 导入 Zabbix 5.0 的 RPM GPG 密钥 ``` sudo rpm --import https://repo.zabbix.com/RPM-GPG-KEY-ZABBIX-Official ``` 3. 添加 Zabbix 5.0 的 YUM 源 ``` sudo wget https://repo.zabbix.com/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm sudo rpm -Uvh zabbix-release-5.0-1.el7.noarch.rpm ``` 4. 安装 Zabbix server、agent 和 web ``` sudo yum install zabbix-server-mysql zabbix-agent zabbix-web-mysql -y ``` 5. 创建 Zabbix 数据库 ``` sudo yum install mariadb-server -y sudo systemctl start mariadb sudo systemctl enable mariadb sudo mysql_secure_installation mysql -u root -p > CREATE DATABASE zabbix CHARACTER SET utf8 COLLATE utf8_bin; > CREATE USER 'zabbix'@'localhost' IDENTIFIED BY 'password'; > GRANT ALL PRIVILEGES ON zabbix.* TO 'zabbix'@'localhost'; > FLUSH PRIVILEGES; > quit; ``` 6. 导入 Zabbix 数据库结构 ``` sudo zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -u zabbix -p zabbix ``` 7. 修改 Zabbix server 配置文件 ``` sudo vim /etc/zabbix/zabbix_server.conf ``` 修改以下内容: ``` DBHost=localhost DBName=zabbix DBUser=zabbix DBPassword=password ``` 8. 修改 PHP 配置文件 ``` sudo vim /etc/php.ini ``` 修改以下内容: ``` date.timezone = Asia/Shanghai max_execution_time = 300 memory_limit = 128M post_max_size = 16M upload_max_filesize = 2M ``` 9. 启动 Zabbix server 和 agent,并设置开机自启动 ``` sudo systemctl start zabbix-server sudo systemctl enable zabbix-server sudo systemctl start zabbix-agent sudo systemctl enable zabbix-agent ``` 10. 访问 Zabbix web 界面 在浏览器中访问 `http://your_ip_address/zabbix`,输入默认用户名 `Admin` 和密码 `zabbix`,即可进入 Zabbix web 界面。 以上是在 CentOS 7 上安装 Zabbix 5.0 的步骤,其他操作系统的安装步骤可能会有所不同。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值