如何Oracle Linux 9.x部署企业监控Zabbix?

Zabbix

1 理论部分

zabbix(音同 zbix)是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。
zabbix能监视各种网络参数,保证服务器系统的安全运营;并提供灵活的通知机制以让系统管理员快速定位/解决存在的各种问题。
zabbix由2部分构成,zabbix server与可选组件zabbix agent。
zabbix server可以通过SNMP,zabbix agent,ping,端口监视等方法提供对远程服务器/网络状态的监视,数据收集等功能,它可以运行在Linux,Solaris,HP-UX,AIX,Free BSD,Open BSD,OS X等平台上。

2 服务端配置

2.1 环境

2.1.1 系统信息

OS = Oracle Linux 9.x x86_64
IP Address=10.168.0.160
Host Name=zabbix.cmdschool.org
系统基本配置,请参阅如下章节,

如何完成CentOS 7.x的基本服务?

2.1.2 配置SELinux

setenforce 0
sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config

2.1.3 调整系统时区

timedatectl set-timezone Asia/Shanghai

2.2 部署Mariadb

2.2.1 安装Mariadb

如何部署Oracle Linux 9.x MariaDB?

2.2.2 配置innodb引擎下表单独存储和字符集

vim /etc/my.cnf.d/mariadb-server.cnf

加入如下配置:

[mysqld]
character-set-server=utf8
innodb_file_per_table=1

启动数据库并设置默认启动

systemctl restart mariadb.service

2.2.3 创建数据库zabbix

mysql -uroot -p
create database zabbix default charset utf8;
grant all privileges on zabbix.* TO 'zabbix'@'localhost' identified by 'zabbixpwd';
flush privileges;

2.3 配置Zabbix服务

2.3.1 yum源的安装

dnf install -y http://repo.zabbix.com/zabbix/7.4/release/oracle/9/noarch/zabbix-release-latest.el9.noarch.rpm
dnf install -y zabbix-server-mysql zabbix-web-mysql zabbix-nginx-conf zabbix-agent
dnf install -y zabbix-get net-snmp-utils

2.3.2 导入数据表

gzip -d /usr/share/zabbix/sql-scripts/mysql/server.sql.gz
mysql -uroot -p
use zabbix
source /usr/share/zabbix/sql-scripts/mysql/server.sql

2.3.3 配置数据库连接

vim /etc/zabbix/zabbix_server.conf

保证以下参数非注释状态并账号密码跟前面定义的一致:

DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=zabbixpwd

2.3.4 启动服务并设置自启动

systemctl start zabbix-server
systemctl enable zabbix-server
systemctl start zabbix-agent
systemctl enable zabbix-agent

启动服务后,你可以使用如下命令查看服务端口的倾听状态,

ss -antp | grep zabbix_

可见如下显示,

