한국어English日本語简体中文繁體中文DeutschไทยTiếng ViệtРусскийPortuguês (Brasil)EspañolBahasa Indonesia

游戏卡顿白皮书 › L6 服务器网卡

虚拟化开销/邻居干扰 Noisy neighbors in virtualization

原因 ID nic-noisy · 主责 运维团队·系统运维 · 配合 外部·外部

在含图示和实验的完整版中打开此卡片 →

同一台物理服务器上的其他虚拟机大量占用网络和 CPU 时,自己这台服务器的处理会不规律地被拖后。

起因 同一台物理服务器上的其他虚拟机大量占用资源 → 结果 自己这台虚拟机的数据包处理不规律地延迟 → 画面表现 没有明显原因,偶尔出现抖动(到达间隔的波动),表现为一卡一卡

症状
一卡一卡
因素
抖动
谁会遇到
全服
何时出现
偶尔随机
负责方
主责 运维团队·系统运维 · 配合 外部·外部
运维团队要做的事
使用专用主机、性能有保障的实例;抖动持续的实例先停止再启动,迁移到其他宿主机。
外部要做的事
向云厂商报告有问题的宿主机。
监控图上
偶发随机尖峰 · 同一数据中心内的往返时间抖动、%steal
查看位置
持续向同一数据中心的其他服务器发 ping,记录往返时间的抖动,连同 mpstat 的 %steal 一起与同配置的其他实例对比
确认依据
只有这台实例的往返时间抖动或 %steal 不规律地跳变,同配置的其他实例很平稳。停止后再启动、换到其他宿主机后问题消失
排除依据
同配置的实例全都一样跳变,则不是宿主机问题。看游戏服务器侧的负载或网络链路
确认手段
运维工具即可确认(无需游戏代码)

出处

  1. How EC2 instance stop and start works AWS
    实例停止后再启动,大多会迁到新的宿主机(专用主机除外)
  2. mpstat(1) — Linux manual page sysstat
    %steal:hypervisor 运行其他虚拟 CPU 期间,本虚拟 CPU 被迫等待的时间比例

相关原因

同一层:L6 服务器网卡

其他层中同样导致“一卡一卡”的原因

查看含图示和实验的原卡片