Upgrade to Pro — share decks privately, control downloads, hide ads and more …

エンタープライズが求めるサービスメッシュとは?

 エンタープライズが求めるサービスメッシュとは?

Cloud Native Days Tokyo 2019での講演資料です。

アプリケーションのマイクロサービス化が一般的になってくるにつれて、セキュリティ、オブザーバビリティなど、課題も徐々に明らかになってきており、そのような課題を解決する技術として「サービスメッシュ」が注目を集めています。本セッションではデファクトのサービスメッシュ実装であるIstioをベースにしたNSX Service Mesh(NSX-SM))がいかに今日のエンタープライズが抱える課題を解決することができるかについて解説を行います。

More Decks by Motonori Shindo / 進藤資訓

Other Decks in Technology

Transcript

  1. ©2019 VMware, Inc. 2 分散した多様なアプリケーション クラウドネイティブなアプリケーションアーキテクチャ MOBILE APP WEB APP

    API Gateway REST API WEB UI WEB Service A Service B Service C REST API REST API REST API Service D REST API • イノベーション • 伸縮性 • 耐障害性
  2. ©2019 VMware, Inc. 3 アプリケーションの近代化とプラットフォームの進化 • コンテナの管理 • パッケージング •

    デリバリ • 実⾏ • 開発者志向 • コンテナのオーケストレーション • クラスタ • ⾃⼰修復性 • スケーリング • アップグレード • 運⽤者志向 ?
  3. ©2019 VMware, Inc. 4 マイクロサービス化によって顕在化してくる新たな課題 アプリケーションの プラットフォームや クラウドごとにサイロ化 スケール、セキュリティ 担保、モニタリングする

    ポイントが多数に セキュリティポリシーや ログの⼀貫性を保つのが困難 多⾔語サポートによる コードの肥⼤化と 複雑性の増⼤ Enterprise PKS
  4. ©2019 VMware, Inc. 7 コントロール プレーン ⼀般的なサービスメッシュの構成 サービス A ビジネス

    ロジック サービスメッシュ サイドカー サービス B 基本的なネット ワーク機能 ビジネス ロジック サービスメッシュ サイドカー 基本的なネット ワーク機能 データ プレーン
  5. ©2019 VMware, Inc. 9 Istio / Envoy Google、IBM、Lyft らによって開発されたサービスメッシュシステム Envoy

    は Kubernetes, Prometheus に続き 3番⽬に CNCF を「卒業」 機能 • トラフィック制御 – サービスディスカバリ – ロードバランシング • セキュリティ – 認証 – アクセス制御 – 暗号化 • オブザーバビリティ
  6. ©2019 VMware, Inc. 10 Control Plane Istio アーキテクチャ Service A

    Proxy Mixer Adapter Pilot Galley Citadel Adapter Source: https://istio.io/docs/concepts/what-is-istio/ Service B Proxy HTTP/1.1, HTTP/2, gRPC or TCP -- with or without mTLS Configuration data to proxies Configuration data TLS certificate to proxies Policy checks, telemetry
  7. ©2019 VMware, Inc. 11 エンタープライズ クラスのサービスメッシュ 理想的なソリューション US-WEST の データセンター

    DUS-EAST の データセンター Pivotal の PCF VMware ベース のクラウド パブリッククラウド マルチプラットフォーム、 マルチクラウドな フェデレーション アプリケーション コードの変更不要 集中的な可視化と 監視機能 サービスとデータに 対するグローバルな ポリシー Google KE Azure KS Enterprise PKS
  8. ©2019 VMware, Inc. 12 ビジネスをより効率的に VMware の NSX ポートフォリオを拡張 物理ネットワーク:

    データセンター内の物理ス イッチ、ルータ、LB間の接続性を提供(IPアド レス、ポート、プロトコル) ネットワーク仮想化: VM、コンテナ、ベアメタル 間のセキュリティ、⾃動化、アプリケーションの 継続性(セルフサービスや DR など)を提供 サービスメッシュ: クラウドネイティブなアプリ ケーションにおけるユーザ、サービス、データ間 の通信に可視化、制御、セキュリティを提供 サービスメッシュ (NSX Service Mesh) アプリケーション プラットフォーム (VMware PKS / Kubernetes) 物理インフラストラクチャ スイッチ、ルータ ネットワーク仮想化 (NSX Data Center) アプリケーション プラットフォーム: コンテナ化されたアプリケーションやクラスタの デプロイ、管理、運⽤
  9. ©2019 VMware, Inc. 13 VMware が提供するエンタープライズ向け Service Mesh NSX Service

    Mesh (NSX-SM) サービス データ ユーザー ディスカバリ モニタリング コントロール セキュリティ Enterprise PKS
  10. ©2019 VMware, Inc. 14 段階的アップグレードの制御 段階的に新しいアプリを リリースをする -- カナリア、 ブルー/グリーンなど

    調⼦の良くないバージョンを ⽌めたり、ワンクリックで ロールバックをする トラフィックルール、SLO ポ リシー、リカバリーなどを含ん だデプロイメント指⽰ ポリシーによる段階的なアプリ ケーションのデプロイ – より安定的なデプロイとリス クの軽減 カナリアリリースのためのトラフィック振り分け SvcB-Pod1 SvcB-Pod2 SvcB-Pod3 SvcB-Pod4 現在バージョン カナリアバージョン SvcA 98% 2%
  11. ©2019 VMware, Inc. 15 アプリケーションの SLO ポリシー トラフィック量、遅延、使⽤率、 飽和率、エラーなどのしきい値 による

    SLO の定義 サービス、インフラストラク チャ、およびユーザーに対する SLO ポリシー Policies ユーザーが異変に 気付く前に⾃動的に 修復プロセスを実⾏ Wavefront にメトリックを 出⼒し、より⾼度な分析を⾏う 正常でないサービスインスタンスの⾃動修復 SvcB-Pod1 SvcB-Pod2 SvcB-Pod3 SvcA 正常でないインスタンス 正常でないインスタンスをロード バランスのプールとレジストリか ら削除。正常なインスタンスを⾃ 動的にオートスケール > 125 ms
  12. ©2019 VMware, Inc. 16 エンドツーエンドのデータ中⼼のセキュリティ アプリケーションユーザーの コンテクストにもとづいた ABAC ポリシー サブジェクト、環境変数、

    アクション、リソースなどの 属性を考慮 ユーザーとアプリケーションの 挙動を監視し、 不正なアクセス検出 コンプライアンスのために 監査ログを出⼒ 重要なデータへのアクセスを防⽌ DB Pod Service C Web APP 不正なリクエスト 1. アクセスを拒否 2. セキュリティ管理者 にアラートをあげる 3. SIEM にログ出⼒ Web UI Early Stages
  13. ©2019 VMware, Inc. 17 通信の暗号化 authn/z による柔軟な暗号化 ポリシーによる通信の保護と データプライバシーの保護 サービス間およびユーザー〜

    サービス間の暗号化 ⾃動的な鍵と証明書の管理 実⾏データの暗号化による コンプライアンスの実現 複数のクラスタやクラウドに またがった相互運⽤性 透過的な相互認証 TLS による暗号化 Service B Service A mTLS ID Egress Proxy ID Ingress Proxy ID mTLS mTLS ID
  14. ©2019 VMware, Inc. 19 エンタープライズが本格的にアプリケーションをマイクロサービス化して運⽤していくためには、 サービスメッシュ は必要不可⽋ サービスメッシュとしては Istio が事実上のデファクト

    となっている NSX Service Mesh は Istio をベースにしつつ、サービスだけでなく、ユーザー や データ を 扱うことができ、複数のプラットフォーム上のサービスメッシュの フェデレーション が可能 本⽇のポイント