この節では、SPARCstorage Array トレーの管理作業について説明します。障害が発生したコンポーネントに対応するトレーを確認するには、ノードのハードウェアマニュアルに示された作業方法に従ってください。
SPARCstorage Array シャーシ全体を交換しなければならないようなデータ消失や障害を防ぐには、単一のシャーシにサブミラーが 1 つだけが格納されるようにすべてのミラーを設定します。
Sun Cluster がサポートする SPARCstorage Array モデルはいくつかありますが、この節の作業は SPARCstorage Array 100 シリーズだけを対象としています。
SPARCstorage Array トレーを取り外す前に、すべての I/O を停止し、トレー内のすべてのドライブを停止する必要があります。ドライブは I/O 要求が出されると自動的に起動するため、ドライブを停止する前にすべての I/O を停止する必要があります。
次に、Solstice DiskSuite 構成で SPARCstorage Array トレーを取り外す手順の概略を示します。
論理ホストをほかのクラスタノードに切り替える
影響を受けるトレーの I/O を停止する
影響を受けるトレー上の複製、ホットスペア、サブミラーを確認する
NVRAM データをフラッシュする (NVRAM が有効になっている場合)
トレーを停止し、取り外す
SPARCstorage Array 全体がサービスの対象となっている場合は、これらの手順をトレーごとに行う必要があります。
次に、Solstice DiskSuite 構成で SPARCstorage Array トレーをサービスから除く詳しい手順を示します。
haswitch(1M) コマンドを使用して、影響を受けた論理ホストの所有権をほかのノードに切り替えます。
phys-hahost1# haswitch phys-hahost1 hahost1 hahost2 |
取り外す SPARCstorage Array トレーに、複数の論理ホストに含まれるディスクが搭載されている場合があります。このような場合は、このトレーを使用しているディスクを含むすべての論理ホストの所有権を、クラスタ内の別のノードに切り替えてください。後でディスクを停止する場合には、luxadm(1M) コマンドを使用します。この例では、haswitch(1M) コマンドで論理ホストを phys-hahost1 に切り替えることにより、phys-hahost2 が管理機能を実行できるようにしています。
影響を受けるすべての論理ホストで metastat(1M) コマンドを実行し、取り外されるトレー上のスライスを含むすべてのサブミラーを確認します。
phys-hahost1# metastat -s disksetname |
影響を受けるトレー上にコンポーネント (スライス) が存在するサブミラーの I/O を停止します。
この作業には、サブミラーをオフラインにする metaoffline(1M) コマンドを使用してください。metadetach(1M) コマンドでも I/O を停止できますが、同期をとり直す手間が増えます。
トレー上のサブミラーがオフラインになると、対応するミラーは片方向のミラー化だけを行うようになります。つまり、データの冗長性は確保されなくなります (3 重のミラーにはこの問題はありません)。ミラーをオンラインに戻すと、自動的に同期がとり直されます。
影響を受けるすべてのサブミラーがオフラインになっている間、トレーの I/O は停止します。
metadb(1M) コマンドを使用して、トレー上の複製を確認します。
トレーの交換時に使用できるように、metadb(1M) の出力を保存してください。
metahs(1M) コマンドを使用して、使用できるホットスペアデバイスと対応するサブミラーを確認します。
トレーの交換時に使用できるように、metahs(1M) の出力を保存してください。
NVRAM が有効な場合は、適切なコントローラ、トレー、ディスクに NVRAM データをフラッシュします。
phys-hahost1# luxadm sync_cache pathname |
NVRAM データがフラッシュされたことを示す確認メッセージが表示されます。NVRAM データのフラッシュについては、「NVRAM のフラッシュとパージ」を参照してください。
luxadm stop コマンドを使用して、トレーを停止します。
トレーのロックライトが消えた後、トレーを取り外し、必要な作業を行なってください。
phys-hahost1# luxadm stop c1 |
SPARCstorage Array トレーを取り外す前に、すべての I/O を停止し、トレー内のすべてのドライブを停止する必要があります。ドライブは I/O 要求が出されると自動的に起動するため、ドライブを停止する前にすべての I/O を停止する必要があります。
次に、VxVM 構成で SPARCstorage Array トレーをサービスから除く手順の概略を示します。
論理ホストをほかのクラスタノードに切り替える
影響を受けるトレー上の VxVM オブジェクトを確認する
影響を受けるトレーの I/O を停止する
NVRAM データをフラッシュする (NVRAM が有効になっている場合)
トレーを停止し、取り外す
SPARCstorage Array 全体が稼動している場合は、これらの手順をトレーごとに行う必要があります。
次に、VxVM 構成で SPARCstorage Array トレーを取り外す詳しい手順を示します。
haswitch(1M) コマンドを使用して、影響を受ける論理ホストの所有権をほかのノードに切り替えます。
phys-hahost1# haswitch phys-hahost1 hahost1 hahost2 |
取り外す SPARCstorage Array トレーに、複数の論理ホストに含まれるディスクが搭載されている場合があります。このような場合は、このトレーを使用しているディスクを含むすべての論理ホストの所有権を、クラスタ内の別のノードに切り替えてください。後でディスクを停止する場合には、luxadm(1M) コマンドを使用します。この例では、haswitch(1M) コマンドで論理ホストを phys-hahost1 に切り替えることにより、phys-hahost2 が管理機能を実行できるようにしています。
取り外すトレー内のディスクのすべてのボリュームおよび対応するプレックスを確認します。
デバイスの物理アドレス cNtNdN から、コントローラ番号とターゲット番号を取得します。
たとえば、デバイスアドレスが c3t2d0 の場合、コントローラ番号は 3、ターゲット番号は 2 です。
vxdisk list の出力から、影響を受けるトレー上の VxVM または CVM デバイスを確認します。
ターゲット番号が 0 または 1 の場合、cNt0 と cNt1 から始まる物理アドレスを持つデバイスをすべて確認します。ターゲット番号が 2 または 3 の場合、cNt2 と cNt3 から始まる物理アドレスを持つデバイスをすべて確認します。ターゲット番号が 4 または 5 の場合、cNt4 と cNt5 から始まる物理アドレスを持つデバイスをすべて確認します。次に、vxdisk を使用して情報を取得する例を示します。
# vxdisk -g diskgroup -q list | egrep c3t2¥|c3t3 | nawk '{print $3}' |
次のコマンドを使用して、上記のデバイス上のすべてのプレックスを確認します。
PLLIST=`vxprint -ptq -g diskgroup -e '(aslist.sd_dm_name in ("c3t2d0","c3t3d0","c3t3d1")) && (pl_kstate=ENABLED)' | nawk '{print $2}'` |
csh では、構文は set PLLIST .... .... となります。ksh では、構文は export PLLIST= .... となります。Bourne シェルでは、変数が設定された後でコマンド export PLLIST が必要になります。
変数を設定した後、トレー上にコンポーネント (サブディスク) を持つボリュームの I/O を停止します。
トレーに対応したすべてのボリュームが切り離されたかどうか (ミラー構成または RAID5 構成の場合)、あるいは停止された (単純プレックスの場合) かどうかを確認します。ミラー化プレックスを切り離すには、次のコマンドを発行します。
# vxplex det ${PLLIST} |
トレー内の各プレックスを切り離すには、次のコマンドも使用できます。
# vxplex -g diskgroup -v volume det plex |
単純プレックスの I/O を停止するには、ファイルシステムのマウントを解除するか、データベースアクセスを停止します。
ミラーのもう一方がまだ使用可能なため、ミラー化ボリュームはアクティブなままです。
NVRAM が有効な場合は、適切なコントローラ、トレー、ディスクにNVRAM データをフラッシュします。NVRAM が無効な場合は、手順 5 に進んでください。
# luxadm sync_cache pathname |
NVRAM データがフラッシュされたことを示す確認メッセージが表示されます。NVRAM データのフラッシュについては、「NVRAM のフラッシュとパージ」を参照してください。
luxadm stop コマンドを使用して、トレーを停止します。
トレーのロックライトが消えた後、トレーを取り外し、必要な作業を行なってください。
# luxadm stop c1 |
次に、Solstice DiskSuite 構成で SPARCstorage Array トレーを稼動状態に戻す手順の概略を示します。
ドライブを起動する
複製、サブミラー、ホットスペアをすべて復元する
各論理ホストをそれらのデフォルトマスターにスイッチバックする
SPARCstorage Array 全体がサービスの対象となっていた場合は、これらの作業をトレーごとに行う必要があります。
次に、Solstice DiskSuite 構成で SPARCstorage Array トレーを稼動状態に戻す詳しい手順を示します。
SPARCstorage Array が除去されている場合は、SPARCstorage Array トレー内のドライブを起動します。除去されていなかった場合は、手順 3に進んでください。
SPARCstorage Array トレーの作業が完了した後、トレーをシャーシに戻してください。ディスクは、通常自動的に起動します。ディスクが起動しない場合は、luxadm(1M) start コマンドを実行し、トレー全体を手動で起動してください。SPARCstorage Array では、コマンドの呼び出しとドライブの起動の間にわずかな遅延 (数秒) があります。次の例では、c1 がコントローラ ID です。
phys-hahost1# luxadm start c1 |
このトレーのディスクから削除されたメタデバイス状態データベースの複製をすべて追加します。
「SPARCstorage Array トレーを取り外すには (Solstice DiskSuite)」の 手順 4 で保存した情報を使用して、メタデバイス状態データベースの複製を復元してください。
phys-hahost1# metadb -s hahost1 -a deleted-replicas |
同じスライスに複数の複製を追加するには、-c オプションを使用してください。
ディスクが起動した後、オフラインにしたサブミラーをすべてオンラインに戻します。
このトレーのディスクに該当する metaonline(1M) コマンドを使用してください。
phys-hahost1# metaonline -s hahost1 d15 d35 phys-hahost1# metaonline -s hahost1 d24 d54 ... |
metaonline(1M) コマンドの実行時に、最適化された再同期オペレーションがサブミラーを自動的に最新の状態にします。最適化された再同期オペレーションは、サブミラーがオフラインであった間に変更されたディスク領域だけコピーします。これは、通常、サブミラー容量のごく一部です。
metaonline(1M) は、すべてのサブミラーがオンラインに戻るまで必要な回数実行してください。
metaoffline(1M) ではなく metadetach(1M) コマンドを使用してサブミラーを切り離した場合は、metattach(1M) コマンドを使用してサブミラー全体の同期をとる必要があります。この作業は、通常、1G バイトのデータあたり約 10 分かかります。
SPARCstorage Array が取り外された時に削除されたホットスペアをすべて追加し直します。
ホットスペア構成に合わせて、適宜 metahs(1M) コマンドを使用してください。「SPARCstorage Array トレーを取り外すには (Solstice DiskSuite)」の 手順 5 で保存した情報を使用して、ホットスペアを交換してください。
phys-hahost1# metahs -s hahost1 -a hotsparepool cNtXdYsZ |
必要に応じて、各論理ホストをそのデフォルトマスターに切り替えます。
phys-hahost1# haswitch phys-hahost2 hahost2 |
次に、VxVM 構成で SPARCstorage Array トレーを稼動状態に戻す手順の概略を示します。
ドライブを起動する
VxVM オブジェクトを復元する
各論理ホストをそれらのデフォルトマスターにスイッチバックする
SPARCstorage Array 全体がサービスの対象となっていた場合は、これらの作業をトレーごとに行う必要があります。
次に、VxVM 構成で SPARCstorage Array トレーを稼動状態に戻す詳しい手順を示します。
SPARCstorage Array が除去されている場合は、SPARCstorage Array トレー内のドライブを起動します。除去されていない場合は、手順 2に進んでください。
SPARCstorage Array トレーの作業が完了した後、トレーをシャーシに戻してください。ディスクは、通常自動的に起動します。ディスクが起動しない場合は、luxadm(1M) start コマンドを実行し、トレー全体を手動で起動してください。SPARCstorage Array では、コマンドの呼び出しとドライブの起動の間にわずかな遅延 (数秒) があります。次の例では、c1 がコントローラ ID です。
phys-hahost1# luxadm start c1 |
ディスクが起動した後、ボリューム管理の回復を監視します。
先に影響を受けたトレー上のボリュームがオンラインに戻り始め、数分のうちにデータの再構築が自動的に始まります。必要に応じて、vxreattach と vxrecover コマンドを使用して、ディスクの再接続とエラー回復を行なってください。詳細は、それぞれのマニュアルページを参照してください。
切り離された DRL サブディスクは、手動で再接続する必要があります。
必要に応じて、各論理ホストをそのデフォルトマスターにスイッチバックします。
phys-hahost1# haswitch phys-hahost2 hahost2 |