geopg switchover コマンドを実行すると、 horctakeover コマンドが Hitachi TrueCopy データ複製レベルで実行されます。horctakeover コマンドが値 1 を返した場合、スイッチオーバーは成功です。
Hitachi TrueCopy の用語では、スイッチオーバーのことを「スワップテイクオーバー」と呼びます。horctakeover コマンドは、スワップテイクオーバーを実行できない場合があります。このような場合は、1 以外の値が返されます (スイッチオーバー障害を示す)。
障害が発生した場合、通常、horctakeover コマンドは値 5 を返します (SVOL-SSUS-takeover を示す)。
horctakeover コマンドがスワップテイクオーバーの実行に失敗する理由の 1 つに、データ複製リンク ESCON/FC が停止していることがあります。
スワップテイクオーバー以外の結果は、二次ボリュームが主ボリュームと完全には同期していない可能性があることを示します。スイッチオーバー障害のケースの場合、Sun Cluster Geographic Edition ソフトウェアは新しい主クラスタになる予定のクラスタではアプリケーションを起動しません。
この節の残りの部分では、スイッチオーバー障害につながる初期条件を示して、スイッチオーバー障害から回復する方法について説明します。
この節では、スイッチオーバー障害が発生するケースを示します。このケースでは、cluster-paris が元の主クラスタであり、cluster-newyork が元の二次クラスタです。
次のようにスイッチオーバーを実行すると、cluster-paris から cluster-newyork にサービスが切り替わります。
phys-newyork-1# geopg switchover -f -m cluster-newyork tcpg |
geopg switchover コマンドの処理中、horctakeover コマンドは SVOL-SSUS-takeover を実行して、Hitachi TrueCopy デバイスグループ devgroup1 に対して 値 5 を返します。結果として、geopg switchover コマンドは次のような障害メッセージを返します。
Processing operation.... this may take a while .... "Switchover" failed for the following reason: Switchover failed for Truecopy DG devgroup1 |
この障害メッセージが発行されたあと、2 つのクラスタは次のような状態になります。
cluster-paris: tcpg role: Secondary cluster-newyork: tcpg role: Secondary phys-newyork-1# pairdisplay -g devgroup1 -fc Group PairVol(L/R) (Port#,TID,LU),Seq#,LDEV#.P/S, Status,Fence,%, P-LDEV# M devgroup1 pair1(L) (CL1-C , 0, 20)12345 609..S-VOL SSWS ASYNC,100 1 - devgroup1 pair1(R) (CL1-A , 0, 1) 54321 1..P-VOL PSUS ASYNC,100 609 - |
この節では、前の節で説明した障害シナリオから回復するための手順について説明します。これらの手順は、該当するクラスタでアプリケーションをオンラインにします。
Hitachi TrueCopy デバイスグループ devgroup1 を SMPL 状態にします。
pairsplit コマンドを使用して、cluster-paris と cluster-newyork の両方のクラスタの保護グループにあるデバイスグループを SMPL 状態にします。前節で示したペア状態の場合、次の pairsplit コマンドを実行します。
phys-newyork-1# pairsplit -R -g devgroup1 phys-newyork-1# pairsplit -S -g devgroup1 |
保護グループのクラスタの 1 つを Primary に指定します。
元の主クラスタでアプリケーションを起動する予定がある場合は、保護グループの元の主クラスタ cluster-paris を Primary に指定します。アプリケーションは、元の主クラスタで現在のデータを使用します。
元の二次クラスタでアプリケーションを起動する予定がある場合は、保護グループの元の二次クラスタ cluster-newyork を Primary に指定します。アプリケーションは、元の二次クラスタで現在のデータを使用します。
horctakeover コマンドはスワップテイクオーバーを実行していないため、cluster-newyork のデータボリュームは cluster-paris のデータボリュームと同期していない可能性があります。元の主クラスタにあるのと同じデータを使用してアプリケーションを起動する予定の場合は、元の二次クラスタを Primary にしないでください。
元の主クラスタで保護グループを無効にします。
phys-paris-1# geopg stop -e Local tcpg |
保護グループの構成を再同期させます。
このコマンドは、cluster-paris の保護グループ構成を、cluster-newyork の保護グループ構成情報と一致するように更新します。
phys-paris-1# geopg update tcpg |
geopg update コマンドが正常に完了したあと、各クラスタで保護グループ tcpg の役割は次のようになります。
cluster-paris: tcpg role: Primary cluster-newyork: tcpg role: secondary |
パートナーシップの両方のクラスタで保護グループを有効にします。
phys-paris-1# geopg start -e Global tcpg |
このコマンドは、cluster-paris でアプリケーションを起動します。cluster-paris から cluster-newyork へのデータ複製が開始されます。
保護グループの構成を再同期させます。
このコマンドは、cluster-newyork の保護グループ構成を、cluster-paris の保護グループ構成情報と一致するように更新します。
phys-newyork-1# geopg update tcpg |
geopg update コマンドが正常に完了したあと、各クラスタで保護グループ tcpg の役割は次のようになります。
cluster-paris: tcpg role: Secondary cluster-newyork: tcpg role: Primary |
パートナーシップの両方のクラスタで保護グループを有効にします。
phys-newyork-1# geopg start -e Global tcpg |
このコマンドは、cluster-newyork でアプリケーションを起動します。cluster-newyork から cluster-paris へのデータ複製が開始されます。
このコマンドは、cluster-paris 上のデータを上書きします。