【问题标题】:A good setup for distributed monitoring and tracking latency/drops in a network用于分布式监控和跟踪网络延迟/丢包的良好设置
【发布时间】:2016-11-22 01:54:16
【问题描述】:

我想先说我从未参加过网络课程,但我正在工作中学习。我对 TCP/IP 网络之类的东西有相当基本的了解,如果您认为这会妨碍我的尝试,请告诉我。

因此,我手头的任务是:我有一个 Open Stack 网络,其中包含许多可以相互通信的节点,所有节点都运行 CentOS 虚拟机(只是为了简单起见),并在它们之上运行应用程序。任务基本上是找到一种方法来监视每个节点的 ping,并在某种消息(可能通过 http)报告发生的情况时报告。检查实际延迟问题的逻辑不是我正在努力解决的问题,它是完成这项任务的最佳结构。

我正在考虑使用 Nagios 并设置一个分布式监控系统。基本上我的计划是在编写我的插件后在每个节点上安装 nagios(除非它已经提供或存在),一旦它的设置和其他节点 ping 它一旦它已经加入网络,它就会简单地 ping 网络中的所有其他东西被检测到。我不确定这到底有多大的可扩展性,因为如果节点数量增加很多,那么让每个节点 ping 其他每个节点实际上是一件好事吗?最终会不会对网络造成很大压力?

这是个坏主意吗?我知道一个更有效的解决方案是只要检查每个节点(不一定必须让每个节点都连接到每个其他节点)效率更高。将其可视化为具有几个点的图,它将是一个双向图,只有一条路径连接每个点,而不是每个可能的点之间都有边。但我不知道这是否是我应该考虑的水平。

简而言之,我要问的是:如何在一堆 Open Stack 节点之间建立一个 ping 监控系统?

让我知道这个问题是否有意义。谢谢。

【问题讨论】:

  • 这听起来很乱。有诸如 NetFlow 和 IP SLA 之类的东西来监控网络上的事物。顺便说一句,ping 只测量 ICMP 的延迟,与实际网络流量无关。
  • 好的,但这些是虚拟机,我想检查它们之间的延迟,因此没有任何物理路由器。还有“类似ping”的工具基本上可以测量相同的东西,对吗?像 fping 或者 tcping 等等,这种情况你为什么不去 nagios 呢?
  • NetFlow 和 IP SLA 有多种实现方式。您的虚拟机之间的网络仍在使用第 2 层和第 3 层网络,您可以使用这些工具来测量实际流量。这正是设计这些工具的原因。你只是想重新发明轮子。
  • 是的,我可以说感觉就像我在尝试做一些以前肯定做过的事情,唯一让我感到困惑的部分是:监控服务本身是否分布在网络上? (每个节点都有一个守护进程运行它)还是需要一些主机返回并记录所有内容?我假设是后者,但问题是如果那台主机出现故障,就会出现大问题。我认为这是我试图解决的主要问题
  • 也感谢您的建议

标签: networking tcp monitoring openstack


【解决方案1】:

仍然不完全确定您要使用此设置完成什么,但您描述的 Nagios 设置听起来很混乱,可能无法满足您的需求。我会考虑将 packetbeat 构建到每个主机的配置中,然后将这些数据发送到 Elasticsearch。这样您就可以查看实际的应用程序级流量和响应时间。 https://www.elastic.co/products/beats/packetbeat

【讨论】:

  • 问题已经更清楚了。我不太关心网络流量,我只关心检查节点之间的延迟。基本上,如果有问题(有人抱怨网络很慢),我只需要一种方法来确定问题是出在他们身上还是出在我们身上,在这种情况下,从其他地方 ping 有问题的节点或在某种情况下掉线/spike,跟踪这些 ping 就可以了。我可能会有一台集中的主机来保存日志。我不必处理应用层
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-08-14
  • 1970-01-01
  • 2016-10-23
  • 1970-01-01
相关资源
最近更新 更多