一、Zabbix简介
- Zabbix([`zæbiks])是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。
- Zabbix能监视各种网络参数,保证服务器系统的安全运营;并提供灵活的通知机制以让系统管理员快速定位/解决存在的各种问题。
- Zabbix由2部分构成,“Zabbix server” 和 “Zabbix agent”。
- Zabbix server可以通过SNMP,Zabbix agent,IPMI,JMX等方法提供对远程服务器/网络状态的监视,数据收集等功能,它可以运行在Linux,Solaris,HP-UX,AIX,Free BSD,Open BSD,OS X等平台上。
二、部署Zabbix
方法一:手动安装,具体可参考下面的链接。
CentOS 7 安装 Zabbix(一)
CentOS 7 安装 Zabbix(二)
方法二:部署Zabbix Appliance。
1.下载Zabbix Appliance
https://www.zabbix.com/cn/download_appliance
2.虚拟机模板转换
这里将Zabbix Appliance部署到VMware ESXi, 由于Zabbix提供的(.vmx)虚拟机模板无法在ESXi上直接部署,需要将其转换成ESXi支持的格式。可能使用OVF Tool进行转换。
3.部署模板
3.1在vCenter中部署OVF模板。
3.2 默认后台登录账号为: root / zabbix
3.3 部署完成后,需要设置Static IP, 修改完成后,重启网络服务。
# vi /etc/sysconfig/network-scripts/ifcfg-eth0
# systemctl restart network
3.4 前台登录账号默认为:Admin / Zabbix
3.5 更多设置参考官方手册
https://www.zabbix.com/documentation/6.0/en/manual/appliance
三、XCC SNMP配置
可参考本站往期内容:
Lenovo ThinkSystem XClarity Controller (XCC) SNMP 配置方法
四、Zabbix Server端配置(SNMP方式)
4.1 导入模板
1.下载 Zabbix public templates
https://github.com/zabbix/community-templates#zabbix-public-templates
2.下载后的模板有三个文件,模板有依赖关系,需要按照先后顺序导入。
①Template_Module_ICMP_Ping
②Template_Module_Generic_SNMPv3
③Template_Server_Lenovo_XCC_SNMPv3
3.通过浏览器登录Zabbix管理界面,找到Configuration—Templates—Import,按顺序导入下载好的模板文件。
4,模板导入后,在Templates界面,通过搜索关键字(XCC),找到刚部署的模板。
5,点击“Template Server Lenovo XCC SNMPv3”,查看模板所属的Group。
4.2 配置主机
1.新建主机组,找到 Configuration—Host groups,点击界面右上角“Create host group”。
2.创建主机,找到 Configuration—Hosts,点击页面右上角“Create host”,进入创建主机设置界面。
3.设置主机名称,选择步骤2中创建的主机组。点击Add,新加一个Type为SNMP的Interfaces,选择版本为SNMPv3,设置受监控Lenovo服务器XCC ip和端口号,安全用户名、认证协议和密码需要和服务器XCC里设置保持一致。
4.选择监控模板,点击“Select”,根据前面导入模板后查找到的Group名称来选择正确的模板文件。勾选“Template Server Lenovo XCC SNMPv3”。
5.在IPMI页填写安全用户的用户名和密码。
6.上述步骤完成后,主机就添加成功了,正常状态为Enabled,Availability为绿色SNMP。
4.3 查看服务器
1.查看硬件状态,找到 Monitoring—Hosts,选中1台服务器,点击”Latest data”, 查看受监控的信息。
2.查看告警信息,找到 Monitoring—Hosts,选中1台服务器,点击”problems”,查看服务器上的告警事件。
五、通过IPMI监控服务器
5.1 XCC设置
1.BMC Configuration - Network,确认”IPMI over LAN”开启。
5.2 Zabbix设置
1.登录Zabbix后台,编辑/etc/zabbix/zabbix_server.conf配置文件。
2.重启Zabbix服务。
# systemctl restart zabbix-server
3.确认IPMI Poller工作正常。
# systemctl status zabbix-server |grep ipmi
六、通过IPMI监控服务器(自制模板)
6.1 Get sensor List
1.通过ipmitool sensor list获得可用的服务器传感器列表。
2.这些Sensor将用来在Zabbix中创建监控模板。
3.通过ipmitool sensor get得到具体的Sensor值。
6.2 定义模板
1.新建模板,找到 Configuration—Templates,点击界面右上角”Create Template”。
2.填写模板名称和所属的Group,点击”Add”。
3.进入新创建的模板,找到”Items”,点击界面右上角”Create item”。
4.填写以下信息:
- Name: Fan 1 Tach
- Type: IPMI agent
- Key: ipmi_Fan_1_Tach
- IPMI sensor: Fan 1 Tach
- Units: RPM
- Update interval: 30s
- History storage period
- Trend storage period
6.3 查看监控项
1.查看硬件状态,找到 Monitoring—Hosts,选中1台服务器,点击“Latest data”, 查看受监控的信息。
2.如下图添加了8个Items,查询间隔,以及当前值,以及数值变化情况。
6.4 添加触发器
1.在模板中点击“Triggers”,填写名称,描述,告警级别。
2.在Expression中填写触发条件,点击Add。
3.Item处关联前面创建的某个Item,例如这里关联Ambient Temp。
4.Result处设置触发条件,例如这里的触发条件是读取的环境温度值小于等于25度时会触发告警,大于等于26度时告警消除。
5.查看触发器,在 Monitoring—Hosts,可以看到已经触发的环境温度告警。
七、通过IPMI监控服务器(内置模板)
- 模板名称:Chassis by IPMI
- 在 Configuration –Templates 中搜索 “ipmi” 即可找到。
- 官方参考链接:
README.md
- 编辑模板,在Macros中填入XCC的用户名和密码。
- 模板中只有一个Item: Get IPMI sensors
- 没有默认的Trigger, 需要通过读取到的sensor value来手动创建需要的Trigger。
- 找到 Monitoring –Hosts,点击 “Last data” 就可以查看到通过内置IPMI模板读取到的Sensor数据。
- 需要仔细核对Name和Value是否正确。
- 需要观察数据是否准确。
八、如何监控AMD1P服务器(SR635/SR655)
1.SR635/SR655没有配置XCC,TSM的设置与XCC不同。
2.对于IPMI,在setting中勾选“Enable IPMI LAN”即可。
3.对于SNMP,需要设置以下几个地方。
- 启用SNMPTrap V3
- 在User Management中启用SNMP Access.
- SNMP认证和加密选项中没有“none”选项。必须要选择一个协议类型。
- 配置“Platform Event Filters”,需要配置“Event Filters”,“Alert Policies”和“LAN Destinations”。
- 这三个选项是互相关联的。
- 注意选择正确的Channel。
4.在ZABBIX上添加AMD 1P服务器与前面讲的没有区别。
5.需要注意的是,现有的SNMP模板不兼容AMD 1P服务器,需要自己定义模板。
6.IPMI模板的制作方式与前面讲的相同。
九、辅助测试工具
9.1 SNMP Tester
下载:snmptester
在不确定BMC配置是否正确,或者不确定BMC是否正常的情况下,可以使用snmptester来检查BMC的状态,如下图通过读取Device Uptime来确定BMC可以正常响应SNMP请求。
9.2 MIB Importer
下载:MIB Importer
通过MIB Importer可以快速查找MIB文件OID的定议内容。同时可以结合snmptester做更详细的查找。