この例では、クラスタの 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 |