欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Zabbix 分布式监控

程序员文章站 2022-07-11 12:01:36
...

环境准备
三台机器:

机器名称 IP配置 服务角色
zabbix 192.168.49.170 监控
node1 192.168.49.171 代理proxy
node2 192.168.49.172 被监控端
  • zabbix-server 通过代理 node1 监控 node2

一.在node1上配置mysql

1.创建mariadb.repo

[aaa@qq.com ~]# vim /etc/yum.repos.d/mariadb.repo
写入以下内容:
[mariadb]
name = MariaDB 
baseurl = https://mirrors.ustc.edu.cn/mariadb/yum/10.4/centos7-amd64 
gpgkey=https://mirrors.ustc.edu.cn/mariadb/yum/RPM-GPG-KEY-MariaDB 
gpgcheck=1

2.yum安装最新版本的mariadb

[aaa@qq.com ~]# yum install -y MariaDB-server MariaDB-client
  • 修改配置文件
#找到[mysqld]在下面添加如下内容
[aaa@qq.com ~]# vim /etc/my.cnf.d/server.cnf
    [mysqld]
    skip_name_resolve = ON          # 跳过主机名解析
    innodb_file_per_table = ON      # 开启独立表空间
    innodb_buffer_pool_size = 256M  # 缓存池大小
    max_connections = 2000          # 最大连接数
    log-bin = master-log            # 开启二进制日志

3.重启数据库服务

[aaa@qq.com ~]#  systemctl restart mariadb
[aaa@qq.com ~]#  mysql_secure_installation  # 初始化mariadb

4.创建数据库和授权用户

MariaDB [(none)]> create database zbxproxydb character set 'utf8';
MariaDB [(none)]> grant all on zbxproxydb.* to 'zbxproxyuser'@'192.168.152.%' identified by 'zbxproxypass';
MariaDB [(none)]> flush privileges;

二.在node1上下载zabbix 相关的包,主要是代理proxy的包

1.

[aaa@qq.com ~]# yum -y install zabbix-proxy-mysql zabbix-get zabbix-agent zabbix-sender
  • zabbix-proxy-mysql 包里带有,导入数据的文件
[aaa@qq.com ~]# rpm -ql zabbix-proxy-mysql

Zabbix 分布式监控

  • 安装gzip,到目录下解压包
#导入数据,两种方式,可以选择前一种在数据库外导入,也可以选择后者进入数据库导入
[aaa@qq.com ~]# mysql -root -p zbxproxydb < schema.sql 
MariaDB [(none)]> source /usr/share/doc/zabbix-proxy-mysql-5.0.3/schema.sql
  • 导入成功

Zabbix 分布式监控

三.配置proxy

[aaa@qq.com ~]# vim /etc/zabbix/zabbix_proxy.conf

Zabbix 分布式监控

1.修改配置文件

 [aaa@qq.com ~]# vim /etc/zabbix/zabbix_proxy.conf
aaa@qq.com ~]# cat /etc/zabbix/zabbix_proxy.conf | grep -Ev '^$|#'
Server=192.168.49.170
ServerPort=10051
Hostname=node1
ListenPort=10051
SourceIP=192.168.49.171
LogType=file
LogFile=/var/log/zabbix/zabbix_proxy.log
LogFileSize=0
DebugLevel=3
EnableRemoteCommands=1
LogRemoteCommands=1
PidFile=/var/run/zabbix/zabbix_proxy.pid
SocketDir=/var/run/zabbix
DBHost=192.168.49.171
DBName=zbxproxydb
DBUser=zbxproxyuser
DBPassword=1234.com
ConfigFrequency=30
DataSenderFrequency=1
SNMPTrapperFile=/var/log/snmptrap/snmptrap.log
Timeout=4
ExternalScripts=/usr/lib/zabbix/externalscripts
LogSlowQueries=3000
StatsAllowedIP=127.0.0.1

2.开启服务

[aaa@qq.com ~]# systemctl start zabbix-proxy

四.配置node2端允许proxy代理监控

1.修改配置文件

[aaa@qq.com ~]# cat /etc/zabbix/zabbix_agentd.conf | grep -Ev '^$|#'
PidFile=/var/run/zabbix/zabbix_agentd.pid
LogType=file
LogFile=/var/log/zabbix/zabbix_agentd.log
LogFileSize=0
DebugLevel=3
SourceIP=192.168.49.172
EnableRemoteCommands=1
LogRemoteCommands=1
Server=192.168.49.171  #代理端的ip
ListenPort=10050
ListenIP=0.0.0.0
StartAgents=3
ServerActive=192.168.49.171
Hostname=node2
Include=/etc/zabbix/zabbix_agentd.d/*.conf

五.把代理加入监控 server 创建配置agent 代理

1.创建agent代理

Zabbix 分布式监控
Zabbix 分布式监控

2.创建node2主机并采用代理监控

Zabbix 分布式监控
Zabbix 分布式监控

3.选择一个模板(可自定义)

Zabbix 分布式监控

4.查看数据

Zabbix 分布式监控
Zabbix 分布式监控