ADC

GSLBサービスグループを構成する

サービスグループを使用すると、サービスグループを 1 つのサービスと同じくらい簡単に管理できます。サービスグループに対していずれかのオプションを有効または無効にすると、そのサービスグループのすべてのメンバーに対してそのオプションが有効または無効になります。たとえば、この機能は [圧縮]、[ヘルスモニタリング]、[グレースフルシャットダウン] などのオプションに適用できます。

サービスグループを作成したら、次のいずれかを実行できます。

  • サービスグループを仮想サーバにバインドします。
  • サービスをサービスグループに追加します。
  • モニタをサービスグループにバインドします。

重要

負荷分散仮想サーバーが GSLB ノード自体または子ノード (親子展開) にあり、モニターが GSLB サービスにバインドされていない場合は、

次のことを確認してください。GLSB サービスグループの IP アドレス、ポート番号、およびプロトコルが、サービスの仮想サーバーと一致している表す。それ以外の場合、サービス状態は DOWN とマークされます。

NetScaler は、次の種類のGSLBサービスグループをサポートしています。

  • IP アドレスベースのサービスグループ
  • ドメイン名ベースのサービスグループ
  • ドメイン名ベースのAutoscaleサービスグループ

GSLB ドメイン名ベースの Autoscale サービスグループ

NetScaler ハイブリッドおよびマルチクラウドのグローバルサーバー負荷分散(GSLB)ソリューションを使用すると、ハイブリッドクラウド、複数のクラウド、オンプレミスの複数のデータセンターにアプリケーショントラフィックを分散できます。NetScaler GSLB ソリューションは、NetScaler ロードバランサー、AWS の弾性負荷分散(ELB)、その他のサードパーティ製ロードバランサーなど、さまざまな負荷分散ソリューションをサポートします。また、GSLB ソリューションでは、GSLB レイヤと負荷分散レイヤが個別に管理されている場合でも、グローバル負荷分散が実行されます。

クラウド展開では、管理目的で負荷分散ソリューションにアクセスする際に、参照としてドメイン名がユーザーに与えられます。外部エンティティは、これらのドメイン名が解決する IP アドレスを使用しないことをお勧めします。また、負荷分散層は負荷に応じてスケールアップまたはスケールダウンされるため、IP アドレスが静的であることは保証されません。したがって、IP アドレスではなくドメイン名を使用して負荷分散エンドポイントを参照することをお勧めします。これには、IP アドレスではなくドメイン名を使用して GSLB サービスを参照する必要があり、負荷分散レイヤードメイン名に対して返されたすべての IP アドレスを消費し、GSLB で同じ表現を持つ必要があります。

負荷分散エンドポイントを参照するときに IP アドレスの代わりにドメイン名を使用するには、GSLB のドメイン名ベースのサービスグループを使用できます。

GSLB ドメイン名ベースのサービスグループの監視

NetScaler ADCアプライアンスには、 TCPベースのアプリケーションを監視する2つの内蔵モニターがあります 。tcp-defaultping-defaulttcp-default モニターはすべての TCP サービスにバインドされ、 ping-default モニターはすべての非 TCP サービスにバインドされます。ビルトインモニターは、デフォルトで GSLB サービスグループにバインドされます。ただし、アプリケーション固有のモニターを GSLB サービスグループにバインドすることを推奨します。

トリガモニタオプションを MEPDOWN に設定するための推奨事項

[Trigger Monitor] オプションを使用すると、GSLB サイトで常にモニターを使用する必要があるか、メトリック交換プロトコル (MEP) が DOWN のときにモニターを使用する必要があるかを示すことができます。

[トリガーモニター] オプションは、デフォルトで ALWAYS に設定されています。

Trigger Monitor オプションが ALWAYS に設定されている場合、各 GSLB ノードはモニターを個別にトリガーします。各 GSLB ノードが個別にモニターをトリガーする場合、各 GSLB ノードは異なる GSLB サービスセットで動作する可能性があります。これにより、これらの GSLB ノードに到達する DNS 要求に対する DNS 応答に不一致が生じる可能性があります。また、各 GSLB ノードが個別に監視している場合は、ロードバランサーエンティティに到達する監視プローブの数が増加します。永続性エントリも GSLB ノード間で互換性がなくなります。

したがって、GSLB サイトエンティティの [トリガーモニター] オプションを MEPDOWN に設定することをお勧めします。[Trigger Monitor] オプションが MEPDOWN に設定されている場合、負荷分散ドメインの解決と監視の所有権はローカル GSLB ノードにあります。[Trigger Monitor] オプションが MEPDOWN に設定されている場合、負荷分散ドメインの解決とそれ以降の監視は、GSLB サービスグループのローカル GSLB ノードによって実行されます。その結果は、メトリック交換プロトコル (MEP) を使用して GSLB に参加している他のすべてのノードに伝播されます。

また、負荷分散ドメインに関連付けられている IP アドレスのセットが更新されるたびに、MEP を通じて通知されます。

