如何在CentOS 8/Rhel 8上安装Zabbix Server 5.0

时间:2020-02-23 14:38:54  来源:igfitidea点击:

如何在CentOS 8/Rhel 8 Linux上安装Zabbix Server 5.0?
Zabbix是一种强大的开源监控解决方案,用于监控系统,网络设备,服务器应用程序,硬件设备,IOT设备,等它的后端是用C和Java编写的,而在PHP中编写的用户Web界面。
本教程将在RHEL 8/CentOS 8 Linux服务器上浏览Zabbix Server的安装和配置

Zabbix架构(服务器和客户)

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

在CentOS 8/Rhel 8上安装Zabbix Server 5.0 LTS

Zabbix服务器取决于以下软件应用程序:MySQL/MariaDB数据库ServerApache Web ServerPHP具有所需的扩展

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

如果我们不是Selinux的粉丝,我建议我们以许可模式设置。

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

第1步:安装和配置Apache Web服务器

从安装Apache Web服务器的安装开始。
我们有一个关于如何在RHEL 8上安装Apache Httpd的全面教程:

如何使用Rhel 8上使用Mod_ssl&Mod_http2安装Apache

如果我们需要快速命令在Rhel/CentOS 8上安装Apache,请使用如下:

sudo dnf -y install @httpd

启动并启用HTTPD服务以启动启动。

sudo systemctl enable --now httpd

使用确认服务状态 systemctl命令。

$systemctl status httpd
 ● httpd.service - The Apache HTTP Server
    Loaded: loaded (/usr/lib/systemd/system/httpd.service; enabled; vendor preset: disabled)
    Active: active (running) since Sat 2016-12-29 10:16:00 EAT; 57s ago
      Docs: man:httpd.service(8)
  Main PID: 31069 (httpd)
    Status: "Running, listening on: port 443, port 80"
     Tasks: 213 (limit: 11510)
    Memory: 31.4M
    CGroup: /system.slice/httpd.service
            ├─31069 /usr/sbin/httpd -DFOREGROUND
            ├─31070 /usr/sbin/httpd -DFOREGROUND
            ├─31071 /usr/sbin/httpd -DFOREGROUND
            ├─31072 /usr/sbin/httpd -DFOREGROUND
            └─31073 /usr/sbin/httpd -DFOREGROUND
Jan 16 14:17:29 cent8.theitroad.com systemd[1]: Starting The Apache HTTP Server…
Jan 16 14:17:29 cent8.theitroad.com systemd[1]: Started The Apache HTTP Server.
Jan 16 14:17:29 cent8.theitroad.com httpd[9690]: Server configured, listening on: port 443, port 80

第2步:安装MariaDB数据库服务器

使用我们的教程安装MariaDB数据库服务器:

如何在Rhel 8/CentOS 8上安装MariaDB

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

$mysql -u root -p
CREATE DATABASE zabbix character set utf8 collate utf8_bin;
GRANT ALL PRIVILEGES ON zabbix.* TO Hyman@theitroad'localhost' IDENTIFIED BY 'StrongPassword';
FLUSH PRIVILEGES;
QUIT;

将"strondpassword"替换为我们所需的数据库密码。

第3步:在CentOS 8/Rhel 8上安装Zabbix服务器8

安装了Zabbix服务器所需的所有依赖项。
最后一节用于在CentOS 8/Rhel 8上安装和配置Zabbix服务器。

sudo dnf -y install https://repo.zabbix.com/zabbix/5.0/rhel/8/x86_64/zabbix-release-5.0-1.el8.noarch.rpm

然后在CentOS 8/Rhel 8上安装Zabbix Server Packages:

sudo dnf -y install zabbix-server-mysql zabbix-web-mysql zabbix-apache-conf zabbix-agent

导入Zabbix Server数据库模式

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

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

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

第4步:在CentOS 8/Rhel 8上配置和启动Zabbix服务器

编辑Zabbix配置文件 /etc/zabbix/zabbix_server.conf并设置数据库名称,用户和密码。

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

默认参数应该足以用于大多数设置,但我们可以最大化Zabbix服务器(或者代理)的性能。
检查文档中的性能调整部分。

为Zabbix Frontend配置PHP:

编辑文件/etc/php-fpm.d/zabbix.conf,取消注释并为我们设置正确的时区。

$sudo vi /etc/php-fpm.d/zabbix.conf
php_value[date.timezone] = Africa/Nairobi

最后启动并设置Zabbix服务以启动启动。

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

确认服务正在运行。

