准备三台机器:
10.36.192.124 zabbix-server
10.36.192.151 zabbix-proxy
10.36.192.186 zabbix-agent
关闭三台防火墙、selinux
[root@zabbix-server ~]# setenforce 0 && systemctl stop firewalld
[root@zabbix-proxy ~]# setenforce 0 && systemctl stop firewalld
[root@zabbix-agent ~]# setenforce 0 && systemctl stop firewalld
修改主机名
[root@localhost ~]# hostnamectl set-hostname zabbix-server
[root@localhost ~]# hostnamectl set-hostname zabbix-proxy
[root@localhost ~]# hostnamectl set-hostname zabbix-agent
配置zabbix-agent
安装zabbix源,下载zabbix-agent服务
[root@zabbix-agent ~]# rpm -Uvh https://repo.zabbix.com/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm
获取https://repo.zabbix.com/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm
警告:/var/tmp/rpm-tmp.pJHbwb: 头V4 RSA/SHA512 Signature, 密钥 ID a14fe591: NOKEY
准备中... ################################# [100%]
正在升级/安装...
1:zabbix-release-5.0-1.el7 ################################# [100%]
[root@zabbix-agent ~]# yum clean all
已加载插件:fastestmirror
正在清理软件源: base extras updates zabbix zabbix-non-supported
Cleaning up list of fastest mirrors
[root@zabbix-agent ~]# yum install zabbix-agent
已加载插件:fastestmirror
Determining fastest mirrors
···
总下载量:490 k
安装大小:1.7 M
Is this ok [y/d/N]: y
Downloading packages:
···
是否继续?[y/N]:y
Running transaction check
···
已安装:
zabbix-agent.x86_64 0:5.0.39-1.el7
完毕!
配置zabbix-agent.conf文件
[root@zabbix-agent ~]# vim /etc/zabbix/zabbix_agentd.conf
#修改一下几个参数信息
Server=10.36.192.151 #指明服务器是谁 (一般是server端,做代理时改为代理端)
ServerActive=10.36.192.151 #主动监控时的服务器 (一般是server端,做代理时改为代理端)Hostname=node1.keer.com#自己能被server端识别的名称
ListenPort=10050
ListenIP=0.0.0.0
StartAgents=3
Hostname=zabbix-agent
zabbix-agent服务端完成。
配置zabbix-proxy
下载zabbix源并安装zabbix-proxy
[root@zabbix-proxy ~]# rpm -Uvh https://repo.zabbix.com/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm
获取https://repo.zabbix.com/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm
警告:/var/tmp/rpm-tmp.pJHbwb: 头V4 RSA/SHA512 Signature, 密钥 ID a14fe591: NOKEY
准备中... ################################# [100%]
正在升级/安装...
1:zabbix-release-5.0-1.el7 ################################# [100%]
[root@zabbix-proxy ~]# yum clean all
已加载插件:fastestmirror
正在清理软件源: base extras updates zabbix zabbix-non-supported
Cleaning up list of fastest mirrors
[root@zabbix-proxy ~]# yum install zabbix-proxy-mysql
已加载插件:fastestmirror
Determining fastest mirrors
···
总下载量:490 k
安装大小:1.7 M
Is this ok [y/d/N]: y
Downloading packages:
···
是否继续?[y/N]:y
Running transaction check
···
已安装:
zabbix-agent.x86_64 0:5.0.39-1.el7
完毕!
安装mysql服务并修改密码,导入数据
[root@zabbix-proxy ~]# yum -y install mysql mysql-server
已加载插件:fastestmirror
Loading mirror speeds from cached hostfile
····
完毕!
[root@zabbix-proxy ~]# systemctl start mysqld
[root@zabbix-proxy ~]# grep pass /var/log/mysqld.log
2023-11-19T08:25:20.618721Z 1 [Note] A temporary password is generated for root@localhost: ur6P/Dr0lwfv
[root@zabbix-proxy ~]# mysqladmin -uroot -p'ur6P/Dr0lwfv' password 'Xiaolizi@123'
mysqladmin: [Warning] Using a password on the command line interface can be insecure.
Warning: Since password will be sent to server in plain text, use ssl connection to ensure password safety.
[root@zabbix-proxy ~]# mysql -p'Xiaolizi@123'
mysql: [Warning] Using a password on the command line interface can be insecure.
Welcome to the MySQL monitor. Commands end with ; or \g.
···
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql> create database zabbix_proxy character set utf8 collate utf8_bin;
Query OK, 1 row affected (0.00 sec)
mysql> create user zabbix@localhost identified by 'Xiaolizi@123';
Query OK, 0 rows affected (0.01 sec)
mysql> grant all privileges on zabbix_proxy.* to zabbix@localhost;
Query OK, 0 rows affected (0.00 sec)
mysql> ^DBye
[root@zabbix-proxy ~]# zcat /usr/share/doc/zabbix-proxy-mysql-5.0.39/schema.sql.gz | mysql -uzabbix -p zabbix_proxy
Enter password:
[root@zabbix-proxy ~]# vim /etc/zabbix/zabbix_proxy.conf
DBpasswd=Xiaolizi@123
[root@zabbix-proxy ~]# systemctl restart zabbix-proxy
[root@zabbix-proxy ~]# systemctl enable zabbix-proxy
Created symlink from /etc/systemd/system/multi-user.target.wants/zabbix-proxy.service to /usr/lib/systemd/system/zabbix-proxy.service.
配置zabbix-proxy.conf文件
[root@zabbix-proxy ~]# vim /etc/zabbix/zabbix_proxy.conf
# 修改一下内容
ProxyMode=1 # 0为主动 1为被动
Server=10.36.192.124 #服务端ip地址
SourceIP=发送采样信息的ip地址
Hostname=zabbix-proxy #主机名
ListenPort=10051 #proxy自己的监听端口
EnableRemoteCommands=1 #允许远程命令
LogRemoteCommands=1 #记录远程命令的日志
DBHost=10.36.192.151 #数据库地址
DBName=zabbix_proxy
DBUser=zabbix
DBPassword=Xiaolizi@123
ConfigFrequency=30 #多长时间,去服务端拖一次有自己监控的操作配置;为了实验更快的生效,这里设置30秒,默认3600s
DataSenderFrequency=1 #每一秒向server 端发一次数据,发送频度
[root@zabbix-proxy ~]# systemctl start zabbix-proxy
[root@zabbix-proxy ~]# ss -nplt | grep zabbix
LISTEN 0 128 *:10051 *:* users:(("zabbix_proxy",pid=51170,fd=4),("zabbix_proxy",pid=51169,fd=4),("zabbix_proxy",pid=51168,fd=4),("zabbix_proxy",pid=51167,fd=4),("zabbix_proxy",pid=51166,fd=4),("zabbix_proxy",pid=51165,fd=4),("zabbix_proxy",pid=51164,fd=4),("zabbix_proxy",pid=51163,fd=4),("zabbix_proxy",pid=51162,fd=4),("zabbix_proxy",pid=51161,fd=4),("zabbix_proxy",pid=51160,fd=4),("zabbix_proxy",pid=51159,fd=4),("zabbix_proxy",pid=51158,fd=4),("zabbix_proxy",pid=51157,fd=4),("zabbix_proxy",pid=51156,fd=4),("zabbix_proxy",pid=51155,fd=4),("zabbix_proxy",pid=51154,fd=4),("zabbix_proxy",pid=51153,fd=4),("zabbix_proxy",pid=51152,fd=4),("zabbix_proxy",pid=51151,fd=4),("zabbix_proxy",pid=51150,fd=4),("zabbix_proxy",pid=51149,fd=4),("zabbix_proxy",pid=51146,fd=4),("zabbix_proxy",pid=51145,fd=4),("zabbix_proxy",pid=51142,fd=4),("zabbix_proxy",pid=51141,fd=4),("zabbix_proxy",pid=51140,fd=4),("zabbix_proxy",pid=51139,fd=4),("zabbix_proxy",pid=51137,fd=4))
LISTEN 0 128 [::]:10051 [::]:* users:(("zabbix_proxy",pid=51170,fd=5),("zabbix_proxy",pid=51169,fd=5),("zabbix_proxy",pid=51168,fd=5),("zabbix_proxy",pid=51167,fd=5),("zabbix_proxy",pid=51166,fd=5),("zabbix_proxy",pid=51165,fd=5),("zabbix_proxy",pid=51164,fd=5),("zabbix_proxy",pid=51163,fd=5),("zabbix_proxy",pid=51162,fd=5),("zabbix_proxy",pid=51161,fd=5),("zabbix_proxy",pid=51160,fd=5),("zabbix_proxy",pid=51159,fd=5),("zabbix_proxy",pid=51158,fd=5),("zabbix_proxy",pid=51157,fd=5),("zabbix_proxy",pid=51156,fd=5),("zabbix_proxy",pid=51155,fd=5),("zabbix_proxy",pid=51154,fd=5),("zabbix_proxy",pid=51153,fd=5),("zabbix_proxy",pid=51152,fd=5),("zabbix_proxy",pid=51151,fd=5),("zabbix_proxy",pid=51150,fd=5),("zabbix_proxy",pid=51149,fd=5),("zabbix_proxy",pid=51146,fd=5),("zabbix_proxy",pid=51145,fd=5),("zabbix_proxy",pid=51142,fd=5),("zabbix_proxy",pid=51141,fd=5),("zabbix_proxy",pid=51140,fd=5),("zabbix_proxy",pid=51139,fd=5),("zabbix_proxy",pid=51137,fd=5))
配置zabbix-server
下载并安装zabbix-server mysql
[root@zabbix-server ~]# rpm -Uvh https://repo.zabbix.com/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm
···
[root@zabbix-server ~]# yum clean all
····
[root@zabbix-server ~]# yum install zabbix-server-mysql zabbix-agent
···
完毕!
[root@zabbix-server ~]# yum install centos-release-scl
···
完毕!
[root@zabbix-server ~]# vim /etc/yum.repos.d/zabbix.repo
[zabbix-frontend]
...
enabled=1
...
[root@zabbix-server ~]# yum install zabbix-web-mysql-scl zabbix-nginx-conf-scl
···
完毕!
[root@zabbix-server ~]# yum -y install mysql mysql-server
···
完毕!
[root@zabbix-server ~]# systemctl start mysqld
[root@zabbix-server ~]# grep pass /var/log/mysqld.log
2023-11-19T08:56:57.474774Z 1 [Note] A temporary password is generated for root@localhost: 4QTv(fUa>s<1
[root@zabbix-server ~]# mysqladmin -uroot -p'4QTv(fUa>s<1' password 'Xiaolizi@123'
mysqladmin: [Warning] Using a password on the command line interface can be insecure.
Warning: Since password will be sent to server in plain text, use ssl connection to ensure password safety.
[root@zabbix-server ~]# mysql -p'Xiaolizi@123'
mysql: [Warning] Using a password on the command line interface can be insecure.
Welcome to the MySQL monitor. Commands end with ; or \g.
····
mysql> create database zabbix character set utf8 collate utf8_bin;
Query OK, 1 row affected (0.00 sec)
mysql> create user zabbix@localhost identified by 'Xiaolizi@123';
Query OK, 0 rows affected (0.00 sec)
mysql> grant all privileges on zabbix.* to zabbix@localhost;
Query OK, 0 rows affected (0.00 sec)
mysql> ^DBye
[root@zabbix-server ~]# ll /usr/share/doc/zabbix-server-mysql-5.0.39/
总用量 3260
···
-rw-r--r--. 1 root root 2040518 10月 30 19:52 create.sql.gz
···
[root@zabbix-server ~]# zcat /usr/share/doc/zabbix-server-mysql-5.0.39/create.sql.gz | mysql -uzabbix -p zabbix
Enter password:
[root@zabbix-server ~]#
修改zabbix-server的相关配置文件
[root@zabbix-server ~]# vim /etc/zabbix/zabbix_server.conf
DBPassword=Xiaolizi@123
[root@zabbix-server ~]# vim /etc/opt/rh/rh-nginx116/nginx/conf.d/zabbix.conf
listen 80;
server_name localhost;
[root@zabbix-server ~]# vim /etc/opt/rh/rh-php72/php-fpm.d/zabbix.conf
user = nginx
group = nginx
listen.acl_users = nginx;
php_value[date.timezone] = Asia/Shanghai
[root@zabbix-server ~]# systemctl restart zabbix-server zabbix-agent rh-nginx116-nginx rh-php72-php-fpm
[root@zabbix-server ~]# systemctl enable zabbix-server zabbix-agent rh-nginx116-nginx rh-php72-php-fpm
Created symlink from /etc/systemd/system/multi-user.target.wants/zabbix-server.service to /usr/lib/systemd/system/zabbix-server.service.
配置zabbix-server已完成。
访问测试
浏览器访问10.36.192.124
填写主机名
用户:Admin 密码:zabbix
出现以下页面表示登陆成功
创建主机群组
创建agent代理程序
创建主机
创建监控项
测试一下
创建触发器
查看图形
在zabbix-agent端关闭监听端口服务进行测试
[root@zabbix-agent ~]# systemctl stop sshd
在zabbix-agent端启动监听端口服务进行测试
[root@zabbix-agent ~]# systemctl start sshd
zabbix的分布式监控至此结束。