Sun Cluster ソフトウェアのインストール (Solaris OS 版)

第 6 章 Sun StorEdge Availability Suite 3.1 ソフトウェアによるデータ複製の構成

この章では、Sun StorEdge Availability Suite 3.1 ソフトウェアを使用したクラスタ間のデータ複製の構成のガイドラインを提供します。

また、Sun StorEdge Availability Suite 3.1 ソフトウェアを使用してデータ複製を NFS アプリケーション向けにどのように構成するかの例も含まれています。 この例は、特定のクラスタ構成を使用し、各作業の実行方法についての詳細な情報を提供します。 他のアプリケーションやクラスタ構成で必要な手順がすべて含まれているわけではありません。

この章の内容は次のとおりです。

この章の内容は、次のとおりです。

データ複製の概要

この節では耐障害性について紹介し、Sun StorEdge Availability Suite 3.1 ソフトウェアが使用するデータ複製方式について説明します。

耐障害性とは

耐障害性は、主クラスタで障害が発生した場合に代わりのクラスタ上でアプリケーションを復元するシステムの機能です。 耐障害性のベースは、データ複製フェイルオーバーです。

データ複製とは、主クラスタからバックアップクラスタまたは二次クラスタにデータをコピーすることです。 データ複製によって、二次クラスタには主クラスタの最新データのコピーが保存されます。 二次クラスタは、主クラスタから離れた場所にも設置できます。

フェイルオーバーは、自動で主クラスタから二次クラスタへリソースグループまたはデバイスグループを再配置することです。 主クラスタに障害が発生した場合でも、アプリケーションとデータは二次クラスタで即座に使用できます。

Sun StorEdge Availability Suite 3.1 ソフトウェアが使用するデータ複製方式

この節では、Sun StorEdge Availability Suite 3.1 が使用するリモートミラー複製方式とポイントインタイムスナップショット方式について説明します。 このソフトウェアは、 sndradm(1RPC)iiadm(1II) コマンドを使用してデータを複製します。 これらのコマンドについては、『Sun Cluster 3.0 and Sun StorEdge Software Integration Guide』を参照してください。

リモートミラー複製

リモートミラー複製を図 6–1 に示します。 主ディスクのマスターボリュームのデータは、TCP/IP 接続を経由して二次ディスクのマスターボリュームに複製されます。 リモートミラービットマップは、主ディスクのマスターボリュームと二次ディスクのマスターボリューム間の違いを追跡調査します。

図 6–1 リモートミラー複製

主ディスクのマスターボリュームから二次ディスクのマスターボリュームへのリモートミラー複製を示す図

リモートミラー複製は、リアルタイムで同期して実行することも、非同期で実行することもできます。 各クラスタの各ボリュームセットはそれぞれ、同期複製または非同期複製に構成できます。

同期データ複製では、リモートボリュームが更新されるまで書き込み操作の完了が確認されません。

非同期データ複製では、リモートボリュームが更新される前に書き込み操作の完了が確認されます。 非同期データ複製は、長い距離や低い帯域幅で大きな柔軟性を発揮します。

ポイントインタイムスナップショット

ポイントインタイムスナップショットを図 6–2 に示します。 各ディスクのマスターボリュームのデータは、同じディスクのシャドウボリュームにコピーされます。 ポイントインタイムピットマップは、マスターボリュームとシャドウボリューム間の違いを追跡調査します。 データがシャドウボリュームにコピーされると、ポイントインタイムビットマップはリセットされます。

図 6–2 ポイントインタイムスナップショット

ポイントインタイムスナップショットを示す図

構成例での複製

次の図は、構成例でリモートミラー複製とポイントインタイムスナップショットがどのように使用されているかを示したものです。

図 6–3 構成例での複製

リモートミラー複製とポイントインタイムスナップショットが構成例でどのように使用されているかを示す図

データ複製の構成ガイドライン

この節では、クラスタ間のデータ複製の構成ガイドラインを提供します。 また、複製リソースグループとアプリケーションリソースグループの構成のコツも紹介します。 これらのガイドラインは、クラスタのデータ複製を構成する際に使用してください。

この節の内容は次のとおりです。

複製リソースグループの構成

複製リソースグループは、Sun StorEdge Availability Suite 3.1 ソフトウェアが制御するデバイスグループと論理ホスト名リソースを相互に関連付けます。 複製リソースグループには、次の特徴があります。

アプリケーションリソースグループの構成

高可用性を実現するためには、アプリケーションをアプリケーションリソースグループのリソースとして管理します。 アプリケーションリソースグループは、フェイルオーバーアプリケーションまたはスケーラブルアプリケーション向けに構成できます。

主クラスタ上に構成したアプリケーションリソースとアプリケーションリソースグループは、二次クラスタ上でも構成される必要があります。 また、アプリケーションリソースがアクセスするデータは、二次クラスタに複製する必要があります。

この節では、次のアプリケーションリソースグループを構成するためのガイドラインを紹介します。

フェイルオーバーアプリケーション向けのリソースグループの構成

フェイルオーバーアプリケーションは、常に単一のノード上で実行されます。 ノードで障害が発生すると、アプリケーションは同じクラスタ内の別のノードにフェイルオーバーします。 フェイルオーバーアプリケーション向けリソースグループは、以下の特徴を持っていなければなりません。

フェイルオーバーアプリケーションでのアプリケーションリソースグループと複製リソースグループの構成を下図に示します。

図 6–4 フェイルオーバーアプリケーションでのリソースグループの構成

フェイルオーバーアプリケーションでのアプリケーションリソースグループと複製リソースグループの構成を示す図

スケーラブルアプリケーション向けのリソースグループの構成

スケーラブルアプリケーションは、複数のノードで実行され、1 つの論理サービスを作成します。 スケーラブルアプリケーションを実行しているノードで障害が発生しても、フェイルオーバーは起こりません。 アプリケーションは別のノードで引き続き実行されます。