$systemctl status zabbix-server
● zabbix-server.service - Zabbix Server
    Loaded: loaded (/usr/lib/systemd/system/zabbix-server.service; enabled; vendor preset: disabled)
    Active: active (running) since Tue 2019-09-24 21:19:16 EAT; 2s ago
   Process: 15614 ExecStart=/usr/sbin/zabbix_server -c $CONFFILE (code=exited, status=0/SUCCESS)
  Main PID: 15616 (zabbix_server)
     Tasks: 37 (limit: 11512)
    Memory: 36.2M
    CGroup: /system.slice/zabbix-server.service
            ├─15616 /usr/sbin/zabbix_server -c /etc/zabbix/zabbix_server.conf
            ├─15620 /usr/sbin/zabbix_server: configuration syncer [waiting 60 sec for processes]
            ├─15621 /usr/sbin/zabbix_server: housekeeper [startup idle for 30 minutes]
            ├─15622 /usr/sbin/zabbix_server: timer #1 [updated 0 hosts, suppressed 0 events in 0.003857 sec, idle 59 sec]
            ├─15623 /usr/sbin/zabbix_server: http poller #1 [got 0 values in 0.000690 sec, idle 5 sec]
            ├─15624 /usr/sbin/zabbix_server: discoverer #1 [processed 0 rules in 0.000257 sec, idle 60 sec]
            ├─15625 /usr/sbin/zabbix_server: history syncer #1 [processed 0 values, 0 triggers in 0.000017 sec, idle 1 sec]
            ├─15626 /usr/sbin/zabbix_server: history syncer #2 [processed 1 values, 0 triggers in 0.010668 sec, idle 1 sec]
            ├─15627 /usr/sbin/zabbix_server: history syncer #3 [processed 0 values, 0 triggers in 0.000042 sec, idle 1 sec]
            ├─15628 /usr/sbin/zabbix_server: history syncer #4 [processed 0 values, 0 triggers in 0.000018 sec, idle 1 sec]
            ├─15629 /usr/sbin/zabbix_server: escalator #1 [processed 0 escalations in 0.000469 sec, idle 3 sec]
$systemctl status  zabbix-agent
 ● zabbix-agent.service - Zabbix Agent
    Loaded: loaded (/usr/lib/systemd/system/zabbix-agent.service; enabled; vendor preset: disabled)
    Active: active (running) since Tue 2019-09-24 21:18:56 EAT; 1min 8s ago
  Main PID: 15567 (zabbix_agentd)
     Tasks: 6 (limit: 11512)
    Memory: 4.6M
    CGroup: /system.slice/zabbix-agent.service
            ├─15567 /usr/sbin/zabbix_agentd -c /etc/zabbix/zabbix_agentd.conf
            ├─15569 /usr/sbin/zabbix_agentd: collector [idle 1 sec]
            ├─15570 /usr/sbin/zabbix_agentd: listener #1 [waiting for connection]
            ├─15571 /usr/sbin/zabbix_agentd: listener #2 [waiting for connection]
            ├─15572 /usr/sbin/zabbix_agentd: listener #3 [waiting for connection]
            └─15573 /usr/sbin/zabbix_agentd: active checks #1 [idle 1 sec]
 Sep 24 21:18:56 centos8.novalocal systemd[1]: Starting Zabbix Agent…
 Sep 24 21:18:56 centos8.novalocal systemd[1]: zabbix-agent.service: Can't open PID file /run/zabbix/zabbix_agentd.pid (yet?) after start: No such >
 Sep 24 21:18:56 centos8.novalocal systemd[1]: Started Zabbix Agent.

第5步:配置zabbix前端

调整PHP参数 /etc/php.ini

$sudo vi /etc/php.ini
memory_limit 128M
upload_max_filesize 8M
post_max_size 16M
max_execution_time 300
max_input_time 300
max_input_vars 10000

允许防火墙上的HTTP和Zabbix服务端口:

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

重新启动httpd和php-fpm服务。

sudo systemctl restart httpd php-fpm

打开Zabbix URL: <a rel="noreferrer noopener" aria-label="http:///zabbi (opens in a new tab)" href=https://theitroad.com target=_blank>http://<server_ip_or_name>/zabbix在浏览器中。

确认所有准备工作都满足。

配置DB设置

提供服务器详细信息

确认预安装摘要信息。

完成安装

如果我们如下收到消息

然后下载配置文件并将其放在zabbix webserver服务器配置文件中 - /var/www/html/zabbix/conf/zabbix.conf.phpzabbix的默认登录是:

Username: Admin
Password: zabbix

你应该到达Zabbix仪表板。

第6步:更改zabbix管理员密码

使用管理员用户和密码zabbix登录zabbix admin仪表板。
出于安全原因,我们需要在第一次登录后更改管理员用户的密码。

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