仮想マシンとホスト間のアフィニティ ルールを使用して、仮想マシンのグループとホストのグループの間にアフィニティ関係を指定します。仮想マシンとホスト間のアフィニティ ルールを使用する際には、そのルールが最も役立つタイミング、ルール間の競合を解決する方法、および必須アフィニティ ルール設定時の注意事項の重要性を認識しておく必要があります。
仮想マシンとホスト間のアフィニティ ルールが役立つ使用事例の 1 つは、仮想マシンで実行しているソフトウェアにライセンスの制限がある場合です。そのような仮想マシンを 1 つの DRS グループに配置し、必要なライセンスを持つホスト マシンだけを含むホスト DRS グループ上での実行を必須にするルールを作成できます。
仮想マシンとホスト間のアフィニティ ルールを複数作成する場合、それらのルールのランク付けは行われず、同等に適用されます。これがルール間の相互作用に与える影響に注意してください。たとえば、1 台の仮想マシンが 2 つの DRS グループに属し、DRS グループのそれぞれに異なる必須ルールが適用されている場合、その仮想マシンは、各ルールに表されるホスト DRS グループの両方に属するホスト上でのみ実行できます。
仮想マシンとホスト間のアフィニティ ルールを作成するときに、そのルールがほかのルールに関連して機能できるかどうかはチェックされません。このため、使用しているほかのルールと競合するルールを作成してしまう可能性があります。仮想マシンとホスト間の 2 つのアフィニティ ルールが競合する場合、古い方のルールが優先され、新しいルールは無効になります。DRS は有効なルールを満たすだけで、無効なルールは無視します。
DRS、vSphere HA、および vSphere DPM は、必須アフィニティ ルール (仮想マシン DRS グループのホスト DRS グループに対する 「must run on」 または 「must not run on」 ルール) の違反につながるアクションは実行しません。クラスタの機能に悪影響が生じる可能性があるため、このタイプのルールを使用するときには注意が必要です、仮想マシンとホスト間のアフィニティ ルールを不適切に使用した場合、クラスタが断片化され、DRS、vSphere HA、および vSphere DPM の機能が阻害される可能性があります。
必須アフィニティ ルールの違反につながる場合、いくつかのクラスタ機能は実行されません。
- DRS は、ホストをメンテナンス モードにするために仮想マシンを退避させません。
- DRS は、仮想マシンのパワーオンや仮想マシンのロード バランシングを行いません。
- vSphere HA は、フェイルオーバーを実行しません。
- vSphere DPM は、ホストをスタンバイ モードにして電力管理を最適化することをしません。
これらの問題を回避するため、必須アフィニティ ルールを複数作成するときには注意してください。 または、仮想マシンとホスト間の、必須ではないアフィニティ ルール (仮想マシン DRS グループのホスト DRS グループに対する 「should run on」 または 「should not run on」 ルール) を使用することを検討します。各仮想マシンが関連付けられているクラスタ内のホストの数が十分であり、1 台のホストが失われても、仮想マシンを実行できるホストがなくならないことを確認します。DRS、vSphere HA、および vSphere DPM が適切に機能するように、必須でないルールに違反することは可能です。