OpenResty Edge で Lua 拡張機能を使用してゲートウェイサーバーのオフラインイベントに応答する
OpenResty Edge は強力な Lua 拡張機能を提供しています。本文章では、ゲートウェイサーバーの異常オフライン状況を自動的に処理する例を用いて、Edge の Web コンソールで Lua 拡張機能を作成・設定し、ゲートウェイサーバーがオフラインになった際に自動的に GoDaddy から該当ノードを削除する方法を詳しく説明します。
新しい Lua 拡張機能の作成
OpenResty Edge は強力な Lua 拡張機能を提供しており、ゲートウェイサーバーのオフラインイベントに自動的に応答することができます。
OpenResty Edge の Web コンソールに切り替えましょう。これは私たちのコンソールのサンプルデプロイメントです。各ユーザーは自身のローカルデプロイメントを持っています。
「Global Config」ページに移動します。
「Global Lua Extensions」をクリックします。
新しい Lua 拡張機能を作成しましょう。
オフラインになったノードに GoDaddy がドメイン解決しないようにする拡張機能を作成します。
ここでは、名前を「remove_node_from_godaddy_if_node_is_offline」と入力します。
「By event」を選択します。
OpenResty Edge はいくつかの組み込みイベントをサポートしています。
ここでは、「Gateway Server Abnormal Offline」タイプを選択します。これは、サーバーがオフラインになった場合に Lua 拡張機能がトリガーされることを意味します。
Vim の使用に慣れている場合は、Vim モードを有効にしてコードを編集できます。
イベントが発生すると、trigger_event
が Lua 拡張機能に渡されます。
管理サーバーにリクエストを送信し、ノードがオフラインになった時に GoDaddy からそのノードを削除できるようにします。
レスポンス内容が条件を満たす場合、Lua の Cjson
モジュールを使用してデコードし、結果を body
変数に割り当てます。
body
が存在し、body.status
が 0 に等しい場合、成功メッセージを出力します。
作成をクリックします!
オフラインゲートウェイサーバーを使用した Lua 拡張機能のトリガー
作成後、この新しい Lua 拡張機能は自動的に実行されます。オフラインのゲートウェイサーバーを使用してテストしてみましょう。
ゲートウェイクラスターページに移動します。
これが使用するゲートウェイクラスターです。
現在オンラインです。
ターミナルで、systemctl
コマンドを使用してサービスを停止します。
リストを更新します。
サーバーが現在オフラインになっています。
「Global Config」ページに戻ります。
「Global Lua Extensions」に移動します。
実行履歴を確認します。
図のように、拡張機能がトリガーされ実行されました。
ノードが GoDaddy から正常に削除されました。
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(マイクロサービスおよび分散トラフィックに最適化された多機能
翻訳
英語版の原文と日本語訳版(本文)をご用意しております。読者の皆様による他の言語への翻訳版も歓迎いたします。全文翻訳で省略がなければ、採用を検討させていただきます。心より感謝申し上げます!