LISTEN    0      4096         0.0.0.0:10050      0.0.0.0:*     users:(("zabbix_agentd",pid=9772,fd=4),("zabbix_agentd",pid=9771,fd=4),("zabbix_agentd",pid=9770,fd=4),("zabbix_agentd",pid=9769,fd=4),("zabbix_agentd",pid=9768,fd=4),("zabbix_agentd",pid=9767,fd=4),("zabbix_agentd",pid=9766,fd=4),("zabbix_agentd",pid=9765,fd=4),("zabbix_agentd",pid=9764,fd=4),("zabbix_agentd",pid=9763,fd=4),("zabbix_agentd",pid=9762,fd=4),("zabbix_agentd",pid=9761,fd=4),("zabbix_agentd",pid=9760,fd=4))                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   
LISTEN    0      4096         0.0.0.0:10051      0.0.0.0:*     users:(("zabbix_server",pid=9713,fd=10),("zabbix_server",pid=9712,fd=10),("zabbix_server",pid=9710,fd=10),("zabbix_server",pid=9708,fd=10),("zabbix_server",pid=9707,fd=10),("zabbix_server",pid=9706,fd=10),("zabbix_server",pid=9697,fd=10),("zabbix_server",pid=9696,fd=10),("zabbix_server",pid=9695,fd=10),("zabbix_server",pid=9694,fd=10),("zabbix_server",pid=9693,fd=10),("zabbix_server",pid=9692,fd=10),("zabbix_server",pid=9691,fd=10),("zabbix_server",pid=9690,fd=10),("zabbix_server",pid=9689,fd=10),("zabbix_server",pid=9667,fd=10),("zabbix_server",pid=9666,fd=10),("zabbix_server",pid=9665,fd=10),("zabbix_server",pid=9664,fd=10),("zabbix_server",pid=9663,fd=10),("zabbix_server",pid=9661,fd=10),("zabbix_server",pid=9660,fd=10),("zabbix_server",pid=9659,fd=10),("zabbix_server",pid=9658,fd=10),("zabbix_server",pid=9657,fd=10),("zabbix_server",pid=9656,fd=10),("zabbix_server",pid=9655,fd=10),("zabbix_server",pid=9654,fd=10),("zabbix_server",pid=9653,fd=10),("zabbix_server",pid=9652,fd=10),("zabbix_server",pid=9650,fd=10),("zabbix_server",pid=9649,fd=10),("zabbix_server",pid=9648,fd=10),("zabbix_server",pid=9647,fd=10),("zabbix_server",pid=9646,fd=10),("zabbix_server",pid=9644,fd=10),("zabbix_server",pid=9643,fd=10),("zabbix_server",pid=9641,fd=10),("zabbix_server",pid=9640,fd=10),("zabbix_server",pid=9638,fd=10),("zabbix_server",pid=9636,fd=10),("zabbix_server",pid=9635,fd=10),("zabbix_server",pid=9634,fd=10),("zabbix_server",pid=9633,fd=10),("zabbix_server",pid=9632,fd=10),("zabbix_server",pid=9631,fd=10),("zabbix_server",pid=9630,fd=10),("zabbix_server",pid=9629,fd=10),("zabbix_server",pid=9625,fd=10),("zabbix_server",pid=9624,fd=10),("zabbix_server",pid=9616,fd=10))
LISTEN    0      4096            [::]:10050         [::]:*     users:(("zabbix_agentd",pid=9772,fd=5),("zabbix_agentd",pid=9771,fd=5),("zabbix_agentd",pid=9770,fd=5),("zabbix_agentd",pid=9769,fd=5),("zabbix_agentd",pid=9768,fd=5),("zabbix_agentd",pid=9767,fd=5),("zabbix_agentd",pid=9766,fd=5),("zabbix_agentd",pid=9765,fd=5),("zabbix_agentd",pid=9764,fd=5),("zabbix_agentd",pid=9763,fd=5),("zabbix_agentd",pid=9762,fd=5),("zabbix_agentd",pid=9761,fd=5),("zabbix_agentd",pid=9760,fd=5))                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   
LISTEN    0      4096            [::]:10051         [::]:*     users:(("zabbix_server",pid=9713,fd=11),("zabbix_server",pid=9712,fd=11),("zabbix_server",pid=9710,fd=11),("zabbix_server",pid=9708,fd=11),("zabbix_server",pid=9707,fd=11),("zabbix_server",pid=9706,fd=11),("zabbix_server",pid=9697,fd=11),("zabbix_server",pid=9696,fd=11),("zabbix_server",pid=9695,fd=11),("zabbix_server",pid=9694,fd=11),("zabbix_server",pid=9693,fd=11),("zabbix_server",pid=9692,fd=11),("zabbix_server",pid=9691,fd=11),("zabbix_server",pid=9690,fd=11),("zabbix_server",pid=9689,fd=11),("zabbix_server",pid=9667,fd=11),("zabbix_server",pid=9666,fd=11),("zabbix_server",pid=9665,fd=11),("zabbix_server",pid=9664,fd=11),("zabbix_server",pid=9663,fd=11),("zabbix_server",pid=9661,fd=11),("zabbix_server",pid=9660,fd=11),("zabbix_server",pid=9659,fd=11),("zabbix_server",pid=9658,fd=11),("zabbix_server",pid=9657,fd=11),("zabbix_server",pid=9656,fd=11),("zabbix_server",pid=9655,fd=11),("zabbix_server",pid=9654,fd=11),("zabbix_server",pid=9653,fd=11),("zabbix_server",pid=9652,fd=11),("zabbix_server",pid=9650,fd=11),("zabbix_server",pid=9649,fd=11),("zabbix_server",pid=9648,fd=11),("zabbix_server",pid=9647,fd=11),("zabbix_server",pid=9646,fd=11),("zabbix_server",pid=9644,fd=11),("zabbix_server",pid=9643,fd=11),("zabbix_server",pid=9641,fd=11),("zabbix_server",pid=9640,fd=11),("zabbix_server",pid=9638,fd=11),("zabbix_server",pid=9636,fd=11),("zabbix_server",pid=9635,fd=11),("zabbix_server",pid=9634,fd=11),("zabbix_server",pid=9633,fd=11),("zabbix_server",pid=9632,fd=11),("zabbix_server",pid=9631,fd=11),("zabbix_server",pid=9630,fd=11),("zabbix_server",pid=9629,fd=11),("zabbix_server",pid=9625,fd=11),("zabbix_server",pid=9624,fd=11),("zabbix_server",pid=9616,fd=11))

根据端口倾听的需求,我们需要配置防火墙开启如下端口,

firewall-cmd --permanent --add-service zabbix-server --add-service zabbix-agent
firewall-cmd --reload
firewall-cmd --list-all

2.4 配置Web服务

2.4.1 修改Zabbix服务配置文件

cp /etc/nginx/conf.d/zabbix.conf /etc/nginx/conf.d/zabbix.conf.default
vim /etc/nginx/conf.d/zabbix.conf

修改如下参数,

