Google Cloud 用サービス メッシュの進化型、Cloud Service Mesh を発表
Google Cloud Japan Team
※この投稿は米国時間 2024 年 4 月 11 日に、Google Cloud blog に投稿されたものの抄訳です。
サービス メッシュ アーキテクチャを導入するネットワーク事業者はますます増加しています。これは、管理された、監視可能で安全なマイクロサービス間通信を実現するアーキテクチャで、これによりマイクロサービスを堅牢なエンタープライズ アプリケーションに組み込めるようになります。サービス メッシュのデプロイが拡大するにつれて、組織は、さまざまなインフラストラクチャをカバーし、グローバル ロード バランシング、一元化されたヘルス チェック、マネージド レート制限、トラフィックに合わせた自動スケーリングなどの他のネットワーク サービスと統合するフルマネージド ソリューションを求めるようになってきました。
そうしたなか、このたび、あらゆるタイプの Google Cloud プラットフォーム全体にわたるフルマネージド サービス メッシュ、Cloud Service Mesh をご利用いただけるようになりました。Cloud Service Mesh は、Traffic Director のコントロール プレーンと、Google のオープンソースの Istio ベース サービス メッシュである Anthos Service Mesh を組み合わせて、両方の長所を取り入れた単一のサービスです。
Cloud Service Mesh により、以下をご利用いただけるようになります。
-
グローバル スケールの Traffic Director コントロール プレーン
-
Anthos Service Mesh との互換性
-
Istio API(Kubernetes クラスタのメッシュ用に最も広く使用されているオープンソース API)
-
Envoy サイドカーの自動アップグレードのためのマネージド データプレーン
-
GKE フリート統合
-
Workload Identity 用にホストされている認証局
-
サービス指標用のサービス オペレーション ダッシュボード
-
下記に対する Traffic Director からの GCP API
-
プロキシレス gRPC のサポート
-
VM
-
Cloud Run
Cloud Service Mesh はこの四半期中に一般提供開始となる予定です。
Cloud Service Mesh のメリット
サービス メッシュは、トラフィック管理、オブザーバビリティ、セキュリティなど、サービスを実行するための一般的な要件をすべて管理します。これにより、アプリケーション デベロッパーやオペレーターは、メッシュ インフラストラクチャの管理に時間を費やす必要がなくなり、ユーザーのために優れたアプリケーションを作成し、管理するという本来の業務に集中できます。では、Cloud Service Mesh の機能について見ていきましょう。
トラフィック管理
Cloud Service Mesh は、メッシュ内のサービス間のトラフィック、メッシュに向かう(内向き)トラフィック、外部サービスへの(外向き)トラフィックのフローを制御し、アプリケーション レイヤでリソースを構成およびデプロイして、このトラフィックを管理できるようにします。Cloud Service Mesh により、以下のことが可能になります。
-
Google のグローバル ロード バランシング ソフトウェアを使用して、容量と近接を自動で考慮するグローバル ロード バランシングを提供する
-
サービスのルーティングを細かく制御する
-
サービス間のロード バランシング構成する
-
カナリア デプロイと Blue/Green デプロイを作成する
-
再試行と回路ブレーカーを設定する
通常シナリオと障害シナリオの両方でのサービスの通信方法を制御することで、より信頼性の高いアプリケーションを構築できます。
オブザーバビリティの分析情報
Cloud Service Mesh は、テレメトリー、ロギング、トレースをサポートしています。このデータを使用して、不具合が発生した際にサービスの動作状態を追跡し、問題を見つけることができます。
Google Cloud コンソールのグラフィカル ユーザー インターフェースには、このテレメトリーを通じて、サービス メッシュに関する分析情報が表示されます。これらの指標は、Istio API を通じて、構成されたワークロードに対して自動的に生成されます。
-
メッシュの GKE クラスタ内の HTTP トラフィックに関するサービスの指標とログが、Google Cloud に自動的に取り込まれます。
-
事前構成されたサービス ダッシュボードに、サービスを理解するために必要な情報が表示されます。
-
高度なテレメトリー(Cloud Monitoring、Cloud Logging、Cloud Trace によって実現)では、サービスの指標とログを深く掘り下げることができます。さまざまな属性でデータをフィルタ、セグメント化できます。
-
サービス同士の関係を一目で把握できるため、サービス間の通信と依存関係を理解しやすくなります。
-
自分のサービスだけでなく、他のサービスとの関係のコミュニケーション セキュリティの分析情報もすばやく確認できます。
-
サービスレベル目標(SLO)により、サービスの状態についての分析情報を取得できます。サービスの状態に関する独自の基準を使用して SLO とアラートを簡単に定義できます。
セキュリティ上のメリット
サービス セキュリティは、サービス メッシュの 3 番目の主要コンポーネントです。サービスごとに独自の ID があり、相互 TLS(mTLS)によって強力なサービス間認証と暗号化を提供するために使用されます。Cloud Service Mesh は以下を行います。
-
盗まれた認証情報によるリプレイまたはなりすまし攻撃のリスクを軽減する。Cloud Service Mesh は mTLS 証明書に基づいてピアを認証します。
-
通信中の暗号化を保証する。認証に mTLS を使用すると、すべての TCP 通信が通信中に暗号化されます。
-
クライアントのネットワークのロケーションやアプリケーション レベルの認証情報にかかわらず、承認されたクライアントだけが機密データを含むサービスにアクセスできるようにする。
-
本番環境ネットワーク内でユーザーデータ侵害のリスクを軽減する。インサイダーが機密データにアクセスするときには、必ず承認されたクライアントを使用するようにします。
-
機密データのあるサービスにアクセスしたクライアントを識別する。Cloud Service Mesh のアクセス ロギングを使用すると、IP アドレスだけでなく、クライアントの mTLS ID も収集できます。
サービス メッシュの既存のお客様のサポート
当面の間、Anthos Service Mesh と Traffic Director のドキュメントと SKU の名称を Cloud Service Mesh に変更する予定ですが、それ以外は、現在 Anthos Service Mesh と Traffic Director をご利用いただいているお客様の環境がすぐに変わることはございません。現在ご利用の API はこれまでどおりに動作し、メッシュも引き続き機能します。今後 1 年間、Google は Anthos Service Mesh と Traffic Director のお客様と協力して、すべての新機能を、選択した API とともに共通のコントロール プレーンに統合して利用できるようにしていきます。
Istio API on GKE で既存のマネージド ASM を使用するか、GCP API でTraffic Director を使用して今すぐ始めましょう。これらは、この四半期後半に Cloud Service Mesh がリリースされると自動的に移行される予定です。