スケーラブルアプリケーションをアプリケーションリソースグループのリソースとして管理している場合は、アプリケーションリソースグループをデバイスグループと結び付ける必要はありません。 したがって、アプリケーションリソースグループ向けに HAStoragePlus リソースを作成する必要はありません。

スケーラブルアプリケーションのリソースグループは以下の特徴を持っている必要があります。

スケーラブルアプリケーションでのリソースグループの構成を下図に示します。

図 6–5 スケーラブルアプリケーションでのリソースグループの構成

スケーラブルアプリケーションでのリソースグループの構成を示す図

フェイルオーバーまたはスイッチオーバーの管理ガイドライン

主クラスタで障害が発生した場合、できるだけ速やかにアプリケーションを二次クラスタにスイッチオーバーする必要があります。 二次クラスタがテイクオーバーできるようにするには、DNS を更新する必要があります。 さらに、二次ボリュームをアプリケーションファイルシステムのマウントポイントディレクトリにマウントする必要があります。

DNS は、クライアントをアプリケーションの論理ホスト名に関連付けます。 フェイルオーバーまたはスイッチオーバーの後、主クラスタへの DNS マッピングを削除し、二次クラスタへの DNS マッピングを作成します。 DNS がどのようにクライアントをクラスタにマッピングするかを下図に示します。

図 6–6 クライアントからクラスタへの DNS マッピング

DNS がどのようにクライアントをクラスタにマッピングするかを示す図

DNS を更新するには、nsupdate コマンドを使用します。 詳細は、nsupdate(1M) のマニュアルページを参照してください。 フェイルオーバーやスイッチオーバーの処理例については、フェイルオーバーとスイッチオーバーの処理例を参照してください。

修復後は、 主クラスタをオンラインに戻せます。 元の主クラスタにスイッチバックするには、次の手順を実行します。

  1. 主クラスタと二次クラスタを同期させ、主ボリュームが最新のものであることを確認します。

  2. クライアントが主クラスタのアプリケーションにアクセスできるように、DNS を更新します。

  3. アプリケーションファイルシステムのマウントポイントディレクトリに主ボリュームをマウントします。

構成例

この節では、Sun StorEdge Availability Suite 3.1 ソフトウェアを使用して NFS アプリケーション向けにデータ複製を構成する例を手順ごとに紹介します。

クラスタの接続とインストール

構成例で使用するクラスタ構成を図 6–7 に示します。 構成例の二次クラスタにはノードが 1 つ含まれていますが、これ以外のクラスタ構成も使用できます。

図 6–7 クラスタ構成例

構成例で使用するクラスタ構成を示す図

表 6–1 に、構成例で必要となるハードウェアとソフトウェアをまとめました。 オペレーティング環境、Sun Cluster ソフトウェア、ボリューム管理ソフトウェアは、Sun StorEdge Availability Suite 3.1 ソフトウェアとパッチをインストールする前にクラスタノードにインストールしてください。

表 6–1 必要なハードウェアとソフトウェア

ハードウェアまたはソフトウェア 

要件 

ノードハードウェア  

Sun StorEdge Availability Suite 3.1 ソフトウェアは、Solaris オペレーティング環境を使用するすべてのサーバーでサポートされる。  

使用するハードウェアについては、『 Sun Cluster 3.x Hardware Administration Manual』を参照

ディスク容量 

約 11M バイト 

オペレーティング環境 

Sun Cluster ソフトウェアがサポートする Solaris 8 または Solaris 9 リリース 

すべてのノードで、同じバージョンのオペレーティング環境を使用する。 

インストールについては、ソフトウェアのインストール を参照

Sun Cluster ソフトウェア 

Sun Cluster 3.1 4/04 ソフトウェア  

インストールについては、第 2 章「Sun Cluster ソフトウェアのインストールと構成」Sun Cluster ソフトウェアを単一ノードクラスタにインストールする を参照

ボリューム管理ソフトウェア 

Solstice DiskSuite/Solaris Volume Manager または VERITAS Volume Manager (VxVM) 

すべてのノードで、同じバージョンのボリューム管理ソフトウェアを使用する。 

インストールについては、Solstice DiskSuite/Solaris Volume Manager ソフトウェアのインストールと構成 SPARC: VxVM ソフトウェアのインストールと構成 を参照

Sun StorEdge Availability Suite 3.1 ソフトウェア 

ソフトウェアのインストールについては、『Sun StorEdge Availability Suite 3.1 Point-in-Time Copy Software Installation Guide』と『 Sun StorEdge Availability Suite 3.1 Remote Mirror Software Installation Guide』を参照

Sun StorEdge Availability Suite 3.1 ソフトウェアパッチ 

最新のパッチについては、http://sunsolve.sun.comを参照

デバイスグループとリソースグループの構成例

この章では、NFSアプリケーション向けにディスクデバイスグループとリソースグループをどのように構成するかを説明します。 構成例のために作成されたグループとリソースの名前を次の表に示します。

表 6–2 構成例内のグループとリソースのまとめ

グループまたはリソース 

「名前」 

説明 

ディスクデバイスグループ 

devicegroup

ディスクデバイスグループ 

複製リソースグループとリソース 

devicegroup-stor-rg

複製リソースグループ 

lhost-reprg-prim, lhost-reprg-sec

主クラスタと二次クラスタの複製リソースグループの論理ホスト名 

devicegroup-stor

複製リソースグループの HAStoragePlus リソース  

アプリケーションリソースグループとリソース 

nfs-rg

アプリケーションリソースグループ 

lhost-nfsrg-prim, lhost-nfsrg-sec

主クラスタと二次クラスタのアプリケーションリソースグループの論理ホスト名 

nfs-dg-rs

アプリケーションの HAStoragePlus リソース 

nfs-rs

NFS リソース 

devicegroup-stor-rg 以外のグループとリソースの名前は一例で、必要に応じて変更可能です。 複製リソースグループは、devicegroup-stor-rg というフォーマットでなければなりません。

ディスクデバイスグループの構成

