2022 Zabbix中国峰会
2022 Zabbix中国峰会

6. Zabbix设备

概述

用户可下载[http://www.zabbix.com/download.php#appliance|download]Zabbix设备或Zabbix设备安装光盘映像,以作为手动设置、或重新使用现有服务器的备选项。Zabbix server (MySQL), Zabbix server (PostgreSQL), Zabbix proxy (MySQL) 以及Zabbix proxy (SQLite 3) 可使用Zabbix设备光盘,进行即时部署。

Zabbix设备虚拟机已备好MySQL数据库以支持Zabbix server,且是通过使用Zabbix设备安装光盘构建而成。

|<| |<| |-|

|<| |<| |-|

Zabbix装置及安装CD版本皆基于以下Ubuntu版本:

Zabbix 设备版本 Ubu tu 版本
3.0.0 14.04.3

Zabbix设备在以下格式中可用::

  • vmdk ((VMware/虚拟箱)
  • OVF (开放虚拟化格式)
  • KVM
  • HDD/flash图像, USB闪存盘
  • 实时 CD/DVD
  • Xen客机
  • Microsoft VHD (Azure)
  • Microsoft VHD (Hyper-V)

若要运行,启动此装置,在已通过动态主机配置协议: http://<host_ip>/zabbix的IP上,点击浏览器

它具有Zabbix server配置,运行MySQL数据库,同时具有可用前端。 该装置曾使用名为Preseed文件的标准Ubuntu/Debian特征进行构建。

1 更改Ubuntu配置

应用于基础Ubuntu的配置略有更改.

存储库

官方Zabbix存储库 repository 已被添加至 /etc/apt/sources.list:

## Zabbix 存储库
       deb http://repo.zabbix.com/zabbix/3.0/ubuntu trusty main
       deb-src http://repo.zabbix.com/zabbix/3.0/ubuntu trusty main
防火墙

该装置使用iptables防火墙。以下为预定义规则:

  • 打开SSH端口(22 TCP);
  • 打开Zabbix agent (10050 TCP) 以及Zabbix trapper (10051 TCP) 端口;
  • 打开HTTP (80 TCP) 以及HTTPS (443 TCP) 端口;
  • 打开SNMP Trap端口 (162 UDP);
  • 打开连到NTP端口(53 UDP)的输出连接;
  • ICMP pakets限制为每秒5个数据包;
  • 终止所有其他的连入连接。
1.1 附加Packages

已添加多方面基础设施,一般来说,使用Zabbix工作及监测时更加简易::

  • iptables-persistent
  • mc
  • htop
  • snmptrapfmt
  • snmp-mibs-downloader

这些安装包一些被Zabbix使用,一些帮助用户配置或管理装备设置

1.2 使用静态ip地址

默认情况下,设备使用DHCP来获取IP地址。静态地址详细说明:

  • 以root用户身份登陆;
  • 在你最擅用的编辑器中打开/etc/network/interfaces 文件;
  • iface eth0 inet dhcpiface eth0 inet static
  • 在iface eth0 inet static之后添加以下行列:
    • 地址<设备的IP地址>
    • 子网掩码<网络掩码>
    • 网关<网关地址>
*执行命令 **sudo ifdown eth0 && sudo ifup eth0**.

有关其他可行选项的相关信息,参见官方Ubuntu文档 documentation.

要配置DNS,, 在 /etc/resolv.conf中添加域名服务器条目, 在其自身行列中将每一个域名服务器设定为: nameserver 192.168.1.2.

1.3 更改时区

默认情况下,该设备对系统时钟使用UTC。要想改变时区,, 则将/usr/share/zoneinfo 中的相应文件复制到 /etc/localtime, 例如:

cp /usr/share/zoneinfo/Europe/Riga /etc/localtime
1.4 局部更改

该设备包含一些区域设置更改:

  • 包含语言: en_US.UTF-8, ru_RU.UTF-8, ja_JP.UTF-8, cs_CZ.UTF-8, ko_KR.UTF-8, it_IT.UTF-8,
    pt_BR.UTF-8, sk_SK.UTF-8, uk_UA.UTF-8, fr_FR.UTF-8, pl.UTF-8;
  • Default locale is en_US.UTF-8.

这些更改都须支持多语种Zabbix网络接口。

1.5 其他更改
  • 网络工作被配置为使用DHCP来获取IP地址;
  • Utility fping 设置为具有4710权限,且由zabbix – suid组件所有,只允许由Zabbix组件使用;
  • Ntpd配置为与公共池服务器ntp.ubuntu.com同步;
  • Ext4文件系统使用逻辑卷管理器;
  • “UseDNS no”添加到SSH服务配置文件etc/ssh/sshd_config中,以避免长时间SSH连接等待;
  • 守护进程snmpd无法使用 /etc/default/snmpd 配置文件。

2 Zabbix配置

Zabbix安装设备有下列密码及其他配置更改:

2.1 凭证(登陆:密码)

系统:

  • 设备:zabbix

数据库:

  • root:<随机>
  • zabbix:<随机>

D数据库密码在安装过程中随机生成.
Root 密码储存在/root/.my.cnf文件中,无需在“root”账户下输入密码.

Zabbix 前端:

  • 管理员:zabbix

要更改数据库用户密码,需在以下位置更改:

  • MySQL;
  • /etc/zabbix/zabbix_server.conf;
  • /etc/zabbix/web/zabbix.conf.php.
2.2 文件位置
  • 配置文件存放在/etc/zabbix中.
  • Zabbix server.proxy 以及agent日志文件存放在/var/log/zabbix.
  • Zabbix前端存放在 /usr/share/zabbix.
  • zabbix 用户目录主页为 /var/lib/zabbix.
2.3 Zabbix配置更改
  • Zabbix前端服务器名称设置为“zabbix 设备”;
  • 前端时区设置为欧洲/里加 (在 /etc/apache2/conf-available/zabbix.conf中修改);
2.4 配置防护

如果您正在运行该设备的实时CD / DVD版本,或者出于其他原因,不能拥有持久存储。您可以备份整个数据库,包括所有配置和收集的数据。

要创建备份,则运行:

sudo mysqldump zabbix | bzip2 -9 > dbdump.bz2

现在您可以将文件dbdump.bz2 传输到另一台机器

要想从备份中进行恢复,将其传输到设备上并执行

bzcat dbdump.bz2 | sudo mysql zabbix

确保恢复过程中zabbix server终止运行。

3 前端接入

默认各处前端接入.

前端可访问 http://<host>/zabbix.

可在 /etc/apache2/conf-available/zabbix.conf中定制,修改此文件后,须重启网页服务器。为此,使用SSH登陆并且执行:

service apache2 restart

4 防火墙

默认情况下,只有更改条目中所列出的端口是打开的。要打开额外端口,只需修改 "/etc/iptables/rules.v4" or "/etc/iptables/rules.v6" 文件,并重新下载防火墙规则:

service iptables-persistent reload

5 监测能力

以下项目为Zabbix安装提供支持:

  • SNMP
  • IPMI
  • Web 监测
  • VMware 监测
  • Jabber 通知
  • EZ Texting 通知
  • ODBC
  • SSH2
  • IPv6
  • SNMP Traps
  • Zabbix Java Gateway

6 SNMP traps

Zabbix设备运用 snmptrapfmt 处理 SNMP traps. 被设置为接收各处 traps.

A无需验证。如果您想启用身份验证,需要更改 /etc/snmp/snmptrapd.conf文件并指定所需的授权设置。

所有 traps都存储在 /var/log/zabbix/snmptrapfmt.log文件中。在文件达到2GB大小之前,它由logrotate驱动。

7升级

Zabbix设备安装包可以升级。要想升级,则运行:

sudo apt-get --only-upgrade install zabbix*

8命名,初始化和其他脚本

已提供适当的初始脚本。要想控制Zabbix server, 运行以下任一程序:

service zabbix-server status

server 替换为 agent 成为Zabbix agent守护进程,,或替换为proxy 以成为Zabbix proxy守护进程。

8.1 增加可用磁盘空间

<note warning>在尝试任何步骤之前,请创建所有数据备份。. :::

A设备中可用磁盘空间可能不够,这种情况下,可以扩展磁盘,为此,可首先在虚拟化环境中拓展块设备,然后执行以下步骤: 启动fdisk 以更改分区大小。作为root身份以执行:

fdisk /dev/sda

This will start fdisk on disk sda. 接下来,通过发出以下指令来切换至分区:

u

不要通过输入 c来禁用DOS兼容模式,否则将破坏分区.

之后删除现有分区,并创建一个合乎需求的新分区。多数情况下,你会接受可用最大值,这会将文件系统扩展到你为虚拟磁盘提供的任一可用大小。为此,在fdisk提示中输入以下序列:

d
       n
       p
       1
       (accept default 63)
       (accept default max)

如果你想为额外分区(swap等)留些空间,你可以在最后一个区域输入另一个值。完成后,发出以下指令以保存更改:

w

创建分区(新磁盘或拓展磁盘)后,创建物理卷::

pvcreate /dev/sdb1

例子中所使用的分区名称为 /dev/sdb1 在您的磁盘中,名称和分区号可能不同。您可以使用 fdisk -l /dev/sdb 检查分区号.

检查新创建的物理卷:

pvdisplay /dev/sdb1

检查可用物理卷。必须有2卷zabbix-vg以及新创建的:

pvs

用新创建的物理卷扩展现存卷组:

vgextend zabbix-vg /dev/sdb1

检查“zabbix-vg”卷组

vgdisplay

现在用自由PE空间扩展您的逻辑卷

lvextend -l +100%FREE /dev/mapper/zabbix--vg-root

调整您的root卷(可在系统中完成):

resize2fs /dev/mapper/zabbix--vg-root

重新启动虚拟机(因为我们修改的分区目前正在使用)。如此,现在文件系统应扩展到分区大小。检查 "/dev/mapper/zabbix--vg-root" 卷:

df -h

9具体格式说明

9.1 Xen

为Xen Server转换图像

要想通过Citrix Xenserver使用Xen映像,则需要您转换磁盘映像。因此需要:

  • 创建一个虚拟磁盘,至少要与图像一般大小
  • 为该磁盘找到UUID
xe vdi-list params=all
  • 如果有多个磁盘,它们可以按照在创建虚拟磁盘时分配的那样,通过姓名参数,即姓名标签,进行过滤
  • 导入图像
xe vdi-import filename="image.raw" uuid="<UUID>"

使用说明引自Brain Radford的博客.

9.2 VMware

在vmdk格式下的图像可直接在VMware 播放器、服务器以及工作站产品中使用。要想在ESX、ESXI以及vSphere中使用,则需要转换为使用VMware转换器

9.3 HDD/flash 图像 (raw)
dd if=./zabbix_appliance_3.2.0_x86_64.raw of=/dev/sdc bs=4k conv=fdatasync

用闪存、硬盘装置取代dev和sdc

10 已知问题