OpenResty Edge は直接、権威 DNS サーバーとして使用できます。このチュートリアルでは、OpenResty Edge で DNS レコードを設定する方法と、地理位置情報に基づく DNS 配信ルールの設定方法についてご紹介します。

DNS レコードの追加

OpenResty Edge の管理者用 Web コンソールにアクセスしましょう。これは当社のコンソールのサンプルデプロイメントです。各ユーザーには独自のローカルデプロイメントがあります。

Screenshot

DNS アプリケーション管理インターフェースに進みます。

Screenshot

「openresty.net」アプリケーションをクリックし、実際に使用されている DNS アプリケーションの設定方法を確認します。

Screenshot

まず、DNS レコードマッピング図が表示されます。これは異なる地域での解決状況を視覚的に示しています。

Screenshot

ここで異なるサブドメインを選択できます。

Screenshot

このスイッチでマッピング図の表示・非表示を切り替えられます。

Screenshot

DNS レコード追加ボタンをクリックすると、リストに新しいレコードが表示されます。

Screenshot

Screenshot

レコードのタイプを選択できます。

Screenshot

レコードのサブドメイン名を入力します。例えば「blog」など。

Screenshot

特定のクライアントアドレスのみがこのレコードを解決できるよう制限することができます。

Screenshot

「Any」は制限を設けないことを意味します。

Screenshot

CIDR を使用して制限することもできます。

Screenshot

例えば 192.168.1.1/24 のように指定します。

Screenshot

地域を制限することもできます。例えば「シンガポール」など。

Screenshot

ここでは制限を設けません。

Screenshot

ここは解決結果で、直接 IP アドレスを入力できます。

Screenshot

Edge のゲートウェイクラスターを選択することもできます。

Screenshot

例えば「aws-london」など。

Screenshot

これはレコードの有効期限です。

Screenshot

異なる単位を選択できます。

Screenshot

これは主レコードと予備レコードの切り替えスイッチです。主レコードがない場合や主レコードのヘルスチェックが失敗した場合、予備レコードが使用されます。

Screenshot

Edge は DNS レコードのヘルスチェックもサポートしており、利用不可能な結果を返すことを防ぎます。

Screenshot

設定が完了したら「Add」ボタンをクリックします。

Screenshot

DNS レコードのテスト

次に、先ほど設定した DNS レコード内のゲートウェイノードの IP アドレスを確認します。

Screenshot

IP アドレスが .240 で終わっていることがわかります。

Screenshot

次に、dig コマンドを使用して DNS クエリを実行します。

返された結果が、先ほど選択したゲートウェイクラスター内のゲートウェイノードの IP アドレスであることがわかります。

Screenshot

複数の結果を返す必要がある場合は、複数の DNS レコードを追加できます。

再度「Add」ボタンをクリックします。

Screenshot

ドメイン名「blog」を入力します。

Screenshot

別のゲートウェイクラスター「aws-us-east」を選択します。

Screenshot

このレコードを追加するためにクリックします。

Screenshot

これで「blog.openresty.net」に関する 2 つの DNS レコードができました。

Screenshot

次に、再び「Gateway Cluster」インターフェースに移動し、「aws-us-east」ゲートウェイクラスターの IP アドレスを確認します。

この IP アドレスは .84 で終わっています。

Screenshot

そして再度「dig」コマンドを使用してクエリを実行します。

結果が正しいことがわかります。

Screenshot

すべての DNS レコードを手動で作成する必要はありません。このボタンをクリックすると、地理位置情報に基づいて DNS プランを自動生成できます。

Screenshot

権威 DNS サーバーの設定

次に、DNS の設定について引き続き説明します。

「Authoritative DNS Servers」を選択します。

Screenshot

ここでの設定が SOA レコードの結果となります。

Screenshot

次に、Google Domains を例に、DNS ドメインネームサーバーを Edge に解決する方法を説明します。

Screenshot

「DNS」タブを選択します。

Screenshot

「Global DNS settings」を選択します。

Screenshot

グルーレコードを追加し、ドメイン名と Edge Node の IP アドレスを入力します。

Screenshot

前のページに戻ります。

Screenshot

次に「Custom name servers」を選択します。

Screenshot

「manage name servers」をクリックします。

Screenshot

先ほど「Global DNS Settings」で設定したドメイン名を入力します。

Screenshot

最後にこのボタンをクリックして、カスタムドメインネームサーバーに切り替えます。

Screenshot

これで Google Domains の設定が完了しました。

Screenshot

Edge 管理インターフェースに戻り、DNS の設定を見てください。

この「User Group」はアクセス制御に使用されます。

Screenshot

OpenResty Edge について

OpenResty Edge は、マイクロサービスと分散トラフィックアーキテクチャ向けに設計された多機能ゲートウェイソフトウェアで、当社が独自に開発しました。トラフィック管理、プライベート CDN 構築、API ゲートウェイ、セキュリティ保護などの機能を統合し、現代のアプリケーションの構築、管理、保護を容易にします。OpenResty Edge は業界をリードする性能と拡張性を持ち、高並発・高負荷シナリオの厳しい要求を満たすことができます。K8s などのコンテナアプリケーショントラフィックのスケジューリングをサポートし、大量のドメイン名を管理できるため、大規模ウェブサイトや複雑なアプリケーションのニーズを容易に満たすことができます。

著者について

章亦春(Zhang Yichun)は、オープンソースの OpenResty® プロジェクトの創始者であり、OpenResty Inc. の CEO および創業者です。

章亦春(GitHub ID: agentzh)は中国江蘇省生まれで、現在は米国ベイエリアに在住しております。彼は中国における初期のオープンソース技術と文化の提唱者およびリーダーの一人であり、Cloudflare、Yahoo!、Alibaba など、国際的に有名なハイテク企業に勤務した経験があります。「エッジコンピューティング」、「動的トレーシング」、「機械プログラミング」 の先駆者であり、22 年以上のプログラミング経験と 16 年以上のオープンソース経験を持っております。世界中で 4000 万以上のドメイン名を持つユーザーを抱えるオープンソースプロジェクトのリーダーとして、彼は OpenResty® オープンソースプロジェクトをベースに、米国シリコンバレーの中心部にハイテク企業 OpenResty Inc. を設立いたしました。同社の主力製品である OpenResty XRay動的トレーシング技術を利用した非侵襲的な障害分析および排除ツール)と OpenResty Edge(マイクロサービスおよび分散トラフィックに最適化された多機能ゲートウェイソフトウェア)は、世界中の多くの上場企業および大企業から高い評価を得ております。OpenResty 以外にも、章亦春は Linux カーネル、Nginx、LuaJITGDBSystemTapLLVM、Perl など、複数のオープンソースプロジェクトに累計 100 万行以上のコードを寄与し、60 以上のオープンソースソフトウェアライブラリを執筆しております。

翻訳

英文版の原文と日本語訳版(本文)をご用意しております。読者の皆様による他の言語への翻訳版も歓迎いたします。全文翻訳で省略がなければ、採用を検討させていただきます。心より感謝申し上げます!