server {
        listen          80;
        server_name     zabbix.cmdschool.org;

        root    /usr/share/zabbix/ui;

        index   index.php;

        location = /favicon.ico {
                log_not_found   off;
        }

        location / {
                try_files       $uri $uri/ =404;
        }

        location /assets {
                access_log      off;
                expires         10d;
        }

        location ~ /\.ht {
                deny            all;
        }

        location ~ /(api\/|conf[^\.]|include|locale) {
                deny            all;
                return          404;
        }

        location /vendor {
                deny            all;
                return          404;
        }

        location ~ [^/]\.php(/|$) {
                fastcgi_pass    unix:/run/php-fpm/zabbix.sock;
                fastcgi_split_path_info ^(.+\.php)(/.+)$;
                fastcgi_index   index.php;

                fastcgi_param   DOCUMENT_ROOT   /usr/share/zabbix/ui;
                fastcgi_param   SCRIPT_FILENAME /usr/share/zabbix/ui$fastcgi_script_name;
                fastcgi_param   PATH_TRANSLATED /usr/share/zabbix/ui$fastcgi_script_name;

                include fastcgi_params;
                fastcgi_param   QUERY_STRING    $query_string;
                fastcgi_param   REQUEST_METHOD  $request_method;
                fastcgi_param   CONTENT_TYPE    $content_type;
                fastcgi_param   CONTENT_LENGTH  $content_length;

                fastcgi_intercept_errors        on;
                fastcgi_ignore_client_abort     off;
                fastcgi_connect_timeout         60;
                fastcgi_send_timeout            180;
                fastcgi_read_timeout            180;
                fastcgi_buffer_size             128k;
                fastcgi_buffers                 4 256k;
                fastcgi_busy_buffers_size       256k;
                fastcgi_temp_file_write_size    256k;
        }
}

2.4.2 启动服务并设置开机默认启动

systemctl start nginx
systemctl enable nginx

启动服务后,你可以使用如下命令查看服务端口的倾听状态,

ss -antp | grep nginx

可见如下显示,

LISTEN    0      511          0.0.0.0:80         0.0.0.0:*     users:(("nginx",pid=10836,fd=6),("nginx",pid=10835,fd=6),("nginx",pid=10834,fd=6),("nginx",pid=10833,fd=6),("nginx",pid=10832,fd=6))                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      
LISTEN    0      511             [::]:80            [::]:*     users:(("nginx",pid=10836,fd=7),("nginx",pid=10835,fd=7),("nginx",pid=10834,fd=7),("nginx",pid=10833,fd=7),("nginx",pid=10832,fd=7)) 

根据端口倾听的需求,我们需要配置防火墙开启如下端口,

firewall-cmd --permanent --add-service http
firewall-cmd --reload
firewall-cmd --list-all

2.5 初始化Zabbix服务

2.5.1 设置名称解析

echo '10.168.0.53 zabbix.cmdschool.org' >> /etc/hosts

注:生产环境请使用DNS服务,当前设置仅用于测试。

2.5.2 执行初始化

http://zabbix.cmdschool.org/
界面显示如下,

如上图所示,
“Default language”选择“English (en_us)”
单击【Next setp】进入下一个配置

如上图所示,
检查PHP模块的状态,如果异常需要安装,如果无需安装。
单击【Next setp】进入下一个配置

如上图所示,
“Database type”选择“MySQL”
“Database Host”填写“localhost”
“Database port”填写“3306”
“Database name”填写“zabbix”
“Store credentials in”选择“Piain text”
“User”填写“zabbix”
“Password”填写“zabbixpwd”
单击【Next setp】进入下一个配置

如上图所示,
“Zabbix server name”填写“zabbix.cmdschool.org”
“Default time zone”选择“(UTC+08:00)Asia/Shanghai”
“Default theme”选择“Blue”
“Database name”选择“zabbix”
“Encrypt connections from Web interface”选择“false”
单击【Next setp】进入下一个配置

如上图所示,
直接单击【Next setp】进入下一个配置

如上图所示,
直接单击【Finish】完成配置

2.5.3 登陆服务


如上图所示,
“Username”填写“admin”
“Password”填写“zabbix”
“Remember me for 30 days”选择“True”
单击【Sign in】进入管理页面

参阅资料:
======================================================
http://www.zabbix.com/
软件包地址:
http://www.zabbix.com/download.php
Manual:
http://www.zabbix.com/documentation.php
安装方法:
https://www.zabbix.com/documentation/2.4/manual/installation/install_from_packages
MySQL配置方法:
https://www.zabbix.com/documentation/2.4/manual/appendix/install/db_scripts

没有评论

发表回复

OpenWRT
如何配置openwrt zabbix-agent

1 前言 一个问题,一篇文章,一出故事。 笔者今天部署想把openWRT加入到Zabbix里面监控, …

Zabbix
如何解决zabbix agent无法启动问题?

1 前言 笔者今天需要启动安装于RHEL 8的zabbix agent,结果死活起不来,于是笔者想到 …

Zabbix
如何实现Zabbix监控MySQL数据库?

1 前言 Zabbix对于MySQL的监控官方教程好像还没有给出明确的配置方法,以下是我参阅一些资料 …