123hjg

自动化运维之【Zabbix+MySQL+Httpd】IT基础架构

2020-06-15  本文已影响0人  张毅SOHO

Zabbix是一个开源的(遵循 GPLv2 协议)且支持中文语言的IT基础架构、服务、应用程序和资源监控系统。它使用 C/S 架构,由 Server(服务器端) 与 Agent(客户端代理) 组成。

本方案基于CentOS8系统设计,建议在RedHat/CentOS系统中使用。

1. 部署拓扑图

Zabbix 部署拓扑图

网络资源规划:

1、服务器端

2、客户端

节点名 主机名 IP:PORT 程序 平台
客户端-1 host 192.168.0.21:10050 Zabbix Agent Linux
客户端-2 host 192.168.0.22:10050 Zabbix Agent Windows
客户端≥3 host 192.168.0.23:10050 Zabbix Agent MacOS

2. 服务器端安装和配置

1、安装和初始化数据库。

1)安装 MySQL 或 MariaDB:

[centos@Zabbix ~ ]$ sudo dnf install mysql-server mysql

或者:

[centos@Zabbix ~ ]$ sudo dnf install mariadb-server mariadb

2)启动数据库并设置为开机自启动:

[centos@Zabbix ~ ]$ sudo systemctl start mysqld
[centos@Zabbix ~ ]$ sudo systemctl enable mysqld

或者:

[centos@Zabbix ~ ]$ sudo systemctl start mariadb
[centos@Zabbix ~ ]$ sudo systemctl enable mariadb

3)初始化数据库根管理员账号【root】的口令:

[centos@Zabbix ~ ]$ mysqladmin -u root password "password"

4)测试登录数据库:

[centos@Zabbix ~ ]$ mysql -u root -p
Enter password:
mysql> 

2、安装 Web 中间件 。

[centos@Zabbix ~ ]$ sudo dnf install httpd

3、安装 Zabbix 服务器端 。

1)打开 Zabbix 官方网站下载页面,选择 Zabbix 适配的操作系统和基础环境。

2)下载并安装 Zabbix 官方 yum 源配置文件。

[centos@Zabbix ~ ]$ sudo rpm -Uvh https://repo.zabbix.com/zabbix/5.0/rhel/8/x86_64/zabbix-release-5.0-1.el8.noarch.rpm
[centos@Zabbix ~ ]$ sudo dnf clean all
[centos@Zabbix ~ ]$ sudo dnf makecache

3)安装 Zabbix Server、Zabbix Web、Zabbix Agent。

[centos@Zabbix ~ ]$ sudo dnf install zabbix-server-mysql zabbix-web-mysql zabbix-apache-conf zabbix-agent

4)创建和配置 Zabbix 数据库。

[centos@Zabbix ~ ]$ mysql -u root -p
Enter password:
mysql> create database zabbix character set utf8 collate utf8_bin;
mysql> create user zabbix@localhost identified by 'password';
mysql> grant all privileges on zabbix.* to zabbix@localhost;
mysql> flush privileges;
mysql> quit; 

5)导入 Zabbix 数据库结构。

[centos@Zabbix ~ ]$ zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -u zabbix -p zabbix 

6)设置 Zabbix 配置文件参数。

使用文本编辑器打开配置文件:

[centos@Zabbix ~ ]$ sudo gedit /etc/zabbix/zabbix_server.conf 

修改或验证文件中的以下参数并保存:

# 服务器端口号,默认值是10051。
ListenPort=10051

# 日志文件路径
LogFile=/var/log/zabbix/zabbix_server.log

# 运行时文件路径
PidFile=/var/run/zabbix/zabbix_server.pid

# Socket目录
SocketDir=/var/run/zabbix

# 数据库服务器IP或DNS。
DBHost=localhost

# 数据库名称。
DBName=zabbix

# 数据库用户账号。
DBUser=zabbix

# 数据库用户的口令。
DBPassword=password

注意:一般情况下只需要设置【DBPassword】参数即可,其他的使用默认值。

7)设置并启用 Web 中间件模块。

[centos@Zabbix ~ ]$ sudo gedit /etc/php-fpm.d/zabbix.conf

将文件中代码 "; php_value[date.timezone] = Europe/Riga" 改为如下并保存:

php_value[date.timezone] = Asia/Shanghai

注意:去掉 ";" 表示取消注释该行代码;"Asia/Shanghai" 表示中国时区。

8)修改 SELinux 配置文件,永久关闭 SELinux。

使用文本编辑器打开"/etc/selinux/config"文件:

[centos@host ~]$ sudo gedit /etc/selinux/config

将 "SELINUX" 参数设置为:"permissive" 或者 "disabled",并保存:

#     enforcing - 表示启用 SELinux 安全策略。
#     permissive - 表示启用 SELinux 安全策略,但不强制验证。如果执行第一步可以正常运行,则建议设置此值。
#     disabled - 关闭 SELinux 安全策略,相当于没有安装 SELinux。
SELINUX=disabled

