LISMの設定
LISMの設定項目 †
LISMによって管理するシステムについての設定を行います。
- <data>
- システムのデータを定義します。
属性:
name: データ名
- <readonly>
- onを設定した場合、データに対して検索のみが許可されるようになります。offの場合は、データに対して検索、更新ともに許可されます。デフォルトは"off"です。
- <access>
- エントリに対するアクセス権限を設定します。<access>を設定する場合は、slapd.confに"disallow bind_anon"を設定してください。
属性:
dn: アクセス対象のエントリをDNの正規表現で指定
- <right>
- アクセス権限を設定します。
属性:
op: "read"は参照権限、"write"は更新権限
<type>
アクセスを許可するユーザを次の値で指定します。
*: 全ユーザ
self: アクセス対象のエントリ自身
<dn>
アクセスを許可するユーザをDNの正規表現で指定します。
<filter>
アクセスを許可するユーザをLDAPの検索フィルタで指定します。
- <container>
- システムデータを配下に格納するエントリ(以下、データコンテナ)の情報を定義します。
- <rdn>
- データコンテナのRDNを指定します。
- <oc>
- データコンテナに設定するLDAPのオブジェクトクラスを指定します。
- <attr>
- データコンテナに設定するLDAPのアトリビュートとその値を指定します。RDNのアトリビュートについては、記述する必要はありません。
属性:
name: アトリビュート名
- <storage>
- データを格納するストレージを定義します。
詳細はストレージの設定項目で解説しています。
属性:
name: ストレージ名
hash: 格納するパスワードのハッシュ形式
hashに設定する値は、”ハッシュ形式:出力形式”の形式となり、出力形式は省略可能です。
ハッシュ形式には、CRYPT、SHA、MD5が指定可能で、デフォルトはPLAINTEXT(平文)です。LDAPストレージに関しては、さらに
AD(Active
Directoryのパスワード形式)が、SQLストレージに関してはMYSQL(MySQLのPASSWORD()関数によるハッシュ)が指定可能で
す。
出力形式は、ハッシュしたパスワードの出力形式で、base64、hexが指定可能です。デフォルトはbase64です。base64はBase64でエンコードした形式、hexは16進形式で、ハッシュしたパスワードが出力されます。
- <handler>
- 更新要求を受け付けた際に実行するハンドラを指定します。
詳細はハンドラの設定項目で解説しています。
属性:
name: ハンドラ名
- <sync>
- データ同期の対象となるシステムデータと、LISMのマスタデータについて定義します。これら全てのシステムデータによってクラスタが構成されます。
データ同期には2種類の方法があります。
- 1. リアルタイムデータ同期
- マスタデータに対して追加、変更、削除等の更新要求を送信することで、更新内容が各システムにリアルタイムで伝搬されます。
- 2. 差分データ同期
- 各システムデータとマスタデータを比較し、データに差分がある場合はマスタデータや各システムデータに差分データを伝搬します。
システム間の差分データは、"cn=sync,<LISMのsuffix>"に対してベースオブジェクト検索を行うことで確認できます。
例:ldapsearch -x -H ldap://localhost:9001 -s base -b "cn=sync,dc=lism,dc=com"
エントリの"lismSyncStatus=nosync"の場合、システムデータ間に差分が有り、"lismSyncStatus=sync"の場合、
全システムデータ間で差分の無い同期状態であることを表します。また、"nosync"の場合、差分データのあるシステム名
が"lismSyncErrNode"属性の値として、同期状態にないエントリのDNとメッセージが"lismSyncErrMessage"属性の値と
して出力されます。
各システムデータとマスタデータの差分を反映し、全システムデータを同期状態にするには、"cn=sync"エントリの"lismSyncStatus"属性の値を"sync"に変更します。すると、次の処理が実行され、全システムデータが同期状態となります。
(1) マスタデータと<syncdn>、<syncop>を設定したシステムデータとの差分データを各システムデータに反映します。
(2) <masterdn>、<masterop>を設定したシステムデータとマスタデータとの差分データをマスタデータに反映し、さらにその更新内容を他のシステムデータに伝播します。
また、同様の操作を、"cn=cluster-sync,<LISMのsuffix>"に対して行った場合は(1)の処理のみ
が、"cn=master-sync,<LISMのsuffix>"に対して行った場合は、(2)の処理のみが実行されます。
- <master>
- マスタデータについて定義します。マスタデータは、<data>タグで指定したシステムデータが、<containerdn>タグで指定したエントリ配下に仮想的に表示されます。
- <data>
- マスタデータとするシステムデータ名(システムデータ定義用<data>タグで指定したもの)を指定します。
- <backup>
- マスタデータのバックアップとなるシステムデータ名(システムデータ定義用<data>タグで指定したもの)を指定します。マスタデータのシステムが停止した場合、バックアップのシステムデータがマスタデータに切り替わります。
- <containerdn>
- マスタデータを配下に表示するエントリのRDNを指定します。
- <data>
- データ同期の対象とするシステムデータ名を指定します。
システムデータ名にはシステムデータ定義用<data>タグで指定したもの。
- <syncop>
- マスタデータからシステムデータに対して、データ同期を行うオペレーションを指定します。指定可能な値を次のものです。
add: addオペレーションについてデータ同期を行います。
modify: modifyオペレーションについてデータ同期を行います。
delete: deleteオペレーションについてデータ同期を行います。
- <masterop>
- システムデータからマスタデータに対して、データ同期を行うオペレーションを指定します。指定可能な値を次のものです。
add: addオペレーションについてデータ同期を行います。
modify: modifyオペレーションについてデータ同期を行います。
delete: deleteオペレーションについてデータ同期を行います。
- <object>
- データ同期の対象となるオブジェクトを指定します。
属性:
name: オブジェクト名
order: データ同期を行う順番(数字の小さい順に同期が行われます。デフォルトは100です。)
<syncdn>
マスタデータ内で、ここに指定したDN配下のエントリが、各システムに対するデータ同期の対象になります。"*"を指定した場合は、マスタデータの全エントリがデータ同期の対象となります。
<syncfilter>
マスタデータからシステムデータに対してデータ同期を行なうエントリをLDAPの検索フィルタで指定します。検索フィルタに合致しないエントリは同期されません。
<syncflag>
マスタデータからシステムデータに対してデータ同期を行うかどうかのフラグ情報をLISM内のエントリから取得します。
属性:
match: このフラグ情報が影響するエントリのDNを正規表現で指定します。パターングループに合致した値は次のdn属性で使用することができます。
dn: フラグ情報を持つエントリを検索する際のベースDNを指定します。DNには、match属性のパターングループを使用することができます。
filter: フラグ情報エントリにおいてデータ同期を行う場合の条件をLDAPフィルタの形式で記述します。
<synctype>
マスタデータからシステムデータに対してデータ同期を行う方式を指定します。"realtime"はリアルタイムデータ同期、"differential"は差分データ同期、何も指定しない場合は両方式の同期を行います。
<syncattr>
マスタデータからシステムデータに対してデータ同期を行う属性を指定します。ここで指定されていない属性についてはデータ同期を行いません。RDNの属性
については自動的にデータ同期されるので、記述する必要はありません。また、正規表現により同期する属性の値まで指定することができます。
<name>:属性名
<rule>:同期する値を指定する正規表現
<filter>:指定した検索フィルタに合致したエントリのみ値を同期
<op>:指定した更新要求の場合のみ同期を実行(add|modify|delete)
<option>:属性の同期オプションとして、以下の値を指定することができます。
updatenull: 値が空の場合、同期を行わない
noreplace: 値がDN形式の場合、DNのサフィックス部分の変換を行わない
<type>:データ同期方式がリアルタイムデータ同期の場合"realtime"、差分データ同期の場合"differential"を指定(両方式の場合は設定しない)
<masterdn>
システムデータ内で、ここに指定したDN配下のエントリがマスタデータに対するデータ同期の対象になります。"*"を指定した場合は、システムデータ内の全エントリがデータ同期の対象となります。
<masterfilter>
システムデータからマスタデータに対してデータ同期を行なうエントリをLDAPの検索フィルタで指定します。検索フィルタに合致しないエントリは同期されません。
<masterattr>
システムデータからマスタデータに対してデータ同期を行う属性を指定します。ここで指定されていない属性についてはデータ同期を行いません。RDNの属性
については自動的にデータ同期されるので、記述する必要はありません。また、正規表現により同期する属性の値まで指定することができます。
<name>:属性名
<rule>:同期する値を指定する正規表現
<filter>:指定した検索フィルタに合致したエントリのみ値を同期
<op>:指定した更新要求の場合のみ同期を実行(add|modify|delete)
<option>:属性の同期オプションとして、以下の値を指定することができます。
updatenull: 値が空の場合、同期を行わない
noreplace: 値がDN形式の場合、DNのサフィックス部分の変換を行わない
- <transaction>
- onを設定した場合、データ同期処理を、システムデータに対する更新が全て成功すればcommit、一部失敗すればrollbackします。
offを設定した場合、各システムデータに対する更新失敗の有無に関わらず、データの同期処理を実行します。デフォルトでは"off"になっています。