この節では、主クラスタと二次クラスタでどのようにディスクデバイスグループを構成するかについて説明します。 この構成例では、VxVM ソフトウェアを使用します。 Solstice DiskSuite/Solaris Volume Manager ソフトウェアについては、第 3 章「Solstice DiskSuite/Solaris Volume Manager ソフトウェアのインストールと構成」を参照してください。

ディスクデバイスグループで作成済みのボリュームを下図に示します。

図 6–8 ディスクデバイスグループのボリューム

ディスクデバイスグループで作成されたボリュームを示す図


注 –

この節で定義されたボリュームに、シリンダ 0 などのディスクラベルのプライベート領域を含めてはなりません。VxVM ソフトウェアは、この制限を自動管理します。


主クラスタでディスクデバイスグループを構成する
  1. ボリューム 1 からボリューム 4 の 4 つのボリュームを含むディスクグループを作成します。

    VxVM ソフトウェアを使用したディスクグループの構成については、第 4 章「SPARC: VERITAS Volume Manager のインストールと構成」を参照してください。

  2. スーパーユーザーとして nodeA にアクセスします。

    nodeA は、主クラスタの最初のノードです。 どのノードが nodeA なのかは、図 6–7 で確認してください。

  3. ディスクグループを構成して、ディスクデバイスグループを作成します。


    nodeA# /usr/cluster/bin/scconf -a -D type=vxvm,name=devicegroup \
    ,nodelist=nodeA:nodeB
    

    ディスクデバイスグループは、devicegroup と呼ばれます。

  4. ディスクデバイスグループを起動します。


    nodeA# /usr/cluster/bin/scswitch -z -D devicegroup -h nodeA
    
  5. ディスクデバイスグループを Sun Cluster ソフトウェアと同期させます。


    nodeA# /usr/cluster/bin/scconf -c -D name=devicegroup,sync
    
  6. ディスクデバイスグループのファイルシステムを作成します。


    nodeA# /usr/sbin/newfs /dev/vx/rdsk/devicegroup/vol01 < /dev/null
    nodeA# /usr/sbin/newfs /dev/vx/rdsk/devicegroup/vol02 < /dev/null
    nodeA# /usr/sbin/newfs /dev/vx/rdsk/devicegroup/vol03 < /dev/null
    nodeA# /usr/sbin/newfs /dev/vx/rdsk/devicegroup/vol04 < /dev/null
    
  7. nodeAnodeB 上の /.rhosts ファイルに次のエンティティを追加して、主クラスタと二次クラスタのノード間のリモートアクセスを有効にします。


    nodeC +
    + root
二次クラスタでディスクデバイスグループを構成する
  1. 主クラスタでディスクデバイスグループを構成するの手順のうち以下を置き換えて実行します。

    • nodeAnodeC に置き換える

    • nodeB は使用しない

    • 手順 3 で、ノードリストに nodeC だけを入れる。 以下に例を示します。


      nodeC# /usr/cluster/bin/scconf -a -D type=vxvm,name=devicegroup \
      ,nodelist=nodeC
      
    • 手順 7で、nodeC/.rhosts ファイルだけに以下のエンティティを追加する


      nodeA +
      nodeB +
      + root

NFSアプリケーション向けのファイルシステムの構成

この節では、ファイルシステムをどのように NFSアプリケーション向けに構成するかを説明します。

主クラスタのファイルシステムを NFS アプリケーション向けに構成する
  1. nodeAnodeB で、NFS ファイルシステム向けのマウントポイントディレクトリを作成します。

    以下に例を示します。


    nodeA# mkdir /global/mountpoint
    
  2. nodeAnodeB で、マウントポイントに自動でマウントされるようにマスターボリュームを構成します。

    nodeAnodeB/etc/vfstab ファイルに以下のテキストを追加するか、既存のテキストと置き換えます。 テキストは 1 行で記述してください。


    /dev/vx/dsk/devicegroup/vol01 /dev/vx/rdsk/devicegroup/vol01 \
    /global/mountpoint ufs 3 no global,logging

    ディスクデバイスグループで使用されるボリューム名とボリューム番号は、図 6–8 で確認してください。

  3. nodeA で、Sun StorEdge Availability Suite 3.1 ソフトウェアが使用するファイルのシステム情報向けのボリュームを作成します。


    nodeA# /usr/sbin/vxassist -g devicegroup make vol05 120m disk1
    

    ボリューム 5 には、Sun StorEdge Availability Suite 3.1 ソフトウェアが使用するファイルのシステム情報が含まれています。

  4. nodeA で、デバイスグループと Sun Cluster ソフトウェアを再同期化します。


    nodeA# /usr/cluster/bin/scconf -c -D name=devicegroup,sync
    
  5. nodeA で、ボリューム 5 向けのファイルシステムを作成します。


    nodeA# /usr/sbin/newfs /dev/vx/rdsk/devicegroup/vol05
    
  6. nodeAnodeB で、ボリューム 5 のマウントポイントを作成します。

    以下に例を示します。


    nodeA# mkdir /global/etc
    
  7. nodeAnodeB で、マウントポイントに自動でマウントされるようにボリューム 5 を構成します。

    nodeAnodeB/etc/vfstab ファイルに以下のテキストを追加するか、既存のテキストと置き換えます。 テキストは 1 行で記述してください。


    /dev/vx/dsk/devicegroup/vol05 /dev/vx/rdsk/devicegroup/vol05 \
    /global/etc ufs 3 yes global,logging
  8. nodeA にボリューム 5 をマウントします。


    nodeA# mount /global/etc
    
  9. ボリューム 5 がリモートシステムからアクセスできるようにします。

    1. nodeA/global/etc/SUNW.nfs というディレクトリを作成します。


      nodeA# mkdir -p /global/etc/SUNW.nfs
      
    2. nodeA/global/etc/SUNW.nfs/dfstab.nfs-rs ファイルを作成します。


      nodeA# touch /global/etc/SUNW.nfs/dfstab.nfs-rs
      
    3. nodeA/global/etc/SUNW.nfs/dfstab.nfs-rs ファイルに次の行を追加します。


      share -F nfs -o rw -d "HA NFS" /global/mountpoint
      
