「Azure Load Balancer」はAzureが提供する負荷分散サービスです。
導入・構築にあたり一定以上のスキルは求められますが、自社サーバーを大量のリクエストやトラフィックなどの負荷から守るため、サーバーの安定性・可用性を得られます。
本記事では、Azure Load Balancerの概要や機能、料金、導入支援サービスについて紹介しています。
Azure Load Balancerとは
Azureは、マイクロソフト社のクラウドプラットフォームであり、200種を超える製品やサービスが、すべてクラウド上で利用できる形で提供されています。
Azureには「負荷分散」を実現できるサービスが4つあり、本記事でご紹介する「Azure Load Balancer」もそのうちのひとつです。Azureの負荷分散サービスは以下となります。
- Azure Load Balancer
- Application Gateway
- Traffic Manager
- Front Door
Azure Load Balancerは、仮想ネットワーク内でひとつのサーバーに対してリクエストが集中することを防ぐために、複数の仮想マシンへ負荷分散する仕組みです。
Microsoft Azureについて、こちらの関連記事も併せてご覧ください。
▼Azureとはどのようなサービス? 初心者でもわかる基本から運用のメリットまで徹底解説
▼AWSとAzureを徹底比較! 特徴、メリット、選定基準を解説
Azure Load Balancerで利用できる2種類のロードバランサー
Azure Load Balancerの名に含まれる「ロードバランサー」には、「負荷分散装置」という意味合いがあります。負荷分散の目的でネットワーク上に設置し、外部からの通信を複数のサーバーや機器に分散する機能を持つ機器や、その機能の総称です。
Azure Load Balancerでは、「パブリックロードバランサー」と「プライベートロードバランサー」の2種のロードバランサーを利用できます。
パブリックロードバランサー
パブリックロードバランサーは、インターネットから入ってくる通信に対して負荷分散を行います。具体的には、Azureクラウド内の複数のVM(Virtual Machine:仮想マシン)が連携し合い、インターネット通信(パブリックからのトラフィック)を負荷分散します。
また、VMへの接続は、プライベートIPアドレスとパブリックIPアドレスとの変換で行われます。
プライベートロードバランサー(内部ロードバランサー)
プライベートロードバランサーは、主にAzureクラウド内で構成されたVMのネットワークの中で、負荷分散を行います。
また、プライベートロードバランサーはプライベートIPアドレスで構成されており、仮想ネットワーク内のリソースにトラフィックを分散させることができます。負荷分散の対象となるフロントエンドIPアドレスはアクセス制限されるため、フロントエンドIPアドレス及び仮想ネットワークは、インターネット上に直接公開されません。
なお、Azure内のみならず、オンプレミス環境を含めたプライベートネットワーク内での負荷分散にもプライベートロードバランサーが利用できます。
Azure Load Balancerの主な機能
Azure Load Balancerが持つ機能について、さらに詳しく見ていきましょう。
負荷分散
前述の通り、パブリックロードバランサーとプライベートロードバランサーを有し、利用目的に応じてこれらを使い分けることができます。
パブリックロードバランサーによって、仮想ネットワーク内の各マシンは負荷のないインターネット接続を実現できるのです。
また、プライベートロードバランサーは、Azure内で構築した仮想ネットワークやオンプレミス環境で特定の仮想マシン・サーバーに負荷が集中することを防ぎます。
フェイルオーバー
フェイルオーバーとは、稼働中のシステムに障害が発生した際に、自動的に待機システムに切り替える機能です。
Azure Load Balancerでは、Azure内の仮想ネットワークやサーバーの障害時に、到着したリクエストを自動的に別のサーバーへ転送することで可用性を維持します。
負荷分散リソースの監視
負荷分散を行う際に、分散先の仮想マシンが停止していたり、動作異常など何らかの理由で正常に通信を行えなかったりすると、負荷分散を行えません。そのため、Azure Load Balancerはトラフィックを負荷分散するにあたり、分散先となるそれぞれのAzureVMの状態確認を行います。
負荷分散リソースの監視は、負荷分散規則をあらかじめ作成し、設定しておくことで可能となります。
ポートフォワーディング
ポートフォワーディングとは、インターネットから特定のポート番号(HTTP通信では「80」、メール受信では「110」など)を宛先として届いた通信を、ローカルエリア内の各機器へ橋渡しする役割のことです。
例えば、組織がセキュリティの観点で、社内の各デバイス端末をインターネット側と直接やりとりさせたくない時に、インターネットにつながるグローバルIPアドレスをひとつに絞ります。そのため、社内LANにつながるローカルコンピューターが外部と直接的に通信する心配はありません。ポートフォワーディングを利用することで、セキュアなインターネット利用を実現するのです。
Azure Load Balancerでは、Azure内の各仮想マシンへポートフォワーディングを行えます。
例えば、HTTPS通信リクエスト(ポート番号442)を受信した際に、Azure内の仮想マシンのHTTP(ポート番号80)へフォワーディングすることで、不正な通信の侵入を防ぎます。
なお、Azure Load Balancerでポートフォワーディングを利用する際には、後述する「料金体系」の2種のSKUのうち、「Standard SKU」の契約が必要です。
スケーラビリティ
IT分野におけるスケーラビリティとは、システムや機器の拡張性や拡張可能性のことを指します。
Azure Load Balancerは、柔軟に追加できる負荷分散規則設定や、NAT(IPアドレス変換)規則設定により、高いスケーラビリティを実現しています。
セキュリティ対策
Azure Load Balancerでは、細かなセキュリティグループルールの設定が行える他、Azure内の高レベルな脅威保護サービスである「Azure Firewall」との連携も行えるため、強固なセキュリティを実現できます。
Azure Load Balancerの主な設定項目
Azure Load Balancerを導入後には、自社のニーズや構築しているネットワークの構成によって柔軟に設定を行うことが可能です。
以下では、Azure Load Balancerの設定の基本となる、主要な3つの項目についてご紹介します。
バックエンドアドレスプール
トラフィックの負荷を分散する際に、分散先となる機器のことを「バックエンドアドレスプール」といいます。
Azure Load Balancerのバックエンドアドレスプールは、Azure内の各仮想マシンや仮想サーバーに該当するため、それらのIPアドレスをあらかじめ設定する必要があります。
正常性プローブ
「プローブ」とは、精査や探査を意味する言葉です。
ロードバランサーにおける正常性プローブとは、それぞれの負荷分散先の正常性を監視する際の精査方法、という意味合いとなります。
Azure Load Balancerでは、正常性プローブの設定として、前項のバックエンドアドレスプールで登録済みの各インスタンスの死活状況を確認するために、以下の4つの項目を設定します。
- プローブのプロトコル
- プローブのポート番号
- プローブ試行間隔
- 異常のしきい値
これらの設定により、例えば、プロトコルをHTTP、ポート番号を80として設定し、応答確認に2回以上失敗したら当該インスタンスへの振り分け(分散)は停止する、というような細かな設定を行えます。
負荷分散規則
負荷分散規則は、文字通り、負荷分散を実現するための根本部分となる設定です。
実際にAzure Load Balancerが受け取ったトラフィックを、バックエンドアドレスプールの各インスタンスへどのような振り分け基準でどのインスタンスへ分散するか、といった設定を行えます。
Azure Load Balancerの活用方法
ここまでご紹介したように、インターネットからのトラフィックを仮想ネットワーク内の各仮想マシンで負荷分散したり、仮想ネットワーク内でも負荷分散を行えたりするAzure Load Balancerですが、組織において実際にどのようなことに活用できるのかを、本章にてご紹介します。
Azureでの内部ロードバランサーを使用した負荷分散
例えば、自社でWebサイトを運用する際に、Azure仮想ネットワーク内の複数のWebサーバーでトラフィックを分散します。
それにより、外部から大量のHTTPリクエストがあっても、サイトのパフォーマンスを低下させずに稼働を継続できるため、Webサイト運用も安心して行えます。
同じサービスを提供する複数の仮想マシンをグループ化し、高可用性と負荷分散を実現
Webサーバーに限らず、外部へサービスを提供するアプリケーションサーバーや、社内で活用するメールサーバー・データベースサーバーなど、どのような稼働サービスの種類であっても同じ種類の仮想マシンをそれぞれグループ化できます。
仮想マシンをグループ化することで、サーバーの高可用性と負荷分散を実現し、安定したサービス稼働につなげられるでしょう。
Webサーバーへのアクセスをプライベートロードバランサー経由とすることで、セキュリティをより強化
Azure Load Balancerのプライベートロードバランサーのセキュリティは、パブリックロードバランサーと比較すると、より強固なセキュリティだといえます。
そのため、Webサーバーへのアクセスを「プライベートロードバランサー経由の場合のみ許可」という設定により、外部からサーバーへ直接アクセスされることを防止できるため、セキュリティレベルの強化につながります。
Azure Load Balancerの料金体系
Azure Load Balancerの料金体系について紹介します。従量課金の金額については、2023年9月2日時点でのアメリカドル/日本円換算を基にした参考金額のため、より詳細の金額についてはMicrosoft公式サイトでご確認ください。
基本無料「Basic SKU」と従量課金「Standard SKU」
Azure Load Balancerには、利用プランとして「Basic SKU」と「Standard SKU」があります。
Basic SKUは、基本料金が無料となるプランで、利用できる機能が基本的な機能のみに限定されます。具体的には、以下のような基本機能となります。
- トランスポート層(4層)のTCP、UDPプロトコルに対応
- 同一仮想ネットワーク内のVM、及びVMスケールセットを負荷分散
- ネットワークインターフェースの負荷分散
- バックエンドアドレスプールに最大300のインスタンスを登録可能
Standard SKUは、使用料に応じた従量課金となるプランです。料金目安としては下記となります。
負荷分散ルール設定の最初の5ルールまで | 1時間あたり3.7円程度 |
負荷分散ルール設定の追加ルール(1ルール) | 1時間あたり1.4円程度 |
データ処理量課金 | 1GBあたり0.73円程度 |
Standard SKUでは、Basic SKUの基本機能に加えて、さらに高度な機能を利用できます。具体的には、以下のような機能となります。
- IPアドレスごとの細かな負荷分散設定が可能
- 99.99%のSLA(サービスレベルアグリメント)を保証
※1週間にダウンタイムが1分未満程度 - バックエンドアドレスプールに最大1,000のインスタンスを登録可能
これら2つの利用プランは、それぞれ使える機能や設定できる分散先のインスタンス数などが異なります。自社で使いたい機能を照らし合わせて、その上でコストを検討し、プランを選定しましょう。
Azure Load Balancerの導入はテクバンへ
本記事で紹介したAzure Load Balancerをはじめ、Azureの各サービスは非常に多機能であり、使いこなすことができれば大変便利なクラウドサービスです。しかし、多機能が故に、プラン・機能の選定や運用時の設定など、Azureに対して一定以上の知識とスキルが求められることも事実です。
Azureの各サービスについて導入検討時に、情報の理解や運用方針の決定について課題を感じ、外部のサポートが必要となった際には、お気軽にテクバンまでご相談ください。テクバンでは様々なお客様の状況・ニーズに寄り添った導入支援を行っております。
Microsoft Azure導入支援サービス
Azure Load Balancerの負荷分散で、自社サーバーやサービスの安定を目指す
Azure Load Balancerでは、負荷分散先のインスタンスの設定やIPアドレス変換などを行いながら、自社が運用するシステムにおける高度な負荷分散が可能です。
Azure Load Balancerを活用することで、自社サーバーやサービスの安定稼働を実現できるため、企業成長や事業発展へとつなげられるでしょう。
Azure Load Balancerについて、お困りごとがありましたら、ぜひテクバンまでお問い合わせください。お客様にとって最適なAzure環境を構築します。