すべての VM で断続的に CPU 使用率が 100% になる

すべての VM で断続的に CPU 使用率が 100% になる

私たちは小さな会社で、メイン サーバーとして Dell T420 (デュアル CPU、1 つのみ、6 コア) と 32 GB RAM を実行しています。VM は 5 台のみで、そのうちの 1 台は WSE 2012 DC です。

時々、信頼できるパターンを確立できない速度で、すべての VM が同時に 100% の CPU 使用率に急上昇します。ホストは 4 ~ 5% で静かなままです。ホストのウォーム ブートでは問題は解決しませんが、コールド ブートでは少なくとも問題が再発するまでは元の状態に戻ります。

時には 1 週間以上も海が穏やかに保たれることもあれば、1 日だけのこともあります。信頼性の低いパターンとしては、長時間のアイドル期間、つまり夜間に発生するようです。サーバーの温度ログを調べたところ、最初は過熱が原因だと疑われましたが、最近の事件をさらに調査した結果、その可能性は否定されました。

Dell フォーラムでも同様の問題についての説明が見つかり、最新の Dell アップデートをインストールすることで解決できると主張していました。私たちは最近、まさにそれを実行するプロジェクトに取り組みました (余談ですが、約 700 GB の VHD を安全にそのマシンから取り出し、再びマシンに戻すのはかなりの冒険でした) が、残念ながら役に立ちませんでした。

私たちは完全に困惑しています。Microsoft サポートも同様です (少なくとも、第一層サポートはそう振舞わないようにしていますが)。以下に SystemInfo 出力を記載します。

どこから探し始めればいいか知っている人はいませんか?

ありがとう

===================================

ホスト名: SERVER1
OS 名: Microsoft Hyper-V Server 2012 R2
OS バージョン: 6.3.9600 該当なし ビルド 9600
OS製造元: Microsoft Corporation
OS構成: スタンドアロンサーバー
OS ビルドタイプ: マルチプロセッサ フリー
登録所有者: Windows ユーザー
登録組織:   
製品ID: 06401-029-0000043-76293
元のインストール日: 2014 年 4 月 3 日、午後 4 時 7 分 15 秒
システム起動時間: 2014/5/4、午後 1:56:47
システム製造元: Dell Inc.
システムモデル: PowerEdge T420
システムタイプ: x64 ベース PC
プロセッサ: 1 個のプロセッサがインストールされています。
                           [01]: Intel64 ファミリー 6 モデル 45 ステッピング 7 GenuineIntel ~2200 Mhz
                           [Intel(R) Xeon(R) CPU E5-2430 0 @ 2.20 GHz] (手動で追加)
BIOS バージョン: Dell Inc. 2.1.2、2014 年 1 月 20 日
Windows ディレクトリ: C:\Windows
システムディレクトリ: C:\Windows\system32
ブートデバイス: \Device\HarddiskVolume1
システムロケール: en-us;英語 (米国)
入力ロケール: en-us;英語 (米国)
タイムゾーン: (UTC-09:00) アラスカ
合計物理メモリ: 32,723 MB
使用可能な物理メモリ: 12,716 MB
仮想メモリ: 最大サイズ: 37,587 MB
仮想メモリ: 使用可能: 17,129 MB
仮想メモリ: 使用中: 20,458 MB
ページファイルの場所: C:\pagefile.sys
ドメイン: OIT
ログオンサーバー: \\SERVER1
修正プログラム: 31 個の修正プログラムがインストールされました。
                           [01]: KB2843630
                           [02]: KB2862152
                           [03]: KB2868626
                           [04]: KB2876331
                           [05]: KB2883200
                           [06]: KB2884846
                           [07]: KB2887595
                           [08]: KB2892074
                           [09]: KB2893294
                           [10]: KB2894179
                           [11]: KB2898514
                           [12]: KB2898871
                           [13]: KB2901101
                           [14]: KB2901128
                           [15]: KB2903939
                           [16]: KB2904266
                           [17]: KB2908174
                           [18]: KB2909210
                           [19]: KB2911106
                           [20]: KB2913760
                           [21]: KB2916036
                           [22]: KB2917929
                           [23]: KB2919394
                           [24]: KB2919442
                           [25]: KB2922229
                           [26]: KB2923300
                           [27]: KB2923768
                           [28]: KB2928193
                           [29]: KB2928680
                           [30]: KB2930275
                           [31]: KB2939087
ネットワーク カード: 3 つの NIC がインストールされています。
                           [01]: Broadcom NetXtremeギガビットイーサネット
                                 接続名: NIC1
                                 DHCP 有効: いいえ
                                 IP アドレス
                           [02]: Broadcom NetXtremeギガビットイーサネット
                                 接続名: NIC2
                                 DHCP 有効: はい
                                 DHCP サーバー: 192.168.1.12
                                 IP アドレス
                                 [01]: 192.168.1.135
                                 [02]: fe80::915b:8de0:712e:29f1
                           [03]: Hyper-V仮想イーサネットアダプタ
                                 接続名: vEthernet (外部 NIC 1_内部)
                                 DHCP 有効: いいえ
                                 IP アドレス
                                 [01]: 192.168.1.11
                                 [02]: fe80::2d35:f582:4958:9eb2