二次クラスタのファイルシステムを NFS アプリケーション向けに構成する

    主クラスタのファイルシステムを NFS アプリケーション向けに構成するの手順のうち以下を置き換えて繰り返します。

    • nodeAnodeC に置き換える

    • nodeB は使用しない

複製リソースグループの作成

この節では、主クラスタと二次クラスタ上で複製リソースグループがどのように作成されるかを説明します。

主クラスタで複製リソースグループを作成する
  1. スーパーユーザーとして nodeA にアクセスします。

  2. SUNW.HAStoragePlus というリソースタイプを登録します。


    nodeA# /usr/cluster/bin/scrgadm -a -t SUNW.HAStoragePlus
    
  3. ディスクデバイスグループの複製リソースグループを作成します。


    nodeA# /usr/cluster/bin/scrgadm -a -g devicegroup-stor-rg -h nodeA,nodeB
    
    devicegroup

    ディスクデバイスグループの名前

    devicegroup-stor-rg

    複製リソースグループの名前

    -h nodeA, nodeB

    複製リソースグループを制御できるクラスタノードを指定します。

  4. SUNW.HAStoragePlus リソースを複製リソースグループに追加します。


    nodeA# /usr/cluster/bin/scrgadm -a -j devicegroup-stor \
    -g devicegroup-stor-rg -t SUNW.HAStoragePlus \
    -x GlobalDevicePaths=devicegroup \
    -x AffinityOn=True
    
    devicegroup-stor

    複製リソースグループの HAStoragePlus リソース

    -x GlobalDevicePaths=

    Sun StorEdge Availability Suite 3.1 ソフトウェアが依存する拡張プロパティを指定します。

    -x AffinityOn=True

    SUNW.HAStoragePlus リソースが、-x GlobalDevicePaths= で定義された広域デバイスおよびクラスタファイルシステムに対して、アフィニティースイッチオーバーを実行することを指定します。 したがって、複製リソースグループがフェイルオーバーまたはスイッチオーバーすると、関連デバイスグループがスイッチオーバーします。

    これらの拡張プロパティについては、SUNW.HAStoragePlus(5) のマニュアルページを参照してください。

  5. 論理ホスト名リソースを複製リソースグループに追加します。


    nodeA# /usr/cluster/bin/scrgadm -a -L \
    -j lhost-reprg-prim -g devicegroup-stor-rg -l lhost-reprg-prim
    

    ここで lhost-reprg-prim は、主クラスタ上の複製リソースグループの論理ホスト名です。

  6. リソースを有効にし、リソースグループを管理し、リソースグループをオンラインにします。


    nodeA# /usr/cluster/bin/scswitch -Z -g devicegroup-stor-rg
    nodeA# /usr/cluster/bin/scswitch -z -g devicegroup-stor-rg -h nodeA
    
  7. リソースグループがオンラインであることを確認します。


    nodeA# /usr/cluster/bin/scstat -g
    

    リソースグループの状態フィールドを調べ、複製リソースグループが nodeAnodeB でオンラインとなっていることを確認します。

二次クラスタで複製リソースグループを作成する

    主クラスタで複製リソースグループを作成するの手順のうち以下を置き換えて繰り返します。

    • nodeAnodeC に置き換える

    • nodeB は使用しない

    • lhost-reprg-prim への参照を lhost-reprg-sec と置き換える

アプリケーションリソースグループの作成

この節では、アプリケーションリソースグループが NFS アプリケーション向けにどのように作成されているかを説明します。 この節の手順はアプリケーション固有のものです。 他のタイプのアプリケーションに対しては使用できません。

主クラスタでアプリケーションリソースグループを作成する
  1. スーパーユーザーとして nodeA にアクセスします。

  2. SUNW.nfs をリソースタイプとして登録します。


    nodeA# scrgadm -a -t SUNW.nfs
    
  3. SUNW.HAStoragePlus をリソースタイプとして登録していない場合は、登録します。


    nodeA# scrgadm -a -t SUNW.HAStoragePlus
    
  4. devicegroup のアプリケーションリソースグループを作成します。


    nodeA# scrgadm -a -g nfs-rg \
    -y Pathprefix=/global/etc \
    -y Auto_start_on_new_cluster=False \
    -y RG_dependencies=devicegroup-stor-rg
    
    nfs-rg

    アプリケーションリソースグループの名前です。

    Pathprefix=/global/etc

    グループのリソースが管理ファイルを書き込むディレクトリを指定します。

    Auto_start_on_new_cluster=False

    アプリケーションリソースグループが自動的に起動しないように指定します。

    RG_dependencies=devicegroup-stor-rg

    アプリケーションリソースグループが依存するリソースグループを指定します。 この例では、アプリケーションリソースグループは複製リソースグループに依存しています。

    アプリケーションリソースグループが新しい主ノードにスイッチオーバーすると、複製リソースグループが自動的にスイッチオーバーします。 ただし、複製リソースグループが新しい主ノードにスイッチオーバーした場合は、アプリケーションリソースグループを手動でスイッチオーバーする必要があります。

  5. SUNW.HAStoragePlus リソースをアプリケーションリソースグループに追加します。


    nodeA# scrgadm -a -j nfs-dg-rs -g nfs-rg \
    -t SUNW.HAStoragePlus \
    -x FileSystemMountPoints=/global/mountpoint \
    -x AffinityOn=True
    
    nfs-dg-rs

    NFS アプリケーション向けの HAStoragePlus リソースの名前かどうかを確認します。

    -x FileSystemMountPoints=/global/

    ファイルシステムのマウントポイントがグローバルであることを指定します。

    -t SUNW.HAStoragePlus

    リソースのタイプに SUNW.HAStoragePlus を指定します。

    -x AffinityOn=True

    アプリケーションリソースが -x GlobalDevicePaths= で定義された広域デバイスとクラスタファイルシステム向けにアフィニティスイッチオーバーを実行するように指定します。 したがって、アプリケーションリソースグループがフェイルオーバーまたはスイッチオーバーすると、関連デバイスグループがスイッチオーバーします。

    これらの拡張プロパティについては、SUNW.HAStoragePlus(5) のマニュアルページを参照してください。

  6. 論理ホスト名リソースをアプリケーションリソースグループに追加します。


    nodeA# /usr/cluster/bin/scrgadm -a -L -j lhost-nfsrg-prim -g nfs-rg \
    -l  lhost-nfsrg-prim
    

    ここで lhost-nfsrg-prim は、主クラスタ上のアプリケーションリソースグループの論理ホスト名です。

  7. リソースを有効にし、アプリケーションリソースグループを管理し、アプリケーションリソースグループをオンラインにします。

    1. NFS アプリケーション向け HAStoragePlus リソースをオンラインにします。


      nodeA# /usr/cluster/bin/scrgadm -a -g nfs-rg \
      -j nfs-rs -t SUNW.nfs -y Resource_dependencies=nfs-dg-rs
      
    2. nodeA でアプリケーションリソースグループをオンラインにします。


      nodeA# /usr/cluster/bin/scswitch -Z -g nfs-rg
      nodeA# /usr/cluster/bin/scswitch -z -g nfs-rg -h nodeA
      
  8. アプリケーションリソースグループがオンラインであることを確認します。


    nodeA# /usr/cluster/bin/scstat -g
    

    アプリケーションリソースグループの状態フィールドを調べ、複製リソースグループが nodeAnodeB でオンラインとなっているかどうかを調べます。

