Linux Admin – CentOS 中的流量监控
Linux Admin – CentOS 中的流量监控
有几个第三方工具可以为 CentOS 流量监控添加增强功能。在本教程中,我们将重点介绍那些打包在主要 CentOS 发行版存储库和 Fedora EPEL 存储库中的内容。
总会有管理员(出于某种原因)在主要 CentOS 存储库中只剩下工具的情况。讨论的大多数实用程序设计为由具有物理访问外壳的管理员使用。当使用可访问的 web-gui 进行流量监控时,使用第三方实用程序如 ntop-ng 或 Nagios 是最佳选择(而不是从头开始重新创建此类设施)。
为了进一步研究这两种可配置的 web-gui 解决方案,以下是一些开始研究的链接。
LAN / WAN 场景的流量监控
纳吉欧斯
Nagios 已经存在很长时间了,因此,它经过了尝试和测试。曾几何时,它完全是免费和开源的,但后来发展成为具有付费许可模式的企业解决方案,以支持企业复杂性的需求。因此,在计划使用 Nagios 进行任何部署之前,请确保开源许可版本能够满足您的需求,或者在计划支出时考虑到企业预算。
大多数开源 Nagios 流量监控软件可以在 – https://www.nagios.org找到
对于 Nagious 的历史总结,这里是 Nagios 的官方历史页面 – https://www.nagios.org/about/history/
ntopng
另一个允许通过 web-gui 监控带宽和流量的好工具叫做ntopng。ntopng类似于 Unix 实用程序 ntop,可以为整个 LAN 或 WAN 收集数据。提供用于管理、配置和图表的 web-gui 使其易于用于整个 IT 部门。
与 Nagious 一样,ntopng 也有开源和付费企业版。有关ntopng 的更多信息,请访问网站:http : //www.ntop.org/
安装 Fedora EPEL Repository ─ 企业 Linux 的额外包
为了访问流量监控所需的一些工具,我们需要配置我们的 CentOS 系统以使用 EPEL 存储库。
CentOS 并未正式维护或支持 EPEL 存储库。但是,它是由一组 Fedora Core 志愿者维护的,用于解决 CentOS、Fedora Core 或 Red Hat Linux Enterprise 中未包含的 Enterprise Linux 专业人员常用的软件包。
警告
请记住,EPEL 存储库不是 CentOS 的官方存储库,它可能会破坏具有通用依赖项的生产服务器上的兼容性和功能。考虑到这一点,建议始终在运行与生产相同服务的非生产服务器上进行测试,然后再部署到系统关键设备上。
确实,使用 EHEL 存储库比使用 CentOS 的任何其他第三方存储库的最大优势是我们可以确保二进制文件没有受到污染。最好不要使用来自不受信任来源的存储库。
尽管如此,官方的 EPEL 存储库在 CentOS 中非常常见,可以通过 YUM 轻松安装。
[root@CentOS rdc]# yum -y install epel-release Loaded plugins: fastestmirror, langpacks Loading mirror speeds from cached hostfile * base: repo1.dal.innoscale.net * extras: repo1.dal.innoscale.net * updates: mirror.hmc.edu Resolving Dependencies --> Running transaction check ---> Package epel-release.noarch 0:7-9 will be installed --> Finished Dependency Resolution Dependencies Resolved --{ condensed output }--
安装 EPEL 存储库后,我们将要更新它。
[root@CentOS rdc]# yum repolist Loaded plugins: fastestmirror, langpacks epel/x86_64/metalink | 11 kB 00:00:00 epel | 4.3 kB 00:00:00 (1/3): epel/x86_64/group_gz | 170 kB 00:00:00 (2/3): epel/x86_64/updateinfo | 753 kB 00:00:01 (3/3): epel/x86_64/primary_db --{ condensed output }--
此时,我们的 EPEL 存储库应该已经配置好并可以使用了。让我们从安装nload开始进行接口带宽监控。
我们将在本教程中关注的工具是 –
- 加载
- 顶
- 如果stst
- 顶
- vnstat
- 净猪
- 线鲨
- TCP转储
- 跟踪路由
这些都是 Linux Enterprises 中监控流量的标准。各个的用法从简单到高级,这里只简单讨论Wireshark、TCP Dump等工具。
安装和使用 nload
在 CentOS 中安装和配置我们的 EPEL 存储库后,我们现在应该能够安装和使用nload。此实用程序旨在实时绘制每个接口的带宽图表。
像大多数其他基本安装一样,nload是通过 YUM 包管理器安装的。
[root@CentOS rdc]# yum -y install nload Resolving Dependencies --> Running transaction check ---> Package nload.x86_64 0:0.7.4-4.el7 will be installed --> Finished Dependency Resolution Dependencies Resolved =============================================================================== =============================================================================== Package Arch Version Repository Size =============================================================================== =============================================================================== Installing: nload x86_64 0.7.4-4.el7 epel 70 k Transaction Summary =============================================================================== =============================================================================== Install 1 Package Total download size: 70 k Installed size: 176 k Downloading packages: --{ condensed output }--
现在我们已经安装了nload,使用它非常简单。
[root@CentOS rdc]# nload enp0s5
nload将监视指定的接口。在这种情况下,enp0s5 是一个以太网接口,从终端实时获取网络流量负载和总带宽使用情况。
如所见,nload将绘制来自指定接口的传入和传出数据,同时提供带有哈希标记“#”的数据流的物理表示。
所描绘的屏幕截图是一个加载了一些后台守护程序流量的简单网页。
nload 的常用命令行开关是 –
Command | 行动 |
---|---|
-a | 时间段 |
-t | 时间更新间隔以毫秒为单位,默认为500 |
-u | 设置流量测量的显示 h |
-U | 设置总输入/输出流量测量单位与 -u 选项相同 |
nload 的标准语法是 –
nload [options] <interface>
如果没有指定接口,nload会自动抓取第一个以太网接口。让我们尝试以兆字节为单位测量输入/输出的总数据量和以兆位为单位的当前数据传输速度。
[root@CentOS rdc]# nload -U M -u m
传入/传出当前接口的数据以每秒兆位为单位,每个“Ttl”行,代表输入/输出的总数据以兆字节显示。
nload对于管理员查看有多少数据通过接口以及当前有多少数据传入/传出指定接口很有用。
要在不关闭 nload 的情况下查看其他界面,只需使用向左/向右箭头键。这将循环浏览系统上的所有可用接口。
可以使用-m开关同时监控多个接口–
[root@CentOS rdc]# nload -u K -U M -m lo -m enp0s5
同时负载监控两个接口(lo 和 enp0s5) –