本記事では仮想マシンの配置を制御するアフィニティルールについて解説します.
vSphere DRS とアフィニティルールを組み合わせることで柔軟な仮想マシンの利用・運用が可能となります.
今回はアフィニティの説明および,アフィニティルール,アンチアフィニティルールの設定を解説します.
情報のアップデート(2026年11月2日)
この記事は 2024 年に書きました.その後,VMware は Broadcom に買収され(2023年11月22日に完了),vSphere は「VMware by Broadcom」の製品になっています.
- 永続ライセンスの販売とその保守の更新は終わり,サブスクリプション(期間付きのライセンス)だけになりました.vSphere は VMware Cloud Foundation(VCF)や VMware vSphere Foundation(VVF)などの形で提供されています.
- ダウンロード・サポートは Broadcom Support Portal(https://support.broadcom.com/)に,製品の文書は Broadcom TechDocs(https://techdocs.broadcom.com/)に移りました.
- 移行先を考えている方は「VMware代替の候補「Proxmox VE」入門:vSphere/VCF・Nutanixとの違いを整理」もどうぞ.
- VMware vSphere に関するお話
- VMware vSphere – ESXi インストール
- VMware vSphere – 仮想スイッチ/ポートグループの設定
- VMware vSphere – NFSデータストアの追加
- VMware vSphere – vCenter Server のインストール
- VMware vSphere – vCenter Server の初期設定
- VMware vSphere – ローカルデータストアの追加
- VMware vSphere – EVC (Enhanced vMotion Compatibility)
- VMware vSphere – 分散仮想スイッチ (分散仮想スイッチの説明,作成)
- VMware vSphere – 分散仮想スイッチ (アップリンクの付け替え,VMkernel インターフェイスの移行)
- VMware vSphere – 分散仮想スイッチ (仮想マシンポートグループの移行,アップリンクの完全付け替え)
- VMware vSphere – iSCSI ストレージのマウント (マウントに向けた準備)
- VMware vSphere – iSCSI ストレージのマウント
- VMware vSphere – ライブマイグレーション (vMotion と Storage vMotion)
- VMware vSphere – ライブマイグレーション(vMotion) のトラブルシュート
- VMware vSphere – vSphere DRS (Distributed Resource Scheduler) 概要
- VMware vSphere – vSphere DRS 設定 (DRS 手動)
- VMware vSphere – vSphere DRS 設定 (DRS 一部自動化)
- VMware vSphere – vSphere DRS 設定 (DRS 完全自動化)
- VMware vSphere – vSphere DRS 設定 (アフィニティとアンチアフィニティ)
- VMware vSphere – vSphere DRS 設定 (ホストアフィニティ)
- VMware vSphere – vSphere HA の説明
- VMware vSphere – vSphere HA の設定
- VMware vSphere – vSphere HA の障害時動作の確認
- VMware vSphere – vCenter Server Appliance のアップデート・アップグレード
- VMware vSphere – ESXi のアップデート・アップグレード – Life Cycle Manager 経由
- VMware vSphere – ESXi のアップデート・アップグレード – CD-ROM 経由
vSphere DRS のアフィニティ
アフィニティルールは簡単に説明すると「仮想マシンとホストの配置ルール」です.アフィニティを設定することで次のような制御が可能になります.
| アフィニティルール | 動作 | 利用シーン |
|---|---|---|
| 仮想マシンの包括 (アフィニティ) | 仮想マシンを同じ ESXi で実行 | ・仮想マシン間通信が多いなどの理由で通信をホスト内にとじたい場合 ・同じ種類の OS を同じホストで稼働させることでメモリ共有を行いたい場合 |
| 仮想マシンの分割 (アンチアフィニティ) | 仮想マシンを別の ESXi で実行 | ・Active Directory など,仮想マシンの OS やアプリでクラスターが構成されており,同一ホストで稼働することが望ましくない場合 |
| 仮想マシンからホスト (ホストアフィニティ) | 仮想マシンを動作するホストを指定 | ・OS やアプリケーションのライセンスの制約で動作させるホストを固定したい場合 |
仮想マシンの包括 (アフィニティルール)
「仮想マシンの包括 (アフィニティルール)」は同一のホスト上で稼働させたい場合に利用するルールです.
この図のように「App」と「DB」は多量の通信が発生するために同一ホスト上に配置することでトラフィックを閉じ込めたい.少しでもレスポンスを向上させたいというケースで利用します.

仮想マシンの包括 (アフィニティルール) の設定
「ホストおよびクラスタ」で設定したいクラスターを選択して「設定」-「設定」-「仮想マシン/ホストルール」と辿って「追加」をクリックします.

名前にアフィニティルールを入力し,タイプを「仮想マシンを一緒に保存」を選択して「追加」をクリックします.

同一の ESXi ホストで動作させたい仮想マシンにチェックを入れて「OK」をクリックします.

選択した仮想マシンが一覧に表示されていることを確認して「OK」をクリックします.

ルールが作成されたことを確認します.

ここでは,ホストの「仮想マシン」一覧より確認を行っていますが,何らかの方法で設定したアフィニティルールが適用されていることを確認しましょう.

仮想マシンの分割 (アンチアフィニティルール)
「仮想マシンの分割 (アンチアフィニティルール)」は別のホスト上で稼働させたい場合に利用するルールです.
この図のように「AD1」と「AD2」など,ソフトウェアでクラスターを構成しているようなシステムは同一ホストに配置して障害が発生するとサービスに影響が生じます.そのため別のホストで動作させたいニーズはとても多いです.
アフィニティルールより,アンチアフィニティルールの方が利用頻度は高いと思われます.

例に挙げた AD のドメインコントローラーを仮想マシンで動かすときは,時刻にも注意が必要です.VMware Tools による時刻の同期や,ホストとの間で時刻の参照が循環する問題は,「【NTP入門 第5回】Windowsの時刻同期 ― W32Time、ADドメインの時刻の階層、PDCエミュレーターの設定、w32tmの読み方、高精度の時刻同期」で解説しています.
仮想マシンの分割 (アンチアフィニティルール) の設定
「ホストおよびクラスタ」で設定したいクラスターを選択して「設定」-「設定」-「仮想マシン/ホストルール」と辿って「追加」をクリックします.

名前にアフィニティルールを入力し,タイプを「仮想マシンを個別に保存」を選択します.

仮想マシンを選択するため「追加」をクリックします.

同一の ESXi ホストで動作させたくない (別の ESXi ホストで動作させたい) 仮想マシンにチェックを入れて「OK」をクリックします.

選択した仮想マシンが一覧に表示されていることを確認して「OK」をクリックします.

ルールが作成されたことを確認します.

ここでは,ホストの「仮想マシン」一覧より確認を行っていますが,何らかの方法で設定したアフィニティルールが適用されていることを確認しましょう.


以上,アフィニティの説明とアフィニティルールとアンチアフィニティルールの設定について解説しました.
次回はホストアフィニティの設定について解説します.
時刻同期の仕組みを基礎から順に学びたい方は,連載「NTP入門(全11回)の目次」からお読みください.
更新履歴
- 2026年11月2日:VMware の Broadcom による買収と,ライセンス・サポートの窓口の変更についての「情報のアップデート」を追記しました
コメント