二次クラスタでアプリケーションリソースグループを作成する
  1. 主クラスタでアプリケーションリソースグループを作成する手順 1 から手順 6 に説明されているうち、以下を置き換えて、アプリケーショングループリソースを作成します。

    • nodeAnodeC に置き換える

    • nodeB への参照を無視する

    • lhost-nfsrg-prim への参照を lhost-nfsrg-sec と置き換える

  2. アプリケーションリソースグループが nodeC でオンラインになっていないことを確認します。


    nodeC# /usr/cluster/bin/scswitch -n -j nfs-rs
    nodeC# /usr/cluster/bin/scswitch -n -j nfs-dg-rs
    nodeC# /usr/cluster/bin/scswitch -n -j lhost-nfsrg-sec
    nodeC# /usr/cluster/bin/scswitch -z -g nfs-rg -h ""
    

    Auto_start_on_new_cluster=False によって、リソースグループは再起動後もオフラインのままになります。

  3. 広域ボリュームが主クラスタにマウントされている場合は、二次クラスタの広域ボリュームのマウントを解除します。


    nodeC# umount /global/mountpoint
    

    ボリュームが二次クラスタにマウントされていると、同期が失敗します。

データ複製の有効化例

この節では、構成例のデータ複製をどのように有効にするかを説明します。 この節では、Sun StorEdge Availability Suite 3.1 ソフトウェアコマンドの sndradmiiadm を使用します。 これらのコマンドについては、『Sun Cluster 3.0 and Sun StorEdge Software Integration Guide』を参照してください。

主クラスタで複製を有効にする
  1. スーパーユーザーとして nodeA にアクセスします。

  2. すべてのトランザクションをフラッシュします。


    nodeA# /usr/sbin/lockfs -a -f
    
  3. 論理ホスト名 lhost-reprg-primlhost-reprg-sec がオンラインであることを確認します。


    nodeA# /usr/cluster/bin/scstat -g
    

    リソースグループの状態フィールドを調べます。

  4. 主クラスタから二次クラスタへのリモートミラー複製を有効にします。

    この手順によって、主クラスタのマスターボリュームから二次クラスタのマスターボリュームへの複製が有効になります。 さらに、ボリューム 4 のリモートミラービットマップへの複製も有効になります。

    • 主クラスタと二次クラスタが同期されていない場合は、次のコマンドを実行します。


      nodeA# /usr/opt/SUNWesm/sbin/sndradm -n -e lhost-reprg-prim \
      /dev/vx/rdsk/devicegroup/vol01 \
      /dev/vx/rdsk/devicegroup/vol04 lhost-reprg-sec \
      /dev/vx/rdsk/devicegroup/vol01 \
      /dev/vx/rdsk/devicegroup/vol04 ip sync 
      
    • 主クラスタと二次クラスタが同期されている場合は、次のコマンドを実行します。


      nodeA# /usr/opt/SUNWesm/sbin/sndradm -n -E lhost-reprg-prim \
      /dev/vx/rdsk/devicegroup/vol01 \
      /dev/vx/rdsk/devicegroup/vol04 lhost-reprg-sec \
      /dev/vx/rdsk/devicegroup/vol01 \
      /dev/vx/rdsk/devicegroup/vol04 ip sync
      
  5. 自動同期機能を有効にします。


    nodeA# /usr/opt/SUNWesm/sbin/sndradm -n -a on lhost-reprg-prim \
    /dev/vx/rdsk/devicegroup/vol01 \
    /dev/vx/rdsk/devicegroup/vol04 lhost-reprg-sec \
    /dev/vx/rdsk/devicegroup/vol01 \
    /dev/vx/rdsk/devicegroup/vol04 ip sync
    

    この手順で自動同期が有効になります。 自動同期のアクティブ状態が on に設定されている場合、システムが再起動されたり障害が発生すると、ボリュームセットは再度同期化されます。

  6. クラスタがロギングモードであることを確認します。


    nodeA# /usr/opt/SUNWesm/sbin/sndradm -P
    

    次のように出力されるはずです。


    /dev/vx/rdsk/devicegroup/vol01 ->
    lhost-reprg-sec:/dev/vx/rdsk/devicegroup/vol01
    autosync: off, max q writes:4194304, max q fbas:16384, mode:sync,ctag:
    devicegroup, state: logging

    ロギングモードでは、状態は logging で、自動同期のアクティブ状態は off です。 ディスクのデータボリュームに書き込みが行われると、同じディスクのビットマップファイルが更新されます。

  7. ポイントインタイムスナップショットを有効にします。


    nodeA# /usr/opt/SUNWesm/sbin/iiadm -e ind \
    /dev/vx/rdsk/devicegroup/vol01 \
    /dev/vx/rdsk/devicegroup/vol02 \
    /dev/vx/rdsk/devicegroup/vol03
    nodeA# /usr/opt/SUNWesm/sbin/iiadm -w \
    /dev/vx/rdsk/devicegroup/vol02
    

    この手順によって、主ディスクのマスターボリュームが同じディスクのシャドウボリュームにコピーされるようになります。 この例では、マスターボリュームはボリューム 1、シャドウボリュームはボリューム 2、ポイントインタイムビットマップボリュームはボリューム 3 になります。

  8. ポイントインタイムスナップショットをリモートミラーセットに設定します。


    nodeA# /usr/opt/SUNWesm/sbin/sndradm -I a \
    /dev/vx/rdsk/devicegroup/vol01 \
    /dev/vx/rdsk/devicegroup/vol02 \
    /dev/vx/rdsk/devicegroup/vol03
    

    この手順によって、ポイントインタイムスナップショットがリモートミラーボリュームセットに関連付けられます。 Sun StorEdge Availability Suite 3.1 ソフトウェアは、リモートミラー複製の前にポイントインタイムスナップショットを必ず取ります。

