検索
連載

レプリケーションで冗長構成OpenLDAPで始めるディレクトリサーバ構築(5)(1/3 ページ)

ユーザー情報や組織情報などを一元的に管理するディレクトリサーバは、企業システムの中で重要な役割を果たしています。この連載ではオープンソースの「OpenLDAP」を用いて、ディレクトリサーバの構築・活用方法を解説します。(編集部)

PC用表示 関連情報
Share
Tweet
LINE
Hatena

 いよいよ連載最終回となった今回は、LDAPクライアントからの負荷を分散しディレクトリデータの冗長性を高めるレプリケーションを構築していきます。マスタサーバ‐スレーブサーバ間の経路が安全でない場合は、レプリケーション対象のディレクトリデータのすべてにアクセス可能なレプリケーションユーザーの取り扱いに注意して設定を行うとよいでしょう。

レプリケーション方式の選択

 OpenLDAPのレプリケーション機能の実装には、slurpdという専用のデーモンプログラムを利用しマスタサーバから変更情報をスレーブサーバへ送付する方式と、overlay機能で提供されるsyncprovモジュールを利用してスレーブサーバからマスタサーバを検索して変更情報を取得する方式の2つが存在します。

 slurpdは、OpenLDAP 2.4以降はsyncprovモジュールに置き換えられ提供されていないプログラムです。ただし、本連載で対象とするCentOS 5.2に含まれるOpenLDAP 2.3.27では、従来どおりこのプログラムが利用可能です。

*** 一部省略されたコンテンツがあります。PC版でご覧ください。 ***

 また、もう1つのレプリケーション実装であるsyncprovモジュールも、CentOS 5.2に含まれるOpenLDAP 2.3.27で利用することができます。このモジュールの存在はmonitorデータベースを利用して確認できます。

*** 一部省略されたコンテンツがあります。PC版でご覧ください。 ***

 このように、CentOS 5.2にバンドルされるopenldap-serversでは2つのレプリケーション方式を選択できます。ただし、データの不整合が起きやすいためOpenLDAP 2.4以降ではslurpdプログラムが提供されていないことや、slurpdプログラムのアーキテクチャ上、レプリケーション構築の過程で一度マスタサーバを停止し、更新が行われないデータの静止点を設ける必要があるなどの理由から、今後はsyncprovモジュールを選択する機会が多くなるでしょう。

 このことから、本記事ではsyncprovモジュールを利用したレプリケーションについて説明していきます。

レプリケーション構成概要

 それでは早速、syncprovモジュールを利用したレプリケーションを構成していきます。今回は、マスタサーバのIPアドレスを「192.168.1.10」、スレーブサーバのIPアドレスを「192.168.1.20」として、動作モードには同期的なレプリケーションを行う「refreshAndPersist」を採用します。

 また、レプリケーションの対象とするデータは「dc=my-domain,dc=com」データベース以下すべてとし、レプリケーションユーザーのDNは「cn=repl,dc=my-domain,dc=com」を利用します。レプリケーションユーザーはレプリケーションの対象となるディレクトリデータすべてにアクセス可能としますので、今回はSASL DIGEST-MD5を用いて、レプリケーションユーザーの認証情報を保護します。

図1 レプリケーション構成概要
図1 レプリケーション構成概要

マスタサーバの設定

 まずは、マスタサーバ上にレプリケーションユーザー「repl」を作成します。

*** 一部省略されたコンテンツがあります。PC版でご覧ください。 ***

 続いて、マスタサーバのslapd.confを編集していきます。slapd.confのグローバルセクションで、「authz-regexp」ディレクティブを用いてレプリケーションユーザーとしてスレーブサーバから検索を行うSASLデータベース上の「repl」ユーザーを、OpenLDAPで利用するDN「cn=repl,dc=my-domain,dc=com」へ変換します。そして「access to」ディレクティブを用いて、そのDNに「dc=my-domain,dc=com」ディレクトリデータベースの検索を許可します。

*** 一部省略されたコンテンツがあります。PC版でご覧ください。 ***

 さらに、slapd.confの「dc=my-domain,dc=com」データベースセクションには、「overlay syncprov」「syncprov-checkpoint」「syncprov-sessionlog」を追加し、syncprovモジュールを利用する旨と、「index」ディレクティブを追加しスレーブサーバからの検索に適したインデックスを追加します。

*** 一部省略されたコンテンツがあります。PC版でご覧ください。 ***

 slapd.confの編集後は、既存エントリのインデックスを再構築し、マスタサーバを再起動します。

*** 一部省略されたコンテンツがあります。PC版でご覧ください。 ***

       | 次のページへ

Copyright © ITmedia, Inc. All Rights Reserved.

ページトップに戻る