了解和搭建Zabbix分布式监控系统。
使用VMware下使用Centos7系统镜像创建zabbix-server和zabbix-agent两台主机,secureCRT连接。

zabbix介绍

zabbix([`zæbiks])是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。 zabbix能监视各种网络参数,保证服务器系统的安全运营;并提供灵活的通知机制以让系统管理员快速定位/解决存在的各种问题。 zabbix由2部分构成,zabbix server与可选组件zabbix agent。 zabbix server可以通过SNMP,zabbix agent,ping,端口监视等方法提供对远程服务器/网络状态的监视,数据收集等功能

zabbix架构

zabbix-server
zabbix-server是整个监控体系中最核心的组件,它负责接收客户端发送的报告信息,所有配置、统计数据及操作数据都由它组织
数据存储
所有的手机信息都存储在这里
Web界面
web界面即GUI,这是zabbix监控简单易用的原因之一,因为我们可以在web界面中配置、管理各个客户端,运行web界面需要有PHP环境支持,因此需要LAMP/LNMP平台
zabbix-proxy
zabbix-proxy为可选组件,用于监控节点非常多的分布式环境中,它可以代理zabbix-server的功能,减轻zabbix-server的压力
zabbix-agent
zabbix-agent为部署在各个客户端上的组件,用于采集各监控项目的数据,并把采集的数据传输给zabbix-proxy或者zabbix-server

结构图链接

基础环境配置:

ip 主机
192.168.200.128 zabbix-server
192.168.200.129 zabbix-agent

先要停止firewalld.service、关闭selinux服务。

Yum源配置:

配置zabbix-server和zabbix-agent的yum源

rpm -ivh http://repo.zabbix.com/zabbix/3.4/rhel/7/x86_64/zabbix-release-3.4-2.el7.noarch.rpm

zabbix-server安装zabbix程序包,安装mysql、zabbxi-agent

yum install -y zabbix-server-mysql zabbix-web-mysql zabbix-agent mariadb-server

启动mariadb,创建实例并授权

[root@localhost ~]# systemctl start mariadb      #启动mariadb
[root@localhost ~]# systemctl enable mariadb  #设置开机启动
[root@localhost ~]# mysql                             #登入数据库
MariaDB [(none)]> create database zabbix character set utf8 collate utf8_bin;   #创建数据库实例(中文编码格式)
Query OK, 1 row affected (0.00 sec)
MariaDB [(none)]> grant all privileges on zabbix.* to zabbix@'%' identified by 'zabbix';   #授权所有主机访问数据库实例zabbix,用户名/密码:zabbix/zabbix
Query OK, 0 rows affected (0.00 sec)
MariaDB [(none)]> grant all privileges on zabbix.* to zabbix@localhost identified by 'zabbix';   #授权localhost主机名访问数据库实例zabbix,用户名/密码:zabbix/zabbix
Query OK, 0 rows affected (0.00 sec)
MariaDB [(none)]> grant all privileges on zabbix.* to zabbix@localhost.localdomain identified by 'zabbix';  #授权localhost.localdomain主机访问数据库实例zabbix,用户名/密码:zabbix/zabbix
Query OK, 0 rows affected (0.00 sec)
导入初始模式和数据
[root@localhost ~]# cd /usr/share/doc/zabbix-server-mysql-3.4.4/              #进入create.sql.gz所在目录
[root@localhost zabbix-server-mysql-3.4.4]# zcat create.sql.gz |mysql -uroot zabbix    #导入出事模式

修改配置文件/usr/local/zabbix/zabbix-4.0.27/conf/zabbix_server.conf

LogFile=/usr/local/zabbix/logs/zabbix_server.log
DBHost=127.0.0.1	#数据库地址
DBName=zabbix		#数据库名字
DBUser=zabbix		#数据库用户
DBPassword=zabbix	#数据库密码
DBPort=3306	        #数据库端口
Timeout=30
LogSlowQueries=3000
AlertScriptsPath=/usr/local/zabbix/alertscripts		        #告警脚本存放位置
ExternalScripts=/usr/local/zabbix/externalscripts		#告警脚本存放位置
Include=/usr/local/zabbix/etc/zabbix_server.conf.d/*.conf	#自定义监控配置文件

配置zabbix-server的配置文件zabbix_server.conf

vi /etc/zabbix/zabbix_server.conf
DBHost=localhost          # 数据主机名
DBName=zabbix            # 数据库实例
DBUser=zabbix              # 用户名
DBPassword=zabbix      # 密码

启动zabbix-server服务

systemctl start zabbix-server
systemctl enable zabbix-server

编辑/etc/php.ini 文件,设置时区

[Date]
; Defines the default timezone used by the date functions
; http://php.net/date.timezone
date.timezone = PRC

编辑/etc/httpd/conf.d/zabbix.conf 文件,修改时区,修改 php_value date.timezone 为
Asia/Shanghai

<IfModule mod_php5.c>
        php_value max_execution_time 300
        php_value memory_limit 128M
        php_value post_max_size 16M
        php_value upload_max_filesize 2M
        php_value max_input_time 300
        php_value max_input_vars 10000
        php_value always_populate_raw_post_data -1
        php_value date.timezone Asia/Shanghai
    </IfModule>

启动httpd服务

systemctl start httpd
systemctl enable httpd

web使用zabbix:

浏览去输入http://ip/zabbix/setup.php出现界面。
安装引导
在这里插入图片描述
如果提示数据库版本不对,按提示修改304000数字

MariaDB [zabbix]> update dbversion set mandatory=3040000;
Query OK, 1 row affected (0.01 sec)
Rows matched: 1  Changed: 1  Warnings: 0

MariaDB [zabbix]> flush privileges;
Query OK, 0 rows affected (0.04 sec)

配置DB连接,与zabbix_server.conf文件中主机、数据库名称、用户名、密码保持一致,点击下一步
在这里插入图片描述
平台名字zabbix(可随意)
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

使用默认用户名密码登录Admin\zabbix

在这里插入图片描述
在这里插入图片描述
成功安装。

添加被监控主机:

回到 zabbix-agent 节点,安装 zabbix-agent 服务

[root@zabbix-agent ~]# yum install -y zabbix-agent

修改/etc/zabbix/zabbix_agentd.conf 配置文件:

[root@zabbix-agent ~]# vi /etc/zabbix/zabbix_agentd.conf 
[root@zabbix-agent ~]# grep -n '^'[a-Z] /etc/zabbix/zabbix_agentd.conf 
13:PidFile=/var/run/zabbix/zabbix_agentd.pid
32:LogFile=/var/log/zabbix/zabbix_agentd.log
43:LogFileSize=0
97:Server=172.16.51.5
138:ServerActive=172.16.51.5
149:Hostname=Zabbix-agent
267:Include=/etc/zabbix/zabbix_agentd.d/*.conf

启动 zabbix-agent 服务,并查看 10050 端口是否存在,命令如下:

[root@zabbix-agent ~]# systemctl start zabbix-agent
[root@zabbix-agent ~]# netstat -ntpl
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name    
tcp        0      0 127.0.0.1:25            0.0.0.0:*               LISTEN      1096/master         
tcp        0      0 0.0.0.0:10050           0.0.0.0:*               LISTEN      1305/zabbix_agentd  
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      962/sshd            
tcp6       0      0 ::1:25                  :::*                    LISTEN      1096/master         
tcp6       0      0 :::10050                :::*                    LISTEN      1305/zabbix_agentd  
tcp6       0      0 :::22                   :::*                    LISTEN      962/sshd            

回到 Web 界面,选择菜单栏“配置”→“主机”→“创建主机”,跳转到下图填写zabbix-agent的信息后点击“添加”按钮。

在这里插入图片描述
添加后如图。
在这里插入图片描述

选择“zabbix-agent”进入,再选择”模板“,点击图中带圈的”选择“。
在这里插入图片描述
选择模板,添加,更新
在这里插入图片描述
在这里插入图片描述
在最上面的选择菜单栏中“监测中”→“图形”命令,群组选择”Linux server“,主机选择”zabbix-agent“,图形选择需要显示的监控项,此处选择为“CPU jumps”
在这里插入图片描述
需要被监控的主机,首先安装 zabbix-agent 服务,然后修改配置文件并启动服务。登录
Zabbix 的 Web 界面,添加主机,并添加监控模板。成功添加后,就可以通过 Zabbix 界面进行主机的监控。

参考链接1

Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