二次クラスタで複製を有効にする
  1. スーパーユーザーとして nodeC にアクセスします。

  2. すべてのトランザクションをフラッシュします。


    nodeC# /usr/sbin/lockfs -a -f
    
  3. 主クラスタから二次クラスタへのリモートミラー複製を有効にします。


    nodeC# /usr/opt/SUNWesm/sbin/sndradm -n -e lhost-reprg-prim \
    /dev/vx/rdsk/devicegroup/vol01 \
    /dev/vx/rdsk/devicegroup/vol04 lhost-reprg-sec \
    /dev/vx/rdsk/devicegroup/vol01 \
    /dev/vx/rdsk/devicegroup/vol04 ip sync
    

    主クラスタが二次クラスタの存在を認識し、同期を開始します。 クラスタの状態については、システムログファイル /var/opt/SUNWesm/ds.log を参照してください。

  4. それぞれのポイントインタイムスナップショットを有効にします。


    nodeC# /usr/opt/SUNWesm/sbin/iiadm -e ind \
    /dev/vx/rdsk/devicegroup/vol01 \
    /dev/vx/rdsk/devicegroup/vol02 \
    /dev/vx/rdsk/devicegroup/vol03
    nodeC# /usr/opt/SUNWesm/sbin/iiadm -w \
    /dev/vx/rdsk/devicegroup/vol02
    
  5. ポイントインタイムスナップショットをリモートミラーセットに設定します。


    nodeC# /usr/opt/SUNWesm/sbin/sndradm -I a \
    /dev/vx/rdsk/devicegroup/vol01 \
    /dev/vx/rdsk/devicegroup/vol02 \
    /dev/vx/rdsk/devicegroup/vol03
    

データ複製の実行例

この節では、構成例のデータ複製をどのように実行するかを説明します。 この節では、Sun StorEdge Availability Suite 3.1 ソフトウェアコマンドの sndradmiiadm を使用します。 これらのコマンドについては、『Sun Cluster 3.0 and Sun StorEdge Software Integration Guide』を参照してください。

リモートミラー複製を実行する

この手順では、主ディスクのマスターボリュームが 二次ディスクのマスターボリュームに複製されます。 マスターボリュームはボリューム 1 で、リモートミラービットマップボリュームはボリューム 4 です。

  1. スーパーユーザーとして nodeA にアクセスします。

  2. クラスタがロギングモードであることを確認します。


    nodeA# /usr/opt/SUNWesm/sbin/sndradm -P
    

    次のように出力されるはずです。


    /dev/vx/rdsk/devicegroup/vol01 ->
    lhost-reprg-sec:/dev/vx/rdsk/devicegroup/vol01
    autosync: off, max q writes:4194304, max q fbas:16384, mode:sync,ctag:
    devicegroup, state: logging

    ロギングモードでは、状態は logging で、自動同期のアクティブ状態は off です。 ディスクのデータボリュームに書き込みが行われると、同じディスクのビットマップファイルが更新されます。

  3. すべてのトランザクションをフラッシュします。


    nodeA# /usr/sbin/lockfs -a -f
    
  4. nodeC手順 1 から 手順 3 を繰り返します。

  5. nodeA の マスターボリュームを nodeC のマスターボリュームにコピーします。


    nodeA# /usr/opt/SUNWesm/sbin/sndradm -n -m lhost-reprg-prim \
    /dev/vx/rdsk/devicegroup/vol01 \
    /dev/vx/rdsk/devicegroup/vol04 lhost-reprg-sec \
    /dev/vx/rdsk/devicegroup/vol01 \
    /dev/vx/rdsk/devicegroup/vol04 ip sync
    
  6. 複製が完了し、ボリュームが同期化されるのを待ちます。


    nodeA# /usr/opt/SUNWesm/sbin/sndradm -n -w lhost-reprg-prim \
    /dev/vx/rdsk/devicegroup/vol01 \
    /dev/vx/rdsk/devicegroup/vol04 lhost-reprg-sec \
    /dev/vx/rdsk/devicegroup/vol01 \
    /dev/vx/rdsk/devicegroup/vol04 ip sync
    
  7. クラスタが複製モードであることを確認します。


    nodeA# /usr/opt/SUNWesm/sbin/sndradm -P
    

    次のように出力されるはずです。


    /dev/vx/rdsk/devicegroup/vol01 ->
    lhost-reprg-sec:/dev/vx/rdsk/devicegroup/vol01
    autosync: on, max q writes:4194304, max q fbas:16384, mode:sync,ctag:
    devicegroup, state: replicating

    複製モードでは、状態は replicating で、自動同期のアクティブ状態は on です。 主ボリュームに書き込みが行われると、Sun StorEdge Availability Suite 3.1 ソフトウェアが二次ボリュームを更新します。

