Envoy

Envoy GatewayとKubernetes Gateway APIの統合設定手順 | OCI NLB連携

ⓘ本ページはプロモーションが含まれています

もっとスキルを活かしたいエンジニアへ

スポンサードリンク
働き方から選べる

無料で使えて良質な案件の情報収集ができるサービス

エンジニアの世界では、「いつでも動ける状態を作っておけ」とよく言われます。
技術やポートフォリオがあっても、自分に合う案件情報を日常的に見れていないと、いざ動こうと思った時に比較や判断が難しくなってしまいます。
普段から案件情報が集まる環境を作っておくと、良い案件が出た時にすぐ動きやすくなりますよ。
筆者自身も、メガベンチャー勤務時代に年収1,500万円を超えた経験があります。振り返ると、技術だけでなく「どんな案件や働き方があるか」を日頃から見ていたことが、キャリアの選択肢を広げるきっかけになりました。
このブログを読んでくれた方に感謝を込めて、実際に使っている情報収集サービスを紹介します。

フルリモート・週3日・高単価、どんな条件も妥協したくないなら

フリーランスボードに無料会員登録する

利用者10万人以上。業界最大規模45万件の案件。AIマッチ機能や無料の相場情報が人気。

年収800万円以上のキャリアアップ・ハイクラス正社員を視野に入れているなら

Beyond Careerに無料相談する

内定獲得率90%以上。紹介先企業とは役員クラスのコネクションがある安心と信頼できるエージェント。


スポンサードリンク

導入: Kubernetes Gateway API と Envoy Gateway の統合概要

Kubernetes Gateway API と Envoy Gateway を統合することで、柔軟なサービスゲートウェイ構築が可能になります。特に OCI ネットワークロードバランサー (NLB) との連携は、クラウドネイティブ環境での高可用性やセキュリティ強化に貢献します。本記事では、Kubernetes Gateway API と Envoy Gateway の統合設定方法を中心に、OCI NLB との統合手順を具体的に解説します。


Helm チャートによる Envoy Gateway インストール手順

Kubernetes 環境で Envoy Gateway を導入する際には、Helm チャートを使用するのが最も効率的な方法です。OCI クラウド特有のパラメータ調整も含め、ステップバイステップで確認してください。

リポジトリ追加とバージョン選定

  1. Helm リポジトリに Envoy Gateway の公式リポジトリ を追加します。
    例: helm repo add envoy https://envoyproxy.github.io/gateway

  2. helm repo update でリポジトリ情報を更新し、利用可能なバージョンを確認します。

  3. OCI NLB との互換性を考慮し、最新版または安定版を選定します。
    例: helm install envoy-gateway oci://registry.envoyproxy.io/envoy/gateway --version v1.6.0

