SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

連載記事

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

CodeZine BOOKS(コードジン・ブックス)は、CodeZineの連載からカットアップした、開発現場の課題解決に役立つ書籍シリーズです。

書籍に関する記事を見る

'); googletag.cmd.push(function() { googletag.pubads().addEventListener('slotRenderEnded', function(e) { var ad_id = e.slot.getSlotElementId(); if (ad_id == 'div-gpt-ad-1659428980688-0') { var ad = $('#'+ad_id).find('iframe'); if ($(ad).width() == 728) { var ww = $(window).width(); ww = ww*0.90; var style = document.createElement("style"); document.head.appendChild( style ); var sheet = style.sheet; sheet.insertRule( "#div-gpt-ad-1659428980688-0 iframe {-moz-transform: scale("+ww/728+","+ww/728+");-moz-transform-origin: 0 0;-webkit-transform: scale("+ww/728+","+ww/728+");-webkit-transform-origin: 0 0;-o-transform: scale("+ww/728+","+ww/728+");-o-transform-origin: 0 0;-ms-transform: scale("+ww/728+","+ww/728+");-ms-transform-origin: 0 0;}", 0 ); sheet.insertRule( "#div-gpt-ad-1659428980688-0 div{ height:"+(90*ww/728)+"px;width:"+728+"px;}", 0 ); } else { if ($(window).width() < 340) { var ww = $(window).width(); ww = ww*0.875; var style = document.createElement("style"); document.head.appendChild( style ); var sheet = style.sheet; sheet.insertRule( "#div-gpt-ad-1659428980688-0 iframe {-moz-transform: scale("+ww/320+","+ww/320+");-moz-transform-origin: 0 0;-webkit-transform: scale("+ww/320+","+ww/320+");-webkit-transform-origin: 0 0;-o-transform: scale("+ww/320+","+ww/320+");-o-transform-origin: 0 0;-ms-transform: scale("+ww/320+","+ww/320+");-ms-transform-origin: 0 0;}", 0 ); sheet.insertRule( "#div-gpt-ad-1659428980688-0 div{ height:"+(180*ww/320)+"px;width:"+320+"px;}", 0 ); } } } }); }); } else { document.write('
'); document.write('
'); }
Active Directory入門

Active Directoryの構成を検討する(1)

Active Directory 入門(4)


  • X ポスト
  • このエントリーをはてなブックマークに追加

 前回までActive Directoryの概要を紹介してきました。今回からは、Active Directoryを設計するに当たって検討しておくべき項目について紹介したいと思います。

  • X ポスト
  • このエントリーをはてなブックマークに追加

 前回までActive Directoryの概要を紹介してきました。今回からは、Active Directoryを設計するに当たって検討しておくべき項目について紹介したいと思います。

Active Directoryの構成を検討する

 Active Directoryを構成する際に、はじめにどのようにフォレストやドメインを構成するか、ドメインコントローラーを何台配置するかについて検討を行います。ドメインコントローラーの台数を検討するには、下記のような複数の要因を考慮して検討します。

  • 認証要求を行うユーザーやクライアントなどのオブジェクトの数
  • 同時にログオンを処理する必要はどの程度あるのか
  • LDAPのクエリーの数(Exchange Serverなど)
  • どの程度のサイトに分割する必要があるのか(拠点、ネットワーク構成)
  • 特定のアプリケーションに対し専用にドメインコントローラーを 必要とするのか
  • (Windows Server 2003以前の環境の場合)パスワードポリシーの数

 前回までの連載で紹介したように、ドメインコントローラーは複数のサーバーで構成できるほか、マルチマスターレプリケーションを採用することでお互いの情報を複製し、同じ情報をデータベースに保持しています。

 複数のサーバーでドメインコントローラーを構成しておくと、1台のドメインコントローラーに障害が起こった場合でも、別のドメインコントローラーが動作しているため、機能の冗長性を図ることもできます(FSMO機能を除く)。

 また、ドメインクライアントはグローバルカタログ(以下GC)やDNSサーバーが存在しない場合、ログオンができなくなるため、GCの冗長化やDNSの冗長化も行う必要があります。

 そういった点を踏まえて、ドメインコントローラーは複数台設置するほうが良いでしょう。ただし、台数が多くなるということは障害の際に確認しなくてはいけない点が増えるということでもありますので、必要に応じた台数とする必要はあります。

 構成としては、ドメインやフォレストはできる限りシンプルにまとめられるものはまとめること(例:シングルフォレスト、シングルドメインなど)』の理由は、極力シンプルな構成にすることで設計や運用時の煩雑さを軽減できるためです。しかしながら、前述したような要件を検討していく中で複数のドメインやフォレストが必要になることもあります。これらの設計、検討ポイントは今後記載していきたいと思います。