ポイントインタイムスナップショットを実行する

この手順では、ポイントインタイムスナップショットを使用して、主クラスタのシャドウボリュームを主クラスタのマスターボリュームに同期させます。 マスターボリュームはボリューム 1 で、シャドウボリュームはボリューム 2 です。

  1. スーパーユーザーとして nodeA にアクセスします。

  2. nodeA で実行中のアプリケーションを停止します。


    nodeA# /usr/cluster/bin/scswitch -n -j nfs-rs
    
  3. 主クラスタをロギングモードにします。


    nodeA# /usr/opt/SUNWesm/sbin/sndradm -n -l lhost-reprg-prim \
    /dev/vx/rdsk/devicegroup/vol01 \
    /dev/vx/rdsk/devicegroup/vol04 lhost-reprg-sec \
    /dev/vx/rdsk/devicegroup/vol01 \
    /dev/vx/rdsk/devicegroup/vol04 ip sync
    

    ディスクのデータボリュームに書き込みが行われると、同じディスクのビットマップファイルが更新されます。 複製は行われません。

  4. 主クラスタのシャドウボリュームを主クラスタのマスターボリュームに同期化させます。


    nodeA# /usr/opt/SUNWesm/sbin/iiadm -u s /dev/vx/rdsk/devicegroup/vol02
    nodeA# /usr/opt/SUNWesm/sbin/iiadm -w /dev/vx/rdsk/devicegroup/vol02
    
  5. 二次クラスタのシャドウボリュームを二次クラスタのマスターボリュームに同期化させます。


    nodeC# /usr/opt/SUNWesm/sbin/iiadm -u s /dev/vx/rdsk/devicegroup/vol02
    nodeC# /usr/opt/SUNWesm/sbin/iiadm -w /dev/vx/rdsk/devicegroup/vol02
    
  6. nodeA でアプリケーションを再起動します。


    nodeA# /usr/cluster/bin/scswitch -e -j nfs-rs
    
  7. 二次ボリュームを主ボリュームと再同期化させます。


    nodeA# /usr/opt/SUNWesm/sbin/sndradm -n -u lhost-reprg-prim \
    /dev/vx/rdsk/devicegroup/vol01 \
    /dev/vx/rdsk/devicegroup/vol04 lhost-reprg-sec \
    /dev/vx/rdsk/devicegroup/vol01 \
    /dev/vx/rdsk/devicegroup/vol04 ip sync
    

複製が正しく構成されていることを確認する例

この節では、構成例で複製の構成をどのように確認するかを説明します。

複製が正しく構成されていることを確認する
  1. 主クラスタが複製モードで、自動同期機能がオンになっていることを確認します。


    nodeA# /usr/opt/SUNWesm/sbin/sndradm -P
    

    次のように出力されるはずです。


    /dev/vx/rdsk/devicegroup/vol01 ->
    lhost-reprg-sec:/dev/vx/rdsk/devicegroup/vol01
    autosync: on, max q writes:4194304, max q fbas:16384, mode:sync,ctag:
    devicegroup, state: replicating

    複製モードでは、状態は replicating で、自動同期のアクティブ状態は on です。 主ボリュームに書き込みが行われると、Sun StorEdge Availability Suite 3.1 ソフトウェアが二次ボリュームを更新します。

    主クラスタが複製モードでない場合は、以下のように複製モードにします。


    nodeA# /usr/opt/SUNWesm/sbin/sndradm -n -u lhost-reprg-prim \
    /dev/vx/rdsk/devicegroup/vol01 \
    /dev/vx/rdsk/devicegroup/vol04 lhost-reprg-sec \
    /dev/vx/rdsk/devicegroup/vol01 \
    /dev/vx/rdsk/devicegroup/vol04 ip sync
    
  2. クライアントマシンにディレクトリを作成します。

    1. クライアントマシンにスーパーユーザーとしてログインします。

      次のようなプロンプトが表示されます。


      client-machine#
    2. クライアントマシンにディレクトリを作成します。


      client-machine# mkdir /dir
      
  3. ディレクトリを主クラスタのアプリケーションにマウントし、マウントしたディレクトリを表示します。

    1. ディレクトリを主クラスタのアプリケーションにマウントします。


      client-machine# mount -o rw lhost-nfsrg-prim:/global/mountpoint /dir
      
    2. マウントしたディレクトリを表示します。


      client-machine# ls /dir
      
  4. ディレクトリを二次クラスタのアプリケーションにマウントし、マウントしたディレクトリを表示します。

    1. 主クラスタのアプリケーションのディレクトリのマウントを解除します。


      client-machine# umount /dir
      
    2. 主クラスタのアプリケーションリソースグループをオフラインにします。


      nodeA# /usr/cluster/bin/scswitch -n -j nfs-rs
      nodeA# /usr/cluster/bin/scswitch -n -j nfs-dg-rs
      nodeA# /usr/cluster/bin/scswitch -n -j lhost-nfsrg-prim
      nodeA# /usr/cluster/bin/scswitch -z -g nfs-rg -h ""
      
    3. 主クラスタをロギングモードにします。


      nodeA# /usr/opt/SUNWesm/sbin/sndradm -n -l lhost-reprg-prim \
      /dev/vx/rdsk/devicegroup/vol01 \
      /dev/vx/rdsk/devicegroup/vol04 lhost-reprg-sec \
      /dev/vx/rdsk/devicegroup/vol01 \
      /dev/vx/rdsk/devicegroup/vol04 ip sync
      

      ディスクのデータボリュームに書き込みが行われると、同じディスクのビットマップファイルが更新されます。 複製は行われません。

    4. 二次クラスタのアプリケーションリソースグループをオンラインにします。


      nodeC# /usr/cluster/bin/scswitch -Z -g nfs-rg
      
    5. クライアントマシンにスーパーユーザーとしてアクセスします。

      次のようなプロンプトが表示されます。


      client-machine#
    6. 手順 2 で作成したディレクトリを二次クラスタのアプリケーションにマウントします。


      client-machine# mount -o rw lhost-nfsrg-sec:/global/mountpoint /dir
      
    7. マウントしたディレクトリを表示します。


      client-machine# ls /dir
      
  5. 手順 3 で表示したディレクトリが 手順 4 で表示したディレクトリと同じであることを確認します。

  6. 主クラスタのアプリケーションをマウントされたディレクトリに戻します。

    1. 二次クラスタのアプリケーションリソースグループをオフラインにします。


      nodeC# /usr/cluster/bin/scswitch -n -j nfs-rs
      nodeC# /usr/cluster/bin/scswitch -n -j nfs-dg-rs
      nodeC# /usr/cluster/bin/scswitch -n -j lhost-nfsrg-sec
      nodeC# /usr/cluster/bin/scswitch -z -g nfs-rg -h ""
      
    2. グローバルボリュームを二次クラスタからマウント解除します。


      nodeC# umount /global/mountpoint
      
    3. 主クラスタのアプリケーションリソースグループをオンラインにします。


      nodeA# /usr/cluster/bin/scswitch -Z -g nfs-rg
      
    4. 主クラスタを複製モードにします。


      nodeA# /usr/opt/SUNWesm/sbin/sndradm -n -u lhost-reprg-prim \
      /dev/vx/rdsk/devicegroup/vol01 \
      /dev/vx/rdsk/devicegroup/vol04 lhost-reprg-sec \
      /dev/vx/rdsk/devicegroup/vol01 \
      /dev/vx/rdsk/devicegroup/vol04 ip sync
      

      主ボリュームに書き込みが行われると、Sun StorEdge Availability Suite 3.1 ソフトウェアが二次ボリュームを更新します。

