この手順では、scrgadm(1M) コマンドを使って Sun Cluster HA for NFS データサービスの登録と構成を行う方法を説明します。
このデータサービスの登録と構成は、他のいくつかの方法でも行うことができます。これらの方法については、「データサービスリソースを管理するためのツール」を参照してください。
Sun Cluster HA for NFS データサービスを設定して構成する前に、次のコマンドを使用し、Sun Cluster HA for NFS パッケージの SUNWscnfs がクラスタにインストールされていることを確認してください。
# pkginfo -l SUNWscnfs |
パッケージがインストールされていない場合は、「Sun Cluster HA for NFS パッケージのインストール」を参照してください。
クラスタメンバーでスーパーユーザーになります。
クラスタ内のすべてのノードが起動されて稼動していることを確認します。
# scstat |
NFS リソースを含むフェイルオーバーリソースグループを作成します。
この際に、Sun Cluster HA for NFS リソースグループの Pathprefix を定義する必要があります。Pathprefix は、Sun Cluster HA for NFS データサービスが管理や状態の情報を維持するディレクトリです。これには任意のディレクトリを指定できますが、クラスタファイルシステムにディレクトリを作成する必要があります。
# scrgadm -a -g resource-group -y Pathprefix=/global/admin-dir |
admin-dir ディレクトリは、クラスタファイルシステム上になければなりません。これはユーザーが作成する必要があります。
指定したフェイルオーバーリソースグループを追加します。
Sun Cluster HA for NFS の管理ファイルが使用する、クラスタファイルシステム上のディレクトリを指定します (例: /global/nfs)。Pathprefix は、作成した各リソースグループで一意にする必要があります。
使用するすべての論理ホスト名がネームサービスデータベースに登録されていることを確認します。
Sun Cluster のインストール時に、この確認を行います。詳細は、『Sun Cluster 3.0 U1 ソフトウェアのインストール』の計画に関する章を参照してください。
ネームサービスの検索が原因で障害が発生するのを防ぐために、サーバーおよびクライアントの /etc/hosts ファイルに、すべての論理ホスト名が登録されていることを確認してください。サーバーの /etc/nsswitch.conf のネームサービスマッピングは、NIS または NIS+ にアクセスする前に、最初にローカルファイルを検査するように構成してください。このように構成することで、タイミングに関連するエラーを防止でき、ifconfig および statd が正しく論理ホスト名を解決できます。
希望する論理ホスト名リソースをフェイルオーバーリソースグループに追加します。
この手順で、LogicalHostname リソースを設定する必要があります。Sun Cluster HA for NFS でデータサービス使用されるホスト名が、SharedAddress リソースになることはありません。
# scrgadm -a -L -g resource-group -l logical-hostname, ... [-n netiflist] |
論理ホスト名リソースを配置するフェイルオーバーリソースグループを指定します。
追加するネットワークリソース (論理ホスト名) を指定します。
各ノード上の NAFO グループをコンマで区切って指定します (オプション)。netiflist は、リソースグループの nodelist にあるすべてのノードを包含していなければなりません。このオプションを指定しないと、scrgadm(1M) が、netiflist のノードごとに、hostname リストに指定されているサブネットからネットアダプタの発見を試みます。
クラスタの任意のノードから、NFS 構成ファイル用のディレクトリ構造を作成します。
手順 3 で Pathprefix プロパティで指定したディレクトリの下に、管理サブディレクトリを作成してください (例: /global/nfs/SUNW.nfs)。
# mkdir Pathprefix/SUNW.nfs |
手順 6 で作成した SUNW.nfs ディレクトリに dfstab.resource ファイルを作成し、共有オプションを設定します。
たとえば、一連の共有パス名と共有コマンドが含まれる Pathprefix/SUNW.nfs/dfstab.resource を作成します。共有パスは、クラスタファイルシステム上のサブディレクトリになります。
作成する予定の NFS リソース (手順 9) を指定する resource-name 接尾辞を選択します。リソース名は、そのリソースが実行するタスクを表す名前にします。たとえば、ユーザーのホームディレクトリを共有する NFS には、user-nfs-home という名前にします。
共有されるように作成した各パスに対し、共有オプションを設定します。このファイルで使用する書式は、/etc/dfs/dfstab ファイルで使用される書式と同じです。
share [-F nfs] [-o] specific_options [-d "description"] pathname |
ファイルシステムタイプを nfs に指定します。
オプションについては、share(1M) のマニュアルページを参照してください。Sun Cluster には、rw オプションを推奨します。このコマンドは、読み取りと書き込みアクセス権をすべてのクライアントに付与します。
追加するファイルシステムについての説明です。
共有するファイルシステムを指定します。
Tshare -o rw コマンドは、Sun Cluster ソフトウェアが使用するホスト名を含む、すべてのクライアントに書き込みアクセスを付与し、Sun Cluster HA for NFS 障害モニターが最も効果的に動作するようにします。詳細は、各マニュアルページを参照してください。
dfstab(4)
share(1M)
share_nfs(1M)
share コマンドでクライアントリストを指定する場合は、クラスタが接続するすべてのパブリックネットワーク上のすべてのクライアント用のホスト名のほかに、そのクラスタと関連付けられるすべての物理ホスト名と論理ホスト名を含めてください。
share コマンドで、個々のホスト名を使用する代わりにネットグループを使用する場合は、これらすべてのクラスタホスト名を適切なネットグループに追加してください。
クラスタインターコネクト上のホスト名にアクセス権を付与しないでください。
Sun Cluster HA for NFS による監視が十分に機能できるように、読み取りと書き込みの両方のアクセス権をすべてのクラスタノードに付与してください。ただし、ファイルシステムへの書き込みを制限したり、ファイルシステム全体を読み取り専用にすることはできます。この場合、Sun Cluster HA for NFS 障害モニターは、書き込みアクセス権なしで監視を実行できます。
共有オプションを構成するときは、root オプションの使用と、ro と rw オプションを組み合わせて使用することは避けてください。
NFS リソースタイプを登録します。
# scrgadm -a -t resource-type |
指定したリソースタイプを追加します。Sun Cluster HA for NFS データサービスの場合、リソースタイプは SUNW.nfs です。
NFS リソースをフェイルオーバーリソースグループに作成します。
# scrgadm -a -j resource -g resource-group -t resource-type |
リソースを追加します。
手順 7 で定義した、追加するリソースの名前を指定します。任意の名前を指定できますが、クラスタ内で一意にする必要があります。
このリソースが追加される、作成済みのリソースグループの名前を指定します。
このリソースが属するリソースタイプの名前を指定します。この名前は、登録されているリソースタイプの名前にする必要があります。
scswitch(1M) コマンドを実行して次の作業を行います。
リソースとリソースモニターを有効にする。
リソースグループを管理状態にする。
リソースグループをオンライン状態に切り替える。
# scswitch -Z -g resource-group |
次に、Sun Cluster HA for NFS データサービスを設定して構成する例を示します。
(論理ホストリソースグループを作成し、NFS (Pathprefix) が使用する管理ファイルへのパスを指定する) # scrgadm -a -g resource-group-1 -y Pathprefix=/global/nfs (論理ホスト名リソースを論理ホストリソースグループに追加する) # scrgadm -a -L -g resource-group-1 -l schost-1 (Sun Cluster HA for NFS 構成ファイルを含むディレクトリ構造を作成する) # mkdir -p /global/nfs/SUNW.nfs (dfstab.resource ファイルを nfs/SUNW.nfs ディレクトリの下に作成し、共有オプションを設定する) (NFS リソースタイプを登録する) # scrgadm -a -t SUNW.nfs (NFS リソースをリソースグループに作成する) # scrgadm -a -j r-nfs -g resource-group-1 -t SUNW.nfs (リソースとそのモニターを有効にし、リソースグループを管理し、リソースグループをオンライン状態に切り替える) # scswitch -Z -g resource-group-1 |
NFS ファイルシステムの共有オプションを設定するには、「NFS ファイルシステムの共有オプションを変更する」を参照してください。拡張プロパティを表示または設定するには、「Sun Cluster HA for NFS 拡張プロパティの構成」を参照してください。
share -o コマンドで rw、rw=、ro、ro= オプションを使用する場合は、すべての物理ホストまたはすべての Sun Cluster サーバーと関連付けられる netgroups にアクセス権を付与してください。NFS 障害モニターが効果的に動作します。
share(1M) コマンドで、netgroups を使用する場合は、Sun Cluster のすべてのホスト名を適切な netgroup に追加してください。理想的には、読み取りと書き込みの両方のアクセス権をすべての Sun Cluster ホスト名に付与し、NFS 障害検証機能が正常に動作するようにします。.
共有オプションを変更する前に、share_nfs(1M) のマニュアルページを参照し、有効なオプションの組み合わせを理解してください。
クラスタノードのスーパーユーザーになります。
NFS リソースの障害モニターを無効にします。
# scswitch -n -M -j resource |
リソースモニターを無効にします。
新しく設定した share コマンドを実行します。
新しい共有オプションで dfstab.resource ファイルを編集する前に、新しい share コマンドでオプションの組み合わせが有効であることを確認してください。
# share -F nfs [-o] specific_options [-d "description"] pathname |
ファイルシステムタイプを NFS に指定します。
オプションを指定します。読み取りと書き込みの両方のアクセス権をすべてのクライアントに付与する rw の使用を推奨します。
追加するファイルシステムについての説明です。
共有するファイルシステムを指定します。
新しい share コマンドの実行に失敗した場合は、直ちに以前のオプションを使用してもう一度 share コマンドを実行してください。新しい share コマンドが正しく実行された場合は、手順 4へ進んでください。
新しい共有オプションを使用し、dfstab.resource ファイルを編集します。
このファイルで使用する書式は、/etc/dfs/dfstab ファイルで使用する書式と同じです。各行は、share コマンドから成ります。
(省略可能) dfstab.resource ファイルからパスを削除する場合は、unshare(1M) コマンドを実行してから、そのパスの share コマンドを dfstab.resource ファイルから削除します。
# unshare [-F nfs] [-o rw] pathname # vi dfstab.resource |
ファイルシステムタイプを NFS に指定します。
NFS ファイルシステム固有のオプションを指定します。
無効にするファイルシステムを指定します。
(省略可能) dfstab.resource ファイルにパスを追加する場合、またはこのファイルの既存のパスを変更する場合は、マウントポイントが正しいことを確認してから、手順 3 と手順 4 へ進んでください。
NFS リソースで障害モニターを有効にします。
# scswitch -e -M -j resource |
Sun Cluster HA NFS メソッドが終了するために要する時間は、dfstab.resource ファイルに含まれる、リソースによって共有されるパスの数に依存します。これらのメソッドのデフォルトのタイムアウト値は、300 秒です。単純に、各共有パスのメソッドタイムアウト値に 10 秒を割り当てます。デフォルトのタイムアウトは、30 の共有パスを処理するように設計されているため、共有パスの数が 30 未満の場合には、タイムアウト値を短かくしないでください。
ただし、共有パスの数が 30 を超える場合は、共有パスの数に 10 を掛けて、推奨するタイムアウト値を計算してください。たとえば、 dfstab.resource ファイルに共有パスが 50 含まれている場合は、推奨するタイムアウト値は 500 秒です。
Prenet_start_timeout | Postnet_stop_timeout | Monitor_Start_timeout |
Start_timeout | Validate_timeout | Monitor_Stop_timeout |
Stop_timeout | Update_timeout | Monitor_Check_timeout |
メソッドタイムアウトを変更するには、次のように、scrgadm に -c オプションを使用します。
% scrgadm -c -j resource -y Prenet_start_timeout=500 |
SUNW.HAStorage リソースタイプは、データサービスHA 記憶装置とデータサービス間の動作を同期させます。Sun Cluster HA for NFS データサービスはディスクに負荷がかかることが多いので、SUNW.HAStorage リソースタイプを設定することを強く推奨します。
このリソースタイプの詳細については、SUNW.HAStorage(5) のマニュアルページおよび「リソースグループとディスクデバイスグループの関連性」を参照してください。設定手順については、「新しいリソース用に SUNW.HAStorage リソースタイプを設定する」を参照してください。