図1 フォレストとドメインツリーの図
図1 フォレストとドメインツリーの図

Flexible Single Master Operation(FSMO)の役割について

 Active Directoryのデータベースは、マルチマスターレプリケーションにより複製されているため、ユーザーアカウントのようなオブジェクト、ドメインなどの情報はドメインコントローラー間で同期されています。

 また、どのドメインコントローラーでアカウント作成などの処理を行っても、処理結果や各ドメインコントローラーのデータベースに格納されている情報に矛盾が生じないようになっています。

 そのため、負荷分散や障害などに対するバックアップとしても機能するようになっています。

 ただし、Flexible Single Master Operation(FSMO)と呼ばれる役割については、複数のドメインコントローラーからの更新の競合によるデータベースの矛盾を避けるために、あらかじめ管理者が定めた特定のドメインコントローラーだけがその処理を担当することになっています。

 その役割は、複数のドメインコントローラーに割り当てられることはないため、管理者が明示的に他のドメインコントローラーへ役割を移行しない限りは、FSMOの役割に応じてフォレストの最初のドメインコントローラ(フォレストルートのドメインコントローラ)や、マルチドメイン環境の場合はドメイン最初のドメインコントローラが担います。

表1 FSMOの役割
No 名称 役割
1 スキーママスター Active Directoryのスキーマの変更の役割を受け持つ。スキーマの情報は、すべてのドメインコントローラーへ問い合わされるが、変更を加えることができるのは、この役割を持つドメインコントローラーのみ。
2 ドメインネーミングマスター フォレストへのドメインの追加や削除の役割を受け持つ。
3 RIDマスター ドメイン・コントローラーは、RIDプールというユーザーなどのオブジェクトに割り当てるSID(※1)の情報の一部をあらかじめ保持している。RIDマスターはRIDプールを使いきった場合に再割り当ての役割を受け待つ。
4 PDCエミュレータ Windows NTのPDC(プライマリ ドメイン コントローラー)のエミュレーションの役割を受け持つ。Windows 9x/NTなどのActive Directoryに対応していないクライアントに対して、PDCエミュレータの役割を果たす。また、パスワードの変更情報も優先的にPDCエミュレータへと複製を実施する。
5 インフラストラクチャマスター グループのユーザー情報(名前など)の変更情報をドメイン間をまたぎ通知、複製を行う役割を果たす。
  • ※1:SIDとは、各ドメインごとに固定された値と各ドメイン内でのユニークな値を組み合わせたIDで、各ユーザー、グループなどのオブジェクトを区別するために利用されるユニークな番号

 FSMOは表1に記述した5種類の役割から成り立っています。「スキーママスター」「ドメインネーミングマスター」の2つの役割は、フォレストに対して1台のドメインコントローラーが受け持ちます。また、「RIDマスター」「PDCエミュレータ」「インフラストラクチャマスター」の3つの役割は、1ドメインにつき1台のドメインコントローラーが受け持ちます。

 FSMOの配置については、マイクロソフト社のKB(knowledge-Base)を併せて参考にしてください。

図2 シングルフォレストマルチドメインにおけるFSMOの配置例
図2 シングルフォレストマルチドメインにおけるFSMOの配置例

 以上のFSMOの各役割は、通常はActive Directoryを最初に導入したドメインコントローラーが担当していますが、Active Directoryの管理ツールを使って、他のドメイン コントローラーに移すこともできます。

 また、Active Directoryに何かしらのトラブルが生じた場合は、強制的にFSMOを移行することも可能ですが、実際に行う際はいくつか注意の必要な点もあります。それらの方法については後ほど紹介します。

まとめ

 一般的にドメインコントローラーは、可能な限りシンプルな構成とし、複数台のドメインコントローラーを設置した方が良いと考えられます。

 Active Directoryドメインコントローラーは、基本的にはマルチマスターレプリケーションを実施していますが、FSMOと呼ばれる役割は固有のドメインコントローラーでのみ保持されます。FSMOの役割は、役割に応じてフォレスト、またはドメインに対して1台のドメインコントローラーが受け持ちます。

