ひさびざに Tech なネタです。(Tech なのかな。。。。)
今回は、Microsoft Azure の仮想マシンの可用性について書いてみます。
どんなことができるの?
ざっくりできそうな構成って3パターンあります。
- ジオ冗長 : 複数のリージョンで冗長化
- ゾーン冗長 : 複数のデータセンターでの冗長化
- ローカル冗長 : データセンターの複数のラックでの冗長化
ちなみに、「Azure の仮想マシンのリージョンと可用性について」というドキュメントで、可用性のことは触れられてます。
ジオ冗長
複数のリージョンの間で冗長化を持たせる方法です。
例えば東日本リージョンと西日本リージョンで冗長化の構成をする感じとかですね。
ジオ冗長を使う場合は、リージョン障害が発生したとしてもサービスを継続するようなケースですよね。
例えば大災害でリージョン内のデータセンターが火災に会うとか、大停電による電源供給がとまってしまうとか。
これらの影響を避けようとした場合、物理的に距離の離れた場所で可用性構成を組むしかないです。
Microsoft Azure では、データセンターの間は300マイル(480Km)離すっていうルールが一応あるみたいでリージョン間はそれよりも離れていると考えていいでしょう。ただ、日本の東日本と西日本はギリギリっぽいけど。。。
距離が離れてしまう影響は、レイテンシに影響してきます。
ですので、可用性の構成を考える上ではデータ通信速度とデータの保護性という観点で考える必要があります。
できる構成は、WebサーバなどはTraffic Manager を使ってロードバランスをしてあげるか、
VMであれば、Site Recoveryを使ってあげて、Hot-Stanby 構成を構築することとなります。
なお、Site Recovery を使った場合、Azure 上の VM を別リージョンにレプリケーションは、現時点(2017/10/15)ではプレビューの機能ですので、SLA は適用範囲外となります。
可用性セット
ラック間の可用性構成ですね。
障害ドメインは、ラックの電源障害などの影響を受けないで済むように構成され、更新ドメインは Windows Update などの影響を受けないように構成するドメインです。
障害ドメインと更新ドメインについては、以下のドキュメントをご覧ください。
https://blogs.msdn.microsoft.com/dsazurejp/2011/06/29/windows-azure-12/
これらについては、VM の可用性セットの設定で設定することができます。
また、SLA 的には、全て Premium Disk の場合は、1台の VM でも SLA の適用が受けられますが、HDD が入っている場合は、可用性セットで構成された2台以上の VM が SLA の対象となりますので、この点も十分ご検討ください。
可用性ゾーン
可用性ゾーンは、先月(2017年9月)にプレビューとしてアナウンスされた可用性ゾーン(Availability Zones )です。
で、この機能は10月14日にパブリックプレビューしたってアナウンスもされました。
AWS の、Availability Zones に近い機能です。
Microsoft Azure は、現時点(2017/10/15)では、East US と West Europe の2箇所だけです。
まぁー、電源周りを含めてデータセンターの環境を整えないといけない機能ですので、これから徐々にというところでしょうか。
可用性の構成を構築するには、以下のクリックテンプレートが参考になると思います。
■Create Multiple Virtual Machines in Different Availability Zones and Configure NAT Rules through the Standard Load balancer
https://github.com/Azure/azure-quickstart-templates/tree/master/201-multi-vm-lb-zones
これを実行すると、こんな感じでリソースが作成されます。
各VMを見るとAZがそれぞれ別のところにできあがっています。
どこで、ロードバランスしてるの??って話になりますが、その正体は Load Balancer です。
なんだか、VMSS 見たいな構成を組む感じですね。
まぁー、同じリージョンなので、Traffice Manager を使わなくても Load Balancer で十分ってところかな。
まとめ
可用性ゾーンの出現で、新しい可用性の構成を組めるようになったことはとてもいいことだと思います。
(訳:はよ日本にも来て!!)
あと、可用性を組む場合は、サービスの継続性とそのコストについて、十分な検討が必要であることをお忘れなきよう。
参考
- https://docs.microsoft.com/ja-jp/azure/availability-zones/az-overview
- https://docs.microsoft.com/ja-jp/azure/virtual-machines/windows/regions-and-availability
- https://docs.microsoft.com/ja-jp/azure/virtual-machines/windows/create-portal-availability-zone
- https://docs.microsoft.com/ja-jp/azure/load-balancer/load-balancer-standard-overview#availabilityzones
コメント