AI総合研究所

SHARE

X(twiiter)にポストFacebookに投稿はてなブックマークに登録URLをコピー

Azure Traffic Managerとは?その仕組みや負荷分散の種類、料金を解説

この記事のポイント

  • Azure Traffic ManagerはDNSベースの負荷分散サービスで、グローバルに分散したアプリケーションのトラフィックを最適化
  • 6種類のルーティング方法(優先順位、重み付け、パフォーマンス、地理的、複数値、サブネット)を提供し、柔軟なトラフィック管理が可能
  • エンドポイントの健全性を自動監視し、障害時に他のエンドポイントへ自動的にトラフィックを切り替え
  • 料金は受信したDNSクエリ数に基づき、10億クエリ/月を超えると割引適用
  • ハイブリッド環境にも対応し、Azure内のリソースだけでなく外部エンドポイントも管理可能

監修者プロフィール

坂本 将磨

Microsoft AIパートナー、LinkX Japan代表。東京工業大学大学院で技術経営修士取得、研究領域:自然言語処理、金融工学。NHK放送技術研究所でAI、ブロックチェーン研究に従事。学会発表、国際ジャーナル投稿、経営情報学会全国研究発表大会にて優秀賞受賞。シンガポールでのIT、Web3事業の創業と経営を経て、LinkX Japan株式会社を創業。

グローバルに展開するビジネスで、ウェブアプリケーションの可用性と応答性を高めたいと考えていませんか?
Azure Traffic Managerは、そんな課題を解決するDNSベースの負荷分散サービスです。

本記事では、Azure Traffic Managerの仕組みから特徴、料金体系まで詳しく解説します。
6種類のルーティング方法や自動フェールオーバー機能など、高度なトラフィック管理の実現方法を学べます。

さらに、他のAzureサービスとの連携や、導入時の注意点まで幅広くカバーしています。
クラウド環境でのアプリケーションパフォーマンス最適化に関心のある方は、ぜひご一読ください。

Azure Traffic Managerとは

Azure Traffic Managerは、DNSベースのトラフィック負荷分散サービスです。ユーザーのリクエストをDNSを介して最適なエンドポイントにルーティングします

これにより、複数のリージョンに分散されたアプリケーションへのアクセスを効率的に管理できます。
Traffic Managerは、各エンドポイントの状態を監視し、応答がない場合は他の利用可能なエンドポイントにトラフィックを自動的に振り分けます。これにより、高い可用性とパフォーマンスを確保します。


Azureにおける負荷分散の種類

Azureには、さまざまなアプリケーションやシステムのニーズに対応するために、4種類の主要な負荷分散サービスが提供されています。
それぞれが異なるレイヤーやシナリオに特化しており、最適なパフォーマンスと可用性を確保するために使用されます。

ここでは、Azure Traffic Manager以外の3種類について解説します。

1. Azure Load Balancer

AzureLoadBalancerAzure Load Balancer

Azure Load Balancerは、レイヤー4(L4)で動作するトラフィック負荷分散サービスです。
主にTCPやUDPトラフィックを分散するのに使用されます。Azure内で運用する仮想マシン(VM)やリソースに対して、高可用性を提供し、トラフィックを複数のバックエンドに均等に分散します。

  • 主な用途
    仮想マシンへのトラフィック分散、オンプレミスとのハイブリッド接続、パブリックおよび内部ロードバランシング。

  • 特徴
    インターネット向けのパブリックIPを使った外部ロードバランシングと、プライベートIPを使った内部ロードバランシングをサポート。

【関連記事】
Azure Load Balancerとは?その概要や料金、設定方法を徹底解説!

2. Azure Application Gateway

AzureApplicationGatewayAzure Application Gateway

Azure Application Gatewayは、レイヤー7(L7)で動作するアプリケーション層の負荷分散サービスです。HTTP/HTTPSトラフィックを対象とし、リクエストの内容に基づいたルーティング(URLベースやホストヘッダー、パスに基づくルーティング)が可能です。
さらに、Web Application Firewall (WAF) 機能を提供し、アプリケーションのセキュリティを強化します。

  • 主な用途
    Webアプリケーションのトラフィック分散、SSL終端処理、Webアプリケーションのセキュリティ強化。

  • 特徴
    セッションアフィニティ、SSLオフロード、WAFを含む高度なルーティング機能。