GSLB サービスグループの制限事項

  • 負荷分散ドメインの場合、DNS 応答で返される IP アドレスは一般にパブリック IP アドレスです。負荷分散ドメインが解決されると、プライベート IP アドレスを動的に適用することはできません。したがって、GSLB ドメイン名ベースの Autoscale サービスグループの IP ポートバインディングのパブリック IP ポートとプライベート IP ポートは同じです。これらのパラメータは、ドメイン名ベースの Autoscale サービスグループに対して明示的に設定することはできません。
  • GSLB サービスグループでは、サイト永続性、DNS ビュー、およびクラスタリングはサポートされていません。

CLI を使用して GSLB サービスグループを設定および管理する

GSLB サービスグループを追加するには、次の手順を実行します。

add gslb serviceGroup <serviceGroupName>@ <serviceType> [-autoScale ( DISABLED | DNS )] -siteName <string>
<!--NeedCopy-->

例:

add gslb serviceGroup Service-Group-1 http -autoScale DNS -siteName Site1
<!--NeedCopy-->

GSLB サービスグループを仮想サーバーにバインドするには

bind gslb serviceGroup <serviceGroupName> ((<IP>@ <port>) | <serverName>@ | (-monitorName <string>@))
<!--NeedCopy-->

例:

bind gslb serviceGroup Service-Group-1 203.0.113.2
bind gslb serviceGroup Service-Group-1 S1 80
bind gslb serviceGroup** Service-Group-1 -monitorName Mon1
<!--NeedCopy-->

GSLB サービスグループを仮想サーバにバインド解除するには

unbind gslb serviceGroup <serviceGroupName> ((<IP>@ <port>) | <serverName>@ | -monitorName <string>@)
<!--NeedCopy-->

例:

unbind gslb serviceGroup Service-Group-1 -monitorName Mon1
<!--NeedCopy-->

GSLB サービスグループのパラメータを設定するには、次の手順を実行します。

set gslb serviceGroup <serviceGroupName>@ [(<serverName>@ <port> [-weight <positive_integer>] [-hashId <positive_integer>] [-publicIP <ip_addr|ipv6_addr|*>] [-publicPort <port>]) | -maxClient <positive_integer> | -cip ( ENABLED | DISABLED ) | <cipHeader> | -cltTimeout <secs> | -svrTimeout <secs> | -maxBandwidth <positive_integer> | -monThreshold <positive_integer> | -downStateFlush ( ENABLED | DISABLED )] [-monitorName <string> -weight <positive_integer>] [-healthMonitor ( YES | NO )] [-comment <string>] [-appflowLog ( ENABLED | DISABLED )]
<!--NeedCopy-->

GSLB サービスグループからパラメータの設定を解除するには、次の手順を実行します。

unset gslb serviceGroup <serviceGroupName>@ [<serverName>@ <port> [-weight] [-hashId] [-publicIP] [-publicPort]] [-maxClient] [-cip] [-cltTimeout] [-svrTimeout] [-maxBandwidth] [-monThreshold] [-appflowLog] [-monitorName] [-weight] [-healthMonitor] [-cipHeader] [-downStateFlush] [-comment]
<!--NeedCopy-->

GSLB サービスグループを有効にするには

enable gslb serviceGroup <serviceGroupName>@ [<serverName>@ <port>]
<!--NeedCopy-->

例:

enable gslb serviceGroup SG1 S1 80
<!--NeedCopy-->

GSLB サービスグループを無効にするには

disable gslb serviceGroup <serviceGroupName>@ [<serverName>@ <port>] [-delay <secs>] [-graceFul ( YES /| NO )]
<!--NeedCopy-->

例:

disable gslb serviceGroup SRG2 S1 80
<!--NeedCopy-->

注:

無効にする必要があるサービスグループは、Autoscale サービスグループではなく DBS サービスグループである必要があります。

GSLB サービスグループを削除するには、次の手順を実行します。

rm gslb serviceGroup <serviceGroupName>
<!--NeedCopy-->

例:

rm gslb serviceGroup Service-Group-1
<!--NeedCopy-->

GSLB サービスグループの統計情報を表示するには、次の手順を実行します。

stat gslb serviceGroup [<serviceGroupName>]
<!--NeedCopy-->

例:

stat gslb serviceGroup Service-Group-1
<!--NeedCopy-->

GSLB サービスグループのプロパティを表示するには、次の手順を実行します。

show gslb serviceGroup [<serviceGroupName>  -includeMembers]
<!--NeedCopy-->

例:

show gslb serviceGroup SG1
show gslb serviceGroup -includeMembers
<!--NeedCopy-->

GSLB サービスグループメンバーの有効化または無効化

サービスグループ全体を有効または無効にする代わりに、GSLB (DNS ベース) サービスグループの個々のメンバーを選択的に有効または無効にできます。この機能は、AutoscaleサービスグループとAutoscale以外のサービスグループの両方で使用できます。そのため、GSLB サービスグループの管理が容易になります。