関連資料

修正履歴

この記事は参考になりましたか?

  • X ポスト
  • このエントリーをはてなブックマークに追加
Active Directory入門連載記事一覧

もっと読む

この記事の著者

櫻井 敬子(たーきょん)(サクライ タカコ)

コンピュータ関係の総合商社、アミューズメント系企業の情報システムを経て、NTTデータ先端技術(株)へ入社。2008年9月より(株)NTTデータ 基盤システム事業本部へ出向し、Microsoft製品、VMwareなどを中心とする部門にて勤務。2011年4月よりシステム基盤全般にかかわる部署へ異動し、各種トラブル対応や標準化にかかわる業務を担当。2011年6月中旬よりNTTデータ先端技術(株)へ出向復帰。Windowsを含...

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

黒田 剛(クロダ ゴウ)

(株)NTTデータ 基盤システム事業本部にて、システム基盤全体の技術支援を行う。 

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

KEUNA(ケウナ)

: Admintech.jpオンラインコミュニティで長く活動を続けており、Windows Server や Network 技術を中心に、開発までを含めた幅広い経験を持つ。Windows Server を利用した Web Service の設計や運用、Active Directory を中心とした企...

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

  • X ポスト
  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/4584 2011/06/13 13:21
" ); }

おすすめ

アクセスランキング

  1. 1
    NVIDIA、コンパクトな生成AIスーパーコンピューターを発表 NEW
  2. 2
    管理職の24.1%、今後管理職を「続けたくない」と回答。理由は「責任やストレス」が最多に
  3. 3
    いいエンジニアになるための2つのポイント ──元Google技術者・石原氏が説く「シリコンバレー流ソフトウェア開発術」
  4. 4
    「CUDA」 ~マンガでプログラミング用語解説
  5. 5
    Linuxディストリビューション「Fedora Asahi Remix 41」リリース NEW
  1. 6
    ランサーズ、「2024年必要とされたスキルランキング」を公開。「Lancers」上のデータを集計
  2. 7
    フロントエンドの定番ライブラリ「React 19」の新機能を紹介──アクションによる非同期処理の進化
  3. 8
    Amazon Bedrock、ナレッジベースにおけるRAG評価とモデル評価におけるLLM-as-a-judgeをサポート NEW
  4. 9
    Next.js 14までの進化を振り返る──App Routerを強化する新機能を解説!
  5. 10
    「代替されない強み」を身に着ける覚悟はあるか──Java Champion 寺田佳央氏が経験してきた挫折とは

アクセスランキング

  1. 1
    NVIDIA、コンパクトな生成AIスーパーコンピューターを発表 NEW
  2. 2
    管理職の24.1%、今後管理職を「続けたくない」と回答。理由は「責任やストレス」が最多に
  3. 3
    いいエンジニアになるための2つのポイント ──元Google技術者・石原氏が説く「シリコンバレー流ソフトウェア開発術」
  4. 4
    「CUDA」 ~マンガでプログラミング用語解説
  5. 5
    Linuxディストリビューション「Fedora Asahi Remix 41」リリース NEW
  6. 6
    ランサーズ、「2024年必要とされたスキルランキング」を公開。「Lancers」上のデータを集計
  7. 7
    フロントエンドの定番ライブラリ「React 19」の新機能を紹介──アクションによる非同期処理の進化
  8. 8
    Amazon Bedrock、ナレッジベースにおけるRAG評価とモデル評価におけるLLM-as-a-judgeをサポート NEW
  9. 9
    Next.js 14までの進化を振り返る──App Routerを強化する新機能を解説!
  10. 10
    「代替されない強み」を身に着ける覚悟はあるか──Java Champion 寺田佳央氏が経験してきた挫折とは
  1. 1
    いいエンジニアになるための2つのポイント ──元Google技術者・石原氏が説く「シリコンバレー流ソフトウェア開発術」
  2. 2
    「CUDA」 ~マンガでプログラミング用語解説
  3. 3
    ITエンジニア本大賞2025、投票締切直前! みんなで選んだ歴代の大賞本を振り返って一挙紹介
  4. 4
    デスクトップアプリを開発しよう! 「Rust」と「Tauri 2.0」の基本情報と環境整備の仕方を解説
  5. 5
    2024年12月に開催される注目のITエンジニア向けカンファレンス5選
  6. 6
    日本在住の英語を話すソフトウェア開発者、年収の中央値は950万円に
  7. 7
    今後生成AIとどう向き合うべきなのか? 現場のエンジニアと研究者が最新研究事例から語り合う
  8. 8
    Vue.js3.4~3.5の新機能をまとめて紹介! 新しいAPIやSSRの改善
  9. 9
    VSCodeをドキュメント作成に活用――テキストエディタ、Markdownエディタの設定と拡張機能を解説
  10. 10
    2024年の提示年収が高いプログラミング言語は? paiza調査によるランキングが発表

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