3. Azure Front Door

AzureFrontDoorAzure Front Door

Azure Front Doorは、グローバルなアプリケーションのためのレイヤー7(L7)の負荷分散およびアクセラレーションサービスです。

HTTP/HTTPSトラフィックを対象にし、コンテンツ配信ネットワーク(CDN)機能と組み合わせて、Webアプリケーションのパフォーマンスと可用性を向上させます。また、グローバル負荷分散、SSLオフロード、カスタムドメイン管理などの機能を提供します。

  • 主な用途
    グローバルなWebアプリケーションのトラフィック分散、Webアプリケーションのアクセラレーション、エッジキャッシングによるパフォーマンス向上。

  • 特徴
    高度なルーティング、アプリケーション加速、グローバル負荷分散、WAF統合。

【関連記事】
Azure Front Doorとは?料金体系や主要機能、利用手順を徹底解説

OSI参照モデルについて

OSI参照モデル(Open Systems Interconnection Model)は、異なるネットワーク機器やソフトウェアが相互に通信できるようにするための国際標準モデルです。
このモデルは、ネットワーク通信を7つの層(レイヤー)に分割して、各層で特定の機能を担当することで、ネットワーク上でのデータ伝送を標準化します。以下に各層の概要を簡単に説明します。

レイヤー1(物理層 / Physical Layer):
データを物理的に伝送するためのハードウェア(ケーブル、スイッチ、ハブなど)を扱います。ビット単位でデータを伝送します。

レイヤー2(データリンク層 / Data Link Layer):
同じネットワーク内のデバイス間でデータを転送する役割を担います。エラー検出やデータフレームの管理を行います。Ethernetなどのプロトコルがここに該当します。

レイヤー3(ネットワーク層 / Network Layer):
異なるネットワーク間でデータをルーティング(経路選択)する役割を担います。IPアドレスを使用してパケットを送受信します。代表的なプロトコルにIP(Internet Protocol)があります。

レイヤー4(トランスポート層 / Transport Layer):
データの送受信を管理し、信頼性のある通信を提供します。データが確実に送られるようにするため、再送やエラー検出を行います。TCP(Transmission Control Protocol)やUDP(User Datagram Protocol)がこの層で使用されます。

レイヤー5(セッション層 / Session Layer):
通信セッションの確立、管理、終了を担当します。例えば、2つのアプリケーション間での接続を確立し、管理する役割を果たします。

レイヤー6(プレゼンテーション層 / Presentation Layer):
データの形式や構造を管理します。データの暗号化や圧縮、文字コードの変換などを行い、データを受信側が理解できる形に整えます。

レイヤー7(アプリケーション層 / Application Layer):
ユーザーやアプリケーションがネットワークにアクセスするためのインターフェースを提供します。具体的には、HTTP、FTP、SMTPなどのプロトコルがこの層で動作します。

この7層モデルを利用することで、各層が独立して機能を提供し、通信の効率化と標準化を実現しています。また、問題が発生した際には、どの層で問題が起きているかを特定しやすくするための指針にもなっています。Azureの負荷分散サービスも、このOSI参照モデルに基づいて、異なるレイヤーで異なる役割を果たしています。


Azure Traffic Managerの特徴

Azure Traffic Managerは、クラウド環境における高可用性とパフォーマンスを実現するための強力なツールです。以下に、Traffic Managerが提供する主な特徴について説明します。
特徴リストイメージ

アプリケーションの可用性向上

Azure Traffic Managerは、エンドポイントの状態を監視し、障害が発生した際に自動的に他のエンドポイントにトラフィックを切り替えることで、アプリケーションの高可用性を確保します。

この自動フェールオーバー機能により、サービスの中断を防ぎ、ユーザーに常に安定したアクセスを提供することが可能です。

アプリケーション応答性の最適化

Azure Traffic Managerは、ユーザーリクエストを最も応答速度の速いエンドポイントに振り分けることにより、アプリケーションの応答性を最適化します。これにより、グローバルに分散したユーザーに対しても、常に迅速かつ効率的なアクセスが提供され、ユーザーエクスペリエンスの向上を図ることができます。

