このセクションでは、フォロワー サイトを新しいリーダー サイトに手動で変更する方法について説明します。

GSLB サイトを手動で変更する必要がある場合のシナリオは次のとおりです。

  • 応答しないリーダー サイトから GSLB フォロワー サイトへの接続を解除することができない場合。構成を変更することはできません。構成の変更はリーダー サイトでのみ行うことができます。

  • ネットワーク パーティショニングのシナリオでも、GSLB リーダー サイトを手動で選択する必要がある。ネットワーク パーティショニングは、スプリットブレイン状態と似ています。サイト間のインターネットまたは VPN インフラストラクチャの障害や停止が原因でこの状態になります。

    ネットワーク障害が発生した場合、各サイトは制御プレーンおよびデータ プレーンの健全性モニターに基づいて GSLB メンバーの状態を更新します。ネットワークの両部分は、独立した排他的なサブネットワークとして機能します。別のネットワーク パーティションで新しいリーダーが自動的に選択される仕様にはなっていません。

  • 更新やメンテナンス作業を実行するためにリーダーシップを別のサイトに移行する必要がある場合。

GSLB リーダー サイトが停止しても、他のフォロワー サイトがまだ実行されている場合、トラフィックは、すべてのサイトの SE によって問題なく処理されます。GSLB 構成を変更する必要がない場合、リーダー サイトの変更は回避する必要があります。リーダー サイトが一時的に停止し、短期間での回復が見込まれる場合は変更しないことをお勧めします。次の場合にのみ、リーダー サイトを変更してください。

  • 構成の更新が必要

  • リーダー サイトを長期間にわたって停止する

  • 長期的には、リーダーを新しいサイトに変更する必要がある

方法

GSLB 環境のフォロワー サイトは、次の手順を実行することで、手動でリーダー ロールに昇格できます。

  • リーダー サイトにするフォロワー サイトのシェル プロンプトにログインします。show cluster コマンドを使用して、次の出力の uuid (vm_uuid) の値を書きとめます。次の出力の uuid の値は 005056b0333f です。

    > show cluster
    -------------------------------------+
    
    Field	Value
    -------------------------------------+
    
    uuid	cluster-005056b0333f
    name	cluster-0-1
    nodes[1]	 
    name	10.10.30.55
    ip	10.10.30.55
    vm_uuid	005056b0333f
    vm_mor	vm-118231
    vm_hostname	node1.controller.local
    -------------------------------------+

  • 新たにリーダー サイトにするフォロワー ノードで、gslb changeleader new_leader cluster-UUID コマンドを実行します。前の手順で取得したクラスタ UUID (005056b0333f) を使用します。

    > gslb changeleader new_leader cluster-005056b0333f

    サンプル出力を次に示します。

    > gslb changeleader new_leader cluster-005056b0333f
    --------------------------------------------------------+
    
    Field	Value
    --------------------------------------------------------+
    
    new_leader	cluster-005056b0333f
    view_id	1525803021
    details[1]	Review event-logs for additional information
    --------------------------------------------------------+
    注:

    上記の手順を完了すると、フォロワー サイトは GSLB 構成を自身に同期します。もう一方のサイト(以前のリーダー サイト)にはアクセスできないため、新しいリーダー サイトは最大再試行回数の実行後に情報の同期を停止します。

以前のリーダー サイトが起動する場合の変更

両方のサイト間で GSLB のセットアップが完全に機能するように、以前のリーダー サイトをリカバリすることをお勧めします。ネットワーク パーティションの状態が回復すると、両方のノードが相互に通信できるようになります。競合の問題を回避するには、構成を変更して、以前のリーダー サイトをフォロワー サイトに変更する必要があります。以前のリーダー サイトは、新しいリーダー サイトを唯一、実際のリーダー サイトと見なす必要があります。

競合を回避するには、次のコマンドを実行して、以前のリーダー サイトをフォロワー サイトにします。

  • 新しいリーダー サイトで show gslb Default | grep -i view コマンドを実行し、次のように表示される view_id を書きとめます。

    > show gslb Default | grep -i view
    
    view_id	1525801573

    また、新しいリーダー サイトで show cluster コマンドを実行し、uuid (005056b0333f) を書きとめます。

    > show cluster
    -------------------------------------+
    
    Field	Value
    -------------------------------------+
    
    uuid	cluster-005056b0333f
    name	cluster-0-1
    nodes[1]	 
    name	10.10.30.55
    ip	10.10.30.55
    vm_uuid	005056b0333f
    vm_mor	vm-118231
    vm_hostname	node1.controller.local
    -------------------------------------+
  • 以前のリーダー サイトをフォロワー サイトとして使用するために、以前のリーダー サイトのシェル プロンプトにログインして gslb changeleader new_leader cluster-UUIS view_id <view-id> コマンドを実行します。

    gslb changeleader new_leader cluster-005056b0333f view_id 1525801573
    注:

    この例では、cluster-uuidview_id が新しいリーダー サイトの値です。

上記の手順では、GSLB セットアップのリーダー サイトが 1 つのみであることを確保します。構成は、新しいリーダー サイトから新しいフォロワー サイトに再度プッシュされます。

変更の確認

GSLB リーダーの選択が正常に行われたかどうかを確認するには、すべてのサイトで次のコマンドを実行します。

show gslb runtime

出力に、新しいリーダー サイトが示されます。

考慮事項

このような変更を行うと、GSLB サイトに何らかの不整合が生じる場合があるため、次の点を考慮する必要があります。

  • リーダーを手動で変更すると、両方のサイト間で構成の同期の問題が発生する可能性があります。

  • リーダー サイトを変更すると、新しいリーダー サイトから以前のリーダー サイトに構成が同期されるため、このような変更の実行中にトラフィックが中断されます。

  • 新しいリーダー サイトが以前のリーダー サイト(新しいフォロワー)と同期するレコードが少ない可能性があるため、DNS レコードにも不整合が生じる場合があります。