メールバックナンバー

アクセスランキング

  1. 1
    NVIDIA、コンパクトな生成AIスーパーコンピューターを発表 NEW
  2. 2
    管理職の24.1%、今後管理職を「続けたくない」と回答。理由は「責任やストレス」が最多に
  3. 3
    いいエンジニアになるための2つのポイント ──元Google技術者・石原氏が説く「シリコンバレー流ソフトウェア開発術」
  4. 4
    「CUDA」 ~マンガでプログラミング用語解説
  5. 5
    Linuxディストリビューション「Fedora Asahi Remix 41」リリース NEW
  1. 6
    ランサーズ、「2024年必要とされたスキルランキング」を公開。「Lancers」上のデータを集計
  2. 7
    フロントエンドの定番ライブラリ「React 19」の新機能を紹介──アクションによる非同期処理の進化
  3. 8
    Amazon Bedrock、ナレッジベースにおけるRAG評価とモデル評価におけるLLM-as-a-judgeをサポート NEW
  4. 9
    Next.js 14までの進化を振り返る──App Routerを強化する新機能を解説!
  5. 10
    「代替されない強み」を身に着ける覚悟はあるか──Java Champion 寺田佳央氏が経験してきた挫折とは

アクセスランキング

  1. 1
    NVIDIA、コンパクトな生成AIスーパーコンピューターを発表 NEW
  2. 2
    管理職の24.1%、今後管理職を「続けたくない」と回答。理由は「責任やストレス」が最多に
  3. 3
    いいエンジニアになるための2つのポイント ──元Google技術者・石原氏が説く「シリコンバレー流ソフトウェア開発術」
  4. 4
    「CUDA」 ~マンガでプログラミング用語解説
  5. 5
    Linuxディストリビューション「Fedora Asahi Remix 41」リリース NEW
  6. 6
    ランサーズ、「2024年必要とされたスキルランキング」を公開。「Lancers」上のデータを集計
  7. 7
    フロントエンドの定番ライブラリ「React 19」の新機能を紹介──アクションによる非同期処理の進化
  8. 8
    Amazon Bedrock、ナレッジベースにおけるRAG評価とモデル評価におけるLLM-as-a-judgeをサポート NEW
  9. 9
    Next.js 14までの進化を振り返る──App Routerを強化する新機能を解説!
  10. 10
    「代替されない強み」を身に着ける覚悟はあるか──Java Champion 寺田佳央氏が経験してきた挫折とは
  1. 1
    いいエンジニアになるための2つのポイント ──元Google技術者・石原氏が説く「シリコンバレー流ソフトウェア開発術」
  2. 2
    「CUDA」 ~マンガでプログラミング用語解説
  3. 3
    ITエンジニア本大賞2025、投票締切直前! みんなで選んだ歴代の大賞本を振り返って一挙紹介
  4. 4
    デスクトップアプリを開発しよう! 「Rust」と「Tauri 2.0」の基本情報と環境整備の仕方を解説
  5. 5
    2024年12月に開催される注目のITエンジニア向けカンファレンス5選
  6. 6
    日本在住の英語を話すソフトウェア開発者、年収の中央値は950万円に
  7. 7
    今後生成AIとどう向き合うべきなのか? 現場のエンジニアと研究者が最新研究事例から語り合う
  8. 8
    Vue.js3.4~3.5の新機能をまとめて紹介! 新しいAPIやSSRの改善
  9. 9
    VSCodeをドキュメント作成に活用――テキストエディタ、Markdownエディタの設定と拡張機能を解説
  10. 10
    2024年の提示年収が高いプログラミング言語は? paiza調査によるランキングが発表