OpenResty Edge で Kubernetes ゲートウェイノードを自動承認する方法
はい——OpenResty Edge は Kubernetes ゲートウェイノードを自動承認できます。ゲートウェイクラスターを Kubernetes クラスターに紐付けて「Kubernetes へのマッピング」を有効にすれば、Kubernetes が起動・再起動するゲートウェイ Pod はすべて自動的に承認され、クラスターに参加します。手動承認は不要です。本チュートリアルでは、Web コンソールでの具体的な紐付け手順を示し、その自動承認を kubectl で検証します。
Kubernetes とゲートウェイクラスターを紐付けて自動承認を有効にする
ゲートウェイサーバーが Kubernetes 上で実行されており、そのプロセスが予期せず終了したとき、Kubernetes は新しいゲートウェイサーバーを起動します。起動のたびに手動で承認し続けるのは負荷が高くなります。OpenResty Edge は、この一連の作業を自動化できます。
OpenResty Edge の Admin コンソールへ切り替えます。本チュートリアルのキャプチャはコンソールのサンプルデプロイ環境由来です。各ユーザーは自身のローカル環境にデプロイします。
Kubernetes をゲートウェイクラスターに紐付けると、この Kubernetes の上で動いているゲートウェイサーバーは自動的に承認されます。「Gateway Clusters」ページを開いて新しいゲートウェイクラスターを作成し、名前に k8s-bind-cluster を入力し、Kubernetes へのマッピングを有効にしたうえで、紐付ける Kubernetes クラスターを選択して、「Create」をクリックします。
新しいクラスターが問題なく作成されたことを確認できます。現時点では、このクラスターにはまだゲートウェイノードは存在しません。
検証:Kubernetes でゲートウェイ Pod が起動したときの自動承認
ターミナル側で Kubernetes 内のゲートウェイサーバーを起動するための yaml を準備します。続けて kubectl apply を実行してリソース設定を適用したあと、kubectl get pods -n edge でクラスター内の Pod を確認します。ゲートウェイサーバーが正常に立ち上がったことが確認できます。
Admin に戻ってリストを更新し、サーバー数を確認します。このチュートリアルが示す一連の手順においては、Kubernetes 内のゲートウェイサーバーがこのゲートウェイクラスターへ正常に自動追加されたことが確認できます。
まとめ
Web コンソールで紐付けを済ませ Kubernetes へのマッピングを有効にしたあとであれば動画チュートリアルの yaml を用いてゲートウェイサーバーを起動し、この記事に記載の kubectl コマンドを実行すると、実演どおりに再現できます。追加の手動承認なしにゲートウェイサーバーがこのゲートウェイクラスターに現れます(動画冒頭からの手順と一致します)。
OpenResty Edge がゲートウェイノードのライフサイクル全体——オートスケーリングのイベントや複数 Kubernetes クラスターの統合管理を含む——をどのように扱うのか、その全体像は「OpenResty Edge × Kubernetes で実現する統合管理プレーン」をご覧ください。
よくある質問
OpenResty Edge は Kubernetes のゲートウェイノードを自動承認しますか?
はい。Web コンソールでゲートウェイクラスターを Kubernetes クラスターに紐付け、「Kubernetes へのマッピング」を有効にすると、Kubernetes がそのクラスターにスケジュールしたゲートウェイサーバーはすべて自動的に承認され、参加します。ノードを 1 台ずつ手動で承認する必要はなく、Pod の準備が整い次第トラフィックの処理を開始できます。
Kubernetes でゲートウェイ Pod が再起動・置換されるとどうなりますか?
ゲートウェイ Pod が予期せず終了すると、Kubernetes は置換インスタンスを起動します。ゲートウェイクラスターが Kubernetes にマッピングされているため、その置換ゲートウェイサーバーは自動的に承認され、自らクラスターへ再参加します——再度の手動承認は不要です。これにより、ゲートウェイクラスターのノード数は Kubernetes が実際に稼働させている台数と常に一致します。
置換されたゲートウェイノードを手動で承認する必要はありますか?
いいえ。手動承認は、Kubernetes にマッピングされていないゲートウェイサーバーの既定の動作にすぎません。k8s-bind-cluster のマッピングが有効になれば、Kubernetes がそのクラスターで立ち上げるすべてのゲートウェイノードについて、承認は自動的に処理されます。
OpenResty Edge について
OpenResty Edge は、マイクロサービスと分散トラフィック・アーキテクチャ向けに設計された多機能ゲートウェイソフトウェアで、当社が独自に開発しました。トラフィック管理、プライベート CDN 構築、API ゲートウェイ、セキュリティ保護などを統合し、現代的なアプリケーションの構築・管理・保護を支援します。OpenResty Edge は業界をリードする性能とスケーラビリティを備えており、大量の同時接続や高負荷なシナリオにも対応できます。Kubernetes(K8s)などコンテナワークロードへのトラフィック配分にも対応し、大量ドメインの管理にも向いています。
このチュートリアルを気に入っていただけたら、当ブログと OpenResty の YouTube チャンネル の購読をおすすめします。ありがとうございました!
著者について
章亦春(Zhang Yichun)は、オープンソースの OpenResty® プロジェクトの創始者であり、OpenResty Inc. の CEO および創業者です。
章亦春(GitHub ID: agentzh)は中国江蘇省生まれで、現在は米国ベイエリアに在住しています。彼は中国における初期のオープンソース技術と文化の提唱者およびリーダーの一人であり、Cloudflare、Yahoo!、Alibaba など、国際的に有名なハイテク企業に勤務した経験があります。「エッジコンピューティング」、「動的トレーシング」、「機械プログラミング」の先駆者であり、22 年以上のプログラミング経験と 16 年以上のオープンソース経験があります。世界中で 4000 万以上のドメイン名で利用されているオープンソースプロジェクトのリーダーとして、OpenResty® を基礎に、米国シリコンバレーに OpenResty Inc. を創設しました。同社の主力製品である OpenResty XRay(動的トレーシング技術に基づく非侵入型のプロファイリング/トラブルシューティング製品)と OpenResty Edge(マイクロサービスと分散トラフィック設計を支える統合ゲートウェイ)は、世界各国の大手企業に採用されています。Linux カーネル、Nginx、LuaJIT、GDB、SystemTap、LLVM、Perl など数多くの OSS に百万行を超える規模で貢献し、60 を超える自前ライブラリも公開しています。
フォローする
この記事を気に入っていただけましたら、OpenResty Inc. の技術ブログもあわせてご覧ください。
翻訳
本文は、英語版 と対応関係があります。読者のみなさまによるほかの言語への全文翻訳提案も歓迎します(省略なく全文であれば、採載を検討いたします)。

























