博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
zabbix基础详解及安装配置
阅读量:5976 次
发布时间:2019-06-20

本文共 4664 字,大约阅读时间需要 15 分钟。

一、什么是zabbix

Zabbix是一个基于WEB界面的分布式开源监控系统,主要组成部分:Zabbix_server、Zabbix_agent、Zabbix_proxy。;Zabbix可以监控网络和服务的监控状况。利用灵活的报警机制,允许用户对事件发送基于Email或短信等方式进行报警;同时可以利用存储数据提供杰出的报告及图形化方式。

zabbix架构图(马哥教育):

二、zabbix的特性

数据采集:

  • 支持SNMP(trapping及polling)、IPMI、JMX监控;

  • 自定义检测和间隔收集收据;

  • 可用性及性能检测;

  • server/proxy/agents性能;

数据存储:

  • 数据存储在数据库中;

  • 历史数据可配置;

  • 内置数据清理机制;

数据展示:

  • 允许自定义创建多监控项视图;

  • 自定义的面板(screen)和报告;

  • 网络拓扑(network maps);

报警:

  • 可以自定义告警升级(escalation)、接收者及告警方式;

  • 告警信息可以配置并允许使用宏(macro)变量;

  • 通过远程命令实行自动化动作(action);

网络自动发现:

  • 自动发现网络设备;

  • agent自动注册;

  • 自动发现文件系统、网卡设备、SNMP OID等;

三、安装zabbix

zabbix需要数据库来存储数据;所以需要安装mysql;建议数据库与zabbix服务器安装在不同的机器上

下面以yum安装演示:

IP 主机 描述
192.168.0.111 node1.soul.com zabbix_server
192.168.0.112 node2.soul.com mysql
192.168.0.113 node3.soul.com zabbix_agent
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#在node1上安装zabbix_server
[root@node1 ~]
# yum -y install zabbix22 zabbix22-agent zabbix22-server zabbix22-server-mysql zabbix22-web zabbix22-web-mysql zabbix22-dbfiles-mysql
[root@node1 ~]
# rpm -ql zabbix22-server
/
etc
/
logrotate.d
/
zabbix
-
server
/
etc
/
rc.d
/
init.d
/
zabbix
-
server
/
etc
/
zabbix
/
alertscripts
/
etc
/
zabbix
/
externalscripts
/
etc
/
zabbix
/
zabbix_server.conf
#可以看到配置文件等安装信息
[root@node1 ~]
# rpm -ql zabbix22-dbfiles-mysql
/
usr
/
share
/
doc
/
zabbix22
-
dbfiles
-
mysql
-
2.2
.
1
/
usr
/
share
/
doc
/
zabbix22
-
dbfiles
-
mysql
-
2.2
.
1
/
COPYING
/
usr
/
share
/
zabbix
-
mysql
/
usr
/
share
/
zabbix
-
mysql
/
data.sql
/
usr
/
share
/
zabbix
-
mysql
/
images.sql
/
usr
/
share
/
zabbix
-
mysql
/
schema.sql
#可以查看到zabbix的数据库文件
[root@node1 ~]
# scp /usr/share/zabbix-mysql/{data.sql,images.sql,schema.sql} node2:/tmp
root@node2's password:
data.sql                                                   
100
%  
948KB 
947.6KB
/
s   
00
:
00
images.sql                                                 
100
% 
1932KB   
1.9MB
/
s   
00
:
00
schema.sql                                                 
100
%  
104KB 
104.1KB
/
s   
00
:
00
[root@node1 ~]
# 复制到node2主机上

安装mysql于node2主机:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
[root@node2 ~]
# yum -y install mysql mysql-server
[root@node2 ~]
# service mysqld start
Starting mysqld:                                           [  OK  ]
[root@node2 ~]
#
mysql> create database zabbix;
Query OK, 
1 
row affected (
0.00 
sec)
mysql> use zabbix;
Database changed
mysql> source 
/
tmp
/
schema.sql
mysql> source 
/
tmp
/
images.sql
mysql> source 
/
tmp
/
data.sql
#创建数据库;导入数据
mysql> grant 
all 
on zabbix.
* 
to 
'zbx'
@
'192.168.0.111' 
identified by 
'zbxpass'
;
Query OK, 
0 
rows affected (
0.00 
sec)
mysql> flush privileges;
#授权zabbix_server主机

