ここでは、“userApplication Configuration Wizard”画面を使用して、RMSにリソース(Resource)を登録する方法について説明します。
リソースのタイプ | 概要 |
---|---|
Cmdline リソース | ユーザが独自に作成したスクリプトファイルやコマンドをリソースとして設定する場合に使用します。 このリソースは、ISVアプリケーションや利用者アプリケーションをuserApplicationの状態に連動して起動/停止したり、逆にアプリケーションの停止に連動してuserApplicationを状態遷移するために必要です。 |
Fsystem リソース | ファイルシステムをuserApplicationの起動に合わせてマウントする場合に使用します。 |
Gds リソース | GDS (Global Disk Services)で定義するディスククラスをリソースとして登録する場合に使用します。 シングルノードクラスタ運用の場合、GDSのボリュームはローカルクラスで作成し、Gdsリソースは作成しないでください。 |
Gls リソース | GLS (Global Link Services)の伝送路二重化機能で定義する引継ぎIPアドレスをリソースとして登録する場合に使用します。 |
引継ぎネットワーク リソース | 引継ぎネットワークをリソースとして登録する場合に使用します。 引継ぎを行うアドレスの種類には、以下のものがあります。
|
プロシジャ リソース | 状態遷移プロシジャをリソースとして登録する場合に使用します。 |
プロセス監視リソース | プロセス監視機能の監視対象とするユーザ独自のプログラムをリソースとして登録する場合に使用します。 |
回線切替リソース | 回線切替装置をリソースとして登録する場合に使用します。 |
ISVリソース | ISV(Independent Software Vendor)アプリケーションをリソースとして登録する場合に使用します。 |
参照
各リソースの監視方法については、“PRIMECLUSTER 活用ガイド<トラブルシューティング編>”の“10.1 リソースの監視”を参照してください。
注意
CUI(hvw)で上記以外のリソースを使用して作成した構成は、表示や操作をすることができません。
注意
リソースの名前について
リソース作成時、リソースタイプを選択してリソースの名前を入力します。リソースの名前は、英大文字で始まり、英数字、“_”(アンダーライン)だけからなる18文字以内の文字列にしてください。また、この名前には、Configuration名と同じ名前(“config”)またはリソースのタイプと同じ名前(“Cmdline”、“Fsystem”など)を使用しないでください。
例) Cmdline0
リソースの作成の流れを以下に示します。
図6.5 リソース作成の流れ
注意
同一種別のリソース間の関連付け(優先度設定)を行う場合は、優先度の高いリソースから作成してください。
Cmdlineを作成する方法について説明します。
Cmdline リソース設定時の注意点については、“6.12 Cmdline リソース設定時の注意点”を参照してください。
図6.6 Cmdlineリソース作成の流れ
■リソースの作成を起動する
“userApplication Configuration Wizard”のトップメニューで、<Resourceの作成>を選択します。
図6.7 userApplication Configuration Wizardトップメニュー
<次へ>をクリックし、“Resourceの作成”画面へ進みます。
■Resourceタイプを選択する
図6.8 Resourceの作成
作成するリソースの種類を以下から選択します。
Cmdline (Cmdline リソース)
Fsystem (Fsystem リソース)
Gds (Gds リソース)
Gls (Gls リソース)
Ipaddress (引継ぎネットワーク リソース)
Procedure (プロシジャ リソース)
Process (プロセス監視リソース)
SH_SWLine (回線切替リソース)
Oracle, Nwcl, Nwsv, Nwst (ISVリソース)
作成するリソースの名前を指定します。入力文字列には、英大文字で始まり、英数字、“_”(アンダーライン)だけからなる文字列を18文字以内で指定してください。また、この名前には、Configuration名と同じ名前(“config”)を使用しないでください。
設定終了後<次へ>をクリックし、“SysNodeの選択”画面へ進みます。
■SysNodeを選択する
リソースを設定するSysNodeを選択します。SysNodeとは、RMSで使用するCIPに対応するノードのことです。
図6.9 SysNodeの選択
クラスタを構成するSysNodeのうち、Web-Based Admin Viewを使用してアクセスが可能なSysNode名が表示されます。
リソースを設定するSysNode名が表示されます。この情報は、各リソースで使用するインタフェースなどのフィルタリング情報として使用されます。
[利用可能なSysNode]からリソースを設定するSysNodeを選択し、<追加>をクリックします。すべてを追加したい場合は、<全て追加>をクリックしてください。
リソースを設定するSysNodeを削除する場合には、[選択されたSysNode]から削除するSysNodeを選択し、<削除>をクリックします。すべて削除する場合には、<全て削除>をクリックしてください。
設定終了後<次へ>をクリックし、各リソースの設定へ進みます。
■Cmdline作成方法を選択する
Cmdlineリソースは、汎用的なリソースです。監視対象となる利用者アプリケーション(プログラム)を起動/停止/監視するために3つのスクリプトを定義することで、目的に応じたリソースを作成できます。
それぞれのスクリプトは、RMSにおける以下の処理に対応しています。
ここでは、スクリプトファイルやコマンドをリソースとして設定する方法を選択します。
図6.10 Cmdlineの作成
作成方法を以下から選択します。
新規作成
スクリプトファイルを新規作成する場合に選択します。
パス入力
すでに存在するスクリプトやコマンドを指定する場合に選択します。
設定後、<次へ>をクリックします。選択した項目によってそれぞれ以下へ進みます。
「新規作成」:◆スクリプトファイルの新規作成
「パス入力」:◆パス入力による作成
注意
スクリプトを作成する際には、スクリプトの終了値/タイムアウト値/環境変数について注意して作成してください。詳細については、“6.6 Online/Offlineスクリプトの設定”の“■スクリプト作成時の注意事項”を参照してください。
また、スクリプトのサンプルは、“6.6 Online/Offlineスクリプトの設定”の“■サンプルスクリプト”を参照してください。
Cmdline作成方法で新規作成を選択すると、スクリプトの作成画面が表示されます。
スクリプトを編集エリアに直接入力することができます。
図6.11 Startスクリプトの作成
保存するファイル名を設定します。
注意
格納ファイルパスには以下の文字を入力できません。
= \ ~ % @ &
これらの文字を使用する必要がある場合は、使用可能な名前や引数を指定するスクリプトを作成し、その中から実際にリソースの起動、停止、監視を行うスクリプトを実行するようにしてください。
Cmdline作成途中に画面を終了/中断した場合でも、スクリプトファイルは保存されているため、Cmdlineリソースの再作成時にスクリプトを再利用できます。
スクリプトの種類によって、以下のディレクトリ内に保存されます。
Startスクリプト
/opt/FJSVwvucw/scripts/start
Stopスクリプト
/opt/FJSVwvucw/scripts/stop
Checkスクリプト
/opt/FJSVwvucw/scripts/check
注意
引数を指定する場合は、“空白”で区切ります。本画面で作成することができるスクリプトは、デフォルトでBourneシェルであるため、編集エリアの先頭には以下の文字列が表示されます。
#!/bin/sh
スクリプトを編集するときの簡易メニューが表示されます。以下に編集操作を示します。
項目 | 操作 |
---|---|
カーソルの移動 | マウスポインタを置き、マウスポインタをシングルクリック、またはキーボードの矢印キーを上下左右に操作することでカーソルを任意の場所に移動できます。 |
テキストの挿入 | カーソルの位置に文字を入力することがきます。 |
テキストの削除 |
|
テキストの切取り | 編集エリア内の1文字以上の文字列を選択し、[編集]-[切り取り]を選択します。 |
テキストのコピー | 編集エリア内の1文字以上の文字列を選択し、[編集]-[コピー]を選択します。 |
テキストの貼付け | 編集エリア内であらかじめ切取り、またはコピー、をしておいた文字列を貼り付ける位置にカーソルを位置付け、[編集]-[ペースト]を選択します。 |
注意
Cmdlineの作成途中で処理を中止、または、Cmdlineリソースを削除、または、GUIパッケージ(FJSVwvucw)を削除しても、このスクリプトファイルは削除されません。それらを削除したい場合は、/opt/FJSVwvucw/scripts/startディレクトリを削除してください。たとえば、rm(1)コマンドを使用して、以下のようにして削除します。
1つのスクリプトファイルを削除する場合
# rm /opt/FJSVwvucw/scripts/start/XXXXXXXX
ディレクトリを削除する場合は、/opt/FJSVwvucw/scripts/start 、または/opt/FJSVwvucwを指定してください。
なお、Stopスクリプト、Checkスクリプトを削除する場合は、上記のディレクトリの“start”の部分を、それぞれ“stop”と“check”に置き換えてください。
設定終了後<次へ>をクリックし、“Stopスクリプトの作成”へ進みます。
Startスクリプトと同様の手順で、Stopスクリプトを作成します。
図6.12 Stopスクリプトの作成
設定終了後<次へ>をクリックし、“Checkスクリプトの作成”へ進みます。
注意
Stopスクリプトは省略可能です。設定を省略する場合は、何も設定せず、<次へ>をクリックしてください。Stopスクリプトを省略した場合、Flags の設定に関わらず LIEOFFLINE属性が有効となりCLUSTEREXCLUSIVE属性が無効となった状態で Cmdline リソースの起動と監視が行われます。
格納ファイルパスには以下の文字を入力できません。
= \ ~ % @ &
これらの文字を使用する必要がある場合は、使用可能な名前や引数を指定するスクリプトを作成し、その中から実際にリソースの起動、停止、監視を行うスクリプトを実行するようにしてください。
Startスクリプトと同様の手順で、Checkスクリプトを作成します。
図6.13 Checkスクリプトの作成
必要に応じてスクリプトの属性を設定します。
作成したスクリプトの属性を設定するダイアログを表示します。後述の“●CmdlineのFlag設定方法”を参照してください。
注意
“CmdlineのFlag設定”画面で“NULLDETECTOR”を“Yes”にした場合は、Checkスクリプトを設定する必要はありません。この場合は、RMSからCheckスクリプトが起動されないため、Checkスクリプトをリソースの情報として設定しません。
格納ファイルパスには以下の文字を入力できません。
= \ ~ % @ &
これらの文字を使用する必要がある場合は、使用可能な名前や引数を指定するスクリプトを作成し、その中から実際にリソースの起動、停止、監視を行うスクリプトを実行するようにしてください。
◆パス入力による作成
すでにスクリプトが存在する場合は、パスを入力して設定することができます。
注意
格納ファイルパスには以下の文字を入力できません。
= \ ~ % @ &
これらの文字を使用する必要がある場合は、使用可能な名前や引数を指定するスクリプトを作成し、その中から実際にリソースの起動、停止、監視を行うスクリプトを実行するようにしてください。
図6.14 Cmdlineの設定
Startスクリプトのパスを入力します。引数を指定する場合は、“空白”で区切ります。
Startスクリプトは、必ず必要なスクリプトです。スクリプトは、フルパスで入力する必要があります。
Stopスクリプトのパスを入力します。引数を指定する場合は、“空白”で区切ります。
Stopスクリプトは、必須の情報ではありません。スクリプトは、フルパスで入力する必要があります。
注意
Stopスクリプトを省略した場合、Flags の設定に関わらず LIEOFFLINE属性が有効となりCLUSTEREXCLUSIVE属性が無効となった状態で Cmdline リソースの起動と監視が行われます。
Checkスクリプトのパスを入力します。引数を指定する場合は、“空白”で区切ります。スクリプトは、フルパスで入力する必要があります。
Checkスクリプトは、必ず必要なスクリプトですが、“CmdlineのFlag設定”画面でNULLDETECTORを“Yes”にした場合は、設定する必要はありません。設定を行っても、RMSからCheckスクリプトが起動されないため、リソースの登録時にその情報を削除します。
スクリプトの属性を設定します。後述の“●CmdlineのFlag設定方法”を参照してください。
Cmdlineリソースに定義したスクリプトの制御方法はFlagの値を変更することで調整することができます。
デフォルト値はCmdlineリソースにおけるものです。その他のリソースのデフォルト値については、各リソース毎に異なります。
Cmdline リソースに設定できる属性は、以下を参照してください。
設定終了後<確認>をクリックし、“Cmdlineの設定”画面へ戻ります。
Flag | 概要 |
---|---|
NULLDETECTOR | “Yes”に設定すると、Check スクリプトが無効になります。リソースの状態は userApplication の Online/Offline 処理に連動して実行される Cmdlineリソースの Online/Offline スクリプトの結果によってのみ判断され、リソースの状態監視は行われません。 また、他のFlagの値はすべて“No”に設定されます。 Check スクリプトの設定とデフォルト値の関係を以下に示します。 Check スクリプト設定あり Check スクリプト設定なし |
ALLEXITCODES | “No”に設定すると、Checkスクリプトの終了コードは以下のように解釈されます。 0 : Online “Yes”に設定すると、Checkスクリプトの終了コードの値により、以下のように解釈されます。 0 : online デフォルト値は“No”です。 ※ 3, 5, 6 および上記以外の値は、特殊な状態を示すものであり、スクリプト内の復帰値として使用しないでください。 PRIMECLUSTER 対応製品の指示がある場合に限り使用してください。 |
LIEOFFLINE | “Yes”に設定、かつ、Stop スクリプトが指定されていない場合、リソースの Offline 処理は成功したものとして処理されます。ただし、リソースの状態は、現在の状態が表示されます。 |
CLUSTEREXCLUSIVE | “Yes”に設定した場合には、クラスタ内で 1 度に 1つのノード上だけでリソースが Online でなければなりません。Check スクリプトの問題などにより 2つ以上のノードで同時に Online 状態であることを検出すると、このリソースが属する userApplication の状態は Inconsistent となります。 |
AUTORECOVER | “Yes”に設定すると、リソースが故障した場合、userApplication をフェイルオーバさせる前に同じノード上で再起動を試みます。 |
MONITORONLY | リソースが Faulted となった場合に userApplication を Faulted にするかどうかを制御します。“Yes”に設定すると、リソースが Faulted になった場合でも、それをトリガに userApplication は Faulted にはなりません。 |
STANDBYCAPABLE | “Yes”に設定すると、RMSはこのリソースのためにStandbyCapable属性を“1”に設定します。 |
REALTIME | “No”に設定すると、CheckスクリプトがTSクラスで開始されます。 |
TIMEOUT | プログラムの開始と停止のためのタイムアウト時間(秒)を設定します。 |
■Cmdlineの登録情報を確認する
今までに設定されたスクリプトの一覧を確認することができます。また、[Attributes]タブを選択して、画面を切替えることで、リソースの属性を設定することもできます。
リソースの属性については“6.7.5 属性の説明”を参照してください。
図6.15 登録情報の確認
「Flag」カラム内で表示される属性は、各Resourceの属性のうち、値の設定されているもののみ表示されます。たとえば、「Yes or No」を設定するような、AUTORECOVER属性に、“No”を設定した場合、AUTORECOVERは属性を設定していないことになり、「Flag」カラム内に表示されません。
作成したCmdline リソース配下に、作成済の他のCmdline リソースやプロセス監視リソースの関連付けを行います。後述の“◆Resourceの関連付け”を参照してください。
登録情報の内容確認後、<登録>をクリックします。
同一のResource タイプ内で、起動優先度をつけたい場合に使用します。
起動優先度をつけることで、リソースをOnlineまたはOfflineにする順序を明確にすることができます。
Online処理の場合は、起動優先度の高いリソースがOnlineになった後で、起動優先度の低いリソースがOnlineになります。
逆にOffline処理の場合は、起動優先度の低いリソースがOfflineになった後で、起動優先度の高いリソースがOfflineになります。
また、起動優先度をつけない場合や同じ優先度の場合の順序は不定です。
図6.16 Resourceの関連付け
同一Resourceタイプの関連付けを行うリソース。
ただし、以下の条件を満たす場合のみです。
呼び出されたResourceと同一のResourceタイプである。
他のクラスタアプリケーションで使用されていないResourceである。
注意:Cmdlineおよびプロセス監視リソースは、同一タイプとして判断されます。
現在作成中のResourceの配下に設定するResource。
[利用可能なResource]からリソース配下に設定するリソースを選択し、<追加>をクリックします。また、すべてを追加したい場合は、<全て追加>をクリックしてください。リソース配下に設定するリソースを削除する場合には、[選択されたResource]から削除するリソースを選択し、<削除>をクリックします。すべて削除する場合には、<全て削除>をクリックしてください。
設定終了後、<確認>をクリックし、“登録情報の確認”画面へ戻ります。
例
以下の構成は、同一種別のリソースに起動優先度を設定した場合の構成です。
この構成を構築する場合は、以下の手順でリソースを構築します。
Cmdline3を作成する。
Cmdline2を作成し、Cmdline3をsubApplicationとして設定する。
Cmdline1を作成し、Cmdline2をsubApplicationとして設定する。
userApplicationを作成し、Cmdline1をsubApplicationとして設定する。
以下の構成を構築する際の手順を以下に示します。
Cmdline3を作成する。
Cmdline2を作成する。
Cmdline1を作成し、Cmdline2 とCmdline3をsubApplicationとして設定する。
userApplicationを作成し、Cmdline1をsubApplicationとして設定する。
以下は、各リソース作成時にsubApplicationとして他のリソースを設定しなかった場合の構成です。
ファイルシステムをuserApplicationの起動に合わせてマウントする場合に設定します。
親子関係にある複数のマウントポイントを制御させたい場合は、1つのFsystemリソースとして作成します。
Fsystemリソース設定時の注意点については、“6.13 Fsystem リソース設定時の注意点”を参照してください。
Fsystemリソース作成前には、必ず事前設定を行う必要があります。
UFSなどのローカルファイルシステムをマウントします。
NFSファイルシステムとしてネットワークで共有できます。共有しないこともできます。
ネットワークで共有する場合は、NFS Lock Failover (NFSによるロック機構がフェイルオーバ時に引き継がれる機能)が有効になります。
■ファイルロック使用上の注意
NFS サーバ機能を使用する場合、NFS ロック情報も引継がれるように設定してください。
NFS ロック情報の引継ぎができない場合、同じファイルに対して複数のロック情報が獲得できてしまうため、fcntl(2) や lockf(3C) を使用するアプリケーションが排他制御を行うことができなくなり、ファイル破壊を引き起こす要因となります。
ただし、本機能を使用するにあたり、以下の注意が必要となります。アプリケーションがロックを使用するかどうか不明な場合にも次の注意にしたがってください。
NFS サーバの運用を行うノードでは、NFS クライアント機能を使用しないでください。具体的には、NFS マウントを行わないでください。
NFS サーバの運用を行うノードで NFS 共有するファイルシステムは NFS クライアントからのみ利用できるようにしてください。NFS サーバを運用するノード上のアプリケーションから直接ファイルを利用しないでください。
切替え時には以下の処理が行われます。
nfsd(1M)、statd(1M)、lockd(1M) デーモンの再起動
NFS ロックリカバリ処理
nfsd、statd、lockd の起動が完了した時点でリソースの状態は Online になりますが、NFS ロックリカバリ処理が完了するまでクライアントからのアクセスは保留されます。
NFS 共有するマウントポイントを使用する場合、userApplication 1 つにつき、NFS 共有するマウントポイントを含む Fsystem リソースを 1 つだけ設定してください。また NFS Lock Failover を設定したマウントポイントを 1 つ、その Fsystem リソースに含めてください。
userApplication0 Fsystem0 mountpoint0 (NFS share, NFS Lock Failover) mountpoint1 (NFS share) mountpoint2 (NFS share) mountpoint3 (NFS share)
注意
以下のような構成にはできません。
1つのuserApplication にNFS lock Failover の設定を含むFsystemリソースを複数設定する
userApplication0 Fsystem0 mountpoint0 (NFS share, NFS Lock Failover) mountpoint1 (NFS share) Fsystem1 mountpoint2 (NFS share, NFS Lock Failover) mountpoint3 (NFS share)
1つのuserApplicationにNFS shareの設定を含むFsystemリソースを複数設定する
userApplication0 Fsystem0 mountpoint0 (NFS share, NFS Lock Failover) mountpoint1 (NFS share) Fsystem1 mountpoint2 (NFS share) mountpoint3 (NFS share)
また、以下のような構成の場合は、userApplication0 で切り替えが発生した場合に、userApplication1 が制御している NFS ファイルシステムに対して、NFS クライアントから一時的に NFS Lock が取得できないといった影響を与える可能性がある点に注意してください。
複数のuserApplication/Fsystemに設定されている
userApplication0 Fsystem0 mountpoint0 (NFS share, NFS Lock Failover) mountpoint1 (NFS share) userApplication1 Fsystem1 mountpoint2 (NFS share, NFS Lock Failover) mountpoint3 (NFS share)
■NFS 使用時の注意
PRIMECLUSTERがサポートするNFSのバージョンは、動作するOSによって異なります。
Oracle Solaris 10 上で動作する場合、NFS Version 3 をサポートします。
Oracle Solaris 11 上で動作する場合、NFS Version 4 および NFS Version 3 をサポートします。
また、NFSでは、バージョンにより使用できるプロトコルが異なります。
NFS Version 3 では、UDPを使用して下さい(推奨)。
NFS Version 4 では、TCPを使用して下さい(必須)。
注意
NFS Version 3 では、TCPも使用可能ですが、TCPを使用して切替えと切戻しを連続で行った場合、UDPを使用した場合より復旧時間が長くなることがあります。
NFS Version 4 は、UDP を使用しません。
■Fsystemリソース内に31個以上のマウントポイントを作成する場合の注意
FsystemリソースのTimeout最小値は、「Fsystemリソース内のマウントポイント数 × 6秒」で既定されています。デフォルトでは180秒に設定されているので、Fsystemリソース内にマウントポイントを31個以上定義する場合は、“■Fsystemの登録情報を確認する”の画面で[Attributes]タブを選択して、Timeout値を「Fsystemリソース内のマウントポイント数 × 6秒」に変更する必要があります。
GUIで設定をする前に必要なことを以下に説明します。
なお、手順の中では説明を省いていますが、ファイルの編集にはvi(1)などのエディタコマンドの使用が一般的です。
■/etc/vfstab.pclファイルの編集
ZFSストレージプールの/etc/vfstab.pclへの登録
以下、「手順2 レガシーファイルシステムの/etc/vfstab.pclへの登録」までの手順はクラスタを構成するすべてのノードで実施してください。
/etc/vfstab.pclに、上記で作成したZFSストレージプールのためのエントリを追加します。それぞれの項目に以下の情報を設定します。
bdev : “#RMS#<ZFSストレージプール名>”
cdev : “<ZFSストレージプール名>”
mount point : “<マウントポイント>”
fstype : “zfs”
runlevel, auto mount, flags : “-“
ZFSストレージプールにマウントポイントを設定しない(デフォルト)場合、マウントポイントにはZFSストレージプール名の先頭に"/"を付与した名前を設定します。
以下に、ZFSストレージプール名がapp1、マウントポイントを/mnt に設定したエントリと、ZFSストレージプール名がapp2、マウントポイントを設定しないエントリの2つのエントリを登録する場合の例を示します。
# bdev cdev mountpoint fstype runlevel auto mount flags
#RMS#app1 app1 /mnt zfs - - -
#RMS#app2 app2 /app2 zfs - - -
レガシーファイルシステムの/etc/vfstab.pclへの登録
レガシーファイルシステムを作成した場合、ZFSストレージプールに加え、個々のレガシーファイルシステムのエントリを追加します。それぞれの項目に以下の情報を設定します。
bdev : “#RMS#<ファイルシステム名>”
cdev : “<ファイルシステム名>”
mount point : “<マウントポイント>”
fstype : “zfs”
runlevel, auto mount, flags : “-“
以下に、ZFSストレージプールappに、二つのレガシーファイルシステムapp/mp1, app/mp2を作成し、それぞれのマウントポイントが/appdata1, /appdata2である場合の設定例を示します。
# bdev cdev mountpoint fstype runlevel auto mount flags
#RMS#app app /app zfs - - -
#RMS#app/mp1 app/mp1 /appdata1 zfs - - -
#RMS#app/mp2 app/mp2 /appdata2 zfs - - -
userApplicationを構成するすべてのクラスタノードのファイルへ、次のようにマウントポイントのエントリを追加します。
#RMS#/dev/sfdsk/class0001/dsk/volume0001 /dev/sfdsk/class0001/rdsk/volume0001 /disk1 ufs - no - #RMS#/dev/sfdsk/class0001/dsk/volume0002 /dev/sfdsk/class0001/rdsk/volume0002 /disk2 ufs - no -
注意
行の先頭は、必ず「#RMS#」で始まるようにしてください。
異なるボリュームを同一のマウントポイントに設定することはできません。
■autofsの編集
Fsystemリソースに登録するファイルシステムやマウントポイントは、autofsで使用できません。
“■/etc/vfstab.pclファイルの編集”で追加したファイルシステムのデバイスやマウントポイントのディレクトリをautofsで使用している場合は、/etc/auto_masterから該当エントリを削除してください。
■ファイルシステムをネットワークで共有(NFS)する場合の準備
参照
非レガシー ZFS ファイルシステムをNFSで共有する場合の設定については、“6.4.1.2 設定手順”を参照してください。
1) Ipaddress または、Glsリソースの作成
クラスタアプリケーションとしてのNFSサービスでは、引継ぎネットワークが必要ですので、IpaddressまたはGlsリソースを作成してください。
設定方法の詳細については、“6.7.1.5 引継ぎネットワークリソースの作成”または、“6.7.1.4 Glsリソースの作成”を参照してください。
注意
このリソースは、Fsystemリソースと同じuserApplicationに設定してください。
2) NFS Lock Failoverを有効にするための準備
“Configuration内の共通情報を設定”メニューにより、NFS Lock Failoverを有効にするための設定をします。
設定方法の詳細については、“6.7.4 Configuration内の共通情報の設定”を参照してください。
なお、“6.7.4 Configuration内の共通情報の設定” で登録する NFS ファイルロック情報を格納するディレクトリの配置先として、Fsystemリソースに UFS またはレガシー ZFS ファイルシステムを1つ以上登録する必要があります。
また、NFS Lock Failover を有効にする場合、使用する NFS のバージョンと、SMF の設定を変更する必要があります。使用する環境に合わせて以下の手順を実施してください。
Solaris 10 で NFS Lock Failover を使用する場合、“NFS Lock Failover の事前設定(Solaris 10用)”を実施してください。
Solaris 11 で NFS Lock Failover を使用する場合、“NFS Lock Failover の事前設定(Solaris 11用)”を実施してください。
以下の手順を、NFS Lock Failover を使用する全クラスタノードで実施してください。
1) 対象となるクラスタノードにシステム管理者でログインします。
2) NFS の設定ファイル /etc/default/nfs を以下のように変更します。
# Sets the maximum version of the NFS protocol that will be registered
# and offered by the server. The default is 4.
#NFS_SERVER_VERSMAX=4
NFS_SERVER_VERSMAX=3
.
.
# Sets the maximum version of the NFS protocol that will be used by
# the NFS client. Can be overridden by the "vers=" NFS mount option.
# If "vers=" is not specified for an NFS mount, this is the version
# that will be attempted first. The default is 4.
#NFS_CLIENT_VERSMAX=4
NFS_CLIENT_VERSMAX=3
3) クラスタを構成する各ノードで、以下のコマンドを実行します。
# /usr/bin/script -a /var/opt/reliant/log/smfchg_cnf.log # /usr/sbin/svcadm -v disable -s network/nfs/client # /usr/sbin/svcadm -v disable -s network/nfs/server # /usr/sbin/svcadm -v disable -s network/nfs/nlockmgr # /usr/sbin/svcadm -v disable -s network/nfs/status # /usr/sbin/svccfg -v delete -f network/nfs/status # /usr/sbin/svccfg -v delete -f network/nfs/nlockmgr # /usr/sbin/svccfg -v delete -f network/nfs/server # /usr/sbin/svccfg -v delete -f network/nfs/client # /usr/sbin/svccfg -v import /var/svc/manifest/network/nfs/status.xml # /usr/sbin/svccfg -v import /var/svc/manifest/network/nfs/nlockmgr.xml # /usr/sbin/svccfg -v import /var/svc/manifest/network/nfs/server.xml # /usr/sbin/svccfg -v import /var/svc/manifest/network/nfs/client.xml # /usr/sbin/svccfg -v -s network/nfs/status setprop network/restart_on=astring: none # /usr/sbin/svccfg -v -s network/nfs/status setprop rpcbind/restart_on=astring: none # /usr/sbin/svccfg -v -s network/nfs/status setprop filesystem-local/restart_on=astring: none # /usr/sbin/svccfg -v -s network/nfs/status addpg startd framework # /usr/sbin/svccfg -v -s network/nfs/status addpropvalue startd/duration astring: transient # /usr/sbin/svccfg -v -s network/nfs/nlockmgr setprop network/restart_on=astring: none # /usr/sbin/svccfg -v -s network/nfs/nlockmgr setprop rpcbind/restart_on=astring: none # /usr/sbin/svccfg -v -s network/nfs/nlockmgr setprop status/restart_on=astring: none # /usr/sbin/svccfg -v -s network/nfs/nlockmgr setprop filesystem-minimal/restart_on=astring: none # /usr/sbin/svccfg -v -s network/nfs/nlockmgr addpg startd framework # /usr/sbin/svccfg -v -s network/nfs/nlockmgr addpropvalue startd/duration astring: transient # /usr/sbin/svccfg -v -s network/nfs/server setprop nlockmgr/restart_on=astring: none # /usr/sbin/svccfg -v -s network/nfs/client setprop nlockmgr/restart_on=astring: none # /usr/sbin/svccfg -s svc:/network/nfs/status setprop stop/exec = astring: ":true" # /usr/sbin/svccfg -s svc:/network/nfs/nlockmgr setprop stop/exec = astring: ":true" # /usr/sbin/svcadm -v refresh network/nfs/status # /usr/sbin/svcadm -v restart network/nfs/status # /usr/sbin/svcadm -v enable -s network/nfs/status # /usr/sbin/svcadm -v refresh network/nfs/nlockmgr # /usr/sbin/svcadm -v enable -s network/nfs/nlockmgr # /usr/sbin/svcadm -v refresh network/nfs/server # /usr/sbin/svcadm -v enable -s network/nfs/server # /usr/sbin/svcadm -v refresh network/nfs/client # /usr/sbin/svcadm -v enable -s network/nfs/client
注意
network/nfs/server サービスの有効化に失敗する場合がありますが、そのまま手順を続行してください。
4) 以下の3つのSMFサービスがonlineであることを確認します。
# /usr/bin/svcs | grep nfs
online 0:51:53 svc:/network/nfs/client:default
online 0:51:54 svc:/network/nfs/status:default
online 0:51:54 svc:/network/nfs/nlockmgr:default
5) script コマンドを終了します。
# exit
以下の手順を、NFS Lock Failover を使用する全クラスタノードで実施してください。
1) 対象となるクラスタノードにシステム管理者でログインします。
2) クラスタを構成する各ノードにおいて以下のコマンドを実行します。
# /usr/bin/script -a /var/opt/reliant/log/smfchg_cnf.log # /usr/sbin/svcadm -v disable -s network/nfs/client # /usr/sbin/svcadm -v disable -s network/nfs/server # /usr/sbin/svcadm -v disable -s network/nfs/nlockmgr # /usr/sbin/svcadm -v disable -s network/nfs/status # /usr/sbin/svccfg -v delete -f network/nfs/status # /usr/sbin/svccfg -v delete -f network/nfs/nlockmgr # /usr/sbin/svccfg -v delete -f network/nfs/server # /usr/sbin/svccfg -v delete -f network/nfs/client
3) svccfg を起動し、SMF の設定を更新します。
# svccfg svc:> select network/nfs/status svc:/network/nfs/status> delcust svc:/network/nfs/status> select network/nfs/nlockmgr svc:/network/nfs/nlockmgr> delcust svc:/network/nfs/nlockmgr> select network/nfs/server svc:/network/nfs/server> delcust svc:/network/nfs/server> select network/nfs/client svc:/network/nfs/client> delcust svc:/network/nfs/client> quit
4) クラスタを構成する各ノードにおいて以下のコマンドを実行します。
# /usr/sbin/svccfg -v import /lib/svc/manifest/network/nfs/status.xml # /usr/sbin/svccfg -v import /lib/svc/manifest/network/nfs/nlockmgr.xml # /usr/sbin/svccfg -v import /lib/svc/manifest/network/nfs/server.xml # /usr/sbin/svccfg -v import /lib/svc/manifest/network/nfs/client.xml
5) NFSの最大バージョン番号を設定します。
以下のように設定を変更し、正しく変更されたことを確認します。
# /usr/sbin/sharectl set -p server_versmax=<NFSのバージョン> nfs # /usr/sbin/sharectl set -p client_versmax=<NFSのバージョン> nfs # /usr/sbin/sharectl get -p server_versmax nfs server_versmax=<NFSのバージョン> # /usr/sbin/sharectl get -p client_versmax nfs client_versmax=<NFSのバージョン>
注意
server_versmax および client_versmax に指定する NFS のバージョンは、OS のバージョンによって指定方法が異なります。詳細は OS のマニュアルを参照してください。
6) クラスタを構成する各ノードで、以下のコマンドを順番に実行します。
# /usr/sbin/svccfg -v -s network/nfs/status setprop network/restart_on=astring: none # /usr/sbin/svccfg -v -s network/nfs/status setprop rpcbind/restart_on=astring: none # /usr/sbin/svccfg -v -s network/nfs/status setprop filesystem-local/restart_on=astring: none # /usr/sbin/svccfg -v -s network/nfs/status addpg startd framework # /usr/sbin/svccfg -v -s network/nfs/status addpropvalue startd/duration astring: transient # /usr/sbin/svccfg -v -s network/nfs/nlockmgr setprop network/restart_on=astring: none # /usr/sbin/svccfg -v -s network/nfs/nlockmgr setprop rpcbind/restart_on=astring: none # /usr/sbin/svccfg -v -s network/nfs/nlockmgr setprop status/restart_on=astring: none # /usr/sbin/svccfg -v -s network/nfs/nlockmgr setprop filesystem-minimal/restart_on=astring: none # /usr/sbin/svccfg -v -s network/nfs/nlockmgr addpg startd framework # /usr/sbin/svccfg -v -s network/nfs/nlockmgr addpropvalue startd/duration astring: transient # /usr/sbin/svccfg -v -s network/nfs/server setprop nlockmgr/restart_on=astring: none # /usr/sbin/svccfg -v -s network/nfs/client setprop nlockmgr/restart_on=astring: none # /usr/sbin/svccfg -s svc:/network/nfs/status setprop stop/exec = astring: ":true" # /usr/sbin/svccfg -s svc:/network/nfs/nlockmgr setprop stop/exec = astring: ":true" # /usr/sbin/svcadm -v refresh network/nfs/status # /usr/sbin/svcadm -v restart network/nfs/status # /usr/sbin/svcadm -v enable -s network/nfs/status # /usr/sbin/svcadm -v refresh network/nfs/nlockmgr # /usr/sbin/svcadm -v enable -s network/nfs/nlockmgr # /usr/sbin/svcadm -v refresh network/nfs/server # /usr/sbin/svcadm -v enable -s network/nfs/server # /usr/sbin/svcadm -v refresh network/nfs/client # /usr/sbin/svcadm -v enable -s network/nfs/client
注意
network/nfs/server サービスの有効化に失敗する場合がありますが、そのまま手順を続行してください。
7) 以下の 3 つの SMF サービスが online であることを確認します。
# /usr/bin/svcs | grep nfs
online 0:51:53 svc:/network/nfs/client:default
online 0:51:54 svc:/network/nfs/status:default
online 0:51:54 svc:/network/nfs/nlockmgr:default
8) script コマンドを終了します。
# exit
3) PRIMECLUSTER の NFS エントリの設定
NFS で共有するファイルシステムが非レガシー ZFS ファイルシステムのみの場合は、“6.7.4 Configuration内の共通情報の設定”で登録した NFS ファイルロック情報を格納するディレクトリを UFS またはレガシー ZFS ファイルシステムで別に用意し、そのファイルシステムのエントリを追加します。
NFS で共有するファイルシステムが UFS またはレガシー ZFS ファイルシステムの場合は、それらのファイルシステムのエントリを追加します。
いずれの場合も、/etc/dfs/dfstab.pcl ファイルを編集します。userApplication を構成するすべてのクラスタノードで、NFS 共有するファイルシステムのエントリを追加します。
#RMS# share -F nfs /disk1 #RMS# share -F nfs /disk2
注意
各エントリの先頭は、必ず「#RMS#」で始まるようにしてください。
各エントリの定義は share(1M) コマンドにて手動でファイルシステムを NFS 共有する場合に準じます。
UFS またはレガシー ZFS ファイルシステムの場合は、/etc/vfstab.pcl に定義したマウントポイントでNFS 共有が可能です。
非レガシー ZFS ファイルシステムの場合は、ZFSがNFSの共有処理を行うため、FsystemリソースでNFSの共有処理は行いません。NFS共有状態は、sharenfs,share.nfs プロパティが "on" の状態の場合に、データセットのマウントポイントが、/etc/dfs/sharetab に記載されていることを監視します。
■その他のファイルシステムを使用する場合
事前にディスクのフォーマットやファイルシステムの作成を行っておく必要があります。フォーマットやファイルのシステムのコマンドについては、“Solaris X Reference Manual Collection”を参照してください。ZFSをファイルシステムとして使用する場合は、“6.4.1 ZFSを使用する場合”を参照して構築してください。
Fsystemリソースの作成方法について説明します。
図6.17 Fsystemリソース作成の流れ
上記の“SysNode選択”までの操作は“6.7.1.1 Cmdlineリソースの作成”を参照してください。ここでは、“マウントポイントの選択”からの操作を説明します。
■マウントポイントを選択する
図6.18 マウントポイントの選択
マウントが可能なマウントポイント名。
前述の“/etc/vfstab.pcl”の事前設定で登録したマウントポイントが表示されます。
マウントを設定するマウントポイント名。
[利用可能なマウントポイント]からマウントを行うマウントポイントを選択し、<追加>をクリックします。すべてを追加したい場合は、<全て追加>をクリックしてください。マウントを設定するマウントポイントを削除する場合には、[選択されたマウントポイント]から削除するマウントを選択し、<削除>をクリックします。すべて削除する場合には、<全て削除>をクリックしてください。
設定終了後<次へ>をクリックし、“マウントポイントの属性を設定する”へ進みます。
注意
ZFSストレージプールのリソースの設定はFsystemリソース作成の画面にて行ないます。マウントポイントの選択画面にて、/etc/vfstab.pcl ファイルに定義済みのZFSストレージプールの最上位のマウントポイントが表示されますので、それを選択してuserApplicationにリソースを組み込んでください。
ufs ファイルシステムや、レガシーファイルシステムとして使用するZFS のデータセットがある場合も、Fsystemリソース作成の画面にて行ないます。
マウントポイントの選択画面にてマウントポイントを選択し、userApplicationにリソースを組み込んでください。
レガシーファイルシステムとして使用するZFS のデータセットが共用ディスクのZFS ストレージプール上にある場合は、ZFSストレージプールの最上位のマウントポイントと、レガシーファイルシステムのデータセットに対応するマウントポイントを1つのFsystem リソースに設定してください。
■マウントポイントの属性を設定する
マウントポイントの属性を設定します。
図6.19 属性の選択
マウント名を表示します。
マウントポイントごとに設定されている属性が表示されます。
マウントポイントの管理を制御する属性を設定します。ボタンをクリックすると以下の“マウントポイントの属性設定”画面を表示します。
設定終了後<次へ>をクリックし、“Fsystem登録情報を確認する”へ進みます。
◆マウントポイントの属性設定
図6.20 マウントポイントの属性設定
設定終了後<確認>をクリックし、“属性の選択”画面へ戻ります。
Flag | 概要 |
---|---|
AUTORECOVER | “Yes”に設定すると、指定されたファイルシステムがアンマウントされた場合、RMSは自動的にそれを再マウントしようとします。 |
SHARE | NFSを使用する際に、“Yes”に設定します。この場合は、/etc/dfs/dfstab.pclに特別なエントリを記述してください。記述方法は、“6.7.1.2.1 事前設定”の“■ファイルシステムをネットワークで共有(NFS)する場合の準備”を参照してください。 |
NFSLOCKFAILOVER | “Yes”に設定すると、このマウントポイントに、NFSのファイルロック情報が格納されます。NFSを使用する場合は、必ず、いずれかのマウントポイントで、この属性を“Yes”にする必要があります。 |
■Fsystemの登録情報を確認する
Fsystemの登録情報を確認します。また、[Attributes]タブを選択して、画面を切替えることで、リソースの属性を設定することもできます。
リソースの属性については“6.7.5 属性の説明”を参照してください。
図6.21 登録情報の確認
「Flag」カラム内で表示される属性は、各Resourceの属性のうち、値の設定されているもののみ表示されます。たとえば、「Yes or No」を設定するような、AUTORECOVER属性に、“No”を設定した場合、AUTORECOVERは属性を設定していないことになり、「Flag」カラム内に表示されません。
現在のリソースが依存する他のリソースを指定するためのボタンですが、Fsystemでは無効です。
親子関係にある複数のディレクトリを設定する場合は、1つのリソース内で設定してください。
登録情報の内容確認後、<登録>をクリックします。
GDS (Global Disk Services)で定義されているディスククラスのリソース設定を行います。
ディスククラスは、この画面を使用する前に作成しておく必要があります。
注意
シングルノードクラスタ運用の場合、GDSのボリュームはローカルクラスで作成し、Gdsリソースは作成しないでください。
ボリュームの等価性コピーが実行されているときにディスククラスをGdsリソースに登録すると、等価性コピーが中止されます。そのため、一部のスライスがデータ不当状態になりますが、ボリューム起動時に自動的に等価性コピーが実行されるため、復旧作業は必要ありません。ボリューム起動前にスライスの状態を復旧しておきたい場合は、Gdsリソースの設定が完了した後に、等価性コピーを開始してください。等価性コピーの開始方法については、“PRIMECLUSTER Global Disk Service説明書”の“5.3.6 コピー操作”または“D.10 sdxcopy - 等価性コピー操作”を参照してください。
ディスククラスの作成方法については、“6.3.2.3 共用ディスクの設定”を参照してください。
図6.22 Gdsリソース作成の流れ
上記の“SysNode選択”までの操作は“6.7.1.1 Cmdlineリソースの作成”を参照してください。ここでは、“Disk Classの選択”からの操作を説明します。
■ディスククラスを選択する
図6.23 Disk Classの選択
設定可能なディスククラス名。
前述のGDSで定義されているディスククラス(共用ディスク)が表示されます。
設定するディスククラス名。
[利用可能なDisk Class]からディスククラスを選択し、<追加>をクリックします。また、すべてを追加したい場合は、<全て追加>をクリックしてください。設定するディスククラスを削除する場合には、[選択されたDisk Class]から削除するディスククラスを選択し、<削除>をクリックします。すべて削除する場合には、<全て削除>をクリックしてください。
設定終了後<次へ>をクリックし、“Disk Classの属性設定”画面へ進みます。
■ディスククラスの属性を設定する
ディスククラスの属性を設定します。
図6.24 Disk Classの属性設定
前述のGDSで定義されているディスククラス(共用ディスク)が表示されます。
Flag | 概要 |
---|---|
MONITORONLY | ディスククラスが故障した際に、userApplicationへその状態を通知するか否かを設定します。“Yes”の場合、ディスククラスの故障が発生しても、ディスククラスが故障の状態となりますが、userApplicationのフェイルオーバは発生しません。 |
MONITORONLY属性は、最低1つのディスククラスが“No”でなければなりません。
これは、すべてのディスククラスが故障してもuserApplicationのフェイルオーバが発生しないことや、上位アプリケーションへの故障通知を確実に行うRMSの仕様に従っているためです。
設定終了後<次へ>をクリックし、“Disk Classの用途設定”画面へ進みます。
■ディスククラスの用途を設定する
ディスククラスの用途を設定します。
図6.25 Disk Classの用途設定
[排他使用]の“する”か“しない”をクリックします。
“する”を選択した場合は、[HotStandby運用]の“する”、“しない”を選択してください。
共用ディスクの用途に応じて、設定を行ってください。
設定終了後<次へ>をクリックし、“登録情報の確認”画面へ進みます。
●共用ディスクの用途
用途 | 排他使用 | HotStandby運用 |
---|---|---|
切替ディスク | する | しない |
同時アクセス用共用ディスク | する | する |
同時共用ディスク | しない |
切替ディスク
運用ノードのみから使用できます。
運用ノード以外のノードからはボリュームにはアクセスすることができません。
同時アクセス用共用ディスク
全ノードから同時に使用できます。
運用ノード以外から、ディスクアクセスが必要なアプリケーションを同一のuserApplication内に設定する場合に使用します。
共用ディスクのデータの整合性を維持するための排他制御は、PRIMECLUSTERではなくアプリケーションの責任で行う必要があります。
同時共用ディスク
複数のuserApplicationでディスククラスを共用するような場合に使用します。たとえば、Oracle Real Application Clustersを使用するような場合です。
共用ディスクのデータの整合性を維持するための排他制御は、PRIMECLUSTERではなくアプリケーションの責任で行う必要があります。
注意
クラスタアプリケーション運用中は、クラスタアプリケーションに関係のないアプリケーション、またはユーザプロセスが共用ディスクを使用しないようにしてください。そのような運用を行うと、状態遷移が失敗する場合があります。
以下の理由により、ユーザアカウントのホームディレクトリを切替ディスク上に作成しないでください。
切替ディスク上のファイルシステムは、クラスタアプリケーションの運用ノードでしかマウントされない。
PRIMECLUSTERは、クラスタアプリケーションの切替え発生時に、切替ディスク上のファイルシステムをアンマウントするために、切替ディスク上のファイルシステムを使用しているプロセスをkill(1M)コマンドによって強制終了させる。
プロセスの強制終了が失敗してファイルシステムを正常にアンマウントできない場合、二重マウントによって共用ディスク上のファイルシステムのデータが破壊されることを回避するために、PRIMECLUSTERがノードを強制停止させる場合がある。
■Gdsリソースの登録情報を確認する
Gdsリソースの登録情報を確認します。また、[Attributes]タブを選択して、画面を切替えることで、リソースの属性を設定することもできます。
リソースの属性については“6.7.5 属性の説明”を参照してください。
図6.26 登録情報の確認
作成したGdsリソース配下に、作成済のGdsリソースの関連付けを行う場合に使用します。関連付けを行える同一タイプのリソースがある場合にのみこのボタンを選択することができます。設定方法については、“6.7.1.1 Cmdlineリソースの作成”の“◆Resourceの関連付け”を参照してください。
登録情報の内容確認後、<登録>をクリックします。
GLS (Global Link Services)の伝送路二重化機能で定義されている引継ぎIPアドレス設定を行います。
注意
GLS (Global Link Services)のマルチパス機能を使用する場合は、“PRIMECLUSTER Global Link Services 説明書(マルチパス機能編)”の“クラスタシステム上での運用”を参照してください。
図6.27 Gls(伝送路二重化機能)リソース作成の流れ
上記の“SysNode選択”までの操作は“6.7.1.1 Cmdlineリソースの作成”を参照してください。ここでは、“引継ぎIPの選択”からの操作を説明します。
■引継ぎIPアドレスを選択する
図6.28 引継ぎIPアドレスの選択
引継ぎ可能なIPアドレス。
引継ぐIPアドレス。
[利用可能な引継ぎIPアドレス]から引継ぐIPアドレスを選択し、<追加>をクリックします。すべてを追加したい場合は、<全て追加>をクリックしてください。引継ぐIPアドレスを削除する場合には、[選択された引継ぎIPアドレス]から削除する引継ぎIPアドレスを選択し、<削除>をクリックします。すべて削除する場合には、<全て削除>をクリックしてください。
設定終了後<次へ>をクリックし、“引継ぎIPアドレスの属性設定”画面へ進みます。
■引継ぎIPアドレス属性を設定する
図6.29 引継ぎIPアドレスの属性設定
設定終了後<次へ>をクリックし、“Glsリソースの登録情報を確認する”へ進みます。
Flag | 概要 |
---|---|
AUTORECOVER | “Yes”に設定すると、リソース異常検出時、RMSはuserApplicationが別のホストへ直ちに切替えられるのを防ぐために、異常 (Faulted)となったリソースを自ホスト内で回復しようと一定時間試みます。(デフォルトは60秒。リソースの属性Timeoutをチューニングすることにより変更可能です。)そして一定時間内に回復しなかった場合には別のホストへ切替えます。 |
■Glsリソースの登録情報を確認する
Glsリソースの登録情報を確認します。また、[Attributes]タブを選択して、画面を切替えることで、リソースの属性を設定することもできます。
リソースの属性については“6.7.5 属性の説明”を参照してください。
GLSのリソース名は、GlsX(Xは0,1等の番号)で表示されます。
クラスタアプリケーションに登録する際は、“Resourceの選択”画面の[利用可能なResource]から、本リソース名を選択してください。
詳細は、“6.7.2 クラスタアプリケーションの作成”を参照してください。
図6.30 登録情報の確認
作成したGlsリソース配下に、作成済のGlsリソースの関連付けを行う場合に使用します。関連付けを行える同一タイプのリソースがある場合にのみこのボタンを選択することができます。設定方法については、“6.7.1.1 Cmdlineリソースの作成”の“◆Resourceの関連付け”を参照してください。
登録情報の内容確認後、<登録>をクリックします。
通常、引継ぎネットワークを使用する場合は、“Gls”(Global Link Services)、または“Ipaddress”のどちらか一方を使用します。引継ぎネットワークの可用性を求める場合は、“Gls”を使用してください。
サーバ/クライアントシステムのように、業務LANを通じ、クラスタシステム上で動作するクラスタサービスと通信を行うシステムを構築する場合などには、引継ぎネットワークの設定が必要となります。
これらは、クラスタシステム上で動作するクラスタアプリケーションが、フェイルオーバしてもクラスタの外からは、同じネットワーク名で通信が続けられるようにするためです。
■引継ぎネットワークの種類
引継ぎネットワークの種類には、IPアドレス引継ぎ、ノード名引継ぎがあります。
IPアドレス引継ぎ
定義されたIPアドレスが切替えによって運用ノードに引継がれます。
引継ぎネットワークの基本機能です。
ノード名引継ぎ
IPアドレスに加え、ノード名(*1)も引継ぎます。
クラスタアプリケーションとしてクラスタノードで動作するプログラムが、ノード名を意識している場合に使用します。
(*1) uname -n を実行して得られるホスト名と同じ値
Solaris 11環境では、svccfg(1M)コマンドなどでノード名を変更してください。
■GUIで自動的に編集するファイル
GUIで設定をすると次のようにファイルが編集されます。
ファイルは引継ぎネットワークの種類によって異なります。
# Start of lines added by FJSVwvucw - DO NOT DELETE OR CHANGE THIS LINE # Mon Aug 05 21:01:43 JST 2002
<各ファイルに依存した情報を記載する。たとえば、/etc/inet/hostsの場合は、以下のような情報となります。>
192.168.246.100 Ipaddress01 # End of lines added by FJSVwvucw - DO NOT DELETE OR CHANGE THIS LINE
IPアドレス引継ぎ
/etc/inet/hosts
/usr/opt/reliant/etc/hvipalias
ノード名引継ぎ
/etc/inet/hosts
/usr/opt/reliant/etc/hvipalias
/etc/nodename
注意
ノード名引継ぎでは、運用ノード/待機ノードともに同一ノード名となります。
すべてのクラスタノードで、使用できるように設定されているネットワークインタフェースカードが1枚以上必要です。
PRIMECLUSTERの“引継ぎネットワーク”とGlsの“IPアドレス引継ぎ”を同一のクラスタシステム内で共存させることは可能ですが、同一のインタフェースには設定しないでください。同一のインタフェースに設定した場合、引継ぎIPアドレスを使用した通信はできなくなります。
たとえば、PRIMECLUSTERの“引継ぎネットワーク”の設定において、使用するインタフェースとしてhme1 を選択した場合、GLSの環境設定では hme1 は設定しないでください(hanetconfig createコマンドの'-t'オプションで hme1 は指定しないでください)。
ノングローバルゾーンへ委任した、共有または排他的IPゾーンで使用するネットワークインタフェースに、引継ぎネットワークを設定することはできません。
引継ぎネットワークリソースの作成方法について説明します。
図6.31 引継ぎネットワークリソース作成の流れ
上記の“SysNode選択”までの操作は“6.7.1.1 Cmdlineリソースの作成”を参照してください。ここでは、“引継ぎネットワークの選択”からの操作を説明します。
■引継ぎネットワークを選択する
引継ぐネットワーク種別を選択します。
図6.32 ネットワーク種別の選択
IPアドレス引継ぎを行う場合に選択します。
ノード名とIPアドレス引継ぎを行う場合に選択します。
すでにノード名引継ぎが設定されている場合は、非活性表示となります。
“MACアドレス引継ぎ + IPアドレス引継ぎ”および “MACアドレス引継ぎ + ノード名引継ぎ + IPアドレス引継ぎ”を選択することはできません。
1つのネットワークインタフェースに対しては以下のような引継ぎネットワークの設定が可能です。
IPアドレス引継ぎは、1つのネットワークインタフェースに対して複数設定することができます。
ノード名引継ぎは、クラスタシステムで1つだけ設定できます。
設定終了後<次へ>をクリックし、“インタフェースの選択”画面へ進みます。
注意
ネットワークインタフェースカード(NIC)をシステム起動時にUPさせたい場合は、事前設定が必要です。
Solaris 10の場合
“/etc/hostname.ネットワークインタフェース名”ファイルを作成し、ファイル内に、IPアドレス(またはホスト名)を記載して設定します。
Solaris 11の場合
ipadm(1M)コマンドで設定します。この値は他のIPアドレスと異なる値にしてください。
ノード名引継ぎは、システムのunameを変更します。ノード名引継ぎをuserApplicationに設定した場合は、userApplicationを構成する全ノードを再起動してください。
ノード名引継ぎリソースを削除した際は、全ノードの/etc/nodenameが正しく変更されているかを確認した後、userApplicationを構成していた全ノードを再起動してください。正しく変更されていない場合は、setuname(1M)を使用して、ノード名を変更後、ノードを再起動してください。
システムの移行やソフトウェアのアップデートを行った際にも、/etc/nodenameが正しく設定されているかを確認してください。正しく設定されていない場合は、setuname(1M)を使用して、ノード名を変更後、ノードを再起動してください。
■インタフェースを選択する
ネットワークインタフェースカード(NIC)の選択を行います。
クラスタリソースマネージャに登録されているNICが表示されます。
図6.33 インタフェースの選択
各SysNodeで使用するネットワークインタフェースを選択します。
設定終了後<次へ>をクリックし、“IPアドレス/ホスト名の選択”画面へ進みます。
■IPアドレス/ホスト名を選択、作成する
引継ぐIPアドレス、ホスト名の選択、作成を行います。
図6.34 IPv4アドレス/ホスト名の選択画面
図6.35 IPv6アドレス/ホスト名の選択画面
IPv4アドレスの引継ぎIPアドレスを作成する場合に選択します。
IPv6アドレスの引継ぎIPアドレスを作成する場合に選択します。
新しい引継ぎIPアドレスやノード名引継ぎを設定する場合に選択します。ここで指定された情報は、クラスタを構成するすべてのノードの/etc/inet/hostsおよび/usr/opt/reliant/etc/hvipaliasへ追加されます。ノード名引継ぎを使用する場合は、ここで指定された名前がノード名として使用されます。
入力文字列には、英字から始まり英数字だけからなる文字列を14文字以内で指定してください。
設定済の情報の中から選択する場合に選択します。/etc/inet/hostsおよび/usr/opt/reliant/etc/hvipaliasへ事前設定を行った場合は、この中から選択します。
引継ぐIPアドレスを入力します。
“IPv4を使用する”を選択した場合、アドレスの入力域には0~255の数字を入力してください。
“IPv6を使用する”を選択した場合、IPv6アドレスを入力してください。
ネットマスク値を設定します。
アドレスの入力域には0~255の数字を入力してください。
プレフィックス長を設定します。
プレフィックス長の入力域には0~128の数字を入力してください。
マスクのかかっているネットマスクやIPアドレスを変更する際に選択します。
引継ぎIPアドレスの属性を設定します。以下の“引継ぎIPアドレスの属性設定”を参照してください。
注意
/usr/opt/reliant/etc/hvipalias および /etc/inet/hosts に事前設定を行った場合は、<次へ>ボタンをクリックした時に、前述のファイルの定義値をそのまま使用するかどうか確認するメッセージ(0840番)が表示されます。事前設定の値を使用する場合は、<はい>を選択してください。
<いいえ>を選択した場合は、ファイル内の既存設定が削除され、GUIが設定情報を再作成します。この場合、Ipaddressリソースの削除時に、 /usr/opt/reliant/etc/hvipalias と /etc/inet/hosts から、引継ぎネットワークの情報を自動的に削除できるようになります。
IPアドレスにIPv6のリンクローカルアドレスは使用できません。
◆引継ぎIPアドレスの属性設定
図6.36 引継ぎIPアドレスの属性設定
Flag | 概要 |
---|---|
BASE | “base”に設定すると、指定されたアドレスは物理インタフェースに割り当てられます。 |
AUTORECOVER | “Yes”に設定すると、指定されたアドレスが有効でなくなると、RMSは自動的にインタフェースを作成しようとします。この試みが失敗するとFault処理のきっかけになります。 |
設定終了後、<確認>をクリックし、“IPアドレス/ホスト名の選択、作成”画面へ戻ります。
引継ぎIPアドレスの可用性は、ここで設定するホストとの応答確認(ping)で検査されます。
ハブやルータの故障に影響されないためにも、クラスタシステムとして構成されていないノードで、ハブやルータを経由しない同一セグメントのホストを2つ以上指定することを推奨します。
PingHostで使用するホスト情報は、/etc/inet/hostsへ事前設定が必要です。
■引継ぎネットワークの登録情報を確認する
引継ぎネットワークの登録情報を確認します。また、[Attributes]タブを選択して、画面を切替えることで、リソースの属性を設定することもできます。
リソースの属性については“6.7.5 属性の説明”を参照してください。
図6.37 登録情報の確認
作成した引継ぎネットワークリソース配下に、作成済の引継ぎネットワークリソースの関連付けを行う場合に使用します。関連付けを行える同一タイプのリソースがある場合にのみこのボタンを選択することができます。設定方法については、“6.7.1.1 Cmdlineリソースの作成”の“◆Resourceの関連付け”を参照してください。
登録情報の内容確認後、<登録>をクリックします。
SafeCLUSTER対応製品をPRIMECLUSTERに移行して使用するために作成するのが、プロシジャリソースです。本書“付録A PRIMECLUSTER対応製品”に掲載されている製品だけが、プロシジャリソース作成の対象となります。
プロシジャリソースを作成する場合には、事前に状態遷移プロシジャを作成し、クラスタを構成する全ノードでリソースデータベース に登録しておく必要があります。
注意
状態遷移プロシジャからプロセス監視を使用せずにプロセスを起動する場合、そのプロセスのファイルディスクリプタ(fd)のハード/ソフトリミットが変更されることがあります。
システムのファイルディスクリプタ(fd)のハード/ソフトリミットが1024未満の場合、状態遷移プロシジャから起動するプロセスのファイルディスクリプタ(fd)のハード/ソフトリミットは1024となります。
状態遷移プロシジャから起動するプロセスで、ファイルディスクリプタ(fd)のハード/ソフトリミットに1024未満の値を設定する必要がある場合には、状態遷移プロシジャの処理の先頭に“ulimit”の定義を追加し、ファイルディスクリプタ(fd)のハード/ソフトリミットを指定してください。
例
ファイルディスクリプタ(fd)のハード/ソフトリミットを共に256に設定する場合
#!/bin/sh ulimit -n 256 ...
参照
状態遷移プロシジャリソースの登録については、“付録E SafeCLUSTER互換用の状態遷移プロシジャリソースの登録/変更/削除”を参照してください。
クラスタリソース管理機構に登録されているプロシジャリソースをRMSに登録します。
図6.38 プロシジャリソース作成の流れ
上記の“SysNode選択”までの操作は、“6.7.1.1 Cmdlineリソースの作成”を参照してください。ここでは、“プロシジャクラスの選択”からの操作を説明します。
■プロシジャクラスを選択する
作成するプロシジャクラスを選択します。
図6.39 プロシジャのクラス選択
プロシジャクラスを選択します。クラスタリソース管理機構に登録済のリソースのリソースクラスのみが表示されます。たとえば、Applicationクラスのプロシジャリソースのみが登録されている場合は、「Application」のみ表示されることになります。
以下の4つはクラスタリソース管理機構が標準で提供するクラスです。
Application
通常、アプリケーションをクラスタ対応するには、これを指定します。
BasicApplication
DBMS等のミドルウェア系アプリケーションや業務別パッケージが利用するクラスです。
SystemState2
クラスタではないシングルノードで、/etc/rc2.dで起動されるOSの一部の機能を、クラスタ対応させる場合に使用されます。クラスタ対応する場合に、OSの起動時に自動起動せず、クラスタアプリケーションの起動時に(運用ノードでのみ起動させるなど)起動するようなケースのために用意されています。
SystemState3
クラスタではないシングルノードで、/etc/rc3.dで起動されるOSの一部の機能を、クラスタ対応させる場合に使用されます。クラスタ対応する場合に、OSの起動時に自動起動せず、クラスタアプリケーションの起動時に(運用ノードでのみ起動させるなど)起動するようなケースのために用意されています。
注意
1つのクラスタアプリケーションに取り込むアプリケーションリソースをノードごとに作成する場合は、各ノードで同一のアプリケーションリソース名および同一のアプリケーションの種類で作成してください。
設定終了後<次へ>をクリックし、“プロシジャリソースの選択”画面へ進みます。
■プロシジャリソースを選択する
作成するプロシジャリソースを選択します。
図6.40 プロシジャリソースの選択
作成するプロシジャリソースを一覧より選択します。この画面で表示できるプロシジャリソース名は、32文字程度です。
設定終了後<次へ>をクリックし、“登録情報の確認”画面へ進みます。
■プロシジャリソースの登録情報を確認する
プロシジャリソースの登録情報を確認します。また、[Attributes]タブを選択して、画面を切替えることで、リソースの属性を設定することもできます。
リソースの属性については、“6.7.5 属性の説明”を参照してください。
図6.41 登録情報の確認
作成したプロシジャリソース配下に、作成済の他のプロシジャリソースの関連付けを行います。後述の“Resourceの関連付け”を参照してください。
登録情報の内容確認後、<登録>をクリックします。
■Resourceの関連付け
同一Resource Type内で起動順序をつけたい場合に使用します。
図6.42 Resourceの関連付け
同一Resourceの関連付けを行うResource。
ただし、以下の条件を満たす場合のみです。
呼び出されたResourceと同一のResourceタイプである。
他のクラスタアプリケーションで使用されていないResourceである。
現在作成中のResourceの配下に設定するResource。
[利用可能なResource]からリソース配下に設定するリソースを選択し、<追加>をクリックします。また、すべてを追加したい場合は、<全て追加>をクリックしてください。リソース配下に設定するリソースを削除する場合には、[選択されたResource]から削除するリソースを選択し、<削除>をクリックします。すべて削除する場合には、<全て削除>をクリックしてください。
設定終了後<確認>を選択し、“登録情報の確認”画面へ戻ります。
プロセス監視機能リソースの設定方法について説明します。
また、設定方法の前にプロセス監視機能と、特定の用途の場合に必要な事前設定についても説明します。
■プロセス監視機能の概要
プロセス監視機能は、プロセスの生存状態を監視する機能です。その主な機能は以下のとおりです。
簡単な設定によりプロセスの生存状態の変化を監視することができる
( ユーザがプロセスの生存状態を監視するためのコマンド等を用意する必要がない) 。
任意のプロセスの生存状態の変化を即座にRMS に通知することで、高速な業務の切替えを実現する。
不慮のエラーにより異常終了した任意のプロセスを自動的に再起動する。
プロセス監視機能とRMS との関係図を以下に示します。プロセス監視機能はclmonproc コマンド、Process Monitoring Daemon( 以降、prmd) 、Detector( 以降、hvdet_prmd) の3 つのコンポーネントから構成されています。
clmonprocコマンド
Online スクリプトか、またはOffline スクリプトから実行されるコマンドであり、prmd に対して任意のプロセスの起動および生存監視の停止を指示します。
prmdデーモン
prmd は、clmonproc コマンドから受信した指示に従ってプロセスの起動および生存監視の停止処理を実行するdaemon プロセスです。監視しているプロセスの生存状態に変化が生じた場合、prmd はhvdet_prmd に対して即座にその情報を通知します。
hvdet_prmdデーモン
prmdから受信したプロセスの生存状態の変化をRMS Base Monitor( 以降、BM) に対して通知するためのプロセスです。
■プロセス監視機能を使用するメリット
プロセス監視機能を使用しない場合と比較したメリットを以下に説明します。
●容易な設定
監視対象プロセスの生存の有無を監視する処理はprmdが行うため、ユーザは監視対象プロセス毎にその生存の有無を判定するためのコマンド(以降、チェックコマンド)を自作する必要がありません。少ない手間で簡単にプロセスの生存状態を監視することができます。
●高速なプロセスの異常終了検出
プロセス監視機能を使用しない場合、Cmdlineリソースを使用することにより前述のチェックコマンドを定期的に実行させることでプロセスの異常終了の検出を行います。このため、チェックコマンドの実行時間間隔だけ監視対象プロセスの異常終了を検出するのが遅くなります。プロセス監視機能ではprmdがシグナル処理によって監視対象プロセスの異常終了を検出するため、定期的にチェックコマンドを発行する場合と比較して高速にそれを検出することが可能です。
●異常終了したプロセスの自動再起動
不慮のエラーにより異常終了した任意のプロセスを自動的に再起動します。
●CPU資源の消費を低減
プロセス監視機能を使用せずに、監視対象プロセスの異常終了検出に要する時間を短縮するには、チェックコマンドの実行時間間隔を短くする必要がありますが、これではチェックコマンドの生成と実行が頻繁に行われるため、CPU資源を多く消費する可能性があります。一般的にチェックコマンドにはpsコマンドのような類いのコマンドを使用することが考えられますが、このような比較的CPU資源を消費するコマンドを使用した場合、CPU資源の消費がより顕著となる可能性があります。
プロセス監視機能では、監視対象プロセスの異常終了をprmdがシグナル処理によって監視しており、定期的にチェックコマンドを発行するようなCPU資源を多く消費する処理は実行されません。
また、Cmdlineリソースを使用する方法では、監視対象プロセスが定義付けられているRMSオブジェクト毎にチェックコマンドが実行されるため、そのRMSオブジェクト数に比例してチェックコマンド数も増加します。このため多数のチェックコマンドが定期的に実行されることになり、CPU資源を多く消費する可能性があります。
プロセス監視機能では、常に1つのprmdが監視対象プロセスの生存状態を監視しているため、監視対象プロセス数の増加に比例してprmdがCPU資源を多く消費することはありません。
通常、プロセス監視機能を使用する場合、この事前設定は必要ありません。
プロセス監視機能で使用しているディテクタ(RMSへの状態通知モジュール)で使用している識別番号が、他の機能で使用する識別番号と同一になる場合に、本事前設定が必要になります。
注意
GUIでは、プロセス監視機能のディテクタ識別番号として、“0”(デフォルト)を使用します。“0”以外のディテクタ識別番号が、すでに設定されている場合は、その値を使用します。
本設定は、ディテクタ識別番号のデフォルト値“0”を変更する場合にのみ設定が必要です。
本設定にて、ディテクタ識別番号の許容値“127”を越える設定を行ってはいけません。
本設定は、クラスタシステムを構成するすべてのノードにおいて実施してください。また、ディテクタ識別番号は、全ノードで同一の値を設定してください。
本設定実施前に、クラスタシステムを構成するすべてのノードにおいて、RMSとクラスタアプリケーションを停止してください。
例
プロセス監視機能のディテクタ識別番号として、初期値である“0”から“2”に変更する場合についての例です。
初期値“0”を使用してプロセス監視機能を使用していた場合、以下のように<プロセス監視機能のディテクタ名>.g<識別番号>が存在します。これを削除してください。
# cd /usr/opt/reliant/bin
# ls -l hvdet_prmd.g0
lrwxrwxrwx 1 root other 31 Dec 20 12:21 hvdet_prmd.g0 -> /usr/opt/reliant/bin/hvdet_prmd # rm hvdet_prmd.g0
以下のようにclmonsetdetコマンドを実行してください。本コマンドの引数には、変更後のディテクタ識別番号である“2”を指定してください。
# /etc/opt/FJSVcluster/bin/clmonsetdet 2
設定が正しく行われたか確認します。
# ls -l hvdet_prmd.g2
lrwxrwxrwx 1 root other 31 Dec 27 12:21 hvdet_prmd.g2 -> /usr/opt/reliant/bin/hvdet_prmd #
プロセス監視リソースの作成方法について説明します。
図6.43 プロセス監視リソース作成の流れ
上記の“SysNode選択”までの操作は“6.7.1.1 Cmdlineリソースの作成”を参照してください。ここでは、“起動パスの設定”からの操作を説明します。
■プロセスの起動コマンドを入力する
監視したいプロセスの起動パスを入力します。
図6.44 コマンドの設定
Online処理で起動する監視対象プロセスをフルパスで入力します。コマンドラインに空白を含む場合は、起動パスを二重引用符(")で囲む必要があります。
たとえば、以下のように入力します。
"/var/tmp 1/start_apl"
以下のようなプログラムは起動コマンドに指定できません。起動コマンドには単一のプロセスを指定する必要があります。
バックグラウンドで他のプログラムを起動後、自分自身は終了するプログラム。
(例) 3つのプログラム(prog0、prog1、prog2)を起動後、自分自身は終了するスクリプト
#!/bin/sh prog0 & prog1 & prog2 & exit 0
また、起動コマンドに指定したプロセスから生成された子プロセスは、プロセス監視機能の監視対象にはなりません。
Offline処理で、監視対象プロセスを停止する方法を設定します。
監視対象プロセスを停止するコマンドがある場合は、チェックボックスをONにして、コマンドラインを入力してください。コマンドラインは、フルパスで入力する必要があります。コマンドラインに空白を含む場合は、コマンドラインを二重引用符(")で囲む必要があります。
たとえば、以下のように入力します。
"/var/tmp 1/stop_apl"
停止コマンドを省略した場合は、プロセス監視機構によりソフトウェア終了シグナル(以降、SIGTERM)が送信され、監視対象プロセスを停止します。プロセスによってはSIGTERMで停止しないことがあり、この場合はOffline処理に失敗しますので注意してください。
監視対象プロセスがデーモンとして動作する場合に指定します。
デーモンとは起動時に次のような処理を実行しているプロセスを指します。
バックグラウンドでの実行
プロセスグループリーダへの昇格
前者は、fork システムコールの発行による子プロセスの生成と、exit システムコールの発行による親プロセスの終了処理を意味しています。また後者は、setpgrp システムコールの発行によるプロセスグループリーダへの昇格処理を意味しています。
注意
ファイル名と引数には、円記号(“\”)、チルダ(“~”)、パーセンテージ(“%”)、アンパサンド(“&”)、アットマーク(“@”)を使用してはいけません。
シングルクォート(“’”)およびタブは、入力できません。
停止コマンドを設定すると、それを実行するためのスクリプトが自動的に生成されます。スクリプトは以下のディレクトリに格納されます。
/opt/FJSVwvucw/scripts/process_stop
■プロセスの属性を設定する
監視対象プロセスの属性を設定します。
図6.45 プロセスの属性設定
監視対象のプロセスが停止した場合の再起動回数を指定します。指定範囲は、0~99(デフォルト 3回)です。0を指定した場合で監視対象のプロセスが停止した場合には、再起動は行われずに、Faultedになります。
プロセス監視機構が、プロセスが停止したと判断してから再起動するまでの間隔です。指定範囲は、0~3600秒(デフォルト 3秒)です。
プロセス監視機構が持っている[プロセスの再起動回数]で指定した値をMAX値とするカウンタを定期的に初期化するかどうかを指定します。“する”を選択した場合、([プロセスの再起動回数]で指定した値×60秒)毎に初期化します。“しない”を選択した場合、定期的な初期化はされません。
■プロセス監視リソースの登録情報を確認する
プロセス監視リソースの登録情報を確認します。また、[Attributes]タブを選択して、画面を切替えることで、リソースの属性を設定することもできます。
リソースの属性については“6.7.5 属性の説明”を参照してください。
図6.46 登録情報の確認
RetryCountは、プロセスの再起動回数を意味します。
RetryIntervalは、プロセスの再起動間隔を意味します。
Initialize=Yesは、プロセスの再起動回数の初期化を行うことを意味します。プロセスの属性設定画面で、「プロセスの再起動回数の初期化」に「しない」を指定した場合は、この属性は表示されません。
Daemon=Yesは、デーモンとして起動することを意味します。コマンドの設定画面で、「プロセスはデーモンである」をチェックしなかった場合は、この属性は表示されません。
作成したプロセス監視リソース配下に、作成済のCmdlineまたはプロセス監視リソースの関連付けを行う場合に使用します。関連付けを行えるリソースがある場合にのみこのボタンを選択することができます。設定方法については、“6.7.1.1 Cmdlineリソースの作成”の“◆Resourceの関連付け”を参照してください。
登録情報の内容確認後、<登録>をクリックします。
回線切替装置リソースの作成方法について、説明します。
回線切替装置リソースの作成前に、必ず事前設定を行ってください。
本リソースは、Oracle Solaris 10環境でのみ使用できます。
回線切替装置リソースを使用する前には、必ず以下の設定が必要となります。
■リソースの登録
回線切替装置を使用する場合は、あらかじめリソースデータベースに切替回線リソース(SH_SWLineクラス)を登録する必要があります。
ここでは、リソースデータベースに切替回線リソースを登録する方法を説明します。
◆登録手順の流れ
回線切替装置のリソース名の確認
切替回線リソースの登録
登録情報の確認
◆登録手順
回線切替装置のリソースのリソース名の確認
clgettree(1)コマンドを使用してリソースデータベースに登録されている回線切替装置のリソース名を調べます。
# clgettree
Cluster 1 cluster
Domain 2 CLUSTER
Shared 7 SHD_CLUSTER
SHD_DISK 21 SHD_Disk21 UNKNOWN
DISK 22 c5t0d0 ON node1
DISK 27 c4t0d0 ON node2
SH_SWU 18 SWU2002 UNKNOWN
Node 3 node1 ON
Ethernet 29 hme0 ON
DISK 19 c0t0d0 UNKNOWN
DISK 22 c5t0d0 ON
Node 5 node2 ON
Ethernet 30 hme0 ON
DISK 25 c0t0d0 UNKNOWN
DISK 27 c4t0d0 ON
“SH_SWU”と表示された行を調べます。この例では、“SWU2002”というリソース名であることが分かります。確認できない場合は“5.1.3.2 自動構成”を参照し、回線切替装置をリソースデータベースに登録してください。
参照
clgettree(1)コマンドで出力される内容については、後述の“■回線切替装置に関連するリソースの説明”を参照してください。
clgettree(1)コマンドの詳細は、マニュアルページを参照してください。
切替回線リソースの登録
claddswursc(1M)コマンドを使用して、切替回線リソースをリソースデータベースに登録します。
# claddswursc -k sh_swl_1 -s SWU2002 -0 node1 -1 node2 -m 0x3
この例では、手順1.で確認した“SWU2002”という回線切替装置を使って、“sh_swl_1”という名前の切替回線リソースを登録します。
切替ユニットのポート0は“node1”へ、ポート1はnode2へ接続されています。
LSU01とLSU00の2つの切替ユニットを使用するため、マスク値を0x3としています。
参照
claddswursc(1M)コマンドの詳細は、マニュアルページを参照してください。
登録情報の確認
リソースデータベースに回線切替装置の切替ユニットのリソースが登録されたことをclgettree(1)コマンドで確認してください。
例) SWLineクラスのリソースが回線切替装置の切替ユニットのリソースです。
SH_SWLineクラスのリソースが回線切替装置の切替ユニットの共用関係を示すリソースです。
# /etc/opt/FJSVcluster/bin/clgettree
Cluster 1 cluster
Domain 2 CLUSTER
Shared 7 SHD_CLUSTER
SHD_DISK 21 SHD_Disk21 UNKNOWN
DISK 22 c5t0d0 ON node1
DISK 27 c4t0d0 ON node2
SH_SWU 18 SWU2002 UNKNOWN
SH_SWLine 19 sh_swl_1 UNKNOWN
SWLine 35 sh_swl_1P0 UNKNOWN node1
SWLine 36 sh_swl_1P1 UNKNOWN node2
Node 3 node1 ON
Ethernet 29 hme0 ON
DISK 19 c0t0d0 UNKNOWN
DISK 22 c5t0d0 ON
SWLine 35 sh_swl_1P0 UNKNOWN
Node 5 node2 ON
Ethernet 30 hme0 ON
DISK 25 c0t0d0 UNKNOWN
DISK 27 c4t0d0 ON
SWLine 36 sh_swl_1P1 UNKNOWN
■回線切替装置に関連するリソースの説明
clgettreeコマンドの出力内容について説明します。
<出力例>
Cluster 1 cluster Domain 2 CLUSTER Shared 7 SHD_CLUSTER SHD_DISK 21 SHD_Disk21 UNKNOWN DISK 22 c5t0d0 ON node1 DISK 27 c4t0d0 ON node2 SH_SWU 18 SWU2002 UNKNOWN .....(a) SH_SWLine 19 sh_swl_1 UNKNOWN .....(b) SWLine 35 sh_swl_1P0 UNKNOWN node1 .....(c) SWLine 36 sh_swl_1P1 UNKNOWN node2 .....(d) Node 3 node1 ON Ethernet 29 hme0 ON DISK 19 c0t0d0 UNKNOWN DISK 22 c5t0d0 ON SWLine 35 sh_swl_1P0 UNKNOWN Node 5 node2 ON Ethernet 30 hme0 ON DISK 25 c0t0d0 UNKNOWN DISK 27 c4t0d0 ON SWLine 36 sh_swl_1P1 UNKNOWN
<説明>
上図の例では“SWU2002”が回線切替装置を表すリソースのリソース名です。
本リソースは、自動リソース登録を実行することで、PRIMECLUSTERに回線切替装置が認識された場合に表示されます。
上図の例では“sh_swl_1”が切替回線の共用リソースのリソース名(切替回線名)です。
本リソースはcladdswurscコマンドによって回線切替装置の切替回線リソースをリソースデータベースに登録した際に表示されます。
上図の例にあるように、本リソースはSH_SWLineクラスに属します。
回線切替装置の切替回線のリソースを表します。
上図の例では“sh_swl_1P0”と“sh_swl_1P1”が切替回線のリソースのリソース名です。
本リソースはcladdswurscコマンドによって回線切替装置の切替回線リソースをリソースデータベースに登録した際に表示されます。
上図の例にあるように、本リソースはSWLineクラスに属します。
回線切替装置リソースの作成方法について説明します。
図6.47 回線切替装置リソース作成の流れ
上記の“Resource タイプの選択でSH_SWLineを選択”までの操作は“6.7.1.1 Cmdlineリソースの作成”を参照してください。ここでは、“リソース情報の設定”からの操作を説明します。
注意
「ヘルプ」ボタンをクリックして表示されるヘルプの内容には、CUIのみで有効な情報も含まれています。
■リソース情報の設定
トップ画面を表示します。
Resourceタイプの選択で“SH_SWLine”を選択すると次の画面が表示されます。
作成処理を中止する場合は、<中止>ボタンをクリックします。
回線切替装置リソースの名前を確認します。
「アプリケーション名=name」のnameは、作成する回線切替装置リソースの名前です。
名前が正しければ手順5.に進みます。
変更する場合は手順3.に進みます。
「アプリケーション名=name」を選択し、<次へ>ボタンをクリックします。
リソース名を変更する画面が表示されます。
「情報の入力」をクリックして、リソース名を入力します。入力後に<次へ>ボタンをクリックします。
入力した内容で更新されたトップ画面が表示されます。内容を確認するため手順2.に進みます。
「高度な設定」チェックボックスを選択します。
画面に新しいメニューが追加されます。
回線切替装置が接続されたノードを確認します。
「ノード範囲指定=node-names」のnode-names はコロン(“:”)区切りでCFノード名が表示されます。
回線切替装置が接続されたすべてのノードが表示されている場合は、手順9.に進みます。
誤りがある場合は手順7.に進みます。
参考
リソースデータベースに登録されている切替回線リソース(SH_SWLineクラス)のうち、これらのノードで共通なリソースを、後の手順で回線切替装置リソースへ追加することができます。
「ノード範囲指定=node-names」を選択し、<次へ>をクリックします。
回線切替装置が接続されたノードを入力する画面が表示されます。
「情報の入力」をクリックして、回線切替装置が接続されたCFノード名をコロン(“:”)で区切って入力します。入力後に<次へ>ボタンをクリックします。
入力した内容で更新されたトップ画面が表示されます。内容を確認するため手順5.に進みます。
「クラスタリソースの追加」を選択し、<次へ>ボタンを選択します。
リソースデータベースに登録された切替回線リソースを選択する画面が表示されます。
この画面の例では、“sh_swl_1”という切替回線リソースを選択することができます。“情報の入力”以外に何も表示されていない場合は、次のことが考えられます。
手順5.で確認したノードに誤りがある。
リソースデータベースに切替回線リソースが登録されていない。
1つ目の場合は、手順5.に戻ってノードを確認します。手順5.に戻るには<戻る>ボタンをクリックします。
2つ目の場合は、“6.7.1.8.1 事前設定”を参照してリソースデータベースに回線切替リソースを登録してください。この場合、<戻る>ボタンをクリックし、表示された画面で更に<中止>ボタンをクリックし、この設定処理を一旦中止し最初から始めてください。
候補一覧から切替回線リソースを選択し、<次へ>をクリックします。
切替回線リソースが追加されたトップ画面が表示されます。
次のように表示されます。
クラスタリソース[number]=rsc-name
number 追加した順に番号が割り振られます。 rsc-name 追加されたリソース名が表示されます。
注意
属性を変更してはいけません。切替回線リソースを追加すると、「属性」と表示されたメニューが追加されます。このメニューを使用して切替回線リソースに対する属性を変更するとRMSは正しく動作しません。
“■登録の手順1.”に進みます。
■登録
「保存して登録」を選択します。
「保存して登録」を選択すると、<次へ>ボタンが<登録>ボタンに変更されます。
注意
登録可能な状態であれば、「保存して登録」メニューがトップ画面に追加されています。
<登録>ボタンをクリックします。
設定した内容で、回線切替装置リソースが作成され、“userApplication Configuration Wizardメニュー”の画面が表示されます。
手順はこれで終了です。
ISVリソース作成は、各製品のマニュアルを参照してください。