ストレージベースの複製によって複製されたデバイスを含めるよう、Sun Cluster デバイスグループを構成することができます。Sun Cluster ソフトウェアは、ストレージベースの複製用に Hitachi TrueCopy および EMC Symmetrix Remote Data Facility ソフトウェアをサポートしています。
Hitachi TrueCopy または EMC Symmetrix Remote Data Facility ソフトウェアでデータを複製する前に、ストレージベースの複製用ソフトウェアのマニュアルによく目を通し、ストレージベースの複製製品と最新のパッチを、使用しているシステムにインストールしておいてください。ストレージベースの複製ソフトウェアのインストールについては、製品のマニュアルを参照してください。
ストレージベースの複製ソフトウェアは、デバイスのペアを複製として構成する際、一方のデバイスを主複製、もう一方のデバイスを二次複製とします。一方のノードのセットに接続されたデバイスが、常に主複製になります。もう一方のノードのセットに接続されたデバイスは、二次複製になります。
Sun Cluster 構成では、複製が属する Sun Cluster デバイスグループが移動されると、常に、主複製が自動的に移動されます。そのため、Sun Cluster 構成下では、主複製を直接移動してはいけません。その代わりに、テイクオーバーは関連する Sun Cluster デバイスグループを移動することによって行うべきです。
作成する Sun Cluster デバイスグループ (Solaris Volume Manager、Veritas Volume Manager、または raw ディスク) の名前は、複製されたデバイスグループと同じ名前にしてください。
ここでは、次の手順について説明します。
次の表に、Hitachi TrueCopy によるストレージベースの複製されたデバイスを設定するために実行する作業を示します。
表 5–2 作業マップ: Hitachi TrueCopy によるストレージベースの複製デバイスの管理
作業 |
参照先 |
---|---|
ストレージデバイスとノードに TrueCopy ソフトウェアをインストールする |
Hitachi ストレージデバイスに付属するマニュアルを参照してください。 |
Hitachi 複製グループを構成する | |
DID デバイスを構成する | |
複製されたグループを登録する |
「デバイスグループを追加および登録する (Solaris ボリュームマネージャー)」または「ディスクグループをデバイスグループとして登録する (VERITAS Volume Manager)」 |
構成を確認する |
まず、主クラスタの共有ディスクに Hitachi TrueCopy デバイスグループを構成します。この構成情報は、Hitachi アレイへのアクセス権を持つ各クラスタノードの /etc/horcm.conf ファイルに指定します。 /etc/horcm.conf ファイルを構成する方法についての詳細は、『Sun StorEdge SE 9900 V Series Command and Control Interface User and Reference Guide』を参照してください。
作成する Sun Cluster デバイスグループ (Solaris Volume Manager、Veritas Volume Manager、ZFS、または raw ディスク) の名前は、複製されたデバイスグループと同じ名前にしてください。
ストレージアレイに接続されたすべてのノードで、スーパーユーザーになるか、RBAC の承認 solaris.cluster.modify を提供する役割になります。
/etc/services ファイルに horcm エントリを追加します。
horcm 9970/udp |
新しいエントリのポート番号とプロトコル名を指定します。
/etc/horcm.conf ファイルに Hitachi TrueCopy デバイスグループの構成情報を指定します。
手順については、TrueCopy ソフトウェアに付属するマニュアルを参照してください。
すべてのノード上で horcmstart.sh コマンドを実行することにより、TrueCopy CCI デーモンを起動します。
# /usr/bin/horcmstart.sh |
まだ複製のペアを作成していない場合は、この時点で作成します。
paircreate コマンドを使用して、希望のフェンスレベルを持つ複製のペアを作成します。複製のペアの作成方法の手順については、TrueCopy のマニュアルを参照してください。
複製されたデバイスを使用して構成された各ノード上で、pairdisplay コマンドを使用することでデータ複製が正しく設定されていることを確認します。 ASYNC の fence_level を持つ Hitachi TrueCopy または Hitachi Universal Replicator デバイスグループは、システムの他のデバイスと ctgid を共有することはできません。
# pairdisplay -g group-name Group PairVol(L/R) (Port#,TID,LU),Seq#,LDEV#,P/S,Status,Fence,Seq#,P-LDEV# M group-name pair1(L) (CL1-C , 0, 9) 54321 58..P-VOL PAIR NEVER ,12345 29 - group-name pair1(R) (CL1-A , 0, 29)12345 29..S-VOL PAIR NEVER ,----- 58 - |
すべてのノードが複製グループをマスターできることを確認します。
どのノードに主複製が含まれ、どのノードに二次複製が含まれているかを判別するには、pairdisplay コマンドを使用します。
# pairdisplay -g group-name Group PairVol(L/R) (Port#,TID,LU),Seq#,LDEV#,P/S,Status,Fence,Seq#,P-LDEV# M group-name pair1(L) (CL1-C , 0, 9) 54321 58..P-VOL PAIR NEVER ,12345 29 - group-name pair1(R) (CL1-A , 0, 29)12345 29..S-VOL PAIR NEVER ,----- 58 - |
P-VOL 状態のローカル (L) デバイスを持つノードには主複製が含まれ、S-VOL 状態のローカル (L) デバイスを持つノードには二次複製が含まれます。
二次ノードをマスターにするには、二次複製が含まれるノード上で horctakeover コマンドを実行します。
# horctakeover -g group-name |
次の手順に進む前に、初期データコピーが完了するのを待ちます。
horctakeover を実行したノードが、この時点で、P-VOL 状態のロー カル (L) デバイスを持っていることを確認します。
# pairdisplay -g group-name Group PairVol(L/R) (Port#,TID,LU),Seq#,LDEV#,P/S,Status,Fence,Seq#,P-LDEV# M group-name pair1(L) (CL1-C , 0, 9) 54321 58..S-VOL PAIR NEVER ,12345 29 - group-name pair1(R) (CL1-A , 0, 29)12345 29..P-VOL PAIR NEVER ,----- 58 - |
もとは主複製が含まれていたノード上で horctakeover コマンドを実行します。
# horctakeover -g group-name |
pairdisplay コマンドを実行することで、主ノードが元の構成に戻ったことを確認します。
# pairdisplay -g group-name Group PairVol(L/R) (Port#,TID,LU),Seq#,LDEV#,P/S,Status,Fence,Seq#,P-LDEV# M group-name pair1(L) (CL1-C , 0, 9) 54321 58..P-VOL PAIR NEVER ,12345 29 - group-name pair1(R) (CL1-A , 0, 29)12345 29..S-VOL PAIR NEVER ,----- 58 - |
「Hitachi TrueCopy を使用して DID デバイスを複製用に構成する」の手順に従って、複製されたデバイスの構成を続けます。
複製されたデバイス用にデバイスグループを構成したあと、複製されたデバイスが使用するデバイス識別子 (DID) ドライバを構成します。
phys-schost# プロンプトは、グローバルクラスタのプロンプトを表します。この手順は、グローバルクラスタ上で実行します。
この手順では、長形式の Sun Cluster コマンドを使用して説明します。多くのコマンドには短縮形もあります。コマンド名の形式の長短を除き、コマンドは同一です。コマンドのリストとその短縮形については、付録 B Sun Cluster オブジェクト指向コマンドを参照してください。
クラスタの任意のノードで、スーパーユーザーになるか、RBAC の承認 solaris.cluster.modify を提供する役割になります。
すべてのノード上で horcm デーモンが実行中であることを確認します。
実行されていない場合は、次のコマンドでデーモンが起動されます。デーモンがすでに実行されている場合は、システムによりメッセージが表示されます。
# /usr/bin/horcmstart.sh |
pairdisplay コマンドを実行して、どのノードに二次複製が含まれているかを判別します。
# pairdisplay -g group-name Group PairVol(L/R) (Port#,TID,LU),Seq#,LDEV#,P/S,Status,Fence,Seq#,P-LDEV# M group-name pair1(L) (CL1-C , 0, 9) 54321 58..P-VOL PAIR NEVER ,12345 29 - group-name pair1(R) (CL1-A , 0, 29)12345 29..S-VOL PAIR NEVER ,----- 58 - |
S-VOL 状態のローカル (L) デバイスを持つノードには二次複製が含まれています。
(前の手順で判別した) 二次複製を持つノードで、ストレージベースの複製で使用するための DID デバイスを構成します。
このコマンドは、デバイス複製ペアの 2 つの独立した DID インスタンスを、1 つの論理 DID インスタンスに結合します。この 1 つのインスタンスにより、そのデバイスをボリューム管理ソフトウェアで両側から使用できるようになります。
二次複製に複数のノードが接続されている場合、このコマンドは、それらのノードのうちの 1 つのノード上でのみ実行してください。
# cldevice replicate -D primary-replica-nodename -S secondary replica-nodename |
主複製が格納されているリモートノードの名前を指定します。
現在のノード以外のソースノードを指定します。
二次複製が格納されているリモートノードの名前を指定します。
デフォルトでは、現在のノードがソースノードです。-S オプションは、別のソースノードを指定するのに使用します。
DID インスタンスが結合されていることを確認します。
# cldevice list -v logical_DID_device |
TrueCopy 複製が設定されていることを確認します。
# cldevice show logical_DID_device |
コマンド出力には、TrueCopy が複製タイプであることが示されるはずです。
DID の再マッピングによって、すべての複製されたデバイスが正しく結合されなかった場合、手動で個別の複製されたデバイスを結合します。
DID インスタンスを手動で結合する際には、特に注意してください。デバイスの再マッピングが正しくないと、データが破損する可能性があります。
二次複製が含まれるすべてのノード上で cldevice combine コマンドを実行します。
# cldevice combine -d destination-instance source-instance |
主複製に対応するリモート DID インスタンス。
二次複製に対応するローカル DID インスタンス。
DID の再マッピングが正しく行われたことを確認します。
# cldevice list desination-instance source-instance |
DID インスタンスの 1 つは表示されないはずです。
すべてのノード上で、すべての結合された DID インスタンスの DID デバイスがアクセス可能であることを確認します。
# cldevice list -v |
複製されたデバイスグループの構成をを完了するには、次の手順を実行します。
「デバイスグループを追加および登録する (Solaris ボリュームマネージャー)」または「ディスクグループをデバイスグループとして登録する (VERITAS Volume Manager)」
デバイスグループを登録する際には、必ず TrueCopy 複製グループと同じ名前を指定します。
グローバルデバイスグループを確認する前に、まずそれを作成します。Solaris Volume Manager、Veritas Volume Manager、ZFS、raw ディスクからデバイスグループを使用することができます。詳細は、次を参照してください。
作成する Sun Cluster デバイスグループ (Solaris Volume Manager、Veritas Volume Manager、または raw ディスク) の名前は、複製されたデバイスグループと同じ名前にしてください。
phys-schost# プロンプトは、グローバルクラスタのプロンプトを表します。この手順は、グローバルクラスタ上で実行します。
この手順では、長形式の Sun Cluster コマンドを使用して説明します。多くのコマンドには短縮形もあります。コマンド名の形式の長短を除き、コマンドは同一です。コマンドのリストとその短縮形については、付録 B Sun Cluster オブジェクト指向コマンドを参照してください。
主デバイスグループが、主複製が含まれるノードと同じノードに対応することを確認します。
# pairdisplay -g group-name # cldevicegroup status -n nodename group-name |
デバイスグループに複製のプロパティーが設定されていることを確認します。
# cldevicegroup show -n nodename group-name |
デバイスに複製されたプロパティーが設定されていることを確認します。
# usr/cluster/bin/cldevice status [-s state] [-n node[,?]] [+| [disk-device ]] |
試験的にスイッチオーバーを実行して、デバイスグループが正しく構成され、複製がノード間を移動できることを確認します。
デバイスグループがオフラインのときは、オンラインにします。
# cldevicegroup switch -n nodename group-name |
デバイスグループの切り替え先のノード。このノードが新しい主ノードになります。
次のコマンドの出力を比較することにより、スイッチオーバーが成功したことを確認します。
# pairdisplay -g group-name # cldevicegroup status -n nodename group-name |
この例では、クラスタの TrueCopy 複製を設定するのに必要な Sun Cluster 固有の手順を完了します。この例では、すでに次の作業が完了していることが前提となっています。
Hitachi LUN の設定が完了している
ストレージデバイスとクラスタノードに TrueCopy ソフトウェアがインストール済みである
クラスタノード上で複製ペアが構成済みである
複製ペアの構成手順については、「Hitachi TrueCopy 複製グループを構成する」を参照してください。
この例では、TrueCopy を使用する 3 ノードクラスタを扱います。クラスタは 2 つのリモートサイトにまたがっており、一方のサイトに 2 つのノードがあり、もう一方のサイトに 1 つのノードがあります。各サイトにはそれぞれ Hitachi ストレージデバイスがあります。
次の例に、各ノード上の TrueCopy /etc/horcm.conf 構成ファイルを示します。
HORCM_DEV #dev_group dev_name port# TargetID LU# MU# VG01 pair1 CL1-A 0 29 VG01 pair2 CL1-A 0 30 VG01 pair3 CL1-A 0 31 HORCM_INST #dev_group ip_address service VG01 node-3 horcm |
HORCM_DEV #dev_group dev_name port# TargetID LU# MU# VG01 pair1 CL1-A 0 29 VG01 pair2 CL1-A 0 30 VG01 pair3 CL1-A 0 31 HORCM_INST #dev_group ip_address service VG01 node-3 horcm |
HORCM_DEV #dev_group dev_name port# TargetID LU# MU# VG01 pair1 CL1-C 0 09 VG01 pair2 CL1-C 0 10 VG01 pair3 CL1-C 0 11 HORCM_INST #dev_group ip_address service VG01 node-1 horcm VG01 node-2 horcm |
上記の例では、3 つの LUN が 2 つのサイト間で複製されます。LUN はすべて VG01 という名前の複製グループ内にあります。pairdisplay コマンドを使用すると、この情報が確認され、またノード 3 には主複製があることが示されます。
# pairdisplay -g VG01 Group PairVol(L/R) (Port#,TID,LU),Seq#,LDEV#.P/S,Status,Fence, Seq#,P-LDEV# M VG01 pair1(L) (CL1-A , 0, 29)61114 29..S-VOL PAIR NEVER ,----- 58 - VG01 pair1(R) (CL1-C , 0, 9)20064 58..P-VOL PAIR NEVER ,61114 29 - VG01 pair2(L) (CL1-A , 0, 30)61114 30..S-VOL PAIR NEVER ,----- 59 - VG01 pair2(R) (CL1-C , 0, 10)20064 59..P-VOL PAIR NEVER ,61114 30 - VG01 pair3(L) (CL1-A , 0, 31)61114 31..S-VOL PAIR NEVER ,----- 60 - VG01 pair3(R) (CL1-C , 0, 11)20064 60..P-VOL PAIR NEVER ,61114 31 - |
# pairdisplay -g VG01 Group PairVol(L/R) (Port#,TID,LU),Seq#,LDEV#.P/S,Status,Fence, Seq#,P-LDEV# M VG01 pair1(L) (CL1-A , 0, 29)61114 29..S-VOL PAIR NEVER ,----- 58 - VG01 pair1(R) (CL1-C , 0, 9)20064 58..P-VOL PAIR NEVER ,61114 29 - VG01 pair2(L) (CL1-A , 0, 30)61114 30..S-VOL PAIR NEVER ,----- 59 - VG01 pair2(R) (CL1-C , 0, 10)20064 59..P-VOL PAIR NEVER ,61114 30 - VG01 pair3(L) (CL1-A , 0, 31)61114 31..S-VOL PAIR NEVER ,----- 60 - VG01 pair3(R) (CL1-C , 0, 11)20064 60..P-VOL PAIR NEVER ,61114 31 - |
# pairdisplay -g VG01 Group PairVol(L/R) (Port#,TID,LU),Seq#,LDEV#.P/S,Status,Fence, Seq#,P-LDEV# M VG01 pair1(L) (CL1-C , 0, 9)20064 58..P-VOL PAIR NEVER ,61114 29 - VG01 pair1(R) (CL1-A , 0, 29)61114 29..S-VOL PAIR NEVER ,----- 58 - VG01 pair2(L) (CL1-C , 0, 10)20064 59..P-VOL PAIR NEVER ,61114 30 - VG01 pair2(R) (CL1-A , 0, 30)61114 30..S-VOL PAIR NEVER ,----- 59 - VG01 pair3(L) (CL1-C , 0, 11)20064 60..P-VOL PAIR NEVER ,61114 31 - VG01 pair3(R) (CL1-A , 0, 31)61114 31..S-VOL PAIR NEVER ,----- 60 - |
どのディスクが使用されているかを確認するには、次の例に示すように、pairdisplay コマンドの -fd オプションを使用します。
# pairdisplay -fd -g VG01 Group PairVol(L/R) Device_File ,Seq#,LDEV#.P/S,Status,Fence,Seq#,P-LDEV# M VG01 pair1(L) c6t500060E8000000000000EEBA0000001Dd0s2 61114 29..S-VOL PAIR NEVER ,----- 58 - VG01 pair1(R) c5t50060E800000000000004E600000003Ad0s2 20064 58..P-VOL PAIR NEVER ,61114 29 - VG01 pair2(L) c6t500060E8000000000000EEBA0000001Ed0s2 61114 30..S-VOL PAIR NEVER ,----- 59 - VG01 pair2(R) c5t50060E800000000000004E600000003Bd0s2 0064 59..P-VOL PAIR NEVER ,61114 30 - VG01 pair3(L) c6t500060E8000000000000EEBA0000001Fd0s2 61114 31..S-VOL PAIR NEVER ,----- 60 - VG01 pair3(R) c5t50060E800000000000004E600000003Cd0s2 20064 60..P-VOL PAIR NEVER ,61114 31 - |
# pairdisplay -fd -g VG01 Group PairVol(L/R) Device_File ,Seq#,LDEV#.P/S,Status,Fence,Seq#,P-LDEV# M VG01 pair1(L) c5t500060E8000000000000EEBA0000001Dd0s2 61114 29..S-VOL PAIR NEVER ,----- 58 - VG01 pair1(R) c5t50060E800000000000004E600000003Ad0s2 20064 58..P-VOL PAIR NEVER ,61114 29 - VG01 pair2(L) c5t500060E8000000000000EEBA0000001Ed0s2 61114 30..S-VOL PAIR NEVER ,----- 59 - VG01 pair2(R) c5t50060E800000000000004E600000003Bd0s2 20064 59..P-VOL PAIR NEVER ,61114 30 - VG01 pair3(L) c5t500060E8000000000000EEBA0000001Fd0s2 61114 31..S-VOL PAIR NEVER ,----- 60 - VG01 pair3(R) c5t50060E800000000000004E600000003Cd0s2 20064 60..P-VOL PAIR NEVER ,61114 31 - |
# pairdisplay -fd -g VG01 Group PairVol(L/R) Device_File ,Seq#,LDEV#.P/S,Status,Fence ,Seq#,P-LDEV# M VG01 pair1(L) c5t50060E800000000000004E600000003Ad0s2 20064 58..P-VOL PAIR NEVER ,61114 29 - VG01 pair1(R) c6t500060E8000000000000EEBA0000001Dd0s2 61114 29..S-VOL PAIR NEVER ,----- 58 - VG01 pair2(L) c5t50060E800000000000004E600000003Bd0s2 20064 59..P-VOL PAIR NEVER ,61114 30 - VG01 pair2(R) c6t500060E8000000000000EEBA0000001Ed0s2 61114 30..S-VOL PAIR NEVER ,----- 59 - VG01 pair3(L) c5t50060E800000000000004E600000003Cd0s2 20064 60..P-VOL PAIR NEVER ,61114 31 - VG01 pair3(R) c6t500060E8000000000000EEBA0000001Fd0s2 61114 31..S-VOL PAIR NEVER ,----- 60 - |
これらの例は、次のディスクが使用されていることを示しています。
ノード 1 で、次のコマンドを実行します。
c6t500060E8000000000000EEBA0000001Dd0s2
c6t500060E8000000000000EEBA0000001Ed0s2
c6t500060E8000000000000EEBA0000001Fd0s
ノード 2 :
c5t500060E8000000000000EEBA0000001Dd0s2
c5t500060E8000000000000EEBA0000001Ed0s2
c5t500060E8000000000000EEBA0000001Fd0s2
ノード 3 :
c5t50060E800000000000004E600000003Ad0s2
c5t50060E800000000000004E600000003Bd0s2
c5t50060E800000000000004E600000003Cd0s2
これらのディスクに対応する DID デバイスを確認するには、次の例に示すように、cldevice list コマンドを使用します。
# cldevice list -v DID Device Full Device Path ---------- ---------------- 1 node-1:/dev/rdsk/c0t0d0 /dev/did/rdsk/d1 2 node-1:/dev/rdsk/c0t6d0 /dev/did/rdsk/d2 11 node-1:/dev/rdsk/c6t500060E8000000000000EEBA00000020d0 /dev/did/rdsk/d11 11 node-2:/dev/rdsk/c5t500060E8000000000000EEBA00000020d0 /dev/did/rdsk/d11 12 node-1:/dev/rdsk/c6t500060E8000000000000EEBA0000001Fd0 /dev/did/rdsk/d12 12 node-2:/dev/rdsk/c5t500060E8000000000000EEBA0000001Fd0 /dev/did/rdsk/d12 13 node-1:/dev/rdsk/c6t500060E8000000000000EEBA0000001Ed0 /dev/did/rdsk/d13 13 node-2:/dev/rdsk/c5t500060E8000000000000EEBA0000001Ed0 /dev/did/rdsk/d13 14 node-1:/dev/rdsk/c6t500060E8000000000000EEBA0000001Dd0 /dev/did/rdsk/d14 14 node-2:/dev/rdsk/c5t500060E8000000000000EEBA0000001Dd0 /dev/did/rdsk/d14 18 node-3:/dev/rdsk/c0t0d0 /dev/did/rdsk/d18 19 node-3:/dev/rdsk/c0t6d0 /dev/did/rdsk/d19 20 node-3:/dev/rdsk/c5t50060E800000000000004E6000000013d0 /dev/did/rdsk/d20 21 node-3:/dev/rdsk/c5t50060E800000000000004E600000003Dd0 /dev/did/rdsk/d21 22 node-3:/dev/rdsk/c5t50060E800000000000004E600000003Cd0 /dev/did/rdsk/d2223 23 node-3:/dev/rdsk/c5t50060E800000000000004E600000003Bd0 /dev/did/rdsk/d23 24 node-3:/dev/rdsk/c5t50060E800000000000004E600000003Ad0 /dev/did/rdsk/d24 |
複製されたデバイスの各ペアの DID インスタンスを結合する場合、 cldevice list は DID インスタンス 12 を 22、インスタンス 13 を 23、インスタンス 14 を 24 と結合するはずです。ノード 3 には主複製があるため、ノード 1 またはノード 2 のいずれかから cldevice -T コマンドを実行します。インスタンスの結合は常に、二次複製があるノードから行います。このコマンドは 1 つのノードからのみ実行し、両方のノード上では実行しないでください。
次の例に、ノード 1 上でこのコマンドを実行することにより DID インスタンスを結合した場合の出力を示します。
# cldevice replicate -D node-3 Remapping instances for devices replicated with node-3... VG01 pair1 L node-1:/dev/rdsk/c6t500060E8000000000000EEBA0000001Dd0 VG01 pair1 R node-3:/dev/rdsk/c5t50060E800000000000004E600000003Ad0 Combining instance 14 with 24 VG01 pair2 L node-1:/dev/rdsk/c6t500060E8000000000000EEBA0000001Ed0 VG01 pair2 R node-3:/dev/rdsk/c5t50060E800000000000004E600000003Bd0 Combining instance 13 with 23 VG01 pair3 L node-1:/dev/rdsk/c6t500060E8000000000000EEBA0000001Fd0 VG01 pair3 R node-3:/dev/rdsk/c5t50060E800000000000004E600000003Cd0 Combining instance 12 with 22 |
cldevice list の出力を確認すると、両方のサイトの LUN には同じ DID インスタンスがあります。次の例に示すように、同じ DID インスタンスを持っていると、各複製ペアは単一の DID デバイスのように見えます。
# cldevice list -v DID Device Full Device Path ---------- ---------------- 1 node-1:/dev/rdsk/c0t0d0 /dev/did/rdsk/d1 2 node-1:/dev/rdsk/c0t6d0 /dev/did/rdsk/d2 11 node-1:/dev/rdsk/c6t500060E8000000000000EEBA00000020d0 /dev/did/rdsk/d11 11 node-2:/dev/rdsk/c5t500060E8000000000000EEBA00000020d0 /dev/did/rdsk/d11 18 node-3:/dev/rdsk/c0t0d0 /dev/did/rdsk/d18 19 node-3:/dev/rdsk/c0t6d0 /dev/did/rdsk/d19 20 node-3:/dev/rdsk/c5t50060E800000000000004E6000000013d0 /dev/did/rdsk/d20 21 node-3:/dev/rdsk/c5t50060E800000000000004E600000003Dd0 /dev/did/rdsk/d21 22 node-1:/dev/rdsk/c6t500060E8000000000000EEBA0000001Fd0 /dev/did/rdsk/d1222 22 node-2:/dev/rdsk/c5t500060E8000000000000EEBA0000001Fd0 /dev/did/rdsk/d12 22 node-3:/dev/rdsk/c5t50060E800000000000004E600000003Cd0 /dev/did/rdsk/d22 23 node-1:/dev/rdsk/c6t500060E8000000000000EEBA0000001Ed0 /dev/did/rdsk/d13 23 node-2:/dev/rdsk/c5t500060E8000000000000EEBA0000001Ed0 /dev/did/rdsk/d13 23 node-3:/dev/rdsk/c5t50060E800000000000004E600000003Bd0 /dev/did/rdsk/d23 24 node-1:/dev/rdsk/c6t500060E8000000000000EEBA0000001Dd0 /dev/did/rdsk/d24 24 node-2:/dev/rdsk/c5t500060E8000000000000EEBA0000001Dd0 /dev/did/rdsk/d24 24 node-3:/dev/rdsk/c5t50060E800000000000004E600000003Ad0 /dev/did/rdsk/d24 |
次に、ボリュームマネージャーデバイスグループを作成します。このコマンドは、主複製があるノード (この例ではノード 3) から実行します。次の例に示すように、デバイスグループには複製グループと同じ名前を指定します。
# metaset -s VG01 -ah phys-deneb-3 # metaset -s VG01 -ah phys-deneb-1 # metaset -s VG01 -ah phys-deneb-2 # metaset -s VG01 -a /dev/did/rdsk/d22 # metaset -s VG01 -a /dev/did/rdsk/d23 # metaset -s VG01 -a /dev/did/rdsk/d24 # metaset Set name = VG01, Set number = 1 Host Owner phys-deneb-3 Yes phys-deneb-1 phys-deneb-2 Drive Dbase d22 Yes d23 Yes d24 Yes |
この時点で、デバイスグループは使用でき、メタデバイスの作成が可能であり、またデバイスグループは 3 つのノードのうち任意のノードに移動できます。ただし、スイッチオーバーとフェイルオーバーをより効率的にするため、cldevicegroup set を実行して、デバイスグループをクラスタ構成内で複製済みにマークします。
# cldevicegroup sync VG01 # cldevicegroup show VG01 === Device Groups=== Device Group Name VG01 Type: SVM failback: no Node List: phys-deneb-3, phys-deneb-1, phys-deneb-2 preferenced: yes numsecondaries: 1 device names: VG01 Replication type: truecopy |
複製グループの構成はこの手順で完了します。構成が正しく行われたことを確認するには、「Hitachi TrueCopy で複製されたグローバルデバイスグループ構成を確認する」の手順を実行します。
次の表に、EMC Symmetrix Remote Data Facility (SRDF) ストレージベースの複製されたデバイスを設定および管理するために実行する作業を示します。
表 5–3 作業マップ: EMC SRDF ストレージベースの複製されたデバイスの管理
作業 |
参照先 |
---|---|
ストレージデバイスとノードに SRDF ソフトウェアをインストールする |
EMC ストレージデバイスに付属するマニュアル。 |
EMC 複製グループを構成する | |
DID デバイスを構成する | |
複製されたグループを登録する |
「デバイスグループを追加および登録する (Solaris ボリュームマネージャー)」または「ディスクグループをデバイスグループとして登録する (VERITAS Volume Manager)」 |
構成を確認する | |
キャンパスクラスタの主ルームが完全に失敗したあとに手動でデータを復元する |
EMC Symmetrix Remote Data Facility (SRDF) 複製グループを構成する前に、すべてのクラスタノードに EMC Solutions Enabler ソフトウェアをインストールしてください。まず、主クラスタの共有ディスクに EMC SRDF デバイスグループを構成します。EMC SRDF デバイスグループを構成する方法についての詳細は、EMC SRDF 製品のマニュアルを参照してください。
EMC SRDF を使用するときは、静的デバイスではなく、動的デバイスを使用します。静的デバイスでは主複製を変更するのに数分かかり、フェイルオーバー時間に影響を与えることがあります。
作成する Sun Cluster デバイスグループ (Solaris Volume Manager、Veritas Volume Manager、または raw ディスク) の名前は、複製されたデバイスグループと同じ名前にしてください。
ストレージアレイに接続されたすべてのノードで、スーパーユーザーになるか、RBAC の承認 solaris.cluster.modify を提供する役割になります。
複製データで構成された各ノードで、シンメトリックスデバイス構成を検出します。
この処理には数分かかることがあります。
# /usr/symcli/bin/symcfg discover |
まだ複製のペアを作成していない場合は、この時点で作成します。
複製のペアを作成するには、symrdf コマンドを使用します。複製のペアの作成方法の手順については、SRDF のマニュアルを参照してください。
複製されたデバイスによって構成された各ノードで、データの複製が正しく設定されていることを確認します。
# /usr/symcli/bin/symdg show group-name |
デバイスグループのスワップを実行します。
主複製と二次複製が同期していることを確認します。
# /usr/symcli/bin/symrdf -g group-name verify -synchronized |
どのノードに主複製が含まれ、どのノードに二次複製が含まれているかを判別するには、symdg show コマンドを使用します。
# /usr/symcli/bin/symdg show group-name |
RDF1 デバイスのノードには主複製が含まれ、RDF2 デバイス状態のノードには二次複製が含まれます。
二次複製を有効にします。
# /usr/symcli/bin/symrdf -g group-name failover |
RDF1 デバイスと RDF2 デバイスをスワップします。
# /usr/symcli/bin/symrdf -g group-name swap -refresh R1 |
複製ペアを有効にします。
# /usr/symcli/bin/symrdf -g group-name establish |
主ノードと二次複製が同期していることを確認します。
# /usr/symcli/bin/symrdf -g group-name verify -synchronized |
もともと主複製があったノードで上記 5 つの手順をすべて繰り返します。
EMC SRDF で複製されたデバイス用にデバイスグループを構成したあと、複製されたデバイスが使用するデバイス識別子 (DID) ドライバを構成します。
この手順では、複製されたデバイスが使用するデバイス識別名 (DID) ドライバを構成します。
phys-schost# プロンプトは、グローバルクラスタのプロンプトを表します。この手順は、グローバルクラスタ上で実行します。
この手順では、長形式の Sun Cluster コマンドを使用して説明します。多くのコマンドには短縮形もあります。コマンド名の形式の長短を除き、コマンドは同一です。コマンドのリストとその短縮形については、付録 B Sun Cluster オブジェクト指向コマンドを参照してください。
クラスタの任意のノードで、スーパーユーザーになるか、RBAC の承認 solaris.cluster.modify を提供する役割になります。
RDF1 デバイスおよび RDF2 デバイスに対応する DID デバイスを判別します。
# /usr/symcli/bin/symdg show group-name |
システムに Solaris デバイスのパッチ全体が表示されない場合は、環境変数 SYMCLI_FULL_PDEVNAME を 1 に設定して、symdg -show コマンドをもう一度入力します。
Solaris デバイスに対応する DID デバイスを判別します。
# cldevice list -v |
一致した DID デバイスのペアごとに、インスタンスを 1 つの複製された DID デバイスにまとめます。RDF2 (二次側) から次のコマンドを実行します。
# cldevice combine -t srdf -g replication-device-group \ -d destination-instance source-instance |
SRDF データ複製デバイスでは、-T オプションはサポートされていません。
複製タイプを指定します。EMC SRDF の場合、SRDF を入力します。
symdg show コマンドで表示されるデバイスグループの名前を指定します。
RDF1 デバイスに対応する DID インスタンスを指定します。
RDF2 デバイスに対応する DID インスタンスを指定します。
誤った DID デバイスを結合した場合は、scdidadm コマンドで -b オプションを使用して、2 つの DID デバイスの結合を取り消します。
# scdidadm -b device |
インスタンスを結合したときに destination_device に対応していた DID インスタンス。
複製デバイスグループの名前が変更された場合は、Hitachi TrueCopy および SRDF に関する追加の手順が必要です。手順 1 - 4 が完了したら、該当する追加手順を実行します。
項目 |
説明 |
---|---|
TrueCopy |
複製デバイスグループと、対応するグローバルデバイスグループの名前が変更された場合は、cldevice replicate コマンドを再実行して、複製されたデバイス情報を更新してください。 |
SRDF |
複製デバイスグループと、対応するグローバルデバイスグループの名前が変更された場合は、複製されたデバイス情報を更新してください。それには、まず、scdidadm -b コマンドを使用して既存の情報を削除します。最後に、cldevice combine コマンドを使用して、更新された新しいデバイスを作成します。 |
DID インスタンスが結合されていることを確認します。
# cldevice list -v device |
SRDF 複製が設定されていることを確認します。
# cldevice show device |
すべてのノード上で、すべての結合された DID インスタンスの DID デバイスがアクセス可能であることを確認します。
# cldevice list -v |
複製されたデバイスが使用するデバイス識別名 (DID) を構成したら、EMC SRDF で複製されたグローバルデバイスグループ構成を必ず確認してください。
グローバルデバイスグループを確認する前に、まずそれを作成します。Solaris Volume Manager、Veritas Volume Manager、ZFS、または raw ディスクからデバイスグループを使用することができます。詳細は、次を参照してください。
作成する Sun Cluster デバイスグループ (Solaris Volume Manager、Veritas Volume Manager、または raw ディスク) の名前は、複製されたデバイスグループと同じ名前にしてください。
phys-schost# プロンプトは、グローバルクラスタのプロンプトを表します。この手順は、グローバルクラスタ上で実行します。
この手順では、長形式の Sun Cluster コマンドを使用して説明します。多くのコマンドには短縮形もあります。コマンド名の形式の長短を除き、コマンドは同一です。コマンドのリストとその短縮形については、付録 B Sun Cluster オブジェクト指向コマンドを参照してください。
主デバイスグループが、主複製が含まれるノードと同じノードに対応することを確認します。
# symdg -show group-name # cldevicegroup status -n nodename group-name |
試験的にスイッチオーバーを実行して、デバイスグループが正しく構成され、複製がノード間を移動できることを確認します。
デバイスグループがオフラインのときは、オンラインにします。
# cldevicegroup switch -n nodename group-name |
デバイスグループの切り替え先のノード。このノードが新しい主ノードになります。
次のコマンドの出力を比較することにより、スイッチオーバーが成功したことを確認します。
# symdg -show group-name # cldevicegroup status -n nodename group-name |
この例では、クラスタの SRDF 複製を設定するのに必要な Sun Cluster 固有の手順を完了します。この例では、すでに次の作業が完了していることが前提となっています。
アレイ間の複製の LUN のペア作成が完了している。
ストレージデバイスとクラスタノードに SRDF ソフトウェアがインストール済みである。
この例には 4 ノードクラスタが含まれ、そのうちの 2 ノードは 1 つのシンメトリックスに接続され、ほかの 2 ノードはもう 1 つのシンメトリックスに接続されています。SRDF デバイスグループは、dg1 と呼ばれます。
すべてのノードで次のコマンドを実行します。
# symcfg discover ! This operation might take up to a few minutes. # symdev list pd Symmetrix ID: 000187990182 Device Name Directors Device --------------------------- ------------ -------------------------------------- Cap Sym Physical SA :P DA :IT Config Attribute Sts (MB) --------------------------- ------------- ------------------------------------- 0067 c5t600604800001879901* 16D:0 02A:C1 RDF2+Mir N/Grp'd RW 4315 0068 c5t600604800001879901* 16D:0 16B:C0 RDF1+Mir N/Grp'd RW 4315 0069 c5t600604800001879901* 16D:0 01A:C0 RDF1+Mir N/Grp'd RW 4315 ... |
RDF1 側のすべてのノードで、次のように入力します。
# symdg -type RDF1 create dg1 # symld -g dg1 add dev 0067 |
RDF2 側のすべてのノードで、次のように入力します。
# symdg -type RDF2 create dg1 # symld -g dg1 add dev 0067 |
クラスタ内の 1 つのノードから、次のように入力します。
# symdg show dg1 Group Name: dg1 Group Type : RDF1 (RDFA) Device Group in GNS : No Valid : Yes Symmetrix ID : 000187900023 Group Creation Time : Thu Sep 13 13:21:15 2007 Vendor ID : EMC Corp Application ID : SYMCLI Number of STD Devices in Group : 1 Number of Associated GK's : 0 Number of Locally-associated BCV's : 0 Number of Locally-associated VDEV's : 0 Number of Remotely-associated BCV's (STD RDF): 0 Number of Remotely-associated BCV's (BCV RDF): 0 Number of Remotely-assoc'd RBCV's (RBCV RDF) : 0 Standard (STD) Devices (1): { -------------------------------------------------------------------- Sym Cap LdevName PdevName Dev Att. Sts (MB) -------------------------------------------------------------------- DEV001 /dev/rdsk/c5t6006048000018790002353594D303637d0s2 0067 RW 4315 } Device Group RDF Information ... # symrdf -g dg1 establish Execute an RDF 'Incremental Establish' operation for device group 'dg1' (y/[n]) ? y An RDF 'Incremental Establish' operation execution is in progress for device group 'dg1'. Please wait... Write Disable device(s) on RA at target (R2)..............Done. Suspend RDF link(s).......................................Done. Mark target (R2) devices to refresh from source (R1)......Started. Device: 0067 ............................................ Marked. Mark target (R2) devices to refresh from source (R1)......Done. Merge device track tables between source and target.......Started. Device: 0067 ............................................ Merged. Merge device track tables between source and target.......Done. Resume RDF link(s)........................................Started. Resume RDF link(s)........................................Done. The RDF 'Incremental Establish' operation successfully initiated for device group 'dg1'. # # symrdf -g dg1 query Device Group (DG) Name : dg1 DG's Type : RDF2 DG's Symmetrix ID : 000187990182 Target (R2) View Source (R1) View MODES -------------------------------- ------------------------ ----- ------------ ST LI ST Standard A N A Logical T R1 Inv R2 Inv K T R1 Inv R2 Inv RDF Pair Device Dev E Tracks Tracks S Dev E Tracks Tracks MDA STATE -------------------------------- -- ------------------------ ----- ------------ DEV001 0067 WD 0 0 RW 0067 RW 0 0 S.. Synchronized Total -------- -------- -------- -------- MB(s) 0.0 0.0 0.0 0.0 Legend for MODES: M(ode of Operation): A = Async, S = Sync, E = Semi-sync, C = Adaptive Copy D(omino) : X = Enabled, . = Disabled A(daptive Copy) : D = Disk Mode, W = WP Mode, . = ACp off # |
RDF1 側と RDF2 側で同じ手順を実行します。
dymdg show dg コマンドの出力の PdevName フィールドの下 に DID を表示できます。
RDF1 側で次のように入力します。
# symdg show dg1 Group Name: dg1 Group Type : RDF1 (RDFA) ... Standard (STD) Devices (1): { -------------------------------------------------------------------- Sym Cap LdevName PdevName Dev Att. Sts (MB) -------------------------------------------------------------------- DEV001 /dev/rdsk/c5t6006048000018790002353594D303637d0s2 0067 RW 4315 } Device Group RDF Information ... |
対応する DID を取得するには、次のように入力します。
# scdidadm -L | grep c5t6006048000018790002353594D303637d0 217 pmoney1:/dev/rdsk/c5t6006048000018790002353594D303637d0 /dev/did/rdsk/d217 217 pmoney2:/dev/rdsk/c5t6006048000018790002353594D303637d0 /dev/did/rdsk/d217 # |
対応する DID の一覧を表示するには、次のように入力します。
# cldevice show d217 === DID Device Instances === DID Device Name: /dev/did/rdsk/d217 Full Device Path: pmoney2:/dev/rdsk/c5t6006048000018790002353594D303637d0 Full Device Path: pmoney1:/dev/rdsk/c5t6006048000018790002353594D303637d0 Replication: none default_fencing: global # |
RDF2 側で次のように入力します。
dymdg show dg コマンドの出力の PdevName フィールドの下 に DID を表示できます。
# symdg show dg1 Group Name: dg1 Group Type : RDF2 (RDFA) ... Standard (STD) Devices (1): { -------------------------------------------------------------------- Sym Cap LdevName PdevName Dev Att. Sts (MB) -------------------------------------------------------------------- DEV001 /dev/rdsk/c5t6006048000018799018253594D303637d0s2 0067 WD 4315 } Device Group RDF Information ... |
対応する DID を取得するには、次のように入力します。
# scdidadm -L | grep c5t6006048000018799018253594D303637d0 108 pmoney4:/dev/rdsk/c5t6006048000018799018253594D303637d0 /dev/did/rdsk/d108 108 pmoney3:/dev/rdsk/c5t6006048000018799018253594D303637d0 /dev/did/rdsk/d108 # |
対応する DID の一覧を表示するには、次のように入力します。
# cldevice show d108 === DID Device Instances === DID Device Name: /dev/did/rdsk/d108 Full Device Path: pmoney3:/dev/rdsk/c5t6006048000018799018253594D303637d0 Full Device Path: pmoney4:/dev/rdsk/c5t6006048000018799018253594D303637d0 Replication: none default_fencing: global # |
RDF2 側から次のように入力します。
# cldevice combine -t srdf -g dg1 -d d217 d108 # |
クラスタ内の任意のノードから、次のように入力します。
# cldevice show d217 d108 cldevice: (C727402) Could not locate instance "108". === DID Device Instances === DID Device Name: /dev/did/rdsk/d217 Full Device Path: pmoney1:/dev/rdsk/c5t6006048000018790002353594D303637d0 Full Device Path: pmoney2:/dev/rdsk/c5t6006048000018790002353594D303637d0 Full Device Path: pmoney4:/dev/rdsk/c5t6006048000018799018253594D303637d0 Full Device Path: pmoney3:/dev/rdsk/c5t6006048000018799018253594D303637d0 Replication: srdf default_fencing: global # |
この手順は、キャンパスクラスタの主ルームが完全に失敗し、主ルームが二次ルームにフェイルオーバーして、主ルームがオンラインに戻ったとき、データ復元を実行します。キャンパスクラスタの主ルームは、主ノードとストレージサイトです。ルームの完全な失敗には、そのルームのホストとストレージ両方の不具合が含まれます。主ルームが失敗した場合、Sun Cluster は自動的に二次ルームにフェイルオーバーし、二次ルームのストレージデバイスを読み書き可能にし、対応するデバイスグループとリソースグループのフェイルオーバーを有効にします。
主ルームがオンラインに戻ったら、二次ルームに書き込まれた SRDF デバイスグループからデータを手動で復元し、データを同期することができます。この手順では、元の二次ルーム (この手順では、二次ルームに phys-campus-2 を使用) からのデータを元の主ルーム (phys-campus-1) に同期して、SRDF デバイスグループを復元します。また、この手順では、SRDF デバイスグループタイプを、phys-campus-2 では RDF1 に、phys-campus-1 では RDF2 に変更します。
手動でフェイルオーバーを実行する前に、EMC 複製グループおよび DID デバイスを構成し、EMC 複製グループを登録する必要があります。Solaris ボリュームマネージャー デバイスグループの作成についての詳細は、「デバイスグループを追加および登録する (Solaris ボリュームマネージャー)」を参照してください。Veritas Volume Manager デバイスグループの作成については、「ディスクをカプセル化する際に新しいディスクグループを作成する (VERITAS Volume Manager)」を参照してください。
これらの説明は、主ルームが完全にフェイルオーバーしてからオンラインに戻ったあとに、SRDF データを手動で復元するための 1 つの方法を示しています。他の方法については、EMC マニュアルを確認してください。
これらのステップを実行するには、キャンパスクラスタの主ルームにログインしてください。下記の手順では、dg1 は SRDF デバイスグループ名です。失敗した時点では、この手順の主ルームは phys-campus-1 で、二次ルームは phys-campus-2 です。
キャンパスクラスタの主ルームにログインし、スーパーユーザーになるか、solaris.cluster.modify RBAC 権限を提供する役割になります。
主ルームから、symrdf コマンドを使用して RDF デバイスの複製ステータスに対するクエリーを実行し、これらのデバイスに関する情報を表示します。
phys-campus-1# symrdf -g dg1 query |
split 状態にあるデバイスグループは同期されません。
RDF ペア状態が split で、デバイスグループタイプが RDF1 の場合、SRDF デバイスグループのフェイルオーバーを強制実行します。
phys-campus-1# symrdf -g dg1 -force failover |
RDF デバイスのステータスを表示します。
phys-campus-1# symrdf -g dg1 query |
フェイルオーバー後、フェイルオーバーした RDF デバイスのデータをスワップすることができます。
phys-campus-1# symrdf -g dg1 swap |
RDF デバイスに関する状態および他の情報を検証します。
phys-campus-1# symrdf -g dg1 query |
主ルームの SRDF デバイスグループを確立します。
phys-campus-1# symrdf -g dg1 establish |
デバイスグループが同期状態であり、デバイスグループタイプが RDF2 であることを確認します。
phys-campus-1# symrdf -g dg1 query |
この例では、キャンパスクラスタの主ルームがフェイルオーバーし、二次ルームが代わりにデータを記録するようになり、主ルームがオンラインに戻ったあとで、EMC SRDF データを手動で復元するために必要な Sun Cluster 固有のステップが提供されています。例では、SRDF デバイスグループは dg1 と呼ばれ、標準論理デバイスは DEV001 です。失敗した時点では、主ルームは phys-campus-1 で、二次ルームは phys-campus-2 です。キャンパスクラスタの主ルーム phys-campus-1 からステップを実行します。
phys-campus-1# symrdf -g dg1 query | grep DEV DEV001 0012RW 0 0NR 0012RW 2031 O S.. Split phys-campus-1# symdg list | grep RDF dg1 RDF1 Yes 00187990182 1 0 0 0 0 phys-campus-1# symrdf -g dg1 -force failover ... phys-campus-1# symrdf -g dg1 query | grep DEV DEV001 0012 WD 0 0 NR 0012 RW 2031 O S.. Failed Over phys-campus-1# symdg list | grep RDF dg1 RDF1 Yes 00187990182 1 0 0 0 0 phys-campus-1# symrdf -g dg1 swap ... phys-campus-1# symrdf -g dg1 query | grep DEV DEV001 0012 WD 0 0 NR 0012 RW 0 2031 S.. Suspended phys-campus-1# symdg list | grep RDF dg1 RDF2 Yes 000187990182 1 0 0 0 0 phys-campus-1# symrdf -g dg1 establish ... phys-campus-1# symrdf -g dg1 query | grep DEV DEV001 0012 WD 0 0 RW 0012 RW 0 0 S.. Synchronized phys-campus-1# symdg list | grep RDF dg1 RDF2 Yes 000187990182 1 0 0 0 0 |