zabbix简介:
zabbix是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。
zabbix能监视各种网络参数,保证服务器系统的安全运营;并提供灵活的通知机制以让系统管理员快速定位/解决存在的各种问题。
zabbix由2部分构成,zabbix server与可选组件zabbix agent
zabbix server可以通过SNMP,zabbix agent,ping,端口监视等方法提供对远程服务器/网络状态的监视,数据收集等功能,它可以运行在Linux,Solaris,HP-UX,AIX,Free BSD,Open BSD,OS X等平台上。
zabbix agent安装在被监控的服务器上,主要完成对内存、cpu、磁盘等信息的收集。
zabbix主要监控服务器:CPU负载、内存使用情况、磁盘使用情况、网络状态、端口监视、日志监视。
zabbix运行过程:
1、zabbix agent收集服务器的信息,并发送给zabbix server。
2、zabbix server将数据存储到数据库中(例:mysql)。
3、通过Web页面的方式将zabbix server分析后的数据展示出来。
zabbix服务器需要安装zabbix server、zabbix agent。客户端只需要安装zabbix agent,用来收集客户端服务器的信息。
zabbix server监听10051端口; zabbix agent监听10050端口。
服务端(192.168.70.128)安装:zabbix server、zabbix agent、mysql、nginx
1、官方文档:https://www.zabbix.com/cn/download
选择服务器类型和需要监控的软件,下面会展示安装步骤。
2、安装Zabbix
rpm -Uvh https://repo.zabbix.com/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm
yum install zabbix-server-mysql zabbix-agent -y
yum install centos-release-scl -y
yum install zabbix-web-mysql-scl zabbix-nginx-conf-scl -y
yum install zabbix-get -y #用于在server端检查agent端是否正常,例如:zabbix_get -s 192.168.70.129 -p 10050 -k system.uname
3、安装和配置mysql
安装mysql:
创建zabbix数据库和用户名密码:
数据库名称:zabbix
用户名:zabbix
密码:zabbix.123
# mysql -u root -p
输入password
mysql> create database zabbix character set utf8 collate utf8_bin;
mysql> create user zabbix@localhost identified by 'zabbix.123';
mysql> grant all privileges on zabbix.* to zabbix@localhost;
mysql> quit;
4、生成mysql数据库信息
# 用户名 数据库名称
zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -u zabbix -p zabbix
看到如下信息说明数据库导入成功:
5、为zabbix server配置数据库
vi /etc/zabbix/zabbix_server.conf
6、为Zabbix前端配置PHP
vi /etc/opt/rh/rh-nginx116/nginx/conf.d/zabbix.conf
vi /etc/opt/rh/rh-php72/php-fpm.d/zabbix.conf
去掉前面的“;”,并将时区修改为:Asia/Shanghai
7、启动zabbix
需要先关闭selinux: vi /etc/selinux/config
需要重启linux:reboot
systemctl restart zabbix-server zabbix-agent rh-nginx116-nginx rh-php72-php-fpm #启动/重启
systemctl enable zabbix-server zabbix-agent rh-nginx116-nginx rh-php72-php-fpm #开机自启动
systemctl status zabbix-server zabbix-agent rh-nginx116-nginx rh-php72-php-fpm #查看服务状态,确保成功启动了这四个服务
8、查看Web页面
8.1 windows操作系统添加本地域名映射:C:\WINDOWS\system32\drivers\etc
保存。把这个文件复制到桌面,改完覆盖原有文件即刻;
8.2 浏览器输入:http://demo.zabbix.com/setup.php 看到这样的界面就安装成功了:
8.3 点击Next step,看到全是Ok就行了。
8.4 配置mysql信息
8.5 给你的zabbix server起个名字吧
8.6 登录zabbix,用户名和密码为:Admin zabbix
客户端(192.168.70.129)安装:zabbix agent
1、安装agent
rpm -Uvh https://repo.zabbix.com/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm
yum install zabbix-agent
yum install centos-release-scl
2、配置agent,加入server
vi /etc/zabbix/zabbix_agentd.conf
Server=192.168.70.128 #填写server端所在ip,可以有多个server,逗号隔开
ServerActive=192.168.70.128 #主动模式;填写server端所在ip
Hostname=agent_129 #agent端的唯一主机名
3、启动agent
防火墙记得关闭或者开启10050端口号
systemctl restart zabbix-agent #启动/重启
systemctl enable zabbix-agent #开机自启动
4、server手动添加agent
4.1 在server服务器上测试agent连通性:zabbix_get -s 192.168.70.129 -p 10050 -k system.uname
4.2 在Web上添加agent
4.2.1 进入创建主机页面
4.2.2 配置agent主机
4.2.3 选择模板,这里可以看到各种各样的监控类型
4.3 配置好主机和模板之后,点击添加
4.4 在server端使用ping命令来模拟dos攻击agent服务器:ping -s 65500 192.168.70.129
可以看到效果