Cloud Services Platform 登場 : サービスの高度な運用基盤をクラウドとオンプレミスの両方で提供
Google Cloud Japan Team
クラウド コンピューティングが主流の座に躍り出てから 10 年が経ち、今やクラウドは世界中の開発者や企業から大きな注目を集めています。とはいえ、それでも多くの IT 組織にとって現在のクラウドは、まだ曖昧な存在であり、何ができるのか、あるいはどうあるべきかをおぼろげに示しているにすぎません。
そうした中、私たちは Cloud Services Platform のビジョンを皆さんと共有できることをうれしく思います。Cloud Services Platform は、スピードと信頼性を高め、セキュリティとガバナンスをより良く改善するとともに、Google Cloud Platform(GCP)とオンプレミスの両方で実行できるコードを一度のビルドで作成する統合サービス ファミリーです。このプラットフォームを導入すれば、現在もしくは将来の IT インフラストラクチャをどこにデプロイしても、クラウドのメリットを享受できるようになります。
Cloud Services Platform は、すべての IT リソースを統一的な開発、管理、制御のフレームワークに統合し、価値が低くセキュアでないタスクをオンプレミスと Google Cloud インフラストラクチャの両方で自動化します。Cloud Services Platform に関する今回の発表内容は次のとおりです。
- サービス メッシュ : Istio 1.0(オープンソース)、Managed Istio、Apigee API Management for Istio のリリース
- ハイブリッド コンピューティング : マルチクラスタ管理機能を持つ GKE On-Prem
- ポリシーの徹底 : Kubernetes ワークロードを統制する GKE Policy Management
- Ops ツール : Stackdriver Service Monitoring
- サーバーレス コンピューティング : GKE サーバーレス アドオン、オープンソース サーバーレス フレームワークの Knative
- 開発者用ツール : フルマネージド CI/CD プラットフォームの Cloud Build
私たちは、オンプレミスとクラウドの両方でコンテナを統一的にデプロイし管理できるプラットフォームを必要としていました。Kubernetes が業界標準となりつつある中で、デプロイのリスクとコストを低減するために GCP 上の Kubernetes Engine を採用することは自然な流れでした。
Dinesh KESWANI 氏、HSBC の Global CTO
Cloud Services Platform は、密接な協力関係にある Cisco とともに開発し市場に投入してきたハイブリッド クラウド製品と技術的、アーキテクチャ的に足並みを揃えたものになっています。Google Cloud と Cisco が共同開発した Cisco Hybrid Cloud Platform for Google Cloud は 8 月に正式リリースされますが、すでに Kubernetes Engine との整合性が証明されており、そのままの状態で GCP に対応できます。
本記事では、Cloud Services Platform のさまざまな要素を紹介しながら、完全なハイブリッド クラウド インフラストラクチャの基盤をどのように築いているかを説明します。
Istio によるアプリケーション アーキテクチャのモダナイゼーション
私たちは昨年、受け身の IT 管理から先手を打つサービス運用へと転換を図る企業を支援するため、大きな布石を打ちました。スタックの上位層を管理してアプリケーションの認識と管理を可能にするという考えのもとに、複数のパートナー企業と共同開発したオープンソースのサービス メッシュ、Istio を発表したのです。Istio は、マイクロサービスを大々的に管理するのに必要なパワーをオペレーターに提供します。オープンソースの Istio は近くバージョン 1.0 へと移行し、本番環境にデプロイできるようになります。そして今回、この Istio をベースとして、Kubernetes Engine クラスタ内のサービスを管理する Managed Istio をアルファ リリースしました。このマネージド サービスは Kubernetes Engine で利用可能な Istio ベースのサービス メッシュで、エンタープライズ サポートを備えています。Managed Istio は、次の 3 つの高度な機能を提供することで、プロアクティブなサービス運用への転換を加速させます。
- サービス ディスカバリとインテリジェントなトラフィック管理 :Managed Istio は、クラスタ内で実行されているすべてのサービスを把握し、サービス間のネットワーク トラフィックを管理します。アプリケーション レベルの負荷分散や、コンテナと VM ワークロードのための高度なトラフィック ルーティングを使用して、健全性チェックやカナリア / Blue-Green デプロイメントなどを提供し、サーキット ブレーカーとタイムアウトに対応したフォールト トレラントなアプリケーションを実現します。
- 認証を必要とするセキュアな通信 : Managed Istio は、エンドポイントのセグメント化と粒度の細かいポリシー設定、異常動作の検出とコンプライアンスの確保、デフォルトでの mTLS 使用によるトラフィックの暗号化などを提供します。
- モニタリングと管理 : Google Cloud のモニタリング / 管理ツール スイートである Stackdriver とのインテグレーションにより、Managed Istio のもとで実行されるサービス システムの把握とトラブルシューティングを可能にします。
エンタープライズ グレードの Kubernetes をあらゆる場所で実現
コンテナとマイクロサービスはアプリケーション管理の方法として間違いなく優れており、共通の Kubernetes 管理レイヤを設ければその実現は大幅に早まるはずです。それを可能にしたのが、私たちが 4 年前にリリースした Kubernetes から生まれた Kubernetes Engine です。マネージド サービスの Kubernetes Engine は数多くのテストを通じて飛躍的に成長しています。実際、Kubernetes Engine のコア時間は 2017 年に前年比 9 倍に達しました。そしてこの Kubernetes Engine と同じものが、近くオンプレミス インフラストラクチャでも利用できるようになります。まもなくアルファ テストに入る GKE On-Prem は、どこでも好きな環境にデプロイできる Kubernetes です。GKE On-Prem は Google によって設定され、Kubernetes のインストールやアップグレードを容易にするとともに、GCP とオンプレミスの両方に次の機能を提供します。
- 統一されたマルチクラスタ登録とアップグレード管理
- Stackdriver との連携によるモニタリングとロギングの一元化
- ハイブリッド IAM(Identity and Access Management)
- Kubernetes アプリケーション向けの GCP Marketplace
- GCP とオンプレミスの両方における統合的なクラスタ管理
- プロフェッショナルなサービスとエンタープライズ グレードのサポート
GKE On-Prem の登場により、必ずしもクラウドに移行しなくても、オンプレミスにある既存アプリケーションの刷新に取り組めるようになりました。クラウドへの将来的な移行を自社のペースで進められるようになったわけです。
Kubernetes ワークロードの自動的な管理
大規模なクラスタの管理では、適切なセキュリティ制御手段を用いて、セキュリティ ポリシーを簡単に管理、徹底できるようにすることが必要不可欠です。私たちは今回、Kubernetes の実行場所に関係なく一元的にクラスタを管理できるようにする GKE Policy Management を発表しました。GKE Policy Management を導入すると、Kubernetes 管理者は唯一真正なポリシーを設定して、すべての対象クラスタに自動的に同期させることが可能になります。GKE Policy Management は、リポジトリに格納された定義済みのポリシーをサポートするほか、既存の Google Cloud IAM ポリシーを流用することでクラスタを容易に保護します。GKE Policy Management はまもなくアルファ リリースされる予定です。興味のある方はこちらからサインアップしてください。
環境に対するサービス セントリック ビュー
Cloud Services Platform には、ワークロードのクラウドへの移行を単純化するだけでなく、サービス運用の改善を図るための基盤を築くテクノロジーが含まれています。インフラストラクチャからサービスを見るのではなく、サービスを中心に据えてインフラストラクチャを見るためのビューを提供するのです。今回発表した Stackdriver Service Monitoring は、次のような新しいビューを提供します。- サービス グラフ : 環境全体のリアルタイムな鳥瞰図を提供します。通信方法と依存関係を含めた形ですべてのマイクロサービスを表示します。
- SLO(サービス レベル目標)モニタリング : Google の SRE 担当者がGoogle サービスに対して実施しているのと同様の方法(お客様中心で疲労が少ない方法)でモニタリングとアラートを行います。
- サービス ダッシュボード : 1 つのサービスに対するすべてのシグナルを 1 か所にまとめ、従来よりも簡単かつ迅速にデバッグできるようにし、平均修復時間(MTTR)の削減に貢献します。
Stackdriver Service Monitoring は、強固な Istio インフラストラクチャと App Engine で動作するワークロードを対象として設計されています。
マイクロサービスが API になるとき
マイクロサービスは、ワークロードをクラウドに移行するスピードを引き上げるうえでシンプルかつ魅力的な手段であり、規模の大きいクラウド戦略へと進むためのルートとして機能します。マイクロサービスのディスカバリ、接続、管理は Istio によって実現できますが、社内のグループ、パートナー、あるいは社外の開発者がこれらのマイクロサービスを必要とするようになると、マイクロサービスはあっという間に境界線を越えて API になります。企業はマイクロサービスの管理とともに API の管理も必要とします。Apigee API Management for Istio は、API 管理をマイクロサービス スタックにネイティブに拡張し、Google Cloud の Apigee API 管理プラットフォームである Apigee Edge の堅牢な機能で Istio を補完します。Apigee Edge には、API の利用状況の表示、アクセスの提供、製品化、カタログ化、ディスカバリなどの機能に加え、開発者のためにスムーズなエクスペリエンスを作り出して API の利用を促進するデベロッパー ポータルが含まれています。
クラウドの可能性を最大限に引き出すために
コンテナと Kubernetes がなければ、Google の社内で今行われていることはとても実現できません。システム運用のサービス セントリック ビューもこれと同じくらい重要です。Cloud Services Platform は、前述のコア機能に加えて、その他の新しい機能領域へのアクセスも提供します。- GKE サーバーレス アドオンを使用すれば、サーバーレス ワークロードを Kubernetes Engine にワンステップでデプロイして実行できます。ソースからコンテナを瞬時に生成し、コンテナ ベースのステートレス ワークロードの自動スケーリングやゼロへのスケールダウンさえ可能です。GKEサーバーレス アドオンの早期プレビューにはこちらから参加できます。
- Knative(ケイネイティブと発音)は、GKE サーバーレス アドオンを支えているのと同じテクノロジーによるオープンソースのサーバーレス コンポーネントです。クラウドかオンプレミスかを問わず、Kubernetes 上で動作するサーバーレス アプリケーションの構築とデプロイに必要なビルディング ブロックを提供します。Knative を使用すれば、モダンでコンテナ ベースのクラウド ネイティブなアプリケーションを作成できます。
- Cloud Build は、フルマネージドの CI/CD(継続的インテグレーション / 継続的デリバリ)プラットフォームです。ソフトウェアの迅速かつ大規模なビルド、テスト、デプロイを可能にします。
Cloud Services Platform の導入により、ワークロードがどこにあるかに関係なく、クラウドの可能性を最大限に引き出せるようになります。Cloud Services Platform とサーバーレス コンピューティングの関連について解説した記事もこちらにありますので、ぜひご覧ください。
*この投稿は米国時間 7 月 24 日、Technical Infrastructure の Senior Vice President である Urs Hölzle によって投稿されたもの(投稿はこちら)の抄訳です。
- By Urs Hölzle, Senior Vice President, Technical Infrastructure