0107 zabbix 安装 最简单的做法

本文最后更新于:4 年前

最近在部署一批主机,需要增加zabbix 来监控这些主机的运行情况。
可是这个东西我只是听说过,根本没用过,所以网上找一些教程准备开干。
先是Ubuntu 的方式,发现各种坑,安装mysql就卡住了,无论如何也进不去mysql,各种方法试遍了,可怜一下我这个的lunix小白。
然后用centos,没有GUI的那种,这次还是卡在mysql,这个东西跟我有仇。

快要放弃的时候,大神降临。

突然发现有一种叫做一键安装的东西,正好搭配centos的ssh的操作。

做法如下,权当备份:

1. 用ssh远程连上centos主机

2. 编辑默认的install.sh脚本文件 ,没有的话他会自动创建:

1
vi install.sh

3. 然后,按 i 之后,进入 编辑状态,在本机复制如下脚本,粘贴到centos目前显示的编辑器里

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
#!/bin/sh
#By Kasar
ip=`ip addr |grep inet |egrep -v "inet6|127.0.0.1" |awk '{print $2}' |awk -F "/" '{print $1}'`
release=`cat /etc/redhat-release | awk '{print $4}' | awk -F '.' '{print $1}'`
printf "
#######################################################################
# 欢迎使用Zabbix离线一键部署脚本 #
# 脚本适配环境CentOS7/8、Zabbix5.0/5.2 #
# 避免软件包产生冲突建议使用纯净的操作系统进行安装! #
#######################################################################
"
echo "#######################################################################"
echo "# #"
echo "# 正在关闭SElinux策略及防火墙 请稍等~ #"
echo "# #"
echo "#######################################################################"
sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config
setenforce 0
systemctl stop firewalld && systemctl disable firewalld
echo "#######################################################################"
echo "# #"
echo "# 正在判断系统环境并安装相对应的yum源和软件 请稍等~ #"
echo "# (如果是CentOS 8 就安装5.2,如果是7则安装5.0) #"
echo "# #"
echo "#######################################################################"
if [ $release = '7' ];then
cat <<EOF > /etc/yum.repos.d/zabbix.repo
[zabbix]
name=Zabbix Official Repository - \$basearch
baseurl=https://mirrors.aliyun.com/zabbix/zabbix/5.0/rhel/7/\$basearch/
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX-A14FE591

[zabbix-frontend]
name=Zabbix Official Repository frontend - $basearch
baseurl=https://mirrors.aliyun.com/zabbix/zabbix/5.0/rhel/7/\$basearch/frontend
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX-A14FE591

[zabbix-non-supported]
name=Zabbix Official Repository non-supported - \$basearch
baseurl=https://mirrors.aliyun.com/zabbix/non-supported/rhel/7/\$basearch/
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX
gpgcheck=1
EOF
echo "添加源gpgkey"
curl https://mirrors.aliyun.com/zabbix/RPM-GPG-KEY-ZABBIX-A14FE591 \
-o /etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX-A14FE591
curl https://mirrors.aliyun.com/zabbix/RPM-GPG-KEY-ZABBIX \
-o /etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX
curl https://mirrors.aliyun.com/zabbix/RPM-GPG-KEY-ZABBIX-A14FE591 \
-o /etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX-A14FE591
curl https://mirrors.aliyun.com/zabbix/RPM-GPG-KEY-ZABBIX \
-o /etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX
yum -y install mariadb-server centos-release-scl epel-release
yum -y install zabbix-server-mysql zabbix-web-mysql zabbix-web-mysql-scl zabbix-apache-conf-scl zabbix-agent vim
elif [ $release = '8' ];then
cat <<EOF > /etc/yum.repos.d/zabbix.repo
[zabbix]
name=Zabbix Official Repository - \$basearch
baseurl=https://mirrors.aliyun.com/zabbix/zabbix/5.2/rhel/8/\$basearch/
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX-A14FE591
[zabbix-non-supported]
name=Zabbix Official Repository non-supported - \$basearch
baseurl=https://mirrors.aliyun.com/zabbix/non-supported/rhel/8/\$basearch/
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX
gpgcheck=1
EOF
echo "添加源gpgkey"
curl https://mirrors.aliyun.com/zabbix/RPM-GPG-KEY-ZABBIX-A14FE591 \
-o /etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX-A14FE591
curl https://mirrors.aliyun.com/zabbix/RPM-GPG-KEY-ZABBIX \
-o /etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX
curl https://mirrors.aliyun.com/zabbix/RPM-GPG-KEY-ZABBIX-A14FE591 \
-o /etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX-A14FE591
curl https://mirrors.aliyun.com/zabbix/RPM-GPG-KEY-ZABBIX \
-o /etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX
dnf -y install mariadb-server zabbix-server-mysql zabbix-web-mysql zabbix-apache-conf zabbix-agent vim
fi
echo "#######################################################################"
echo "# #"
echo "# 正在启动及配置Mariadb数据库 请稍等~ #"
echo "# #"
echo "#######################################################################"
service mariadb start && service mariadb enable
while :; do echo
read -p "设置Mysql数据库root密码(建议使用字母+数字): " Database_Password
[ -n "$Database_Password" ] && break
done

