IIJ、Webサイトの可用性を高める高機能クラウドDNSサービス、重み付け負荷分散やサイト間DR

インターネットイニシアティブ(IIJ)は2022年3月1日、高機能DNSサービス「IIJ DNSトラフィックマネージメントサービス」を提供開始した。Webサイトが落ちている際に別サイトのサーバーのIPアドレスを返答したり、重みを付けて設定した優先度に応じて複数サーバーから適切なサーバーのIPアドレスを返答したりする。こうした高機能なDNSサーバー機能をクラウドサービスの形で提供する。ユーザーは、同サービスを利用することによって、Webサイトの可用性を高められる。

 IIJ DNSトラフィックマネージメントサービスは、Webサイトの可用性を高める機能に注力した、高機能なDNS(名前解決)サービスである(図1)。Webサイトが落ちている際に別サイトのサーバーのIPアドレスを返答したり、重みを付けて設定した優先度に応じて複数サーバーから適切なサーバーのIPアドレスを返答したりする。

図1:IIJ DNSトラフィックマネージメントサービスの概要(出典:インターネットイニシアティブ)
図1:IIJ DNSトラフィックマネージメントサービスの概要(出典:インターネットイニシアティブ)
拡大画像表示

DNSの運営をIIJにアウトソースできるサービスである「IIJ DNSプラットフォームサービス」のオプションとして提供する(関連記事IIJ、DNSのアウトソーシングサービスを刷新、Anycast冗長化とDNSSECで信頼性を向上)。ユーザーは、自社サイトのDNSサーバー機能をクラウドサービスの形で利用し、運用をIIJに任せられる。

サイトが落ちた際は別サイトの情報でDNSレコードを書き換え

今回実装した高可用性機能の1つは、サイトに障害が発生した際に、DNSが返信するWebサーバーのIPアドレスを別サイトへと切り替える機能である。Webサイトごとに優先度(Priority)を設定しておける。最も優先度が高いサイトが回線障害などによってアクセスできなくなった際に、別のサイト群の中から最も優先度が高いサイトにあるWebサーバーのIPアドレスを返答する。

この、複数のサイトを利用した障害対策は、DNSサーバーの機能はそのままに、外部の運用監視ツールがDNSレコードを書き換える、という手段によって実現した。死活監視の結果、サイトに障害が発生していてアクセスができないとなった場合は、WebサーバーのIPアドレスを別サイトの情報と置き換える形でDNSレコードを書き換える。死活監視のインターバルは、30秒~600秒(10分)の範囲でユーザーが指定可能である。

Webサーバーの性能に合わせて重み付け負荷分散が可能

今回実装したもう1つの高可用性機能は、サイト内のWebサーバー群に対する、重み付け負荷分散機能である。個々のWebサーバーに負荷分散の優先度(Weight)を設定しておける。例えばWeight値60のWebサーバーAとWeight値40のWebサーバーBの2台がある場合、DNSの問い合わせ100回のうち60回はサーバーAのIPアドレス1個を、40回はサーバーBのIPアドレス1個を返信する。問い合わせに対しては、常に1個のIPアドレスを返す。こうした運用を可能にするため、IIJはオープンソースのDNSサーバーをベースに独自に手を加えている。

なお、サイト内のWebサーバーのリストを管理する際にも、死活監視を実施している。システム障害などが原因で応答を返さないWebサーバーのIPアドレスをDNSレコードから除外する。こうして、生きているサーバー群のIPアドレスから、重み付け負荷分散の優先度(Weight)に応じて、その都度適切なIPアドレス1個を返信する形である。

IIJ DNSトラフィックマネージメントサービスの価格(税別)は、初期費用が5000円、月額費用が個別見積もり。前提となるIIJ DNSプラットフォームサービスの価格は、月額2000円から。

Original Post>

Enjoyed this article? Sign up for our newsletter to receive regular insights and stay connected.