Citrix ADC

Citrix ADCにおけるエニーキャストのサポート

エニーキャストは、一連のサーバーが同じ IP アドレスを共有するネットワークの一種です。クライアント要求は、ルーティングテーブルに基づいて、地形的に最も近いサーバーに送信されます。このルーティングにより、遅延の問題が軽減され、高可用性が確保され、ダウンタイムが最小限に抑えられます。

Citrix ADCは、グローバルサーバー負荷分散(GSLB)とDNS機能を備えたエニーキャストネットワークをサポートします。

次の図は、Citrix ADCにおけるエニーキャストのトポロジ図を示しています。

ローカライズされた画像

Anycast GSLB

Citrix ADC GSLB機能は、ディザスタリカバリとともにグローバルに分散したサイト間の負荷分散を提供し、アプリケーションの継続的な可用性を保証します。

停止中、GSLB は、最も近いデータセンターまたは最もパフォーマンスの高いデータセンターにトラフィックをルーティングすることにより、即時の災害復旧を提供します。ただし、GSLB は以下を制御できません。

  • DNS トラフィックが、地理的に異なる場所にある GSLB ノードにルーティングされる方法。
  • DNS クエリが GSLB ノードにルーティングされる間に、どのくらいのレイテンシーが追加されるか。

一般的な GSLB セットアップでは、各データセンターに、DNS クエリを受信するために、サイト固有の権限ドメインネームサーバー (ADNS) で構成された GSLB ノードがあります。各サイトの ADNS は、DNS リゾルバーのネームサーバーとして構成されます。GSLB ノードの数が増加すると、ネームサーバーレコードの数も増加します。このような場合、データセンターの障害が発生した場合、LDNS は DNS 解決の待ち時間に追加される別のネームサーバーで解決を再試行する必要があります。 また、GSLB ノードが追加されるたびに、ネームサーバーレコードを更新する必要があります。

これらの欠点を克服するために、Anycast ADNSを使用することができます。エニーキャスト ADNS では、すべての GSLB ノードに単一の ADNS IP アドレスが使用され、DNS トラフィックは動的ルーティングを使用して GSLB ノードにルーティングされます。

たとえば、GSLB サイトが DOWN の場合、ルーティングテーブルが更新され、このサイトへのルートが削除されます。したがって、DNS クエリは、DOWNしているサイトに送信されません。その結果、再試行は行われません。

また、新しい GSLB ノードが追加されると、新しいノードには同じ ADNS IP アドレスが割り当てられます。動的ルーティングは、ルーティングアルゴリズムに基づいて、新しいサイトへのルートでルーティングテーブルを自動的に更新します。したがって、DNS ネームサーバーレコードを更新する必要はありません。新しいGSLBサイトの展開は、Anycastでより簡単かつ迅速に行われます。

エニーキャストモードで ADNS IP アドレスを構成する方法

Citrix ADCでADNS IPでホストルーティングを有効にし、適切なルートヘルス注入(RHI)レベルを設定する必要があります。ほとんどの場合、ADNS IP 上には仮想サーバーがないため、RHI レベルを NONE として選択する必要があります。ADNS IP 上でホストルートを有効にすると、カーネルルートになります。次に、選択の動的ルーティングを有効にし、カーネルルートを再配布するようにルーティングプロトコルを構成できます。

ADNS IP の設定:例

コマンドプロンプトで、「;」と入力します。

add service adns_public 5.5.5.5 ADNS 53

set ip 5.5.5.5 -hostRoute ENABLED -vserverRHILevel ALL_VSERVERS

GSLB サイトの BGP 設定:例

Site1#sh run
!
hostname Site1
!
log syslog
log record-priority
!
ns route-install bgp
!
interface lo0
 ip address 127.0.0.1/8
 ipv6 address fe80::1/64
 ipv6 address ::1/128
!
interface vlan0
 ip address 10.102.148.94/25
 ipv6 address fe80::e84c:f4ff:fe74:4588/64
!
interface vlan2
 ip address 172.18.30.15/24
!
router bgp 5
 redistribute kernel -----> redistributing the kernel routes
 neighbor 172.18.30.30 remote-as 4
 neighbor 172.18.30.30 advertisement-interval 1
 neighbor 172.18.30.30 timers 4 16
!
End

Site1#

GSLB サイトルーティングテーブル:例

Site1#sh ip route
Codes: K - kernel, C - connected, S - static, R - RIP, B - BGP
       O - OSPF, IA - OSPF inter area
       N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
       E1 - OSPF external type 1, E2 - OSPF external type 2
       i - IS-IS, L1 - IS-IS level-1, L2 - IS-IS level-2
       ia - IS-IS inter area, I - Intranet
       * - candidate default

K       5.5.5.5/32 via 0.0.0.0 ---------------------------------------> Kernel Route for ADNS
C       10.102.148.0/25 is directly connected, vlan0
C       127.0.0.0/8 is directly connected, lo0
B       172.18.10.0/24 [20/0] via 172.18.30.30, vlan2, 01w5d22h
B       172.18.20.0/24 [20/0] via 172.18.30.30, vlan2, 01w5d22h
C       172.18.30.0/24 is directly connected, vlan2
B       192.168.3.0/24 [20/0] via 172.18.30.30, vlan2, 01w5d22h
B       192.168.5.0/24 [20/0] via 172.18.30.30, vlan2, 01w5d22h
B       192.168.10.0/24 [20/0] via 172.18.30.30, vlan2, 01w5d22h

Gateway of last resort is not set
Site1#

Anycast DNS

Citrix ADC上のDNSプロキシ仮想サーバーにエニーキャストDNSを使用できます。複数の DNS ネームサーバが設定されている場合、DNS リゾルバはラウンドロビン方式に基づいて応答します。たとえば、リゾルバが最初のサーバから応答を受信しない場合、設定されたタイムアウト値が期限切れになると、2 番目のサーバに切り替わります。1 台目のサーバから 2 台目のサーバへの切り替えは、DNS 解決のレイテンシを増やします。DNS リゾルバがエニーキャストで設定されている場合、この遅延は解消できます。

DNS の設定:例

コマンドプロンプトで、「;」と入力します。

add lb vserver dns DNS 5.5.5.50 53

set ip 5.5.5.50 -hostRoute ENABLED -vserverRHILevel ALL_VSERVERS

Citrix ADCにおけるエニーキャストのサポート