配置node1上的zabbix_server启动:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
[root@node1 ~]
# vim /etc/zabbix_server.conf
#更改对应的数据库信息即可
DBHost
=
192.168
.
0.112
DBName
=
zabbix
DBUser
=
zbx
DBPassword
=
zbxpass
[root@node1 ~]
# service zabbix-server start
Starting Zabbix server:                                    [  OK  ]
[root@node1 ~]
# ss -tunl | grep 10051
tcp    LISTEN     
0      
128                   
:::
10051                
:::
* 
tcp    LISTEN     
0      
128                    
*
:
10051                 
*
:
*
#启动成功
#启动httpd
[root@node1 ~]
# service httpd start
Starting httpd:                                            [  OK  ]

四、使用web管理界面配置zabbix

在浏览器中输入:

上述提示PHP问题;对应的修改/etc/php.ini重启httpd;完成后retry测试全部OK即可

完成安装后的界面。

Monitoring监控菜单:

Dashboard(仪表盘) | Overview(总览) | WEB | Latest data(最新数据) | Triggers(触发器) | Events(事件) | Graphs(图形) | Screen(多屏) | Maps(拓扑图) | IT Services。

Inventory主机资产清单使用的不多。

Reports报告菜单:

Status of Zabbix(Zabbix的状态信息) | Avaliablity report(可用性报告) | Triggers top 100(前100个触发数据) | Bar reports(柱形图)。

Configuration配置菜单:

Host group(主机组) | Templates(模板) | Hosts(主机) | Maintenance(维护) | Actions(动作) | Screens(多屏) | Slide shows(幻灯片) | Maps(拓扑图) | Discovery(自动发现) | IT services。

Administration管理菜单:

General(通用配置) | DM(zabbix_proxy) | Authentication(用户认证) | Users(用户管理) | Media types(媒介类型) | Scripts(脚本) | Audit(审计) | Queue(队列) | Notifications(通知) | Installation(安装)

具体参数: 选择对应版本。

五、配置简单的监控实例

在node3安装zabbix_agent

1
2
3
4
5
6
7
8
9
10
[root@node3 ~]
# yum -y install zabbix22 zabbix22-agent
[root@node3 ~]
# vim /etc/zabbix_agentd.conf
#更改Server即可
Server
=
192.168
.
0.111
[root@node3 ~]
# service zabbix-agent start
Starting Zabbix agent:                                     [  OK  ]
[root@node3 ~]
# ss -tunl | grep 10050
tcp    LISTEN     
0      
128                   
:::
10050                
:::
* 
tcp    LISTEN     
0      
128                    
*
:
10050                 
*
:
*
#启动成功

1、添加主机:create host

2、添加Items:create item

类似再添加一个CPU的监控。

3、创建Graphs:create graph

4、创建screen:create screen

添加完成后可以在monitor中查看具体信息:

可以在latest data中查看:

graph中查看:group和host中可以选择对应的主机等;graph中可以选择图形信息

以上简单的做到了CPU负载和网卡流量监控。

下面添加一个可以自动报警发送邮件的机制:

5、添加一个media type

6、添加默认的账户zabbix的通知给本机的root:

7、添加一个trigger:

8、添加一个action:

其中macro的说明:https://www.zabbix.com/documentation/2.2/manual/appendix/macros/supported_by_location

Recovery message这项选择后在恢复时也会对应的发邮件通知;其余还需要设定条件和具体的操作:

现在可以查看监控:

很明显有了阈值线。左下方显示阈值的大小。

定义完成后可以进行测试了。

可以在monitor的dashboard面板查看到相关信息:

此时可以看到事件已触发;可以查看下是否有邮件通知。

可以查看到邮件通知信息;且内容与定义的相符。一条报警通知和一条恢复通知。到此;一些基本内容已配置完成和实现。

本文转自Mr_陈 51CTO博客,原文链接:http://blog.51cto.com/chenpipi/1412153,如需转载请自行联系原作者
你可能感兴趣的文章
Android初级开发笔记-- activity启动模式的学习(1)
查看>>
单点登录系统SSO概述 | 单点登录讲解(1)
查看>>
UI基本原则
查看>>
DOM编程中,提高程序运行速度需要注意的一些点
查看>>
一种获取过程调用堆栈信息的简单方法
查看>>
CodeForces-1151F-Sonya and Informatics
查看>>
java数据结构读书笔记--引论
查看>>
COM 学习小记录
查看>>
委托 事件 多线程 简单例子
查看>>
[2018.12.9]BZOJ2153 设计铁路
查看>>
【转】Ubuntu VI基本用法
查看>>
HTML5之FileReader的使用
查看>>
用户输入和while循环
查看>>
1013: C语言程序设计教程(第三版)课后习题6.3
查看>>
接口测试工具Postman(转)
查看>>
苹果开发准备工作
查看>>
java.util.regex包下的Pattern和Matcher详解(正则匹配)
查看>>
在Java中定义常量
查看>>
php jsonp实例 mip无限滚动组件接口注意事项
查看>>
单元测试
查看>>