ゲームラグ白書 › L6 サーバーのネットワークカード
仮想化オーバーヘッド・ノイジーネイバー Noisy neighbors in virtualization
原因ID nic-noisy · 主担当 インフラチーム・サーバーインフラ · 副担当 外部・外部
図と実験のあるメインページでこのカードを開く →
同じ物理サーバー上のほかの仮想マシンがネットワーク・CPUを大量に使うと、自分のサーバーの処理が不規則に遅れます。
なぜ 同じ物理サーバー上のほかの仮想マシンがリソースを大量に使用 → すると 自分の仮想マシンのパケット処理が不規則に遅れる → 画面では はっきりした原因がないのに、ときどきジッター(到着間隔のばらつき)が生じてカクつき
- 症状
- カクつき
- 要因
- ジッター
- 誰に起きるか
- サーバー全体
- いつ
- ときどきランダムに
- 担当
- 主担当 インフラチーム・サーバーインフラ · 副担当 外部・外部
- インフラチームの対応
- 専有ホスト、性能が保証されたインスタンス、ジッターが続くインスタンスは停止してから再起動し、別のホストに移す。
- 外部の対応
- クラウド事業者に問題のあるホストを報告。
- グラフでは
- 不定期なスパイク · 同じデータセンター内の往復時間のジッター、%steal
- 確認箇所
- 同じデータセンターのほかのサーバーへpingを送り続けて往復時間のジッターを記録し、mpstatの%stealと合わせて、同じ構成のほかのインスタンスと比較
- 該当する場合
- このインスタンスだけ往復時間のジッターや%stealが不規則に跳ね、同じ構成のほかのインスタンスは落ち着いている。停止してから再起動し、別のホストに移すと消える
- 該当しない場合
- 同じ構成のインスタンスがすべて同じように跳ねるならホストの問題ではない。ゲームサーバー側の負荷やネットワーク区間を確認
- 確認手段
- インフラのツールで確認(ゲームコード不要)
出典
- How EC2 instance stop and start works AWS
インスタンスを停止してから起動すると、ほとんどの場合新しいホストに移る(専有ホストを除く) - mpstat(1) — Linux manual page sysstat
%steal:ハイパーバイザーがほかの仮想CPUを実行している間、この仮想CPUがやむを得ず待たされた時間の割合
あわせて読みたい原因
同じ層:L6 サーバーのネットワークカード
同じ症状(カクつき)を起こすほかの層の原因
図と実験のあるメインページでこのカードを見る