重启服务器:

[centos@host ~]$ sudo reboot

9)启动 Zabbix 相关服务,并设置为开启自启动。

[centos@Zabbix ~ ]$ sudo systemctl start zabbix-server zabbix-agent httpd php-fpm
[centos@Zabbix ~ ]$ sudo systemctl enable zabbix-server zabbix-agent httpd php-fpm 

10)设置防火墙端口(CentOS8默认安装firewall防火墙),允许"80"、"10051"、"10050"端口(Zabbix 默认端口)访问服务器。

[centos@Zabbix ~ ]$ sudo firewall-cmd --zone=public --add-port=10051/tcp --permanent
[centos@Zabbix ~ ]$ sudo firewall-cmd --zone=public --add-port=10050/tcp --permanent
[centos@Zabbix ~ ]$ sudo firewall-cmd --zone=public --add-port=80/tcp --permanent
[centos@Zabbix ~ ]$ sudo firewall-cmd --reload

4、配置 Zabbix 服务器端 。

在浏览器中输入【http://localhost/zabbix】。

欢迎页 前置检查 数据库配置 中间件配置 安装前摘要 完成页

5、使用 Zabbix 监控器 。

在浏览器中输入【http://localhost/zabbix】,初始用户的账号和口令分别是:【Admin】和【zabbix】,账号和口令都区分大小写。

用户认证 主界面 设置中文语言 中文主界面

3. 客户端安装和配置

1、打开 Zabbix 官方网站下载页面,选择 Zabbix 适配的操作系统和基础环境。

2、下载并安装 Zabbix 官方 yum 源配置文件。

[centos@host ~ ]$ sudo rpm -Uvh https://repo.zabbix.com/zabbix/5.0/rhel/8/x86_64/zabbix-release-5.0-1.el8.noarch.rpm
[centos@host ~ ]$ sudo dnf clean all
[centos@host ~ ]$ sudo dnf makecache

3、安装 Zabbix Agent。

[centos@host ~ ]$ sudo dnf install zabbix-agent

4、设置 Zabbix 配置文件参数。

使用文本编辑器打开配置文件:

[centos@host ~ ]$ sudo gedit /etc/zabbix/zabbix_agentd.conf 

修改或验证文件中的以下参数并保存:

# 日志文件路径
LogFile=/var/log/zabbix/zabbix_agentd.log

# 运行时文件路径
PidFile=/var/run/zabbix/zabbix_agentd.pid

# Zabbix 服务器端IP地址。
Server=192.168.0.10

# Zabbix 主动检查本机数据接收服务器IP地址。
ServerActive=192.168.0.10

# 客户端主机名称。
Hostname=192.168.0.21

# 代理端口号,默认值是10050。
ListenPort=10050

5、修改 SELinux 配置文件,永久关闭 SELinux。

使用文本编辑器打开"/etc/selinux/config"文件:

[centos@host ~]$ sudo gedit /etc/selinux/config

将 "SELINUX" 参数设置为:"permissive" 或者 "disabled",并保存:

#     enforcing - 表示启用 SELinux 安全策略。
#     permissive - 表示启用 SELinux 安全策略,但不强制验证。如果执行第一步可以正常运行,则建议设置此值。
#     disabled - 关闭 SELinux 安全策略,相当于没有安装 SELinux。
SELINUX=disabled

重启服务器:

[centos@host ~]$ sudo reboot

6、启动 Zabbix Agent 服务,并设置为开启自启动。

[centos@host ~ ]$ sudo systemctl start zabbix-agent
[centos@host ~ ]$ sudo systemctl enable zabbix-agent

7、设置防火墙端口(CentOS8默认安装firewall防火墙),允许"10050"端口(Zabbix Agent 默认端口)访问服务器。

[centos@host ~ ]$ sudo firewall-cmd --zone=public --add-port=10050/tcp --permanent
[centos@host ~ ]$ sudo firewall-cmd --reload

注意:所有客户端都需按照以上步骤配置。

8、在 Zabbix 监控系统中配置客户端主机。

在浏览器中输入【http://localhost/zabbix】,初始用户的账号和口令分别是:【Admin】和【zabbix】,账号和口令都区分大小写。

在【配置 --> 主机】页面中创建新的主机 填写客户端主机基本信息 选择监控点模块并添加 添加完成

注意:添加完成后,需要等待大约 3 分钟才能建立服务器和客户端的数据通信,之后刷新一下页面,如果发现该主机的可用性标记为下图状态,则表示客户端已受控。

图片.png

常见问题:更改 Zabbix 用户的口令

[centos@Zabbix ~ ]$ mysql -u root -p
Enter password:
mysql> use zabbix;
mysql> update users set passwd=md5('password') where alias= 'Admin';
上一篇下一篇

猜你喜欢

热点阅读