部署分布式监控

2019-10-14  本文已影响0人  亮仔_c1b5

部署分布式监控

一、分布式介绍

生成环境中,我们为了实现地域容灾,我们会把服务器放在不同的地域,如果一台zabbix server去监控的话,延迟会高,同是一台zabbix server压力也会很大,所以我们的处理方法就是将权利下发,在不同的地域都找一个机器来充当代理,本地的监控工作由代理(proxy)来完成收集工作后交给zabbix server,zabbix serverz在将收到的数据统一整理展示到web。

其实这个例子很简单就是你开了很多分公司,你一个人去管理这些分公司的员工的话,你是管不全面的,所以我们的方法是在每个分公司弄一个负责人,负责人管当地的员工,你管负责人。有问题他们集中向你汇报就好了。这样你就能很顺利的掌控全局了。

二、实验拓扑图

image

如上图中显示,我们的实验中只完成南京、北京部分。其实济南就是北京的复制,所以实验效果展示出来就可以了。

三、实验步骤

1)架构安装

  zabbix-server(192.168.10.40)的安装方法参考《部署zabbix企业监控平台》一章中的zabbix server安装方法
  zabbix-agent(192.168.10.42)的安装方法参考《将业务机器加入到监控中》一章中的zabbix agent安装方法

  zabbix-proxy(192.168.10.41)的安装方法如下
  # yum -y install mariadb-server
  # mkdir /zabbix_proxy_pkg
  # wget  https://mirrors.aliyun.com/zabbix/zabbix/3.4/rhel/7/x86_64/zabbix-proxy-mysql-3.4.10-1.el7.x86_64.rpm -P /zabbix_proxy_pkg
  # wget https://mirrors.aliyun.com/zabbix/zabbix/3.4/rhel/7/x86_64/zabbix-agent-3.4.10-1.el7.x86_64.rpm -P /zabbix_proxy_pkg
  # yum -y localinstall /zabbix_proxy_pkg/*

  查找数据库文件schema.sql.gz安装路径
  # rpm -ql `rpm -qa |grep zabbix-proxy`
   /etc/logrotate.d/zabbix-proxy
   /etc/zabbix/zabbix_proxy.conf
   /usr/lib/systemd/system/zabbix-proxy.service
   /usr/lib/tmpfiles.d/zabbix-proxy.conf
   /usr/lib/zabbix/externalscripts
   /usr/sbin/zabbix_proxy_mysql
   /usr/share/doc/zabbix-proxy-mysql-3.4.10
   /usr/share/doc/zabbix-proxy-mysql-3.4.10/AUTHORS
   /usr/share/doc/zabbix-proxy-mysql-3.4.10/COPYING
   /usr/share/doc/zabbix-proxy-mysql-3.4.10/ChangeLog
   /usr/share/doc/zabbix-proxy-mysql-3.4.10/NEWS
   /usr/share/doc/zabbix-proxy-mysql-3.4.10/README
   /usr/share/doc/zabbix-proxy-mysql-3.4.10/schema.sql.gz
   /usr/share/man/man8/zabbix_proxy.8.gz
   /var/log/zabbix
   /var/run/zabbix

  启动MariaDB数据库
  # systemctl restart mariadb
  去数据库内创建一个zabbix_proxy数据库及对应所有权限的用户zabbix
  # mysql
   MariaDB [(none)]> create database zabbix_proxy character set utf8 collate utf8_bin;
   Query OK, 1 row affected (0.00 sec)

   MariaDB [(none)]>  grant all privileges on zabbix_proxy.* to zabbix@localhost identified by '123456';
   Query OK, 0 rows affected (0.00 sec)

   MariaDB [(none)]> quit
   Bye

   将zabbix-proxy的数据库文件,导入数据库。
   # zcat /usr/share/doc/zabbix-proxy-mysql-3.4.10/schema.sql.gz |mysql -u zabbix -p123456 zabbix_proxy

修改zabbix-proxy配置文件 zabbix_proxy.conf

    # sed -i.bak '/^Hostname=/c\Hostname=ayitula\_proxy' /etc/zabbix/zabbix\_proxy.conf 
    # sed -i.bak '/^\# DBPassword=/a\DBPassword=123456' /etc/zabbix/zabbix\_proxy.conf 
    # sed -i.bak '/^Server=/c\Server=192.168.10.40' /etc/zabbix/zabbix\_proxy.conf

修改zabbix-proxy配置文件zabbix_agent.conf

   # sed -i.bak '/^Server=/c\Server=192.168.10.41' /etc/zabbix/zabbix_agentd.conf 
   # sed -i.bak '/^ServerActive=/c\ServerActive=192.168.10.41' /etc/zabbix/zabbix_agentd.conf
   # sed -i.bak '/^Hostname=/c\Hostname=ayitula_linux_10.41' /etc/zabbix/zabbix_agentd.conf

修改zabbix-agent(192.168.10.42)配置文件zabbix_agent.conf

   # sed -i.bak '/^Server=/c\Server=192.168.10.41' /etc/zabbix/zabbix_agentd.conf 
   # sed -i.bak '/^ServerActive=/c\ServerActive=192.168.10.41' /etc/zabbix/zabbix_agentd.conf
   # sed -i.bak '/^Hostname=/c\Hostname=ayitula_linux_10.42' /etc/zabbix/zabbix_agentd.conf

重启服务,生效配置文件

   zabbix-server
   # systemctl restart zabbix-server

   zabbix-proxy
   # systemctl restart zabbix-proxy
   # systemctl restart zabbix-agent

   zabbix-agent
   # systemctl restart zabbix-agent

四、通过WEB页面设置

实验目的:通过自动注册服务将zabbix-proxy zabbix-agent添加到监控列表,并实现监控

关于自动注册,请查看《通过自动注册自动添加主机》一章。

image 点击 管理--->agent代理程序

点击右上角 创建代理

image 给代理程序起个名字,和你的zabbix_proxy.conf中的Hostname最好一致,点击添加。

建议将所有服务按照以下流程全部重启一次

    1) zabbix_server
    2) zabbix_proxy
    3) zabbix_agent

image 点击 配置--->主机 查看是否自动添加好了机器。上图提示,已经自动添加好了
   ayitula_linux_10_41(bj.ayitula.com/192.168.10.41)

   ayitula_linux_10_42(bj.agent.ayitula.com/192.168.10.42)

image 查看其中一个机器的流量图,出图了。

😆,世界变得如此美好。

上一篇下一篇

猜你喜欢

热点阅读