Global Traffic Manager
Global Traffic Manager概念に関する質問
Global Traffic Manager (GTM) と Server Load Balancer (SLB) の比較
Global Traffic Manager (GTM) は DNS を使用してドメイン名を複数の IP アドレスに名前解決し、ユーザーを異なる IP アドレスに誘導することで、アプリケーションのトラフィックを分散させます。また、GTM はヘルスチェックを実行することで、DNS が返す IP アドレスのリストを動的に更新し、障害分離とフェールオーバーを可能にします。エンドユーザーはサービスの IP アドレスに直接接続するため、トラフィックは GTM を経由しません。対照的に、Server Load Balancer (SLB) はユーザーリクエストをプロキシし、リアルタイムで異なるサーバーに分散させるため、エンドユーザーのトラフィックは SLB を通過する必要があります。
同一リージョン内での負荷分散には SLB を使用します。異なるリージョンにある複数の SLB エンドポイント間でトラフィックを分散させるには GTM を使用します。
以下の表は、両者を比較したものです:
比較項目 | ネットワークレイヤー | バックエンドアドレス | 重み付けラウンドロビン | リージョン間の複雑さ | 障害分離時間 | セッション維持 |
Global Traffic Manager | レイヤー 3 | ドメイン名または IP | サポート | シンプル | 分レベル | 非サポート |
Server Load Balancer (SLB) | レイヤー 4 およびレイヤー 7 | IP | サポート | 困難 | 第2レベル | サポート |
Global Traffic Manager (GTM) と Alibaba Cloud DNS の比較
GTM はインテリジェント DNS 名前解決を基盤として構築されています。ヘルスチェックと自動フェールオーバー機能が追加されています。GTM はユーザーの地理的な場所に基づいて、最も近いエンドポイントにルーティングします。また、リアルタイムでサービスのステータスを監視します。
ドメインアクセスに関する質問
複数のビジネスドメインで 1 つの GTM インスタンスを共有できますか?
状況によります。
すべてのビジネスドメインが全く同じ IP アドレスセットに名前解決される場合は、CNAME レコードを使用して、それらを同じ GTM のアクセスドメインにポイントします。そうでない場合は、各ビジネスドメインに独自の GTM インスタンスが必要です。
1. 1 つの GTM インスタンスを使用する場合
ビジネスドメイン www.example.com は 1.1.XX.XX と 2.2.XX.XX に名前解決されます。これら 2 つの IP アドレスにはディザスタリカバリが必要です。
ビジネスドメイン test.example.com も 1.1.XX.XX と 2.2.XX.XX に名前解決されます。これら 2 つの IP アドレスにもディザスタリカバリが必要です。
この場合、両方のドメインは同じ IP アドレスセットに名前解決されます。必要な GTM インスタンスは 1 つだけです。www.example.com 用と test.example.com 用にそれぞれ CNAME レコードを設定します。両方のレコードを GTM のアクセスドメインにポイントします。詳細については、「1. アクセスドメインの設定」をご参照ください。
2. 同じ GTM インスタンスを使用できないシナリオ
ビジネスドメイン www.example.com は 1.1.XX.XX と 2.2.XX.XX に名前解決されます。これら 2 つの IP アドレスにはディザスタリカバリが必要です。
ビジネスドメイン test.example.com は 1.1.XX.XX と 3.3.XX.XX に名前解決されます。これら 2 つの IP アドレスにもディザスタリカバリが必要です。
この場合、ドメインは異なる IP アドレスセットに名前解決されます。各ドメインには独自の GTM インスタンスが必要です。
Global Traffic Manager (GTM) のアクセスドメイン:URL で直接アクセスできますか?
はい。GTM のアクセスドメインは有効で、直接アクセス可能な URL です。また、エンドユーザーにサービスを提供する他のビジネスドメインの CNAME ターゲットとしても使用できます。
Global Traffic Manager (GTM):GTM はどのようにサービスの障害を検出しますか?
GTM にはサービス監視機能が組み込まれています。グローバルな監視ノードを使用します。GTM は、複数の監視ポイントで障害が報告されるとアラートをトリガーします。サービスの監視には、Ping、TCP、または HTTP(S) ヘルスチェックを選択できます。
Ping ヘルスチェック:パケット損失率と応答時間に基づいて障害を検出します。
TCP ヘルスチェック:ポートの応答時間に基づいて障害を検出します。
HTTP/HTTPS ヘルスチェック:応答時間とリターンコードに基づいて障害を検出します。
Global Traffic Manager (GTM) のフェールオーバー:有効になるまでどのくらい時間がかかりますか?
回答:広範なテストの結果、アプリケーションサービスに障害が発生した場合、GTM Ultimate Edition は約 1 分で障害を検出し、フェールオーバーを開始できることが示されています。グローバルな障害復旧時間は、障害検出時間とグローバルな有効化時間の合計です。
Standard Edition:約 3 分での障害検出とフェールオーバー
障害検出時間:ヘルスチェック間隔 60 秒、TTL 60 秒、2 回連続の障害という設定の場合、GTM は約 3 分で障害を検出してフェールオーバーします。
ネットワーク全体への伝播時間:GTM は固定の伝播時間を保証できません。伝播は、ISP の TTL キャッシュ設定とリージョン間のネットワーク状況に依存します。
Ultimate Edition:約 1 分での障害検出とフェールオーバー
障害検出時間:ヘルスチェック間隔 15 秒、TTL 1 秒、3 回連続の障害という設定の場合、GTM は約 1 分で障害を検出してフェールオーバーします。
ネットワーク全体への伝播時間:GTM は固定の伝播時間を保証できません。伝播は、ISP の TTL キャッシュ設定とリージョン間のネットワーク状況に依存します。
Global Traffic Manager (GTM) のアドレスプール:ドメイン名を使用できますか?
はい。アドレスプールには IP アドレスまたはドメイン名を含めることができます。同じプール内で IP アドレスとドメイン名を混在させないでください。複数のドメイン名を追加した場合、GTM はデフォルトでラウンドロビン DNS 名前解決を実行します。
Global Traffic Manager (GTM):GTM はインテリジェント DNS 名前解決をサポートしていますか?
はい。GTM にはインテリジェント DNS 名前解決機能が含まれています。ユーザーの ISP、リージョン、または国に基づいたルーティングをサポートしています。GTM は現在、中国の ISP、中国国内の 7 つのリージョン、中国以外の 6 つの大陸、および一部の国をサポートしています。これにより、ユーザーは最も近いエンドポイントに接続され、アクセス速度が向上します。
Global Traffic Manager (GTM):GTM はセッション維持をサポートしていますか?
いいえ。GTM は DNS レイヤーで動作します。DNS 応答を使用してクライアントをアプリケーションのエンドポイントにルーティングします。クライアントはアプリケーションの IP アドレスに直接接続します。GTM はクライアントとサーバー間の HTTP トラフィックを認識しないため、セッション維持をサポートできません。
ドメイン名は Global Traffic Manager (GTM) と CDN を同時に使用できますか?
はい。CDN を GTM の前に配置します。詳細については、「CDN > GTM 連携による安全なアクセスと高可用性」をご参照ください。
Global Traffic Manager (GTM) のアドレスプール:CDN プロバイダーの CNAME アクセスドメインを追加できますか?
追加することは可能ですが、推奨しません。CDN には多くのノードがありますが、GTM のヘルスチェックノードは限られています。これにより、監視とフェールオーバーが不正確になり、ヘルスチェックとフェールオーバーの信頼性が低下する可能性があります。
DNS 名前解決が有効になりません。古い IP または NXDOMAIN が返されます。
A:Global Traffic Manager の DNS レコードが有効になるまでには時間がかかります。しばらくお待ちください。長時間経ってもレコードが有効にならない場合は、以下の手順で問題をトラブルシューティングしてください:
TTL の有効期限を確認する:
dig www.example.comを実行して TTL のカウントダウンを確認します。CNAME の設定を確認する:
dig +trace www.example.comを実行します。ローカル DNS キャッシュをクリアする:
sudo systemctl flush-dnsを実行します。
ヘルスチェックが失敗します
ヘルスチェックが失敗してもサービスが稼働している場合は、以下の手順に従ってください:
ファイアウォールが GTM プローブ IP 範囲からのトラフィックを許可していることを確認します。
ヘルスチェックパスをテストする:
curl -H "Host: domain" http://ip:port/pathを実行します。サーバーの負荷と応答時間を確認します。
アクセスドメインのレコードタイプが A レコードで、アドレスプールにドメイン名が含まれています。アクセスドメインに対して dig を実行しても CNAME の結果が返されないのはなぜですか?
「アドレスプールの設定」の制約に基づき、A タイプのアクセスドメイン名は、A とドメイン名のアドレスプールタイプをサポートします。ただし、A タイプのアクセスリクエストにのみ応答します。CNAME タイプのリクエストに応答するには、アクセスドメイン のアクセスタイプを CNAME タイプに変更する必要があります。
課金に関する質問
1 つのアドレスがサブスクリプションインスタンスと従量課金インスタンスの両方で使用されている場合、ヘルスチェックはどのように課金されますか?
各インスタンスタイプは個別に課金されます。サブスクリプションインスタンスは、アクセスドメインによってトリガーされるプローブタスクごとに課金されます。従量課金インスタンスは、ヘルスチェックプローブごとに課金されます。
アラートに関する質問
なぜアラート通知が届かなかったのですか?
想定されるアラートが届かない場合は、以下の手順に従ってください:
アラートルールの確認:ルールが存在し、有効になっていることを確認します。
連絡先のステータスの確認:アラート連絡先管理ページで、電話番号またはメールアドレスが認証済みであることを確認します。
迷惑メールまたはブロックされたメッセージの確認:メールの迷惑メールフォルダまたは SMS のブロックリストを確認します。
ヘルスチェックログの確認:監視対象のアドレスまたはアドレスプールが、アラートルールで定義された状態に変化したことを確認します。
アラートルールをトリガーするものは何ですか?
アラートルールは、ヘルスチェックステータスの変更時にトリガーされます。一般的なトリガーイベントは次のとおりです:
アドレスが利用不可:アドレスが設定されたしきい値の回数だけ連続してヘルスチェックに失敗した場合にトリガーされます。
アドレスが回復:利用不可だったアドレスが再びヘルスチェックに合格した場合にトリガーされます。
アドレスプールが利用不可:プール内のすべてのアドレスが利用不可になった場合にトリガーされます。
アドレスプールが回復:利用不可だったプール内の少なくとも 1 つのアドレスが再び利用可能になった場合にトリガーされます。