メンテナンス時のダウンタイム回避

Azure Traffic Managerを活用することで、サービスの停止を伴わないメンテナンスを実施することが可能です。

メンテナンス中は、トラフィックを他のエンドポイントに自動で振り分けるため、ユーザーに影響を与えることなく、システムの更新や修正を安全に行うことができます

ハイブリッド環境での柔軟な運用

Azure Traffic Managerは、Azure内のエンドポイントに加えて、外部のクラウドサービスやオンプレミスのリソースにも対応しています。

これにより、クラウドとオンプレミス環境を統合したハイブリッドアプローチを容易に実現し、ビジネスの多様なニーズに応じた柔軟な運用が可能となります。

複雑なトラフィックパターンへの対応

Azure Traffic Managerは、複数のルーティングメソッドを組み合わせることで、複雑で大規模なトラフィックパターンにも対応可能です。

これにより、特定のビジネス要件に応じた柔軟なトラフィック管理が実現され、システム全体のパフォーマンスと効率を最大化することができます。


Azure Traffic Managerの料金

お金イメージ

Azure Traffic Manager は、どのくらいDNSクエリを受信したかに基づいて請求されます。
なお、毎月10億以上のクエリを受信するサービスは割引の対象となっており、監視された各エンドポイントも課金されます(Azureか外部サービスかで料金は異なります)。

2024年8月現在の東日本の料金は、以下のようになっています。

項目 料金
最初の 1,000,000,000 DNS クエリ/月 ¥83.190/100 万クエリ
1,000,000,000 を超えた分の DNS クエリ/月 ¥57.771/100 万クエリ
基本の正常性チェック
- 基本の正常性チェック (Azure) Azure エンドポイントあたり ¥55.460/月
- 高速インターバルの正常性チェックのアドオン (Azure) Azure エンドポイントあたり ¥154.056/月
- 基本の正常性チェック (外部) 外部エンドポイントあたり ¥83.190/月
- 高速インターバルの正常性チェックのアドオン (外部) 外部エンドポイントあたり ¥308.111/月
Real User Measurements
- Azure リージョンの測定 100 万測定されるごとに ¥0
Traffic View
- データ ポイント処理済み 100 万のデータ ポイントが処理されるごとに ¥308.111

Azure Traffic Managerの仕組み

Azure Traffic Managerでは、トラフィックをどのサーバーに送るかを決定するために、6種類のルーティング方法をサポートしています。

これらのルーティング方法を使って、ユーザーが最適なサーバーに接続できるようにトラフィックを効率的に振り分けます。

以下に、その6種類のルーティング方法について詳しく説明します。

1. 優先順位ルーティング

優先順位ルーティングは、特定のサーバーを最初に使い、もしそのサーバーが利用できなくなった場合にバックアップのサーバーに切り替える方法です。

2. 重み付けルーティング

重み付けルーティングは、トラフィックを複数のサーバーに分散させる方法です。各サーバーに「重み」を設定して、その重みに応じてトラフィックが振り分けられます。

例えば、あるサーバーに多くのトラフィックを送りたい場合、そのサーバーに高い重みを設定します。

3. パフォーマンスルーティング

パフォーマンスルーティングは、ユーザーに最も近い、または応答速度が最も速いサーバーにトラフィックを振り分ける方法です。

たとえば、日本にいるユーザーには日本に近いサーバーが選ばれるようになります。

4. 地理的ルーティング

地理的ルーティングは、ユーザーがいる場所に基づいて、特定のサーバーにトラフィックを振り分ける方法です。

例えば、特定の国や地域からのアクセスをその地域にあるサーバーに限定する場合に使います。これにより、データの保存場所に関する規制や、地域ごとのユーザー体験を最適化することができます。

5. 複数値ルーティング

複数値ルーティングは、IPv4やIPv6といった複数のIPアドレスを持つサーバーを使用する場合に、そのすべての正常なエンドポイントを返す方法です。
ユーザーは複数のサーバーから一番適したものを選んで接続することができます。

6. サブネットルーティング

