OpenResty Edge でゲートウェイパーティションを使用する方法
このチュートリアルでは、OpenResty Edge におけるゲートウェイパーティションの使用方法を説明します。ゲートウェイパーティションとは、ゲートウェイクラスターの組み合わせを指し、異なるパーティションのクラスターは異なる設定を使用できます。パーティションを使用することで、特定のゲートウェイサーバーに更新をプッシュしたり、アプリケーションを以前のバージョンに簡単にロールバックしたりすることができます。
ゲートウェイパーティションは、企業が内部アプリケーションと外部アプリケーションを区別するための鍵であり、精密な A/B テストを行う際にサーバーを分離する効果的な方法でもあります。OpenResty Edge を通じて、設定のデプロイメントは単なる公開ではなく、戦略的に計画されたデプロイメントとなります。
新しいゲートウェイパーティションの作成
OpenResty Edge の Admin Web コンソールに入りましょう。これは私たちのコンソールのサンプルデプロイメントです。各ユーザーは自身のローカルデプロイメントを持っています。
まず、「Gateway Clusters」ページに移動します。ここでは、すでに設定されている複数のゲートウェイクラスターが表示されています。
例えば、ここにはアメリカに設置されたゲートウェイクラスターがあります。
その中には 1 台のゲートウェイサーバーがあります。
クラスター自体は「default」パーティションに属しています。
次に、新しいゲートウェイクラスターを作成します。「New Gateway Cluster」ボタンをクリックします。
このゲートウェイクラスターに「edge-test-cluster」という名前を付けます。
この画像から、OpenResty Edge では、1 つのゲートウェイパーティション内に複数のゲートウェイクラスターを持つことができることがわかります。
次に、この新しいクラスターをあるパーティションに追加します。
このドロップダウンボックスをクリックします。
既存のパーティションは使用せず、全く新しいパーティションを作成します。
「Add Gateway Partition」をクリックします。
このパーティションに「edge-test-partition」という名前を付けます。
そして「Create」ボタンをクリックします。
新しく作成されたパーティションがパーティション選択ドロップダウンリストの一番上に表示されます。
「Create」ボタンをクリックして、この新しいクラスターを作成します。
新しく作成されたゲートウェイクラスターがクラスターリストページに表示されています。
この画像からも、1 つのゲートウェイクラスターに複数のゲートウェイサーバーが含まれていることがわかります。
次に、新しく作成したゲートウェイクラスターにゲートウェイサーバーを追加する方法を見てみましょう。
ここでは、すでに 1 台のゲートウェイサーバーを準備しています。
「Approve」ボタンをクリックします。
まず、クラスターを選択する必要があります。
ドロップダウンメニューから、新しく作成したゲートウェイクラスターを選択します。
そのサーバーのパブリック IP アドレスを入力します。
クリックして、そのサーバーをクラスターに追加することを承認します。
サーバーがゲートウェイクラスターに正常に追加されたのが確認できます。
新しいゲートウェイパーティションで新しいアプリケーションを作成する
次に、新しく作成したパーティションでアプリケーションを作成します。
アプリケーションリストページに切り替えます。
新しいアプリケーションの作成をクリックします。
アプリケーションのドメイン名を入力します。
パーティション選択ドロップダウンメニューを開くためにクリックします。
「default」パーティションは選択しないでください。
新しく作成したパーティションを選択します。
作成ボタンをクリックします。
新しいページルールの作成
パーティションがどのように機能するかを示すために、ページルールを作成します。
ページルールリストページに移動します。
ページルールの追加をクリックします。
新しいアクションを追加します。
アクション選択のドロップダウンボックスを開くためにクリックします。
「output response body」のアクションを選択します。
新しいルールの作成をクリックします。
この新しい変更をプッシュするために公開する必要があります。
このボタンをクリックします。
公開します!
変更がすべてのゲートウェイサーバーに同期されました。
これで、新しいページルールがすべてのゲートウェイクラスターとサーバーにプッシュされました。
設定の変更にはサーバーのリロード、再起動、またはバイナリのアップグレードが必要ありません。そのため、非常に効率的でスケーラブルです。
新しく作成したパーティションのテスト
再度ゲートウェイクラスターリストページに移動します。
これが先ほど新しく作成したクラスターです。
ここで注目すべきは、先ほど追加したサーバーの IP アドレスが ‘67’ で終わっていることです。
ターミナルで curl
コマンドを使用して、このゲートウェイサーバーにリクエストを送信します。
curl "http://13.229.144.67" -H "Host: edge-test-partition.com"
先ほど設定したレスポンスボディがサーバーから返されたのがわかります。
次に、このパーティションに属さない別のサーバーに対して同じ操作を行います。このサーバーの IP は「.84」で終わっていることに注意してください。
リクエストを送信します。
curl "http://3.131.85.84" -H "Host: edge-test-partition.com"
別のパーティションに属するゲートウェイサーバーが「Page Not Found」というレスポンスを返したのがわかります。
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(マイクロサービスおよび分散トラフィックに最適化された多機能
翻訳
英語版の原文と日本語訳版(本文)をご用意しております。読者の皆様による他の言語への翻訳版も歓迎いたします。全文翻訳で省略がなければ、採用を検討させていただきます。心より感謝申し上げます!