监控平台介绍
- 流行的开源监控软件有:Cacti、Nagios、Zabbix、smokeping、open-falcon等等
- Cacti、Nagios以及Zabbix都是C/S架构并且都需要有PHP环境的支持。
前三款软件都可以监控服务器的基础指标,比如CPU、内存、磁盘、网络等等
Zabbix 是一个企业级的分布式开源监控方案。
- Zabbix是一款能够监控各种网络参数以及服务器健康性和完整性的软件。Zabbix使用灵活的通知机制,允许用户 为几乎任何事件配置基于邮件的告警。这样可以快速反馈服务器的问题。基于已存储的数据,Zabbix提供了出色的报告和数据可视化功能。这些功能使得Zabbix成为容量规划的理想方案。
Zabbix支持主动轮询和被动捕获。Zabbix所有的报告、统计信息和配置参数都可以通过基于Web的前端页面进行 访问。基于Web的前端页面可以确保您从任何方面评估您的网络状态和服务器的健康性。适当的配置后,Zabbix可 以在IT基础架构监控方面扮演重要的角色。对于只有少量服务器的小型组织和拥有大量服务器的大型公司也同样如 此,目前官方新版本为4.0 LTS。
zabbix组件结构
Zabbix_Server:整个监控体系中核心的组件,它负责接收客户端发送的报告信息,所有配置、统计数据及操作 数据都由它组织。
- 数据库存储:所有配置信息和Zabbix收集到的数据都被存储在数据库中。
- Web界面:为了从任何地方和任何平台都可以轻松的访问Zabbix, 我们提供基于Web的Zabbix界面。该界面是 Zabbix Server的一部分,通常跟Zabbix Server运行在同一台物理机器上(!如果使用SQLite,Zabbix Web界面必 须要跟Zabbix Server运行在同一台物理机器上。)
- Zabbix_Proxy(可选):用于监控节点非常多的分布式环境中,它可以代理zabbix-server的功能,减轻zabbixserver的压力。
- Zabbix_Agent:zabbix-agent为客户端软件,用于采集各监控项目的数据,并把采集的数据传输给zabbixproxy或zabbix-server。
zabbix安装和部署
1. 安装源码库配置部署包:[root@node1 ~]# rpm -Uvh https://repo.zabbix.com/zabbix/4.4/rhel/7/x86_64/zabbix-release-4.4-1.el7.noarch.rpm2. 安装Zabbix部署包:[root@node1 ~]# yum install zabbix-server-mysql zabbix-web-mysql -y3. 安装数据库并配置:[root@node1 ~]# yum install mariadb-server -y[root@node1 ~]# systemctl enable mariadb[root@node1 ~]# systemctl start mariadbshell> mysql -uroot -p<password>mysql> create database zabbix character set utf8 collate utf8_bin;mysql> grant all privileges on zabbix.* to zabbix@localhost identified by '000000';mysql> quit;导入相关SQL语句:zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix -p000000 zabbix启动Zabbix Server进程:# vi /etc/zabbix/zabbix_server.confDBHost=localhostDBName=zabbixDBUser=zabbixDBPassword=000000[root@node1 ~]# systemctl enable zabbix-server[root@node1 ~]# systemctl start zabbix-server/etc/httpd/conf.d/zabbix.confphp_value max_execution_time 300php_value memory_limit 128Mphp_value post_max_size 16Mphp_value upload_max_filesize 2Mphp_value max_input_time 300php_value max_input_vars 10000php_value always_populate_raw_post_data -1# php_value date.timezone Asia/Shanghai[root@node1 ~]# systemctl start httpd[root@node1 ~]# systemctl enable httpd浏览器:http://192.168.10.10/zabbix1. .....默认的用户名和密码: Admin/zabbix客户端:服务组件: Zabbix_agent[root@node1 yum.repos.d]# scp zabbix.repo root@node2:/etc/yum.repos.d/[root@node2 ~]# yum install zabbix-agent -y[root@node2 ~]# yum install --nogpgcheck zabbix-agent[root@node2 zabbix]# cat /etc/zabbix/zabbix_agentd.conf | grep -Ev "^$|^#"PidFile=/var/run/zabbix/zabbix_agentd.pidLogFile=/var/log/zabbix/zabbix_agentd.logLogFileSize=0Server=192.168.10.10ServerActive=192.168.10.10Hostname=node2Include=/etc/zabbix/zabbix_agentd.d/*.conf[root@node2 zabbix]# systemctl enable zabbix-agent[root@node2 zabbix]# systemctl start zabbix-agentZabbix_Server--- Node1需要监控:[root@node1 yum.repos.d]# yum install zabbix-agent -y[root@node1 yum.repos.d]# systemctl enable zabbix-agent[root@node1 yum.repos.d]# systemctl start zabbix-agent
