建议使用Chrome浏览器访问!
技术支持
互动社区
学习培训
深信服官网
合作伙伴

超融合HCI

关注
深信服超融合SANGFOR HCI是面向下一代数据中心的软件定义基础架构,通过虚拟化技术融合计算、存储、网络和安全等资源,并提供运维管理、容灾备份、智能监控等高级特性,帮助用户构建极简、稳定、高性能的云化数据中心基石。
故障案例库
典型场景排查思路

【HCI-VN】网络转发核引起的性能问题排查

更新时间:2024-10-17
  • 阅读权限:游客
  • 下载
  • 分享
  • 收藏
所属模块 网络问题 | 虚拟网络
适用版本 通用

经常遇到转发核不够,或者没开独占引起的性能问题,本文针对这一类问题输出一篇通用的排障方法。

1. 首先要知道,网络转发核是 HCI 虚拟网络数据面(很多人也叫 dp)使用来转发数据包的。

就是主机详情页这里的图:

 

是否启用独占这里很关键,老版本(6.3.0及之前的版本)默认是单核非独占,6.7.0 及之后的版本默认是单核独占。

独占的意思是这个核会以轮询的方式 100% 被 dp 占用,非独占则是中断的方式,也就是说,CPU 用多少占多少。

这个不知道也没关系,只要记住一点:独占的性能比非独占高就行了。

 

2. 实际客户环境中,要判断什么样的现象是转发核性能问题导致的

  • 如果当前还有现象,可以通过 ping 测试来观察丢包和时延情况(重点关注时延),如果测试发现虚拟机之间的时延偏高且持续(正常时延是 <1ms),可能会伴随丢包现象,就基本上确定是转发核不足或未开独占导致的性能问题。

 

  • 除了虚拟机 ping,也可以通过 vxlan ping 来观察,因为 vxlan 口一定是被 dp 接管的,vxlan ping 的情况能直接反映 dp 是否有性能瓶颈,如果 vxlan ping 也有时延持续高的情况,也能说明

vxlan ping,670之前(不含)的版本是用 ping,670 及之后的版本是 dpping

 

  • 如果当前已经没有现象,由于黑盒没有记录 vxlan ping 探测,可以看下 vxlan 有没有和管理网复用,如果复用了,也可以查看黑盒 ping 探测,观察问题时间点是否有时延高的现象
# 670及之前的版本ping探测日志是
/sf/log/blackbox/today/LOG_ping_statistic.txt

# 容器化之后是
/sf/log/vn-blackbox/today/LOG_ping_statistic.txt

 

3. 再进一步确认 dp 各转发核的瓶颈

(1)首先先确认转发核是否独占,有几个转发核,都是哪些转发核

# 680 及之前的版本查看 
/sf/cfg/netrc.conf

# 690 及之后的版本查看
/sf/cfg/vn/netrc.conf

 

(2)再确认这些转发核的 CPU 占用情况 

  •  如果当前还有现象
    • 如果非独占的,那么执行 mpstat -P <转发核列表> 1 (<转发核列表>替换成上图看到的 NET_FWCORE_LIST) 查看转发核的 CPU 占用率,非独占看到的 CPU 占用率(即 %usr)就是真实占用率,所以,如果看到非独占情况下 %usr 占到 100%,说明已经到非独占的性能瓶颈了,这个时候就需要调整独占,或增加转发核心
    • 如果是独占的,那么 %usr 永远都是 100%,看这里就没用了,要看它真实占用率,只有在容器化后的版本才能看到,即通过 dpdebug 4 看(要进 vn-agent 容器)
  • 如果当前已经没有现象
    • 如果是非独占的,那么可以看黑盒 CPU 日志(/sf/log/blackbox/today/LOG_cpuocp.txt),同样如果看到非独占情况下 %usr 占到 100%,说明已经到非独占的性能瓶颈了
    • # 快捷查看命令,把其中的 0 换成你在 netrc.conf 中看到的 NET_FWCORE_LIST,比如只有一个核 0 就是
      grep -E "(\[24| 0 |CPU)" /sf/log/blackbox/today/LOG_cpuocp.txt
      
      # 两个核 0,1 就是
      grep -E "(\[24| 0 | 1 |CPU)" /sf/log/blackbox/today/LOG_cpuocp.txt
    • 如果是独占的,这个就不好看了,黑盒没有监控 dpdebug 4,只能通过上面说的第 2 点 ping 的时延来间接判断了

 

4. 再进一步确认是什么影响转发核性能不足了

一般是流量突增,或者流量比较高,或者流量有偏载

这个可以通过前端主机详情页网口流量统计那里可以观测到,也可以后台看黑盒两个统计:

  • 一个是LOG_sar_dev.txt(/sf/log/blackbox/today/LOG_sar_dev.txt)
  • 一个是LOG_ethtool_statistic.txt(/sf/log/vn-blackbox/today/LOG_ethtool_statistic.txt)

然后可以人工统计一下,举个例子,比如下面统计两个时间段的单播广播组播流量(两个时间段的值相减/时间间隔,注意下面这里时间间隔是 28s,这里除 22 不对)

 

如果是非独占的环境,有些很老的版本,比如 5.8.X 系列或更低的版本,建议开启独占即可,其余环境,建议开启 4 核独占,一次到位。

如果是已经单核独占的环境,通过上面的方法发现性能不足了,直接调整成 4 核独占

如果是已经开启 4 核独占的环境,还遇到这种持续高时延的情况,那可能是别的性能问题,需要综合各方面来判断,这种情况就直接联系 VN技术支持吧

1. 只开独占不会影响业务

2. 调整转发核个数,会影响整台主机网络中断10-30s

转发核引起的 dp 性能问题,主要的现象是 ping 时延高,只要网口被 dp 接管,都可以用来测试,比如你要测业务口,就测虚拟机 ping 网关,要测 vxlan 就 vxlan ip 探测,如果管理网和业务网/vxlan复用,还可以观测管理网的探测来进一步佐证。

注意非独占观察 CPU 占用率就是实际占用率,如果是独占,则需要看 dpdebug 4 来观测实际占用率,如果没有这个工具,就只能通过时延情况和流量情况来间接判断是否达到转发核性能瓶颈了

 

 

 

本页目录
  • 问题描述
  • 有效排查步骤
  • 解决方案
  • 操作影响范围
  • 是否是临时解决方案
  • 建议与总结
您当前处于未登录状态,资料搜索或查找可能会不全面,请登录后以查找更全面的内容注册登录