Active Directoryには「サイト」という機能がある。いわゆるWebサイトとは意味が異なり、ドメインコントローラ同士の同期を行う際の頻度に差をつけるための機能と考えればよい。今回から何回かに分けて、このサイト機能について解説する。

ドメインコントローラの同期とWANの関係

Active Directoryでは、ひとつのドメインに複数のドメインコントローラを設置できる。ドメインコントローラ同士が定期的にActive Directoryデータベースの同期を行うことで、情報の整合性を維持している。

NTドメインではプライマリドメインコントローラ(PDC)・バックアップドメインコントローラ(BDC)という違いがあり、PDCからBDCに対して一方通行でデータベースを同期していたが、マルチマスタ構成をとるActive Directoryではすべてのドメインコントローラが対等なので、同期も多方向になる。

Active Directoryが大規模化して、取り扱うオブジェクトの数が多くなると、ドメインコントローラ同士で同期する際にやりとりする情報の量も増加する。高速なLANを介して通信している分にはさほど問題にならないと考えられるが、問題は、LANと比較すると相対的に低速なWAN、あるいはVPNを介して結んだ遠隔拠点がある場合だ。

ログオン時の効率などを考慮すると、遠隔拠点にもドメインコントローラを設置する方が良い。しかしそうなると、低速なWAN回線・VPN回線を介してドメインコントローラ同士の同期トラフィックが行き来するため、回線の負荷が増えて、他の通信を阻害する可能性が考えられる。

逆に、ドメインコントローラを集中配置すると、ログオン時にクライアントPCとドメインコントローラの間で発生するトラフィック、あるいは遠隔拠点に設置したサーバとドメインコントローラの間で発生するトラフィックが増加して、レスポンスが悪化する問題が考えられる。

では、拠点ごとにドメインを分ける方法はというと、ドメインの数が増えて管理が煩雑になる上に、異なるドメインの間でユーザーアカウントの移動ができないために人事異動などへの対応が難しくなる。また、ドメインコントローラは冗長化のために複数台設置する方が望ましいが、それを拠点ごとに行うとドメインコントローラの台数が増えすぎて、経済的に問題がある。

サイト機能による問題解決

そこで登場するのがサイトということになる。

Active Directoryでいうところのサイトとは、ドメインコントローラを配置する場所を区分する単位だ。拠点ごとに異なるサイトを設定して、それぞれのサイトの間にサイト間リンクの定義を行う。サイト間リンクごとに同期の頻度を個別指定できるほか、特定の時間帯だけど雨季を行わないように設定することもできる。

この機能を活用すると、同一サイト内とサイト相互間で同期頻度に差をつけることができる。そして、低速な回線で結ばれている場合には同期頻度を落としたり、あるいは同期を夜間に行ったりすることで、回線にかかる負荷を抑制できる。

ただし、同期間隔を開けすぎると、サイトによってデータベースの内容に違いがある状態が長く続くことになるため、あまり間を空けすぎるのも好ましくない。最低でも1日に1回以上は同期を行うようにしたい。Active Directoryに変更が加わる頻度、あるいは回線の負荷状況といったファクターを考慮に入れながら、最適な更新頻度を求めて調整を繰り返す必要があるだろう。

サイト構築の手順

一般的には、すでに拠点同士を結ぶネットワークがあり、そこにActive Directoryを導入していく場面が多いと考えられる。その前提で考えると、サイト設置の作業手順は以下のようになるだろう。

  • 中核となる拠点でActive Directoryを構成する
  • その他の拠点ごとに、対応するサイトを作成する
  • 拠点ごとに割り当てたネットワークアドレスの情報を使って、サブネットを作成する
  • 拠点同士を結ぶ回線ごとに、対応するサイト間リンクを作成する
  • それぞれの拠点でドメインコントローラを立ち上げる。サイトがある状態でドメインコントローラを追加すると、所属するサイトは自動的に決まる
  • 拠点間でドメインコントローラを移動した場合、あるいは稼働開始後にサイト分割を行ったした場合には、ドメインコントローラを手作業で目的のサイトに移動する

サイトを構成して、回線の能力や負荷状況に合わせてそれぞれ異なるサイト間リンクを割り当てることで、ドメインコントローラ同士が同期する頻度を調整できる

なお、ドメインコントローラがどのサイトに所属するかは、サイトごとに割り当てたサブネットの設定と、追加するドメインコントローラに割り当てたIPアドレスの情報によって決まる。そのため、事前にネットワークの設計を確定することと、ドメインコントローラに固定IPアドレスを割り当てることが重要になる。もっとも、サイトの話とは関係なく、サーバには固定IPアドレスを割り当てる方が望ましいだろう。

ちなみに、Windows Server 2008ではドメインコントローラを構成する過程で、どのサイトに配置されるかを確認できるようになっている。