たとえば、GSLB サイト上の特定のサーバーへのトラフィックを避ける必要があるとします。10 個の GSLB サービスまたはサーバー (S1 ~ S10) が 1 つのサービスグループ (SG1) にバインドされているとします。サービス 5(S5)のみを無効にして、サーバ 5 へのトラフィックを回避します。この機能を使用しない場合、サービス S1 から S4 とサービス S6 から S10 を個別にバインドする必要があります。このプロセスは、多数のサービスを無効または有効にする必要がある大規模な GSLB サービスグループでは面倒です。この機能を使用すると、サービスグループ内の他のサービスに影響を与えることなく、サービス 5(S5)を直接無効にできます。

CLI を使用して GSLB サービスグループメンバーを有効にするには、次の手順を実行します。

enable gslb serviceGroup <serviceGroupName>@ [<serverName>@ <port>]
<!--NeedCopy-->

注:

GSLB サービスグループを有効にするには、サービスグループ名だけを指定します。サービスグループのメンバーを有効にするには、GSLB サービスグループ名に加えて、サービスをホストするサーバーの名前とサービスのポート番号を指定します。

例:

enable gslb serviceGroup http_svc_group 10.102.27.153 80
<!--NeedCopy-->

CLI を使用して GSLB サービスグループまたは GSLB サービスグループのメンバーを無効にするには、次の手順を実行します。

disable gslb serviceGroup <serviceGroupName>@ [<serverName>@ <port>]
<!--NeedCopy-->

例:

disable gslb serviceGroup http_svc_group 10.102.27.153 80
<!--NeedCopy-->

注:

GSLB サービスグループを無効にするには、サービスグループ名だけを指定します。サービスグループのメンバーを無効にするには、GSLB サービスグループ名に加えて、サービスをホストするサーバーの名前とサービスのポート番号を指定します。

既存の GSLB CLI コマンドへの変更

GSLB サービスグループの導入後、既存の GSLB コマンドに対して行われた変更は次のとおりです。

  • bind gslb vserver -bind コマンドにサービスグループ名が追加されます。

    例:

     bind gslb vserver <name> ((-serviceName <string> [-weight <positive_integer>] ) | <serviceGroupName>@ | | (-domainName <string> [-TTL <secs>] [-backupIP<ip_addr|ipv6_addr|*>] [-cookieDomain <string>] [-cookieTimeout <mins>][-sitedomainTTL <secs>]) | (-policyName <string>@ [-priority<positive_integer>] [-gotoPriorityExpression <expression>] [-type REQUEST | RESPONSE )]))
     <!--NeedCopy-->
    
  • unbind gslb vserver -サービスグループが unbind コマンドに追加されます。

    例:

     unbind gslb vserver <name> (-serviceName <string> <serviceGroupName> @ /(-domainName <string> [-backupIP] [-cookieDomain]) | -policyName <string>@)
     <!--NeedCopy-->
    
  • show gslb site -このコマンドを実行すると、GSLB サービスグループも表示されます。

  • show gslb vs -このコマンドを実行すると、GSLB サービスグループが表示されます。

  • stat gslb vs -このコマンドを実行すると、GSLB サービスグループの統計情報も表示されます。

  • show lb monitor bindings -このコマンドを実行すると、GSLB サービスグループバインディングも表示されます。

GUI を使用して GSLB サービスグループを構成する

  1. [ トラフィック管理 ] > [ GSLB ] > [ サービスグループ] に移動します。
  2. サービスグループを作成し、AutoScale モードを DNS に設定します。

GSLB サービスグループのサイト永続性を構成する

IP アドレスベースおよびドメイン名ベースのサービスグループに対して、サイト永続性を構成できます。ドメイン名ベースの Autoscale サービスグループでは、サイトの永続性はサポートされていません。

  • 接続プロキシの永続性については、サイトプレフィックスを設定する必要はありません。

    コマンドプロンプトで入力します。

     set gslb service group <serviceGroupName> [-sitePersistence <sitePersistence>]
     <!--NeedCopy-->
    
  • HTTP リダイレクトの永続性については、まずサービスグループのメンバのサイトプレフィックスを設定し、次にサービスグループの HTTPRedirect persistence パラメータを設定する必要があります。

    コマンドプロンプトで入力します。

     set gslb servicegroup <serviceGroupName>  <serviceGroup member name|Ip> <port>  [-sitePrefix <string>]
    
     set gslb servicegroup <serviceGroupName> [-sitePersistence <sitePersistence>]
     <!--NeedCopy-->
    

例:

  • 接続プロキシの永続性

     set gslbservicegroup sg1 -sitePersistence connectionProxy
     <!--NeedCopy-->
    
  • HTTP リダイレクトの永続性

     set gslb servicegroup sg2 test1 80 -sitePrefix vserver-GSLB-1
    
     set gslb servicegroup sg2 -sitePersistence HTTPRedirect
     <!--NeedCopy-->
    
  1. [ トラフィック管理 ] > [ GSLB ] > [ サービスグループ ] に移動し、サイトの永続性を設定するサービスグループ (ServiceGroup-GSLB-1 など) を選択します。
  2. [ サイトの永続性 ] セクションをクリックし、要件を満たすパーシステンスを設定します。

ヒント

GSLB サービスグループの展開シナリオと設定例については、以下のトピックを参照してください。

GSLBサービスグループを構成する