如何将远程Linux主机添加到Cacti进行监视

在上一指南中,我们演示了如何在CentOS 8上安装Cacti监视服务器。本教程进一步介绍了如何在Cacti上添加和监视远程Linux主机。 我们将向仙人掌服务器添加远程Ubuntu 20.04 LTS和CentOS 8系统进行监视。

让我们开始。

步骤1)在Linux主机上安装SNMP服务

SNMP(简单网络管理协议)的缩写,是一种用于收集有关网络中设备信息的协议。 使用SNMP,您可以轮询诸如CPU使用率,内存使用率,磁盘使用率,网络带宽等指标。以后,这些信息将在Cacti中进行图形化显示,以直观地概述远程主机的性能。

考虑到这一点,我们将在两个Linux主机上安装并启用SNMP服务:

在Ubuntu 20.04上

要安装snmp代理,请运行以下命令:

$ sudo apt install snmp snmpd -y

在CentOS 8上

$ sudo dnf install net-snmp net-snmp-utils -y

SNMP在安装后自动启动。 要确认这一点,请运行以下命令确认状态:

$ sudo systemctl status snmpd

如果该服务尚未运行,请启动并在启动时启用它,如下所示:

$ sudo systemctl start snmpd

我们可以清楚地看到该服务已启动并正在运行。 默认情况下,SNMP在UDP端口161上运行侦听。您可以使用netstat命令验证此操作,如图所示。

$ sudo netstat -pnltu | grep snmpd

步骤2)配置SNMP服务

到目前为止,我们已经成功安装了snmp服务,并确认它正在按预期运行。 下一步操作是配置snmp服务,以便可以收集数据并将其传送到Cacti服务。

配置文件位于 /etc/snmp/snmpd.conf

对于Ubuntu 20.04

我们需要配置一些参数。 首先,找到sysLocation和sysContact指令。 这些定义了Linux客户端的物理位置。

默认syslocation-syscontact-snmpd-linux

因此,请随时提供您客户的位置。

Syslocation-Syscontact-snmpd-ubuntu-20-04

接下来,找到 代理地址 指示。 这是指代理将侦听的IP地址和端口号。

默认代理地址-snmpd-ubuntu-20-04

如下所示调整指令,其中192.168.2.106是我的客户端系统的地址。

agentaddress  udp:192.168.2.106:161

AgentAddress-仙人掌服务器-Ubuntu-20-04

现在,该指令将允许系统的本地IP侦听任何snmp请求。 接下来,在其他视图指令上方添加以下视图指令:

view     all      included     .1      80

查看指令-snmpd-Ubuntu-20-04

接下来,更改如下所示的rocommunity属性

rocommunity  public default -V systemonly
to:
rocommunity  public default -V all

rocommunity-snmpd-linux

最后,为确保snmp服务正常运行,请在Linux主机上运行以下命令。

$ sudo snmpwalk -v 1 -c public -O e 192.168.2.106

如图所示,您应该获得大量输出。

snmpwalk-command-cacti-ubuntu-20-04

对于CentOS 8

在CentOS 8中,配置略有不同。 首先,找到以com2sec指令开头的行,如下所示:

default-com2sec-directive-snmpd-centos8

我们将指定一个新的安全名称AllUser并删除notConfigUser,如下所示:

Update-com2sec-directive-snmpd-centos8

接下来,找到以group指令开头的行,如图所示。

默认组指令snmpd-centos8

我们将修改第二个属性,并将AllGroup指定为组名,将AllUser指定为安全名,如先前所定义。变更组指令snmpd-centos8

在视图部分,添加此行

view    AllView         included        .1

查看指令-snmpd-centos8

最后,找到以access指令开头的行。

默认访问指令snmpd-centos8

对其进行修改,如下所示:

更改访问指令snmpd-centos8

保存更改并退出配置文件。 重新启动snmpd守护程序以使更改生效

$ sudo systemctl restart snmpd

另外,启用服务以在启动时启动。

$ sudo systemctl enable snmpd

再次使用snmpwalk命令验证snmp配置是否按预期工作:

$ sudo snmpwalk -v 2c -c public -O e 127.0.0.1

snmpwalk-command-仙人掌-centos8

完善! 一切似乎都按预期运行。

步骤3)为snmp配置防火墙规则

接下来,我们需要打开udp端口161,以允许Cacti服务器和Linux主机上的snmp通信。

对于Ubuntu 20.04主机

运行以下命令以允许防火墙中的udp端口161,

$ sudo ufw allow 161/udp
$ sudo ufw reload

对于CentOS 8主机

对于CentOS 8客户端和也在CentOS 8上运行的Cacti服务器,请调用以下命令:

$ sudo firewall-cmd --add-port=161/udp --zone=public --permanent
$ sudo firewall-cmd --reload

转到Cacti服务器并运行显示的命令,以确认snmp正在从远程客户端传送度量标准。

$ sudo snmpwalk -v 1 -c public -O e 192.168.2.106  # Ubuntu
$ sudo snmpwalk -v 2c -c public -O e 192.168.2.104 # CentOS

snmpwalk从仙人掌服务器centos8

大! 这确认Cacti服务器正在从远程Linux系统接收系统指标。

步骤4)将远程Linux主机添加到Cacti

这是最后一部分,您必须添加远程Linux主机。 因此,登录到Cacti服务器,然后单击“创建设备”,如图所示。

创建设备选项仙人掌工具

就我而言,我的Ubuntu远程主机已被Cacti检测到,并如图所示列出。

自动检测到远程Ubuntu仙人掌

单击您的设备,并热衷于注意SNMP信息,如图所示。

远程Ubuntu snmp信息仙人掌收费

接下来,向下滚动并单击“保存”按钮。

保存snmp信息远程ubuntu仙人掌工具

如果您的设备未列出,则只需单击“创建”>“设备”,然后像所示在CentOS8主机中一样填写设备的详细信息。

创建设备远程centos8仙人掌工具

添加设备后,单击“图形”选项卡。

图形选项仙人掌工具CentOS8

在下一页上,选择设备的名称

生成图形Ubuntu主机仙人掌工具

一直滚动到底部,然后单击“创建”按钮。

选择创建选项生成图形仙人掌工具

等待大约10-20分钟,以开始填充图形。 最后,您将开始注意到如图所示绘制了远程主机的统计信息。

远程Ubuntu主机图片仙人掌工具

这为本文得出了结论。 我们很高兴您能够一路跟随。 请让我们知道事情的进展,如果有任何问题,我们将很乐意为您提供帮助。

Sidebar