Active Directoryの導入に踏み切れないユーザーが多い。ドメイン・モデルをはじめ大幅にアーキテクチャが変更され,NTのノウハウが通用しないためだ。特に設計時には効率的な運用管理を見据えた高いスキルが求められる。よく考えて設計しないと,システムの管理負荷が減るどころか逆に増えるシステムになってしまう。最悪の場合,一から作り直さなくてはいけない。

 では,どうすれば運用・管理が容易なActive Directoryドメインを構築できるのだろうか。「とにかくシンプルにすること」である。Active Directoryを構成するすべての機能をフル活用するのではなく,本当に必要なものだけに絞って構築するのである。

 例えば構築するドメイン形態は,なるべくドメインを階層的に管理できる「ドメイン・ツリー」の構成にはしない。全社を1つのドメインで管理する「シングル・ドメイン」が望ましい。NTではユーザーやコンピュータなどを登録可能なオブジェクトの数に4万個という制限があったが,Active Directoryでは理論上1000万個まで拡張されている。このため,大半の企業はシングル・ドメインでも十分に耐えられる。

 このような「トラブルに遭遇しないための設計時の鉄則」は,日経Windowsプロでも特集記事などでまとめている。だが,いざ,トラブルが起きてしまったらどうするか。Active Directoryは様々なサービスと密接に連携しているため,「こうしていけばトラブルの原因を絞り込めるという体系的な回答」を示すのはなかなか難しい,というのが現状である。

時刻がずれると認証できなくなる

 Active Directoryのトラブルの多くは,その原因を特定するのが非常に難しい。具体的な例をいくつか紹介しておこう。

 「突然ドメイン認証ができなくなった」――。こうした認証トラブルはWindowsを使っていると少なくない。Windows NTを管理している人なら,ドメイン・コントローラがダウンしている,あるいはドメイン・コントローラまでのネットワークになんらかの障害が発生していることを真っ先に思い浮かべるだろう。

 Active Directoryにおいても,こうしたネットワーク・トラブルのシューティングの考え方はあながち間違いではない。しかしActive Directoryの場合,もっと奥が深い。ユーザーが勝手にクライアントPCの時刻を5分早めたことがドメイン認証できなくなった原因だった,というと,読者の皆さんは意外に思われるだろうか。

 Active Directoryのドメイン認証では,従来のWindows NT LAN Manager (NTLM)認証のほかに,Kerberos認証と呼ぶ新しい認証方式をサポートする。このKerberos認証は,ログオンするクライアントとサーバーのそれぞれ時刻を基に働く。デフォルトではActive Directoryドメインのメンバーであれば,クライアントごとに何もしなくてもドメイン・コントローラの時刻と自動的に同期が行われる。

 しかし,サーバーとログオンするクライアントの時刻が5分以上ずれてしまった場合,Kerberos認証が正しく動作できないという仕組みになっている。この結果,ドメイン認証ができなくなるというトラブルが発生するのだ。

ドメイン・コントローラの追加は慌てずに

 こうした一見意外に思えるトラブルは,何もドメイン認証だけではない。ドメイン・コントローラの追加時にも発生する。

 Active Directoryをしばらく運用していると,ログオンの認証に時間がかかるという苦情がユーザーから寄せられることが多い。導入当初よりもクライアントPCが増えると,クライアントPC1台当たりの認証のパフォーマンスが落ちることがある。こうした場合,ドメイン・コントローラの台数を増やすことでパフォーマンスを上げることができる。

 しかし,同時に複数台のドメイン・コントローラを追加すると,トラブルが発生することがある。一瞬フリーズしてしまったのかと感じるほど,ドメイン・コントローラの追加処理に多大な時間がかかる。

 これは,Active Directoryの情報の整合性を保つために発生するドメイン・コントローラ間の複製処理に起因する。同時に複数台の複製処理が発生するため,こうしたトラブルが発生するのである。このトラブルへの対処策はない。慌てずにドメイン・コントローラを1台ずつ追加するしかない。

設計時の鉄則を守りトラブルを避けることと,トラブル情報の収集が重要

 このようなトラブルを見ると,その原因を特定し,解決するのは一筋縄にはいかない,とお感じいただけるだろう。

 Active Directoryのトラブル対処策を体系的にまとめるのは難しいが,まずは設計時の鉄則(例えば前述のシンプルな構成を心がけること)を守り,起こりえるトラブルを最小限に抑えておくことが不可欠である。これに加えて,日ごろからトラブル情報を収集し,いざというときに備えておくことも重要だろう。

(小野 亮=日経Windowsプロ編集)