BT

最新技術を追い求めるデベロッパのための情報コミュニティ

寄稿

Topics

地域を選ぶ

InfoQ ホームページ ニュース HashiCorp Consul API GatewayにTCPRouteのサポートとHelm Chartを介したインストールが加わった

HashiCorp Consul API GatewayにTCPRouteのサポートとHelm Chartを介したインストールが加わった

原文(投稿日:2022/02/02)へのリンク

HashiCorpは、Consul API Gatewayをベータリリースに移行した。このリリースではConsul Service Mesh入力ソリューションに多くの新機能が追加されている。例えば、TCPRouteのサポート、Helm Chartを介したインストール、リスナーごとのTLS設定などである。

Consul API Gatewayにより、Consulサービスメッシュで実行されているアプリケーションへのトラフィックのルーティングが簡単になる。これは、2つの主要な問題を解決することを目的としたもので、入口でのアクセス制御とトラフィック管理の簡素化である。Consul API Gatewayを使うと、外部接続要求のプロトコルを設定し、信頼できるプロバイダーからのTLS証明書をクライアントに提供できるようになる。このサービスでは、ホスト名、パス、ヘッダー、HTTPメソッド内のパターンマッチングによって、サービス間での負荷分散とトラフィックのルーティングもできるようになる。

Diagram illustrating Consul API Gateway in use with Consul Service Mesh

Consul Service Meshで使用されているConsul API Gatewayを示す図 (クレジット: HashiCorp)

 

Consul API Gatewayは、Kubernetes Gateway API仕様に基づいて構築されている。この仕様では、カスタムリソース定義(CRD)が定義されている。クライアント要求のパスまたはプロトコルに基づいてゲートウェイとルートを作成するためのものである。これはオープンソースプロジェクトで「表現力豊かで拡張性がある、ロール指向のインターフェースを通じてKubernetesサービスネットワーキングを進化させるものであり、多くのベンダーによって実装され、幅広い業界をサポートする」ことを目的としている。

このリリースでは、TCPRouteを介したクライアントとサービスメッシュアプリケーション間のTCP接続とTCP + TLS接続の両方のサポートが追加されている。TLSリスナーを活用するTCPベースのルートを作成することも可能である。以下の例では、Kubernetes Gateway API CRDを使ってTCPルートを実装および管理している。

apiVersion: gateway.networking.k8s.io/v1alpha2
kind: TCPRoute
metadata:
 name: tcp-app-1
spec:
 parentRefs:
 - name: my-tcp-gateway
   sectionName: foo
 rules:
 - backendRefs:
   - name: my-foo-service
     port: 6000

リスナーごとにTLS設定を構成できるようになった。これには、許容される最小および最大のTLSバージョンと暗号スイートの設定が含まれる。この例では、最小TLSバージョンを1.3に設定し、ポート8843でHTTPSトラフィックに対して許可する暗号スイートを指定している。

listeners:
 - protocol: HTTPS
   port: 8443
   name: https
   allowedRoutes:
     namespaces:
       from: Same
   tls:
     certificateRefs:
       - name: consul-server-cert
     options:
       "api-gateway.consul.hashicorp.com/tls_min_version": "TLSv1_3"
       "api-gateway.consul.hashicorp.com/tls_cipher_suites": "TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256,TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256"

このリリースではConsul Helmチャートが強化されている。Consul API Gatewayのインストールと設定がサポートされるようになったためである。これは、Consul Helmチャートのバージョン0.40.0以降で使用でき、Consulサーバはバージョン1.11.1以降を実行する必要がある。

リリースの詳細については、HashiCorpブログConsulドキュメントをご覧ください。Consul API Gateway on Kubernetesを設定手順を説明する新しいHashiCorp Learnチュートリアルもある。

作者について

この記事に星をつける

おすすめ度
スタイル

特集コンテンツ一覧

BT