menu
arrow_back

Google Kubernetes Engine での NGINX Ingress Controller

Google Kubernetes Engine での NGINX Ingress Controller

1時間 クレジット: 7

GSP181

Google Cloud セルフペース ラボ

概要

Kubernetes では、Ingress によって外部のユーザーやクライアント アプリケーションが HTTP サービスにアクセスできるようになります。Ingress は、Ingress Resource と Ingress Controller の 2 つの要素で構成されています。

  • Ingress Resource は、受信トラフィックがサービスにアクセスするためのルールの集合です。これらはレイヤ 7(L7)のルールで、ホスト名(必要に応じてパスも)が Kubernetes の特定のサービスに転送されるのを許可します。
  • Ingress Controller は、Ingress Resource によって設定されたルールに従い、通常は HTTP または L7 ロードバランサ経由で動作します。外部クライアントからのトラフィックを Kubernetes サービスに転送できるようにするには、両方が適切に設定されていることが不可欠です。

高パフォーマンスのウェブサーバーである NGINX は、堅牢で多くの機能を利用できるため、Ingress Controller でよく使用されます。たとえば、以下の機能をサポートしています。

  • WebSocket: WebSocket アプリケーションの負荷を分散できます。
  • SSL サービス: HTTPS アプリケーションの負荷を分散できます。
  • 書き換え: リクエストされた URI を書き換えてからアプリケーションに送信できます。
  • セッションの永続性(NGINX Plus のみ): 同じクライアントからのすべてのリクエストが常に同じバックエンド コンテナに渡されることが保証されます。
  • JWT(NGINX Plus のみ): NGINX Plus は、JSON Web Token(JWT)を確認することでリクエストを認証できます。

次の図は、GCP における Ingress Controller の基本的なフローを示しており、これから構築する内容の概要を把握できます。

img/arch.png

Qwiklabs に参加してこのラボの残りの部分や他のラボを確認しましょう。

  • Google Cloud Console への一時的なアクセス権を取得します。
  • 初心者レベルから上級者レベルまで 200 を超えるラボが用意されています。
  • ご自分のペースで学習できるように詳細に分割されています。
参加してこのラボを開始
スコア

—/100

Create a Kubernetes cluster

ステップを実行

/ 25

Initialize Helm

ステップを実行

/ 10

Create a tiller Service Account

ステップを実行

/ 15

Deploy an application in Kubernetes Engine

ステップを実行

/ 15

Expose the created deployment as a service

ステップを実行

/ 10

Deploy the NGINX Ingress Controller via Helm

ステップを実行

/ 25