Kubernetes インフラ プログラミング 開発ノウハウ

Ingressを導入してService, Podに接続する

投稿日:


 

こんにちは、mabuiです。
今回はIngressを導入して、Service, Podに接続するまでの流れを紹介します。
Podを起動してService経由で接続するまでの流れは前回の記事にまとめました。
 

KubernetesでGoコンテナを起動する
 

Ingressとは

Ingressとはアプリケーションロードバランサーの役割をするK8sのリソースです。
クラスタ外からIngressを経由してServiceに接続することで、ServiceへのルーティングをURLパスで振り分けたり、TLS証明書を利用してhttps通信できるようになります。
利用するにはオーケストレーションを設定するIngressマニュフェストファイルと、ロードバランサーの実体であるIngressコントローラーが必要です。
 

Ingressコントローラーの用意

ではまずIngressコントローラーを用意します。
これにはいくつか種類がありますが、今回はNGINX Ingress Controllerを利用します。
 

Kubernetesのパッケージマネージャ、Helmを利用してインストールします。

 

インストール実行時にIngressマニュフェストの例を出力してくれます。

 

インストールが完了したら色々とリソースが追加されます。

これでIngressコントローラーの導入は完了です!
 

ServiceのType変更

前回ServiceのTypeをClusterIPにしていたのでNodePortに変更します。
ClusterIPだと外部クラスタからのアクセスができないらしく、ローカルクラスタでの接続はうまくいきましたがGKEデプロイ時にエラーになりました。

 

Ingressマニュフェストの用意

前回の環境に合わせてマニュフェストを用意し、適用します。
 

ingress.yaml

 

manifest適用

 

以上です。
ここまでで http://localhost にアクセスしてコンテナ接続ができました!
 

-Kubernetes, インフラ, プログラミング, 開発ノウハウ
-,

Copyright© , 2020 All Rights Reserved Powered by STINGER.