LifeKeeper クラスタで Samba の複数インスタンスを実行する場合は、追加の設定要件と制限があります。次の Samba 設定の場合、Samba の複数インスタンスが関係してきます。
- アクティブ/スタンバイ設定で複数の LifeKeeper Samba インスタンスが 1 つのサーバ上にある場合
- アクティブ/アクティブ設定で複数の LifeKeeper Samba インスタンスが 1 つ以上のサーバ上にある場合
この設定のどちらの場合でも、LifeKeeper で保護されていない Samba インスタンスを含めることができます。
「LifeKeeperでのSambaの設定 」で述べたように、Sambaの複数インスタンスを実行する ときには、各インスタンスの設定ファイル名が異なっているか、異なるディレクトリに 存在している必要があります。各設定ファイルにいくつか命令を記述する必要があり、 その値は異なっていなくてはいけません。具体的には、netbios name、lock directory、 pid directory、interfaces、およびlog fileです。これらの命令の値が一意でない場合、 Sambaが起動せず、したがってクライアントが接続できなくなります。また、各インス タンスで指定したlock、log file、pidの各directoryはクラスタ内の全サーバに存在してい る必要があります。
smbpasswd ユーティリティと Samba の複数インスタンス
LifeKeeper では必須ではありませんが、Samba Recovery Kit で使用する一部の Samba ユー ティリティには、smb.conf がデフォルトの場所にあることを前提としているものがあり ます。Samba Recovery Kit は smbclient ユーティリティと nmblookup ユーティリティを使 用してそれぞれ smbd と nmbd に接続し、LifeKeeper が保護しているデーモン・プロセスの状態を判断します。この 2 つのユーティリティは、デフォルトの場所に smb.conf が存 在しなくてもエラー終了することはありません。しかし、 smbpasswd ユーティリティの場合は、smb.conf がデフォルトの場所に存在する必要があります。
smbpasswd は、セキュリティ・レベルが share または user に設定されているときに、ク ライアント接続リクエストに対するユーザ認証を行う smbpasswd ファイルを管理するのに使用します。デフォルト設定ファイルが存在しない場合、Samba のパスワードの変更 はすべて失敗します。この問題を回避するには、セキュリティ・レベルが share または user に設定されている場合、または、Samba セキュリティ・レベルが server に設定され ているシステムに対する smbpasswd サーバとしてサーバが動作している場合には、 Samba インスタンスの 1 つはデフォルト設定ファイルを使用する必要があります。これ は、 smbpasswd がデフォルト設定ファイルを使用して smbpasswd ファイルの場所を取得 するためです。このため、LifeKeeper クラスタ内で smbpasswd ファイルが存在する場所は 1 か所だけに限られます。クラスタ内の Samba の全インスタンスの設定ファイルで、 smb passwd file 命令を同じ値に設定する必要があります。また、 smbpasswd ファイルはクラスタ内の全サーバで同期を保つ必要があります。
smbpasswd ユーティリティは、LifeKeeper Samba Recovery Kitでは必須のbind interfaces only命令の影響も受けます。bind interfaces only命令をYesに設定すると、Sambaパスワード を変更する通常ユーザはlocalhostアドレス 127.0.0.1 を使用して smbd デーモン・プロセスに接続しようとします。 smbd デーモンが使用する設定ファイルのinterfaces命令にそのア ドレスが追加されていて、 smbd がそのアドレスに接続してリッスン中の場合、パスワー ドの変更は成功します。デーモンの設定ファイルのinterfaces命令にそのアドレスが存在しない場合、パスワードの変更は失敗します。複数インスタンス環境でlocalhostが複数の設定ファイルで指定されている場合、起動して実行できるのは 1 つのインスタンスだ けです。 smbpasswd で「 -r netbios_name」オプションを使用すると、インタフェース・リストにlocalhostアドレスを追加しなくても済みます(たとえば、 smbpasswd -r server1 print1 …)。
注記:前述のように、保護されたSambaインスタンスが存在するLifeKeeperサーバ上で実行される保護されていないSambaインスタンスも、bind interfaces only命令をYesに設定する必要があります。
Samba およびユーザ認証の考慮事項
Samba は、ユーザ認証のために、クラスタ内の全 ての サーバ上で /etc/samba/smbpasswd または /etc/samba/secrets.tdb のようなデータファイルが一致しているのを保障するために、LifeKeeperwp 通じて Samba を保護する場合に考慮しなければならないセキュリティ・パラメータを通していくつかのメソッドをサポートします。(例えば、共有, ユーザ, ドメインなど…)。ユーザとしてセキュリティ・メソッドを使用する場合は、クラスタ内の全てのサーバで smbpasswd ファイルが一致していることを確認する必要があります。加えて、ドメインのようなセキュリティ・メソッドは secrets.tdb ファイルの一致が要求されます。 secrets.tdb ファイルの使用かつ LifeKeeper のアクティブ/アクティブ構成は、ファイルの配置場所を指定するために、プライベート dir パラメータの使用が必要となります。このパラメータの値はそれぞれの LifeKeeper Samba インスタンスにおいてユニークでなければなりません。
このトピックへフィードバック