SPONSORED

Ingressコントローラ(いんぐれすこんとろーらー)

最終更新:2026/4/27

Ingressコントローラは、Kubernetesクラスタへの外部からのアクセスを管理するコンポーネントであり、HTTPやHTTPSなどのトラフィックを適切なサービスへルーティングする。

別名・同義語 イングレスコントローラーKubernetes Ingress

ポイント

Ingressコントローラは、ロードバランサやプロキシサーバの役割を担い、Kubernetes環境におけるアプリケーションへのアクセスを効率化する。設定ファイルに基づいてトラフィックを制御し、セキュリティ機能も提供する。

Ingressコントローラとは

Ingressコントローラは、Kubernetesクラスタにデプロイされたアプリケーションに対して、外部からのHTTP(S)トラフィックを効率的にルーティングするための仕組みです。KubernetesのIngressリソースを監視し、その定義に基づいてトラフィックを適切なバックエンドサービスへ転送します。

Ingressコントローラの役割

Ingressコントローラは、主に以下の役割を担います。

  • ルーティング: Ingressリソースで定義されたルールに基づいて、受信したトラフィックを適切なサービスへルーティングします。
  • ロードバランシング: 複数のバックエンドサービスにトラフィックを分散し、負荷を軽減します。
  • SSL/TLS終端: SSL/TLS証明書を管理し、暗号化された通信を処理します。
  • 名前ベースの仮想ホスティング: 複数のドメイン名やサブドメインを同じクラスタ内の異なるサービスにルーティングします。
  • パスベースのルーティング: URLのパスに基づいて、異なるサービスにルーティングします。

代表的なIngressコントローラ

Kubernetes環境で利用できるIngressコントローラには、以下のようなものがあります。

  • nginx-ingress: Nginxをベースとした、広く利用されているIngressコントローラです。
  • traefik: 動的な設定変更に対応し、自動的に証明書を取得できるIngressコントローラです。
  • haproxy-ingress: HAProxyをベースとした、高性能なIngressコントローラです。
  • AWS Load Balancer Controller: AWSのロードバランサをIngressリソースとして利用するためのコントローラです。

Ingressコントローラの導入

Ingressコントローラは、KubernetesクラスタにHelmチャートやマニフェストファイルを使用してデプロイします。デプロイ後、Ingressリソースを定義することで、トラフィックのルーティングルールを設定できます。

SPONSORED