Hyper-V の要件: ハイパーバイザーが検出されました。Hyper-V に必要な機能は表示されません。

== 編集 ========================

私はこの問題の解決策を見つけました。この問題が再び発生しないことを確認するために 1 年以上待ちました。

モデレーター: 回答を投稿できるように、質問を再開するようリクエストします。

答え1

解決策が有効であることを証明するために 1 年以上待った後、ようやくこの回答を投稿することができました。

Dell のデフォルトの BIOS 設定では C-States が有効になっており、アイドル時間中にコンピューターが低電力モードになります。これが、ハイパーバイザー ホスト (VMWare、Citrix を含む) 上の VM の CPU 使用率が 100% に達する原因です。

解決策は、BIOS のシステム プロファイル設定を、ワットあたりのパフォーマンス [OS] またはワットあたりのパフォーマンス [DAPC] (後者がデフォルト) ではなく、パフォーマンスに設定することです。

関連する Dell ドキュメント、pp3:

http://en.community.dell.com/techcenter/extras/m/white_papers/20161975/download

そして、この問題に詳しい数少ない Dell サポート エンジニアの 1 人からの返信は次のとおりです。

簡単に言うと、C ステートはアイドル時間中に追加のプロセッサ コアを無効にします。コアに結び付けられた VM (これは OS によって制御され、構成可能ではないと思います) の場合、VM はもはや存在しないリソースを使用してアクションを実行しようとするため、ロックアップする可能性があります。

一般的に、C ステートは、バックアップ サーバー、セカンダリ ロール サーバー (バックアップ DNS、DHCP、ドメイン コントローラーなど) などのアイテムで使用され、これにより、バックアップ サーバーはオンのまま、低電力モードで稼働し、エネルギーを節約できます。

追加のドキュメントはここにあります:

http://en.wikipedia.org/wiki/Advanced_Configuration_and_Power_Interface

簡単に言えば、ハイパーバイザ ホストでは、Dell サーバーの電源アイドル状態を常にオフ (パフォーマンスに設定) にする必要があります。

この解決策を見つけるのに協力してくれた Kitsap Bank の Eddy Simons 氏に感謝します。

答え2

問題が何であるかは不明です。それはあなたもすでにご存知でしょう。私たちには原因をお伝えするチャンスがありません。

ただし、いくつかのテストを実行することはできます:

  • VM 1 をビルドする

    • この VM で CPU を集中的に使用するタスクを継続的に実行する
      (1 秒あたり数百万の複雑な数学計算を実行する)
  • VM2 をビルドする

    • この VM で RAM を集中的に使用するタスクを継続的に実行する
      (メモリ内に巨大な配列を作成し、削除し、これを繰り返す)
  • VM 3 をビルドする

    • この VM でディスクを集中的に使用するタスクを継続的に実行する
      (ファイルに対して数百万行の読み取り/書き込み/削除)
  • VM4をビルドする

    • この VM でネットワークを集中的に使用するタスクを継続的に実行する
      (SMB 共有との間でファイルをコピーする)

問題が再び発生するまで待ってから、各サーバーのパフォーマンス データを観察します。
最も影響を受けたのはどれですか?
まったく影響を受けなかったサーバーはありますか?

私の推測では、ディスクの性能が悪く、CPU が IO 操作の完了を待ってから続行しているため、一部のアプリケーションで CPU がフラットラインになることがあります。

答え3

これを見つけてよかったです。Hyper-v を実行している 2012R2 サーバーがあります。AMD、6 コア CPU。1 年以上問題なく動作していました。突然、RDP でも Hyper-V 接続でも接続できない VM が表示されるようになりました。唯一のオプションは VM をオフにすることでした。シャットダウンしても応答がありませんでした。そこで、仮想プラグを壁から引き抜き、電源を入れました。

症状は、個々のマシンが割り当てられた CPU を 100% 使用しているように見えることでした (例: 6 コア ホスト上の 1 コア VM が 16% に固定されていました)。

問題は散発的に発生しました。明らかな理由はありません。

ようやく、これはそのマザーボードで 32 GB から 64 GB にアップグレードしようとして失敗したことと重なっていることに気付きました。その問題は、16 GB メモリを 1 本、2 本、または 3 本使用すれば 16、32、または 48 GB として動作するのに、4 本使用すれば 64 GB として動作しないというものでした。BIOS 設定などで散々いじくり回しましたが、その面では何もうまくいきませんでした。そのとき、VM でダイナミック メモリを有効にするすばらしい機能を発見しました。結局、64 GB がなくてもなんとかやっていけることがわかりました。

おそらく、いじくり回しているときに CPU の電源管理をオンにしたら、この問題が発生したのだと思います。

BIOS で APM をオフにしました。これで問題が解決したと 60% 確信できるまでには数日かかります。勝利を宣言するには数週間かかります。しかし、これが問題の原因として十分な気がします。

24時間が経過しましたが、今のところ順調です。

成功を祈っている。

情報のおかげで!!

関連情報