文章目录
zabbix介绍
1.什么是zabbix?
- zabbix([`zæbiks])是一个基于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等平台上。
2.如何安装使用
-
zabbix agent需要安装在被监视的目标服务器上,它主要完成对硬件信息或与操作系统有关的内存,CPU等信息的收集。
-
zabbix server可以单独监视远程服务器的服务状态;同时也可以与zabbix agent配合,可以轮询zabbix agent主动接收监视数据(agent方式),同时还可被动接收zabbix agent发送的数据(trapping方式)。
-
另外zabbix server还可以与SNMP软件(例如:net-snmp)等配合使用
3.搭建Zabbix监控环境
- 搭建一个Zabbix的工作环境,需从服务器入手。与服务器通信,管理员需使用一个Zabbix前端界面,与Zabbix服务器和数据库进行通信。三个关键(界面、服务器和数据库)可以安装在同一台服务器上,但如果你有一个更大更复杂的环境,将它们安装在不同的主机上也是一个选项。Zabbix服务器能够直接监控到同一网络中的设备,如果其他网络的设备也需要被监控,那还需要一台Zabbix代理服务器。
4.zabbix的主要特点
- 安装与配置简单,学习成本低
- 支持多语言(包括中文)
- 免费开源
- 自动发现服务器与网络设备
- 分布式监视以及WEB集中管理功能
- 可以无agent监视
- 用户安全认证和柔软的授权方式
- 通过WEB界面,设置或查看监视结果
- email等通知功能 等
5.Zabbix主要功能
- CPU负荷
- 内存使用
- 磁盘使用
- 网络状况
- 端口监视
- 日志监视
zabbix部署
server1:zabbix-server
server2:zabbix-agent
server3:zabbix-agent
1)添加 Zabbix 软件仓库
[root@server1 4.0]# ls
fping-3.10-1.el7.x86_64.rpm
iksemel-1.4-2.el7.centos.x86_64.rpm
php-bcmath-5.4.16-42.el7.x86_64.rpm
php-mbstring-5.4.16-42.el7.x86_64.rpm
repodata
zabbix-agent-4.0.5-1.el7.x86_64.rpm
zabbix-get-4.0.5-1.el7.x86_64.rpm
zabbix-java-gateway-4.0.5-1.el7.x86_64.rpm
zabbix-proxy-mysql-4.0.5-1.el7.x86_64.rpm
zabbix-sender-4.0.5-1.el7.x86_64.rpm
zabbix-server-mysql-4.0.5-1.el7.x86_64.rpm
zabbix-web-4.0.5-1.el7.noarch.rpm
zabbix-web-mysql-4.0.5-1.el7.noarch.rpm
[root@server1 ~]# vim /etc/yum.repos.d/yum.repo
[rehl7.3]
name=rhel7.3
baseurl=http://172.25.40.250/westos
gpgcheck=0
[zabbix]
name=zabbix
baseurl=http://172.25.40.250/zabbix/4.0
gpgcheck=0
2)安装 zabbix-server/mariadb/前端
[root@server1 ~]# yum install -y zabbix-server-mysql zabbix-web-mysql
#安装 Zabbix web,Server
[root@server1 ~]# yum install -y mariadb-server #安装数据库,存储获取到的监控数据
[root@server1 ~]# systemctl start mariadb #打开数据库
[root@server1 ~]# systemctl enable mariadb ##设置开机自启
[root@server1 ~]# mysql_secure_installation ##初始化数据库,设置密码
3)创建数据库
[root@server1 ~]# mysql -uroot -predhat
MariaDB [(none)]> grant all privileges on zabbix.* to zabbix@localhost identified by 'redhat';
# 授予zabbix库上的所有特权发送到标识的zabbix@localhost用户
MariaDB [(none)]> create database zabbix character set utf8 collate utf8_bin;
#创建数据库zabbix字符集可以包含中文
4)导入数据到zabbix数据库
[root@server1 zabbix-server-mysql-4.0.5]# zcat /usr/share/doc/zabbix-server-mysql-4.0.5/create.sql.gz | mysql -p zabbix
[root@server1 zabbix-server-mysql-4.0.5]# mysql -p ##查看导入数据
Enter password:
MariaDB [(none)]> use zabbix;
MariaDB [zabbix]> show tables;
5)为 Zabbix server 配置数据库
编辑 zabbix_server.conf 文件以使用已创建的数据库
[root@server1 zabbix-server-mysql-4.0.5]# cd /etc/zabbix/
[root@server1 zabbix]# vim zabbix_server.conf #在 DBPassword 参数中输入由 Mysql 创建的 Zabbix 数据库密码
100 DBName=zabbix
116 DBUser=zabbix
124 DBPassword=redhat
6)启动 Zabbix server 进程
[root@server1 zabbix]# systemctl start zabbix-server
[root@server1 zabbix]# systemctl enable zabbix-server ##设置开机自启
[root@server1 zabbix]# ps aux ##查看zabbix运行
7)开启httpd
[root@server1 zabbix]# cd /etc/httpd/conf.d
[root@server1 conf.d]# vim zabbix.conf #编辑zabbix服务页面
20 php_value date.timezone Asia/Shanghai #修改时区与主机一致
[root@server1 zabbix]# systemctl start httpd #开启httpd,打开web页面
[root@server1 zabbix]# systemctl enable httpd
8)访问安装的 Zabbix 前端页面
http://172.25.40.1/zabbix/setup.php
密码redhat
密码zabbix
更改为中文
配置主机和主机群组
手动添加
[root@server1 conf.d]# yum install -y zabbix-agent
[root@server1 conf.d]# systemctl start zabbix-agent
[root@server1 conf.d]# systemctl enable zabbix-agent
[root@server1 conf.d]# netstat -antlp
添加一台主机server2 :
[root@server2 ~]# yum install -y zabbix-agent
[root@server1 ~]# vim /etc/yum.repos.d/yum.repo
[rehl7.3]
name=rhel7.3
baseurl=http://172.25.40.250/westos
gpgcheck=0
[zabbix]
name=zabbix
baseurl=http://172.25.40.250/zabbix/4.0
gpgcheck=0
[root@server2 ~]# cd /etc/zabbix/
[root@server2 zabbix]# vim zabbix_agentd.conf
98 Server=172.25.40.1
138 ServerActive=172.25.40.1 #指定zabbix-server
149 Hostname=server2
[root@server2 zabbix]# systemctl start zabbix-agent
[root@server2 zabbix]# systemctl enable zabbix-agent
web页面:配置 -> 主机-> 在右侧点击 创建主机 (或在主机名上编辑一台已有的主机)
在表单中输入主机的相关参数
主机-> 模板 ->
点击添加 到链接的模板,添加
自动发现
删除之前手动添加的server2,测试自动发现
到web页面:动作 → 事件源 :自动发现
在右侧点击 创建动作 -->Auto discoverty.Linux Server
在表单中输入主机的相关参数
自动发现->创建规则->local network
可以在监测->自动发现中看到被自动发现的设备,并且配置中主机也自动添加监测到的主机:
server2被添加到Linux servers群组
注:先把动作配好,才能配置自动发现的规则。
自动注册
删除之前自动添加的server2,并且禁用动作和自动发现规则。
动作->自动注册->创建动作
server2重启agent服务:
[root@server2 zabbix]# systemctl restart zabbix-agent
自动注册成功: