如何在CentOS 7上安装Zabbix Server 5.0

时间:2020-02-23 14:30:56  来源:igfitidea点击:

欢迎来到我们的指南,了解如何在CentOS 7服务器上安装Zabbix Server 5.0。我们之前的指南是关于如何在Ubuntu上安装Zabbix Server的。 Zabbix是功能强大的开源监视解决方案,用于监视服务器应用程序,系统,网络设备,硬件设备,IoT设备等。它的后端用C和Java编写,而用户Web界面用PHP编写。

Zabbix体系结构(服务器和客户端)

Zabbix在客户端/服务器模型中工作。服务器与可用于各种操作系统(例如Linux,NIX和Windows)的本机软件代理进行通信。对于没有代理的系统,可以使用通用监视协议,例如简单网络管理协议(SNMP)或者智能平台管理接口(IPMI)。

在CentOS 7上安装Zabbix Server 5.0

Zabbix服务器取决于以下软件应用程序:

Apache Web服务器具有所需扩展名的PHP MySQL/MariaDB数据库服务器

MySQL或者MariaDB可以是远程服务器,但是需要在Zabbix服务器上安装php和httpd。可以以反向代理模式运行Apache Web服务器。

建议将SELinux设置为宽松模式,除非我们知道如何解决它的问题:

sudo setenforce 0
sudo sed -i 's/^SELINUX=.*/SELINUX=permissive/g' /etc/selinux/config

安装和配置Apache httpd服务器

通过运行以下命令在CentOS 7服务器上安装Apache Web服务器:

sudo yum -y install httpd vim

安装Apache之后,通过仅允许ProdServerTokens来配置基本安全性。/etc/httpd/conf/httpd.conf`在文件末尾添加以下行:

$sudo vim /etc/httpd/conf/httpd.conf
ServerSignature Off
ServerTokens Prod

指令" ServerTokens"配置作为服务器HTTP响应返回的内容。有效选项为Full |操作系统|最小次要专业|产品

设置ServerName:

# sudo vim /etc/httpd/conf/httpd.conf
ServerName zabbix.example.com

设置Server Admin以在出现问题时接收电子邮件。

$sudo vim /etc/httpd/conf/httpd.conf
ServerAdmin theitroad@localhost

进行更改后,重新启动apache web服务:

sudo systemctl restart httpd

如果已安装并启用了防火墙防火墙,则允许访问端口443和80:

sudo firewall-cmd --add-service={http,https} --permanent
sudo firewall-cmd --reload

安装MariaDB数据库服务器

使用我们的指南在CentOS 7服务器上安装MariaDB数据库服务器:

如何在CentOS 7上安装MariaDB 10.x

安装数据库服务器后,我们需要为Zabbix用户创建数据库:

export zabbix_db_pass="StrongPassword"
mysql -uroot -p <<MYSQL_SCRIPT
    create database zabbix character set utf8 collate utf8_bin;
    grant all privileges on zabbix.* to theitroad@localhost'localhost' identified by '${zabbix_db_pass}';
    FLUSH PRIVILEGES;
MYSQL_SCRIPT

将StrongPassword替换为所需的数据库密码。

在CentOS 7上安装Zabbix 5.0 Server

现在,我们已经安装并运行了必需的依赖项,我们可以通过部署Zabbix 5.0服务器来完成安装。

添加Zabbix 5.0存储库:

sudo yum install -y https://repo.zabbix.com/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm

现在安装Zabbix 5.0 Server和带有MySQL支持的前端:

sudo yum install zabbix-server-mysql zabbix-agent zabbix-get

使用pgsql替换命令中的mysql以使用PostgreSQL,或者使用sqlite3替换命令以使用SQLite3(仅代理)。

安装Zabbix前端:

sudo yum-config-manager --enable zabbix-frontend
sudo yum -y install centos-release-scl
sudo yum -y install zabbix-web-mysql-scl zabbix-apache-conf-scl

导入Zabbix Server数据库架构

对于Zabbix服务器和Zabbix代理守护程序,需要一个数据库。不需要运行Zabbix代理。如果Zabbix服务器和代理安装在同一主机上,则必须使用不同的名称创建它们的数据库!

使用MySQL导入服务器的初始架构和数据:

sudo su 
zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix -p zabbix

出现提示时,输入Zabbix数据库用户密码。

使用PostgreSQL:

zcat /usr/share/doc/zabbix-server-pgsql*/create.sql.gz | sudo -u <username> psql zabbix

配置并启动Zabbix服务器

编辑Zabbix配置文件/etc/zabbix/zabbix_server.conf并设置数据库连接设置。

$sudo vim /etc/zabbix/zabbix_server.conf
DBName=zabbix
DBUser=zabbix
DBPassword=StrongPassword

为Zabbix前端设置时区配置PHP。

$sudo vim /etc/opt/rh/rh-php72/php-fpm.d/zabbix.conf
php_value[date.timezone] = Africa/Nairobi

启动Zabbix服务器和代理进程,并使它们能够在系统启动时启动。

sudo systemctl restart zabbix-server zabbix-agent httpd rh-php72-php-fpm
sudo systemctl enable zabbix-server zabbix-agent httpd rh-php72-php-fpm

配置防火墙

如果我们已在系统上安装并运行ufw防火墙,请确保允许端口5000和端口5001:

sudo firewall-cmd --add-port={10051/tcp,10050/tcp} --permanent
sudo firewall-cmd --reload

重新启动httpd并开始前端安装:

sudo systemctl restart httpd

执行Zabbix初始设定

访问http://(Zabbix服务器主机名或者IP地址)/zabbix /以开始Zabbix初始设置。

是一个欢迎页面,单击"下一步"继续。

确认满足所有准备工作。

配置数据库设置

确认Zabbix服务器的主机名和端口号。可以使用localhost代替名称。

验证所有设置,然后单击下一步以完成初始设置。如果一切顺利,我们应该获得祝贺页面。单击完成按钮以结束安装。

然后,我们将获得登录页面。默认登录名是:

Username: "Admin"
Password: "zabbix"

Zabbix服务器5.0的仪表板如下所示

更改管理员密码

使用adminuser和passwordzabbix登录到Zabbix管理控制台。出于安全原因,首次登录后需要更改admin用户的密码。

导航到管理>用户>管理员>密码>更改密码

配置监视目标主机

现在我们已经准备好要监视的Zabbix服务器,我们可以开始配置firstmonitoring目标主机。默认情况下,Zabbix服务器已添加到监视中。

要添加其他主机设备,请使用用户名admin登录到Zabbix管理控制台,然后单击配置>主机。

几分钟后,监视数据将开始流入,要检查主机图,请转至监视>屏幕>服务器名称。