仮想化でプリセールスしてるSEの一日

VMware から Azure まで、インフラや仮想化の最新情報をベンダー色をできるだけ抑えて綴っていきます

仮想化用サーバーでチェックしておきたい BIOS 項目

f:id:ogawad:20190203195708p:plain:right

前回 が好評だったこともあり、
仮想化用サーバーで OS インストール前にチェックしておきたい BIOS 項目を挙げてみます。

想定しているハイパーバイザーは、
現行の Hyper-V 2.0VMware ESXi 5.0 です。*1
スクリーンショットは HP ProLiant サーバーのものですが、他メーカーでも基本的に変わらないと思います。


プロセッサ関連

Intel HT On
Intel Turbo Boost On
Intel VT-x On
Intel VT-d On
NX bit On
Disable core All Cores Enabled *2

現行の Hyper-V や ESXi であれば、これらは全て On が推奨です。
但し、それ以外のハイパーバイザーは、逆に性能が低下してしまうケースがあるためベンダーに確認ください(特に Hyper-Threading や VT-d、NX-bit)


プリフェッチやメモリ関連

HW Prefetch On
Adjacent Sector Prefetch On
Node Interleaving Off
Memory Channel Speed (*1)

プリフェッチ系は昔は Off が定石でしたが、現在は On で問題ないと思います。
「Node Interleaving」ですが、こちらを On にすると NUMA が無効化します。
利用するハイパーバイザーが OS・アプリが NUMA を意識できるかどうかに関係しますが、ここはインパクトも大きいので特に注意ください。NUMA を意識できる現行の Hyper-V や ESXi は On ではなく Off が推奨です。
(*1) メモリスピードは実際に搭載するメモリモジュールに合わせましょう。


USB の転送速度

ESXi を USB メモリや SD カードからブートさせる場合、USB コントローラーの転送規格にご注意ください。
USB にはバックアップキャッシュが無いため、USB 2.0 以上に設定しないとシャットダウン時に書き込みが終わらず、データロスの危険性があります。


ハードウェアベースの省電力設定

VDI など仮想マシンの集約度が高い場合は 前回の記事 を参照して設定を変更する必要があります。
現行の Xeon (Sandy Bridge E5-2600) は TDP を見ても分かるとおり、従来より消費電力が結構上がっています。しかし、データセンターの電源供給が足りないからといって、安易に省電力設定を使うのは注意が必要です。


デフォルトはどちらに設定されている?

これらの BIOS パラメータは工場出荷時にデフォルト設定されて欲しいところですが、x86 サーバーは汎用的ですので、必ずしも仮想化、しかも ESXi や Hyper-V に最適化されているとは限りません。
しかしながら、最近は仮想化しない方が少なくなっているため、メーカーも既定値を仮想化用途寄りにしている傾向があります。VT-d なども On をデフォルトにするメーカーが増えていくはずです。
逆に言えば、工場出荷時設定はメーカーや価格クラス、タワー型・ブレード型などの形状だけでなく、これらが同じものでも発売時期・世代によって変更になる場合もあります。



OS インストールまでの作業は SIer や CE さんのセットアップサービスに任せてしまうケースが多いですが、BIOS パラメーターの変更はハイパーバイザーのインストール後だと遅いケースもあります。
業者に頼む場合はこのあたりのパラメータも忘れずに相談しておきましょう。

*1:ハイパーバイザーによって HW 技術への対応状況は異なりますので、その他の製品・バージョンに適用できるかは保証できません。

*2:2012.05.24 更新 様々な表現がありますが、すべてのコアを有効にしてください。