警告
本記事は、投稿より時間が経過しており、一部内容が古い可能性があります。
皆さんこんにちは。Azure テクニカルサポートの平原です。
クラウド上でサービスを提供する場合、利用しているサービスはすべて「ネットワークの向こう側」にあります。何か問題が発生した時など、トラブルシューティングをする際に、ネットワークの仕組みなど知っておくとよいこともあります。本トピックでは、Azure を後ろからサポートしている、実際のネットワークについて説明をしていきます。Azure に限った話ではないかもしれませんが、少しでもご参考になれば幸いです。
Azure データセンター内の通信
まず、データセンター内を考える場合、疑問点にもたれる内容としては、「Azureデータセンターの内部はどのようになっているのか」ではないでしょうか?また、「どのように構築され、どの様に展開しているか?」というのは、少し疑問に持たれたことはあるかもしれません。
Azure のデータセンターは世界各地にありますが、実は、すべてが同じ機器を使っていたり、同じデバイスを使っていたりなど、統一的な構成をしているわけではありません。もちろん、いくつかの地域ごとの要件やデータセンターとしての諸要件に応じて、「満たすべき条件」等はあります。基本的には、各地の機器提供ベンダーの協力や、場合によってはファシリティ提供企業の方々と協力の上、世界各地に展開しています。また展開後も、データセンター部門では変化する需要に合わせて供給を満たすべく、機器の監視や強化も日々行っています。
Azure のデータセンターに関して、もし具体的なイメージを知りたければ、データセンターの紹介ビデオがあるので、是非ご覧ください。
(日本語) Youtube : マイクロソフトのデータセンター
(日本語) マイクロソフトのクラウドを支えるデータセンター
(英語) Youtube: Microsoft Datacenter Tour (long version)
世界各地のデータセンターは、マイクロソフトのバックボーンネットワーク で接続されています。このバックボーンネットワークはインターネットに接続しているので、インターネットからも接続が可能です。例えば、外部のインターネット (例えば一般のプロバイダーを通して接続する場合など) から、接続する場合には外部のルーターを経由して、マイクロソフトのルーターに対して接続がされます。マイクロソフトは、インターネットの比較的初期の段階からインターネット上のサービスを展開してきていますが、データセンターは Azure や Office 365 に限らず、様々なサービスが展開されています。実際には日本にも複数拠点展開されています。
Azure をホストしているデータセンターの話になると、また別に独立したネットワークとコンピュートリソースを構成しています。このネットワークに関しては、多くのルーターやスイッチで構成されていますが、内部では「クラスター」と呼ばれる単位で大きく分割がされています。これは、例えばコンピュートサービスであったり、ストレージサービスなど、機能ごとに分割がされています。
クラスター内部ではさらに、仮想化環境を動かすブレードサーバー (ホスト・ノードと呼ばれます)、ノードをまとめるラック、電源、スイッチ、ルーター等で構成されていますが、それ自体はワンセットになっています。各ノードでは、仮想化環境 (ハイパーバイザー) が構築され、お客様が構築する仮想マシンはこのノード上で起動されたり、削除されたりしています。もし、ある仮想マシンAから、データセンター内部である仮想マシンBに通信をする場合には、通常は以下のような経路を通ります。
- [仮想マシンA] → [ノード A] → [スイッチA] → …. → [スイッチB] → [ノードB] → [仮想マシンB]
通信をする際には、仮想マシンや各ノード (ブレードサーバー) には、「仮想ネットワーク」で利用する以外のデータセンター内部で利用できる固有の IP を持っていますが、もし通信をする場合には、ノードのフィルター側でうまく処理をしてくれており (VFP という技術を使っています)、通信ができるようになっています。またスイッチ間は複数の経路が多重化されており、耐障害性も高くなっています。
一方、もし通信が仮想ネットワーク間の通信の場合は、仮想ネットワーク自体が、マイクロソフトのネットワーク仮想化技術 (NVGRE等) を使っており、これら機能を使って実現をしています。仮に仮想ネットワーク間の通信であっても、Auzre 内の仮想化環境がうまく処理して、上記で示したデータセンター内部で使う IP に変換し、双方向に通信ができるようになっています。
過去に実施された弊社セッションでも、少し関連したお話を聞くことができますので、こちらもよろしければご参照ください。
OS の中で SDN 抗争勃発!? ~主役を争う VXLAN vs NVGRE~
英語のドキュメントなるのですが、以下ネットワーク部門の CVP の Yousef Khalidi のブログにも記載がありますので、もし興味がありましたらご覧ください。
The network is a living organism
https://azure.microsoft.com/en-us/blog/the-network-is-a-living-organism/
また、マイクロソフトを支えるネットワークの技術は、上記説明した内容も含めて外部学会でも公開されています。英語とはなりますが、もし興味があれば、ご参考ください。
Microsoft’s open approach to networking
https://azure.microsoft.com/en-us/blog/microsoft-s-open-approach-to-networking/
Azure データセンターとインターネット
インターネットから通信する場合はどうなっているのでしょうか?
こちらについては、上記項目で説明を少ししましたが、基本的に Azure データセンターはマイクロソフト バックボーン ネットワークに所属をしています。インターネットから通信をする場合には、当該バックボーンネットワークを経由して通信ができるようになっています。例えば、ある人が、プロバイダー経由で接続する場合には、以下のような経路で接続します。
- [クライアントマシン] → [社内ネットワーク] → [ブロードバンドルーター] → [プロバイダー] → … → [マイクロソフト境界ルーター] → [データセンタールーター] → … → [ロードバランサー] → … → [スイッチ] → [ノード] → [仮想マシン]
IPアドレス
データセンターで利用されるIPアドレスについて、要件に応じて知りたいというご要望があるかもしれません。IP アドレスについては、以下で公開されているのでご参考ください。
[Azure] Microsoft Azure Datacenter IP Ranges
https://www.microsoft.com/en-us/download/details.aspx?id=56519
[Office 365] Office 365 URL および IP アドレス範囲
当該公開されているIPアドレスは、継続的に行われているデータセンターの拡張作業や増強などで、変更になる可能性があります。詳細は上記リンクをご参照ください。
セキュリティ
また、知っておいた方がよい事実として、インターネットからの接続については、外部者からの攻撃 (DoS 攻撃等) を防ぐために、多重的な防御を展開しています。詳細な防御方法の細かな構成については、機密になっているため公開情報はありませんが、ネットワーク防御に関する記事は、以下にまとまっていますので、もし興味があればぜひご覧ください。もしインターネットに公開するサービスを展開される場合には、お役に立つ内容かと思います。
Microsoft クラウド サービスとネットワーク セキュリティ
Azure データセンター間の通信
Azure データセンター間の通信は、どうなっているのでしょうか?例えば、東日本と西日本間の通信を考える場合や、さらに、東日本から北米間の通信はどうなっているのでしょうか?こちらの内容も疑問に持たれたことがあるかもしれません。
データセンター間の接続では、実はインターネットは利用しておらず、マイクロソフトの持つバックボーン ネットワークを利用しています。仮に、通信が大陸間を超える場合は、マイクロソフトが利用できる海底の光ケーブルを通ることになります。またこれらの回線は、複数経路で多重化されており、ある1経路で異常が出たとしても、自動で他の経路を迂回するように構成がされています。また将来のネットワーク帯域の需要に向けて、マイクロソフトでは海底ケーブルの増強にも投資をしています。
この辺りのお話は、英語のドキュメントになりますが、以下ネットワーク部門の CVP の Yousef Khalidi のブログにも記載がありますので、もし興味がありましたらご覧ください。
How Microsoft builds its fast and reliable global network
https://azure.microsoft.com/en-us/blog/how-microsoft-builds-its-fast-and-reliable-global-network/
Azure データセンターと専用線 (ExpressRoute)
複数サイト間の接続形態として、Azure では専用線サービスとして ExpressRoute サービスを提供しています。この場合は接続はどうなっているのでしょうか?
ExpressRoute は、専用線であり、インターネットを経由することなく Azure の各種サービスに接続することが可能になります。専用線のため、直接お客様のオンプレミス環境に対して専用線を引くことになりますが (もしくは回線業者が提供する専用線のつながったWAN に接続する形になりますが)、専用線の出口には、マイクロソフトデータセンターと接続している Microsoft Enterprise Edge (MSEE) が配置されています。MSEE は、冗長性構成となっており1つのサイト当たり、2台以上で構成されています。そのため、もしExpressRoute を引く場合には、既定で冗長構成が構成されています。
この MSEE は Meet-Me サイトと呼ばれる場所に配置され、ExpressRoute を提供する回線業者と MSEE をつなぐ場所となっています。MSEE は、Meet-Me のサイトから、直接対象のデータセンターへとつながるようになっています。この辺りのお話は、英語のドキュメントなるのですが、以下ネットワーク部門の CVP の Yousef Khalidi のブログにも記載がありますので、もし興味がありましたらご覧ください。
Microsoft ExpressRoute: Office 365, Azure Government Cloud, more partners, simplified billing
今回の内容はいかがでしたでしょうか?もし以上の内容が、構築をする上でも少しでもお役に立てば幸いです。
※本情報の内容(添付文書、リンク先などを含む)は、作成日時点でのものであり、予告なく変更される場合があります。