Azure AD Connect を開始し、ローカルの Active Directory と Azure Active Directory の間でハイブリッドIDを使用し始めると、「Azure AD Connect サーバーがダウンしたらどうなるのか」という疑問がまず浮かぶのではないでしょうか。
当然の疑問ですが、Microsoft にはまだ明確な回答は用意されていないようです。ただ、少なくともID同期インフラストラクチャの可用性を高めるためにできることはあります。
高レベルのワークフロー
Microsoft は、オンプレミスの Active Directory Domain Services(AD DS)環境に少なくとも1つの他の Azure AD Connect サーバーをデプロイし、そのセカンダリサーバーをステージングモードにすることで、Azure AD Connect インフラストラクチャの可用性を高めることができると推奨しています。
Azure AD Connect サーバーは、ステージングモードで実行されていると、同期サービスは可能でも、IDデータのエクスポートは実行されません。プライマリサーバーの計画的なメンテナンスでは、プライマリをステージングモードに設定し、セカンダリをステージングモードから解除すると、セカンダリはID同期を開始します。
プライマリサーバーが予期せずオフラインになった場合でも、ステージングモードのセカンダリサーバーをアクティブにして、プライマリサーバーが中断したところから再開するようにできます。この処理を行う方法を紹介したいと思います。
ステップ 1: Azure AD Connect のプライマリサーバーの設定情報を取得
残念ながら、プライマリサーバーから簡単に Azure AD Connect 設定データをエクスポートする方法は用意されていません。考えられる最適な方法は、プライマリで Azure AD Connect ウィザードを実行し、[View current configuration] をクリックして、表示された画面のスクリーンショットをとること(!)です。図1を参考にしてください。
[図1: Azure AD Connect 設定データのスクリーンショット例]
Microsoft's Azure AD Connect 同期トポロジをカスタマイズした場合は、Microsoft のオープンソースの Azure AD Connect Configuration Documenter ユーティリティを使用して、複雑な詳細内容をプリントアウトした方がいいでしょう。
ステップ 2: セカンダリサーバーをステージングモードに設定して Azure AD Connect をインストール
プライマリサーバーの設定データに合わせて手作業で Azure AD Connect 用の設定を行い、Azure AD Connect をセカンダリサーバーにインストールする必要があります。ただし、図2に示すように、最後の Azure AD Connect ウィザード画面では、異なった設定になります
[図2: セカンダリサーバーをステージングモードに設定]
"Start the synchronization process" と "Enable staging mode" オプションを両方ともマークして有効にしてください。同期プロセスを開始するオプションを選択するのは直感に反するかもしれませんが、だとしても、この設定を行ってください。
ステップ 3: プライマリサーバーをステージングモードに設定
プライマリとセカンダリを切り替える場合の望ましいケースは、計画的なメンテナンスなどのために Azure AD Connect のプライマリサーバーをオフラインにする必要があることを事前に知っているという状況です。そのような場合は、Azure AD Connect ウィザードを再実行し、[Additional tasks] 画面から “Configure staging mode” を選択(図3)して、Azure AD テナントに対して認証を行えば、設定の変更が完了します(図4)
[図 3]
[図 4]
ADSync サービスの実行は継続されます。これはそのような設計になっているためで、停止しないようにしてください。また、Synchronization Service Manager ツールを使用するか、次の PowerShell コマンドを実行すれば、いつでもセカンダリサーバーでエクスポート操作を行うことができます。
Start-ADSyncCycle -PolicyType Delta -Verbose
ステップ 4: セカンダリサーバーをステージングモードから解除
特に驚くようなことはなく、Azure AD Connect のセカンダリサーバーをステージングモードから解除する手順は、サーバーをステージングモードに移行する手順とまったく同じです。
留意点
Azure AD Connect は、デフォルトでバックエンドとして SQL Server Express LocalDB を使用しています。最低限必要なファイルをコピーする SQL Server Express LocalDB の代わりにフルの SQL Server インスタンスを使用することを選択した場合は、データ層の高可用性も考慮することを忘れないでください。
Azure AD Connect ID 同期インフラストラクチャに一定レベルの耐障害性を付与し、可用性を高めるための方法についての説明は以上です。
Tim Warner
Tim Warner is a Microsoft MVP, Microsoft Press/Wiley author, and Azure solution architect based in Nashville, TN. Contact Tim at Twitter (@TechTrainerTim) or his website, techtrainertim.com.