サブネットルーティングは、特定のIPアドレス範囲を持つユーザーに対して、その範囲に対応するサーバーにトラフィックを振り分ける方法です。
特定のユーザーグループに対して、あらかじめ指定されたサーバーにアクセスさせることができます。

これら6種類のルーティング方法は、Azure Traffic Managerが各サーバーの状態を監視し、サーバーが正常に動作していない場合には自動で他のサーバーにトラフィックを切り替える機能と組み合わせて使用されます。

また、必要に応じて、これらのルーティング方法を組み合わせて使うことも可能です。


Azure Traffic Managerのアーキテクチャ

AzureTrafficManagerAzure Traffic Managerのアーキテクチャ

Azure Traffic Managerは、ユーザーからのリクエストを適切なエンドポイントにルーティングするための重要な役割を果たします。
その仕組みを理解するためには、ユーザーがウェブサイトにアクセスした際に、どのようなプロセスを経て最適なサーバーに接続されるのかを知ることが重要です。

以下では、クライアントのリクエストが送信されてから、最終的にエンドポイントに接続されるまでの一連の流れを、ステップごとに詳しく解説します。

1. クライアントがDNSクエリを送信するプロセス

クライアントがDNSクエリを送信するプロセス
クライアントがDNSクエリを送信するプロセス (参考:Microsoft)

クライアント(コンピュータやデバイス)が「partners.contoso.com」の名前を解決するために、再帰DNSサービス(時にはローカルDNSサービスとも呼ばれる)にDNSクエリを送信します。

この再帰DNSサービスは、直接DNSドメインをホストしていません。
代わりに、インターネットを介して他の信頼できるDNSサービスに接続し、クライアントの代わりに名前解決の作業を行います。

2. ドメインネームサーバーの探索

ドメインネームサーバーの探索
ドメインネームサーバーの探索 (参考:Microsoft)

再帰DNSサービスは「contoso.com」ドメインのネームサーバーを見つけます。そして、そのサーバーに接続して「partners.contoso.com」のDNSレコードを要求します。
「contoso.com」のDNSサーバーは「contoso.trafficmanager.net」を指すCNAMEレコードを返します。

3. Azure Traffic ManagerのDNSレコード探索

AzureTrafficManagerのDNSレコード探索
Azure Traffic ManagerのDNSレコード探索 (参考:Microsoft)

次に、再帰DNSサービスは「trafficmanager.net」ドメインのネームサーバーを探します。
見つけたサーバーに接続し、「contoso.trafficmanager.net」のDNSレコードを要求します。

4. Traffic Managerによるエンドポイント選択

TrafficManagerによるエンドポイント選択Traffic Managerによるエンドポイント選択

Traffic Managerのネームサーバーはリクエストを受け取り、エンドポイント(最終的な接続先)を選択します。

選択は以下の基準に基づいて行われます。

  1. エンドポイントが有効かどうか(無効なものは返されません)。
  2. エンドポイントの正常性(現在の状態)が良好であるかどうか。
  3. 設定されているトラフィックルーティング方法。

5. 選択されたエンドポイントの返却

選択されたエンドポイントの返却
選択されたエンドポイントの返却

選ばれたエンドポイントは、別のCNAMEレコードとして返されます。ここでは、「contoso-us.cloudapp.net」が返される例を想定します。

6. クラウドサービスドメインのDNSレコード探索

クラウドサービスドメインのDNSレコード探索
クラウドサービスドメインのDNSレコード探索 (参考:Microsoft)

再帰DNSサービスは「cloudapp.net」ドメインのネームサーバーを探し、接続して「contoso-eu.cloudapp.net」のDNSレコードを要求します。EUに拠点を置くサービスエンドポイントのIPアドレスが含まれる「A」レコードが返されます。

7. クライアントへのDNS応答の返却

クライアントへのDNS応答の返却
クライアントへのDNS応答の返却 (参考:Microsoft)

再帰DNSサービスは、得られた結果を統合し、クライアントに単一のDNS応答を返します。

8. クライアントがサービスに接続する

クライアントがサービスに接続する
クライアントがサービスに接続する (参考:Microsoft)

クライアントはDNS応答を受け取り、指定されたIPアドレスに接続します。クライアントはTraffic Managerを経由せずに、アプリケーションサービスエンドポイントに直接接続します。