mysqladmin -u root password "$Database_Password"
echo "create database zabbix default charset utf8 COLLATE utf8_bin;" | mysql -uroot -p$Database_Password
echo "grant all privileges on zabbix.* to zabbix@'localhost' identified by '$Database_Password';" | mysql -uroot -p$Database_Password
echo "flush privileges;" | mysql -uroot -p$Database_Password

echo "#######################################################################"
echo "# #"
echo "# 正在导入zabbix数据库架构文件,请稍等~ #"
echo "# #"
echo "#######################################################################"
zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix -p$Database_Password zabbix

echo "#######################################################################"
echo "# #"
echo "# 正在修改Zabbix配置文件,请稍等~ #"
echo "# #"
echo "#######################################################################"
sed -i 's/# DBPassword=/DBPassword=root/' /etc/zabbix/zabbix_server.conf
if [ $release = '7' ];then
echo "php_value[date.timezone] = Asia/Shanghai" >> /etc/opt/rh/rh-php72/php-fpm.d/zabbix.conf
systemctl restart zabbix-server zabbix-agent httpd rh-php72-php-fpm
systemctl enable zabbix-server zabbix-agent httpd rh-php72-php-fpm
elif [ $release = '8' ];then
systemctl restart zabbix-server zabbix-agent httpd php-fpm
systemctl enable zabbix-server zabbix-agent httpd php-fpm
fi

echo "#######################################################################"
echo "# 安装已经完成 请移步浏览器,进行下一步操作 #"
echo "# 登录地址为http://$ip/zabbix #"
echo "# 数据库密码为$Database_Password,尽情享用吧! #"
echo "#######################################################################"

4. 然后 嗯esc 退出编辑状态,输入 :wq 保存。

5. 再赋予权限

1
chmod +x install.sh

大功告成,执行 install.sh即可,执行过程中会有一部需要输入 mysql 密码,记得输入后 点Y继续就行;
注意:这些命令最好都带上 sudo。

1
sudo ./install.sh

我第一次启动的时候会需要设定zabbix的连接时有报错,看提示应该是 数据库账密的问题,感觉是脚本在设定mysql 的密码并没有保存到zabbix_server.conf ,里面存储的还是默认的那个root的密码,如果不介意就输入默认的root密码;
如果需要改,就进入 zabbix_server.conf 文件,将密码改成 你自己的密码即可;

完成后,输入 运行效果如下:

1606450001613-1692879106834-76

1606450007774-1692879121073-78

这里还有一个问题,zabbix 默认显示中文时有乱码,应该是缺少中文字库;
将windows上的你喜欢的中文字体复制一份到zabbix 的font目录即可。


0107 zabbix 安装 最简单的做法
http://huigg.xyz/2020/88529e6a.html
作者
辉哥哥
发布于
2020年11月27日
更新于
2020年11月27日