zabbix安装

1 部署Zabbix

概述

部署Zabbix有四种途径:

从分发包进行安装
下载最新的源代码归档,并自行编译
从容器安装
下载虚拟应用

下载页面往下拉:https://www.zabbix.com/download

2 安装要求

硬件

内存和磁盘

Zabbix同时需要物理内存和磁盘空间。刚开始使用Zabbix,建议128MB物理内存和256MB可用磁盘空间。然而, 具体需要的内存大小和磁盘空间要根据主机数量和监控参数而定。如果你计划对监控的参数进行长期保存,你应该考虑至少在数据库中预留几个GB的空间,以用来保留历史数据。 每个Zabbix的守护进程需要与数据库服务器建立多个连接。分配给连接的内存数量,取决于数据库引擎的配置。

你使用的内存越多,你的数据库(也包括Zabbix)工作得越快!

CPU

根据监控参数及选择的数据库引擎,Zabbix,特别是Zabbix数据库,可能需要大量的CPU资源,

其他硬件

如果需要启用短信(SMS)通知功能,需要串行通讯口(serial communication port)和串行GSM调制解调器(serial GSM modem)。USB转串行转接器也同样可以工作。

硬件配置示例

下表是几个硬件配置的示例:

具体的配置极其依赖于Active Item数量和轮询频率。如需要进行大规模部署,强烈建议将数据库进行独立部署。

支持平台

由于监控服务器的安全要求及关键任务的特性,UNIX是唯一可以持续提供必要性能、容错性和扩展性的操作系统。Zabbix可以运行在市场上的主流版本。

经测试,Zabbix可运行在下列平台:

Linux
IBM AIX
FreeBSD
NetBSD
OpenBSD
HP-UX
Mac OS X
Solaris
Windows: Windows 2000以后的所有桌面和服务器版本 (只可运行Zabbix agent)

软件

Zabbix基于先进的Apache Web服务器、领先的数据库引擎和PHP脚本语言进行构建。

数据库管理系统

Zabbix前端需要使用下列软件:

服务器

从源代码库或者归档中获得Zabbix,那么必要的依赖关系已经包含在了源代码树中了

数据库容量

Zabbix配置数据需要使用固定的磁盘空间,而且这个空间不会过多增长。

Zabbix数据库容量主要依赖于下列这些参数,这些参数也决定了存储历史数据所需要的空间:

每秒处理值的数量(Number of processed values per second)
这个参数是指每秒种Zabbix server收到的新值数量的平均数。比如,如果我们有3000个监控项(item),监控周期是60s,经计算所得,每秒处理值的数量为3000/60 = 50.

这意味着每秒钟有50个新值写入Zabbix数据库。

历史(History)数据的回收清理设置(Housekeeper)
Zabbix会在一个固定周期内保存收到的值。正常情况下保留数周或者数月。每一个新收到的值会占用一定数量的磁盘空间以存放数据和索引。

所以,如果我们每秒钟收到50个值,且希望保留30天的历史数据,值的总数将大约在 (30243600)* 50 = 129,600,000,即大约130M个值。

根据所使用的数据库引擎,以及收到值的类型【浮点(floats),整型(integers),字符串(strings),日志文件(log files)等】,单个值的磁盘使用量从40字节到数百个字节不等。一般而言,数值型(Numeric)的监控项占用大约90字节。 按之前的例子, 这意味着130M个值需要占用 130M * 90 bytes = 10.9GB 的磁盘空间。

趋势(Trends)数据的回收清理设置(Housekeeper)
Zabbix为trends表中的每个监控项的值,保留一组数据:一个小时的最大值/最小值/平均值/数量。这些数据用于趋势图表和历史图表的展现。用户无法自定义这一小时的保留周期。

根据数据库的类型,Zabbix数据库需要为每组值总共占用约90字节的空间。 如果你需要保留趋势数据5年,那么3000个监控项值,每年需要 300024365* 90 = 2.2GB 的空间 , 即5年需要 11GB 的空间。

事件(Events)数据的回收清理设置(Housekeeper)
每个Zabbix事件需要大约170字节的磁盘空间。很难估计Zabbix每天生成的事件数量。最糟糕的情况下,我们可能需要假设Zabbix每秒会生成一个事件。

这意味着,如果我们需要保留3年的事件,需要3365243600 170 = 15GB的磁盘空间。

因此,所需要的磁盘总空间按下列方法计算:
配置(Configuration) + 历史(History) + 趋势(Trends) + 事件(Events)
安装完Zabbix,磁盘空间不会立即被分配。数据库大小根据回收清理(housekeeper)设置,在某些时间点增长或停止增长。

时钟同步

对于Zabbix稳定运行而言,服务获得精确的系统时间是非常重要的。ntpd 是一个最流行的用于同步主机和其他服务器之间的时间的后台程序。对于所有运行Zabbix组件的系统,强烈建议这些系统的时间保持同步。

如果时间未同步,Zabbix将在建立数据连接之后,根据得到的客户端/服务器的时间戳,将获得值的时间戳转化为Zabbix server的时间,并且会根据客户端-服务器的时间差对获得值的时间戳进行调整。 为了保持简单,并且避免可能的并发问题出现,网络延迟会被忽略。因此,通过主动连接(active agent, active proxy, sender)获得的时间戳数据包含网络延迟,通过被动连接(passive proxy)获得的数据已经减去了网络延迟。所有其他检查服务器花费的时间和它们的时间戳不调整。

posted @ 2017-08-30 16:06  Achxku  阅读(600)  评论(0编辑  收藏  举报