これはHTTPS接続のため、クライアントはSSL/TLSハンドシェイクを行い、その後「/login.aspx」ページに対してHTTP GETリクエストを実行します。


Azure Traffic Managerを利用するメリット

Azure Traffic Managerを利用することで、企業はグローバルに分散したアプリケーションのパフォーマンスと可用性を最適化することができます。
以下に、Azure Traffic Managerを導入することで得られる主なメリットをまとめました。

  • サービス継続性の向上
    障害発生時に自動的に他のエンドポイントにトラフィックをリダイレクトし、サービスの中断を防ぎます。これにより、ユーザーは常にサービスにアクセス可能です。

  • 応答時間の短縮
    地理的に最も近いエンドポイントにトラフィックを振り分けることで、遅延が減少し、ユーザーの応答時間が短縮されます。結果として、ユーザー体験が向上します。

  • 柔軟なトラフィック制御
    多様なルーティングメソッドにより、ビジネスのニーズに応じたトラフィック管理が可能です。これにより、効率的かつ戦略的なリソース利用が実現できます。

  • グローバルなアプリケーション管理
    複数リージョンにまたがるリソースを一元的に管理し、グローバル展開されたアプリケーションのパフォーマンスと可用性を統合的に最適化できます。

  • 運用コストの最適化
    トラフィックの効率的な管理により、リソースの無駄な使用を抑え、コストを削減します。結果として、運用の経済性が向上します。


Azure Traffic Managerを利用する際の注意点

Azure Traffic Managerを利用する際には、いくつかの重要なポイントに注意する必要があります。

以下に、Azure Traffic Managerを使用する際の主な注意点をまとめました。

  1. DNS伝播の遅延
    Traffic ManagerはDNSベースで動作するため、設定変更後にDNSの伝播に時間がかかることがあります
    これにより、設定の反映に時間がかかることがあるため、急な変更が必要な場合には注意が必要です。

  2. エンドポイントの監視間隔
    Traffic Managerのヘルスチェック間隔は、デフォルトで30秒から2分程度です。
    この間隔によって、エンドポイントの障害を検知するまでの遅延が発生する可能性があります。短い監視間隔が必要な場合は、設定を調整する必要があります。

  3. 複雑なルーティング設定
    多様なルーティングメソッドを提供しているため、誤った設定をすると期待通りにトラフィックが分散されない場合があります
    設定が複雑な場合は、十分なテストを行い、適切にルーティングされることを確認することが重要です。

  4. SSL証明書の管理
    Traffic Manager自体はSSL/TLS証明書の管理を行わないため、エンドポイントごとに適切に証明書を管理・更新する必要があります
    証明書の期限切れやミスがあると、ユーザーが安全でない接続と見なす可能性があります。

まとめ

Azure Traffic Managerは、グローバルに分散したアプリケーションのパフォーマンスと可用性を最適化するための重要なサービスです。DNSベースの負荷分散、柔軟なルーティング、ハイブリッド環境のサポートにより、ビジネスの多様なニーズに対応します。特に、サービスの中断を防ぎ、ユーザー体験を向上させる点で大きな効果を発揮します。今後、さらに多様化するクラウド環境において、Traffic Managerの重要性は一層増していくと考えられます。

AI活用のノウハウ集「AI総合研究所」サービスご紹介資料

「AI総合研究所 サービス紹介資料」は、AI導入のノウハウがないというお客様にも使いやすい最先端のAI導入ノウハウを知れる資料です。

資料ダウンロード
監修者

坂本 将磨

Microsoft AIパートナー、LinkX Japan代表。東京工業大学大学院で技術経営修士取得、研究領域:自然言語処理、金融工学。NHK放送技術研究所でAI、ブロックチェーン研究に従事。学会発表、国際ジャーナル投稿、経営情報学会全国研究発表大会にて優秀賞受賞。シンガポールでのIT、Web3事業の創業と経営を経て、LinkX Japan株式会社を創業。

関連記事

AI導入の最初の窓口。

お悩み・課題に合わせて活用方法をご案内いたします。
お気軽にお問合せください。

AI総合研究所 Bottom banner

ご相談
お問い合わせは
こちら!