注意: 公式リポジトリ URL(https://envoyproxy.github.io/gateway)を必ず使用してください。

カスタムリソース定義の有効化

インストール後は、Kubernetes クラスターで Envoy Gateway 用のカスタムリソース(CRD)を有効にする必要があります。以下のように kubectl apply で適用します。

注意: OCI クラウド環境では、ネットワークポリシーに応じて CRD のマニフェストをカスタマイズする必要があります。詳細は Envoy Gateway ドキュメント を参照してください。


GatewayClass リソースの定義方法

GatewayClass リソースは、Envoy Gateway がどのネットワークプロバイダと連携するかを指定します。特に OCI NLB との接続には、以下の設定パラメータを活用します。

Envoy 特有の設定パラメーター

  • controllerName: "envoyproxy.io/gateway-class" を指定。
  • parametersRef.name: 使用する Envoy Gateway のコンフィグリソース名を設定。
    例:

OCI NLB との接続指定

OCI NLB と連携するには、Envoy Gateway のパラメータに以下を追加します。

パラメータ名 値例 補足
ociNLB.Enabled true OCI NLB 連携有効化
ociNLB.SubnetId ocid1.subnet.oc1.ap-tokyo-... ロードバランサーが配置されるサブネットID

参照: OCI NLB 特有パラメータの詳細は、Oracle Cloud Infrastructure ドキュメント で確認してください。


Route リソースと HTTPRoute の設定ポイント

Envoy Gateway でのルーティングは、HTTPRoute リソースを通じて定義されます。OCI NLB との整合性を取るためには以下の点に注意が必要です。

TLS 終端設定

TLS 証明書は Envoy Gateway が直接管理するか、OCI NLB で処理させるかを選択します。以下が代表的な設定例です。

ポイント: OCI NLB が証明書を管理する場合は、Envoy Gateway の tls.secretName フィールドは省略します。

リバースプロキシルールの最適化

以下の設定で、リバースプロキシのパフォーマンスやセキュリティを強化できます。

  • rewrite: URL パスの変換
  • timeout: タイムアウト時間を明示的に設定
  • headers: リクエストヘッダの変更

OCI Network Load Balancer 統合時の注意点

OCI NLB との連携においては、セキュリティグループやヘルスチェックパスの整合性が非常に重要です。

セキュリティグループ設定

  • Envoy Gateway と OCI NLB が配置されたサブネットに属するインスタンスのセキュリティグループを確認。
  • 下記ポートを開く必要があります:
  • Envoy Gateway: TCP 10000〜10240
  • OCI NLB: TCP 80, 443 (外部アクセス用)

ヘルスチェックパスの同期

OCI NLB が正常性を判断するためには、Envoy Gateway とのヘルスチェックパスを一致させる必要があります。

設定項目 値例 補足
healthCheckPath /healthz Envoy Gateway のエンドポイント
intervalSeconds 10 チェック間隔

トラブルシューティング: ヘルスチェックが失敗する場合は、Envoy Gateway のログからエラーコードを確認し、セキュリティグループやネットワーク設定を再検証してください。


GitLab CI/CD との連携設定

CI/CD パイプラインで Envoy Gateway の設定変更を自動化することで、デプロイの一貫性と品質が向上します。

Helm チャートの自動デプロイ

GitLab CI/CD の .gitlab-ci.yml に以下のステップを追加します。

変更履歴のアーカイブ

変更履歴を記録するには、以下のように GitLab の Artifact 機能を使用します。

セキュリティ注意: git push origin main推奨されません。代わりに GitLab API タークンや SSH キーを環境変数で管理し、安全な認証を行うことをお勧めします。


まとめ

本記事では、Kubernetes Gateway API と Envoy Gateway の統合設定手順について以下を解説しました。

  • Helm チャートによるインストール: OCI クラウド環境向けのカスタムリソース定義を活用
  • GatewayClass リソース: Envoy 特有パラメータと OCI NLB 接続指定の記述例
  • HTTPRoute 設定: TLS 終端、ルール最適化のポイントを具体的に提示
  • OCI NLB 統合注意点: セキュリティグループ・ヘルスチェックパスの整合性確認
  • GitLab CI/CD 連携: 自動デプロイと変更履歴管理の実装例

Kubernetes Gateway API と Envoy Gateway の統合設定は、クラウドネイティブ環境におけるネットワーク構成の鍵です。公式ドキュメントと本記事の手順で検証し、環境に応じた調整を行ってください。


スポンサードリンク

もっとスキルを活かしたいエンジニアへ

スポンサードリンク
働き方から選べる

無料で使えて良質な案件の情報収集ができるサービス

エンジニアの世界では、「いつでも動ける状態を作っておけ」とよく言われます。
技術やポートフォリオがあっても、自分に合う案件情報を日常的に見れていないと、いざ動こうと思った時に比較や判断が難しくなってしまいます。
普段から案件情報が集まる環境を作っておくと、良い案件が出た時にすぐ動きやすくなりますよ。
筆者自身も、メガベンチャー勤務時代に年収1,500万円を超えた経験があります。振り返ると、技術だけでなく「どんな案件や働き方があるか」を日頃から見ていたことが、キャリアの選択肢を広げるきっかけになりました。
このブログを読んでくれた方に感謝を込めて、実際に使っている情報収集サービスを紹介します。

フルリモート・週3日・高単価、どんな条件も妥協したくないなら

フリーランスボードに無料会員登録する

利用者10万人以上。業界最大規模45万件の案件。AIマッチ機能や無料の相場情報が人気。

年収800万円以上のキャリアアップ・ハイクラス正社員を視野に入れているなら

Beyond Careerに無料相談する

内定獲得率90%以上。紹介先企業とは役員クラスのコネクションがある安心と信頼できるエージェント。


-Envoy