フェイルオーバーとスイッチオーバーの処理例

この節では、スイッチオーバーをどのように開始するかと、アプリケーションがどのように二次クラスタに転送されるかを説明します。 スイッチオーバーまたはフェイルオーバーの後、DNS エントリを更新し、アプリケーションが二次ボリュームに対して読み書きできるように構成します。

スイッチオーバーを呼び出す
  1. 主クラスタをロギングモードにします。


    nodeA# /usr/opt/SUNWesm/sbin/sndradm -n -l lhost-reprg-prim \
    /dev/vx/rdsk/devicegroup/vol01 \
    /dev/vx/rdsk/devicegroup/vol04 lhost-reprg-sec \
    /dev/vx/rdsk/devicegroup/vol01 \
    /dev/vx/rdsk/devicegroup/vol04 ip sync
    

    ディスクのデータボリュームに書き込みが行われると、同じディスクのビットマップファイルが更新されます。 複製は行われません。

  2. 主クラスタと二次クラスタがロギングモードで、自動同期がオフであることを確認します。

    1. nodeA で次のコマンドを実行します。


      nodeA# /usr/opt/SUNWesm/sbin/sndradm -P
      

      次のように出力されるはずです。


      /dev/vx/rdsk/devicegroup/vol01 ->
      lhost-reprg-sec:/dev/vx/rdsk/devicegroup/vol01
      autosync:off, max q writes:4194304,max q fbas:16384,mode:sync,ctag:
      devicegroup, state: logging
    2. nodeC で次のコマンドを実行します。


      nodeC# /usr/opt/SUNWesm/sbin/sndradm -P
      

      次のように出力されるはずです。


      /dev/vx/rdsk/devicegroup/vol01 <-
      lhost-reprg-prim:/dev/vx/rdsk/devicegroup/vol01
      autosync:off, max q writes:4194304,max q fbas:16384,mode:sync,ctag:
      devicegroup, state: logging

    nodeAnodeC の状態は logging で、非同期のアクティブ状態は off でなければなりません。

  3. 二次クラスタで主クラスタからのテイクオーバーの準備ができていることを確認します。


    nodeC# /usr/sbin/fsck -y /dev/vx/rdsk/devicegroup/vol01
    
  4. 二次クラスタにスイッチオーバーします。


    nodeC# scswitch -Z -g nfs-rg
    nodeC# scswitch -Z -g nfs-rg -h nodeC
    
DNS エントリを更新する

DNS がクライアントをクラスタにどのようにマッピングするかについては、図 6–6 を参照してください。

  1. nsupdate コマンドを開始します。

    詳細は、nsupdate(1M) のマニュアルページを参照してください。

  2. 主クラスタのアプリケーションリソースグループのクライアントマシンと 論理ホスト名間の現在の DNS マッピングを削除します。


    > update delete client-machine A
    > update delete IPaddress1.in-addr.arpa TTL PTR client machine
    
    client-machine

    クライアントのフルネームです。 たとえば、mymachine.mycompany.com のようになります。

    IPaddress1

    IP アドレスが論理ホスト名 lhost-nfsrg-prim であることを逆順で確認します。

    TTL

    秒単位の有効時間です。 一般的な値は 3600 になります。

  3. 二次クラスタのアプリケーションリソースグループのクライアントマシンと 論理ホスト名間に新しい DNS マッピングを作成します。


    > update add client-machine TTL A IPaddress2
    > update add IPaddress3.in-addr.arpa TTL PTR client-machine
    
    IPaddress2

    IP アドレスが論理ホスト名 lhost-nfsrg-sec であることを正順で確認します。

    IPaddress3

    IP アドレスが論理ホスト名 lhost-nfsrg-sec であることを逆順で確認します。

二次ボリュームを読み書きするようにアプリケーションを構成する
  1. NFS ファイルシステムのマウントポイントディレクトリにマウントするように二次ボリュームを構成します。


    client-machine# mount -o rw lhost-nfsrg-sec:/global/mountpoint /xxx
    

    マウントポイントは、主クラスタのファイルシステムを NFS アプリケーション向けに構成する手順 1 で作成されています。

  2. 二次クラスタがマウントポイントへの書き込みアクセスを持っていることを確認します。


    client-machine# touch /xxx/data.1
    client-machine# umount /xxx