Zabbix 分布式监控

素颜马尾好姑娘i 2022-11-08 14:07 306阅读 0赞

Zabbix 分布式监控

在这里插入图片描述

  1. ### 1、介绍

分布式监控概述:proxy and node

1、Zabbix 的三种架构

  • Server-agent
  • Server-Node-agent
  • Server-Proxy-agent

2、配置介绍

Zabbix Proxy的配置:

  • server-node-agent
  • server-proxy-agent
1、配置proxy主机
1、安装程序包
  1. zabbix-proxy-mysql zabbix-get zabbix-agent zabbix-sender
2、准备数据库

创建、授权用户、导入schema.sql;

3、修改配置文件
  1. Server= zabbix server # 主机地址;
  2. Hostname= # 当前代理服务器的名称;在server添加proxy时,必须使用此处指定的名称;需要事先确保server能解析此名称;
  3. DBHost=
  4. DBName=
  5. DBUser=
  6. DBPassword=
  7. ConfigFrequency=10 # proxy被动模式下,server多少秒同步配置文件至proxy。该参数仅用于被动模式下的代理。范围是1-3600*24*7
  8. DataSenderFrequency=1 #代理将每N秒将收集的数据发送到服务器。 对于被动模式下的代理,该参数将被忽略。范围是1-3600
4、在 server 端添加此 Porxy

​ Administration —> Proxies

5、在Server端配置通过此Proxy监控的主机;

注意:zabbix agent 端要允许 zabbix proxy 主机执行数据采集操作:

2、实现分布式 zabbix proxy 监控

1、实验前准备

  • ntpdate 172.168.30.1 同步时间
  • 关闭防火墙,selinux
  • 设置主机名 hostnamectl set-hostname zbproxy.qfedu.com
  • vim /etc/hosts 每个机器都设置hosts,以解析主机名;DNS也行

在这里插入图片描述

2、环境配置(4台主机)































机器名称 IP配置 服务角色
zabbix-server 192.168.30.107 监控
agent-node1 192.168.30.7 被监控端
agent-node2 192.168.30.2 被监控端
node3 192.168.30.3 代理proxy

zabbix-server 直接监控一台主机 node1

zabbix-server 通过代理 node3 监控 node2

3、在 node3 上配置 mysql

1、创建配置 mysql
1、创建 mariadb.repo
  1. [root@node3 ~]# vim /etc/yum.repos.d/mariadb.repo
  2. 写入以下内容:
  3. [mariadb]
  4. name = MariaDB
  5. baseurl = https://mirrors.ustc.edu.cn/mariadb/yum/10.4/centos7-amd64
  6. gpgkey=https://mirrors.ustc.edu.cn/mariadb/yum/RPM-GPG-KEY-MariaDB
  7. gpgcheck=1
2、yum 安装最新版本 mariadb
  1. [root@node3 ~]# yum install -y MariaDB-server MariaDB-clien
  • 修改配置文件

    [root@node3 ~]# vim /etc/my.cnf.d/server.cnf

    1. [mysqld]
    2. skip_name_resolve = ON # 跳过主机名解析
    3. innodb_file_per_table = ON # 开启独立表空间
    4. innodb_buffer_pool_size = 256M # 缓存池大小
    5. max_connections = 2000 # 最大连接数
    6. log-bin = master-log # 开启二进制日志
3、重启我们的数据库服务
  1. [root@node3 ~]# systemctl restart mariadb
  2. [root@node3 ~]# mysql_secure_installation # 初始化mariadb
4、创建数据库 和 授权用户
  1. MariaDB [(none)]> create database zbxproxydb character set 'utf8';
  2. MariaDB [(none)]> grant all on zbxproxydb.* to 'zbxproxyuser'@'192.168.30.%' identified by 'zbxproxypass';
  3. MariaDB [(none)]> flush privileges;

3、在node3 上下载zabbix 相关的包,主要是代理proxy的包

  1. [root@node3 ~]# yum -y install zabbix-proxy-mysql zabbix-get zabbix-agent zabbix-sender
1、初始化数据库

zabbix-proxy-mysql 包里带有,导入数据的文件

在这里插入图片描述

  1. [root@node3 ~]# cp /usr/share/doc/zabbix-proxy-mysql-3.4.4/schema.sql.gz ./ 复制
  2. [root@node3 ~]# gzip -d schema.sql.gz 解包
  3. [root@node3 ~]# mysql -root -p zbxproxydb < schema.sql 导入数据

2、查看数据已经生成

在这里插入图片描述

4、配置 proxy 端

  1. [root@node3 ~]# vim /etc/zabbix/zabbix_proxy.conf

在这里插入图片描述

  1. Server=192.168.30.107 # server 的IP
  2. ServerPort=10051 # server 的端口
  3. Hostname=zbxproxy.qfedu.com # 主机名
  4. ListenPort=10051 # proxy自己的监听端口
  5. EnableRemoteCommands=1 # 允许远程命令
  6. LogRemoteCommands=1 # 记录远程命令的日志
  7. # 数据的配置
  8. DBHost=192.168.30.3
  9. DBName=zbxproxydb
  10. DBUser=zbxproxyuser
  11. DBPassword=zbxproxypass
  12. ConfigFrequency=30 # 多长时间,去服务端拖一次有自己监控的操作配置;为了实验更快的生效,这里设置30秒,默认3600s
  13. DataSenderFrequency=1 # 每一秒向server 端发一次数据,发送频度

2、开启服务

  1. [root@node3 ~]# systemctl start zabbix-proxy

5、配置node2端允许proxy代理监控

  1. [root@node3 ~]# vim /etc/zabbix/zabbix_agentd.conf
  2. Server=192.168.30.107,192.168.30.3
  3. ServerActive=192.168.30.107,192.168.30.3
  4. [root@node3 ~]# systemctl restart zabbix-agent # 启动服务

6、把代理加入监控 server 创建配置agent 代理

1、创建agent 代理

在这里插入图片描述

2、配置
在这里插入图片描述

7、创建node2 主机并采用代理监控

在这里插入图片描述

设置代理成功

在这里插入图片描述

8、创建item监控项

1、随便创一个监控项 CPU Switches

在这里插入图片描述

2、进程里设置每秒更改

在这里插入图片描述

3、成功graph 图形生成

在这里插入图片描述

发表评论

表情:
评论列表 (有 0 条评论,306人围观)

还没有评论,来说两句吧...

相关阅读