云监控中的ECS带宽和ECS控制台中看到的带宽不一致,用户收到的云监控报警内容如下:
可以看到云监控报警,在11月15号9:10分,服务器的外网出带宽超过15000Kbps.
但是通过控制台查看到9:10的外网带宽使用率不到100kbps。
这个两个数值不相符。
原因:
经过排查可以确认,用户的服务器是在SLB后端的ECS服务器,并且使用的7层http的转发模型。
使用这种转发模型,SLB进来的流量请求到ECS,ECS走外网带宽响应给用户,这个响应占用的带宽,在ECS控制台中是看不到的,它是计入到SLB使用的出流量中。
通过后台可以看到SLB在对应的时间点的出流量是28144kb/s。如果在SLB中使用会话保持的话,后台使用两台ECS服务器,那么通常的负载不会完全均衡,这个时候28144/2=14072kbps,此时其中某台服务器的出带宽使用率超过15000kbps是有很大概率的。
此时用户可以通过SLB的控制台--》【监控指标】--》【流出流量】可以看具体的带宽使用情况。
如果问题还存在,请联系
阿里云售后支持。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
根据您描述的情况,云监控中显示的ECS外网出带宽与ECS控制台显示的带宽使用率不一致,主要是因为您的ECS实例部署在负载均衡SLB之后,并且使用的是7层(HTTP/HTTPS)转发模式。在这种架构下,流量的行为和计费逻辑有其特殊性:
流量进入方式:客户端的请求首先到达SLB,然后SLB根据配置的转发规则将请求分发到后端的ECS实例。这部分进入ECS的流量,在ECS的控制台是可以观测到的,表现为流入流量。
流量响应方式:关键差异在于ECS响应客户端请求时的流量路径。当ECS通过外网响应客户端(即使原始请求是通过SLB进入的),这部分响应流量并不计入ECS控制台直接展示的“外网带宽使用率”中。相反,它会计入SLB的出流量。这是因为从ECS到客户端的响应路径被视为独立于ECS直接接收的流量。
监控与报警差异原因:云监控报警所依据的数据包含了ECS直接对外响应的流量,这部分数据在ECS控制台的常规带宽监控中可能未被充分反映。因此,当云监控报告ECS外网出带宽超过设定阈值时,这实际上包括了所有直接由ECS响应给客户端的流量,而不仅仅是通过ECS控制台直观看到的那部分。
解决方案与建议:
综上所述,这种差异源于流量在通过SLB和ECS之间的处理方式不同,理解这一机制对于正确解读监控数据至关重要。