コンテンツに移動
Anthos

エンタープライズ向けのモダン アプリケーション プラットフォームの概要

2021年6月2日
Google Cloud Japan Team

※この投稿は米国時間 2021 年 5 月 14 日に、Google Cloud blog に投稿されたものの抄訳です。

テクノロジーの進化に伴い、企業のニーズも進化しています。テクノロジーが企業のニーズを満たすために追いつこうとする一方で、企業もまたテクノロジーに追いつこうとするため、さらなる機会の創出へとつながっています。従来型の企業は構造的な変化に適応し、絶えず改革を進めています。そのように多数の変化が発生する状況では、企業のモダン アプリケーション プラットフォームに対する最新のニーズを見直し、現在の状況に照らし合わせてその必要性を確認することが重要です。

Google はオープンソースにおける 10 年以上の経験を結集し、プロダクトやソリューションを通じて、企業が求めるモダン アプリケーション プラットフォームのニーズに応えています。その経験は、Anthos に大きな影響をもたらし、同プラットフォームの基盤として活かされています。また、企業がモダン アプリケーション プラットフォームを採用するために従業員、プロセス、アプリケーションを進化させていく中で発生する、企業変革の幅広いニーズにも対応しています。

Kubernetes

コンテナ化と Kubernetes は、最新のアプリケーション プラットフォームでアプリケーションをホストするための主要なテクノロジーです。アプリケーションをコンテナとして実行することで、開発の速度、デプロイの速度、スケールアップとダウンの速度、ポータビリティのすべてがもたらされます。この 10 年間で、コンテナ化されたワークロードをオーケストレートするための技術がいくつか登場しましたが、この分野では Kubernetes が群を抜いて際立っています。Google が 10 年間使用していた技術は、Google が始めたオープンソース プロジェクトである Kubernetes に影響を与え、今ではエンタープライズ アプリケーション ワークロードの業界標準となっています。

ハイブリッドでマルチクラウドのインフラストラクチャ

企業は従来、アプリケーションをデータセンターにデプロイしていましたが、その結果、コンピューティング、ストレージ、ネットワークのニーズはすべて、データセンターの境界を越えることができませんでした。この 10 年間における最も大きな変化の 1 つに、企業によるクラウドの導入が挙げられます。ネットワークと VPC が拡張されたことで、データセンター内に限定されていた境界線が新たに引き直され、クラウド プロバイダも含まれるようになりました。現在、一般的なエンタープライズ向けハイブリッド インフラストラクチャには、少なくとも 1 つのクラウドサービス プロバイダに接続されたエンタープライズ データセンターへの投資が必要になります。こうしたクラウド サービスは通常、企業のグローバルなビジネスニーズを満たすために、地域や地理的境界線を越えて広がっています。また、マルチクラウド戦略を策定しておくことも、企業にとって一般的な要件となっています。

モダン アプリケーション プラットフォームは、主にこのようなハイブリッドでマルチクラウド、マルチリージョンのインフラストラクチャ ニーズに対応します。また、複数の Kubernetes クラスタが異なる環境に分散するのもよくあることです。そのため今では、Google のモダン アプリケーション プラットフォームとはつまり、マルチクラスタかつマルチデータセンターの、地理的境界を越えたハイブリッド プラットフォームを意味するものとなりました。

https://storage.googleapis.com/gweb-cloudblog-publish/images/0_0.max-838x269.png

マルチクラスタ管理

このモダン アプリケーション プラットフォームに、複数の Kubernetes クラスタを使用したアプリケーションがより多くデプロイされるようになれば、クラスタの増加は避けられません。Kubernetes クラスタの増加に伴い、このようなクラスタとそのライフサイクルを管理するには、マルチクラスタ管理を行うことが非常に重要となります。オペレーション チームがモダン アプリケーション プラットフォームを管理するには、複数のクラスタを単一の画面で表示できることに加え、クラスタのインストール、状態、アップグレードを単一の視点から管理できるモニタリング コンソールが不可欠です。

オペレーション - モニタリング

モダン アプリケーション プラットフォームのオペレーションには、クラスタ間の指標の統合のほか、問題に関するアラートや通知も含まれます。また、単一の画面により、SLO の設定やモニタリングに加え、SRE が全クラスタをモニタリングするためのダッシュボードへのアクセスが可能になります。

オペレーション - デバッグ、ログの統合、トレーサビリティ

モダン アプリケーション プラットフォームでは、アプリケーションが複数の Kubernetes クラスタにデプロイされていても、アプリケーションの問題のデバッグを行う際に、複数のクラスタにわたってログを検索する必要はありません。なぜなら、そのようなプラットフォームでは異なるクラスタからのログが統合され、単一の画面からアクセスできるようになっているからです。デバッグのためのツールや、クラスタ全体でのリクエストのトレーサビリティは、アプリケーション所有者の視点からは当然の要件です。

クラスタのライフサイクル管理

モダン アプリケーション プラットフォームは、候補となる Kubernetes クラスタに、シームレスで自動化されたライフサイクル管理機能を提供します。これには、ワークロードのゼロ ダウンタイムを確保しながら、クラスタをアップグレードしたりパッチを適用したりする機能などが含まれます。Kubernetes をはじめとするプラットフォーム ソフトウェアには、新機能や進化した機能を提供するリリース サイクルがあります。企業のワークロードの中には、最新の機能を求めるものと、安定したクラスタを求めるものがありますが、モダン アプリケーション プラットフォームでは、これらのさまざまな要件をリリース チャンネルを通じて管理し、必要に応じてロールバックすることができます。

https://storage.googleapis.com/gweb-cloudblog-publish/images/0_0_1.max-838x400.png

セキュリティ

Identity and Access Management

IAM のニーズに対応するために、企業は LDAP や Microsoft Active Directory を導入しています。モダン アプリケーション プラットフォームは IAM とシームレスに統合されており、認証と認可の管理はもちろん、必要に応じてセキュリティ グループをインポートすることができます。ID 管理のエクスペリエンスは全般的に、プラットフォーム全体でシームレスであるべきです。

セキュリティ ポリシー管理

マルチクラスタ環境において、クラスタ全体にわたって一貫したセキュリティ ポリシーを定義し、適用することは大変な作業です。この要件はすべての分野に適用されますが、厳しいセキュリティ ポリシーを持つ企業、厳しい規制が適用される業界、コンプライアンス要件を満たす必要のある企業にとっては、極めて重要です。モダン アプリケーション プラットフォームを使用すれば、1 か所からポリシーを適用し、関連するクラスタとそのクラスタ上で実行されているワークロードにポリシーを反映させ、これらクラスタが宣言されたセキュリティ ポリシーから逸脱しないよう確認することができます。

構成の管理と監査可能性

現在では、GitOps による Infrastructure-as-Code(IaC)の実装は当たり前の手法となってきています。インフラストラクチャの構成を Git リポジトリで管理し、その構成リポジトリを信頼できるソースとして使用したうえで構成を自動的に適用し、その信頼できるソースをミラーリングするようにすべてのクラスタ構成とアプリケーション デプロイメントをモニタリングすることで、モダン アプリケーション プラットフォームで構成の不整合を生じさせずに、管理性を向上させることができます。また、すべての変更は、アプリケーション コードと同様に、通常の Git ライフサイクルを通じて追跡されるため、どのクラスタに対する変更も監査できます。

https://storage.googleapis.com/gweb-cloudblog-publish/images/0_0_2.max-839x400.png

アプリケーションとサービス

これまで説明してきた機能では、モダン アプリケーション プラットフォームは、ステートフルとステートレスの両方の Kubernetes アプリケーションを実行できます。従来のアプリケーションでさえも、コンテナ化して実行することができます。ただし、モダン アプリケーションやモダン サービスを実行するには、アプリケーション プラットフォームに多くの機能が要求されます。サービスがプラットフォーム全体に分散されるなか、モダン アプリケーション プラットフォームは、アプリケーション所有者からの新たなニーズに対応できる必要があります。その際に求められる機能には次のようなものがあります。

サービス管理

サービス管理では、Istio サービス メッシュのようなオープンソース技術を使って構成することで、動的なトラフィック シェーピング、Blue/Green デプロイ、カナリア デプロイ、バージョンのロールアウト、サーキット ブレーカー、フェイルオーバー、サービス間の相互 TLS、その他多くのサービスレベルの機能が提供されます。さらに、サービス リクエストの流れを追跡し、遅延や障害を引き起こす場所を特定し、実際の使用パターンに基づいてサービスマップを作成する機能もあります。モダン アプリケーション プラットフォームには、複数のクラスタだけでなく VM で実行されるワークロードにまで拡張可能なサービス メッシュが含まれています。

サーバーレス

クラウド プロバイダは、リアルタイムの需要に基づいて迅速にスケールアップやスケールダウンし、使用量に応じて課金する機能を提供しています。モダン アプリケーション プラットフォームは、対象となるワークロードでこのようなモデルをサポートするだけでなく、Knative などのオープンソース技術を使用して、オンプレミスのクラスタでも動的なスケーリング機能を利用できるようにします。

サードパーティのサービス

企業は、サードパーティのベンダーが提供するサービスに依存しています。企業が使用するサードパーティ ソフトウェアには、ランタイム、ミドルウェア、データベースに加え、アプリケーションで使用されるその他のソフトウェアが含まれる場合もあります。モダン アプリケーション プラットフォームが提供する機能では、サードパーティのサービスを簡単に使用、実行、統合することができます。これには、サードパーティが自社サービスを宣伝し公開するための標準モデルが含まれており、こうしたサービスの購入、使用状況の追跡、請求が行えるようになっています。

クラウド プロバイダ サービス

モダン アプリケーション プラットフォームが複数のクラウドにまたがる理由の 1 つは、クラウド プロバイダが提供するサービスを適切に活用するためです。サービスの中には、そのサービスやそれを支えるインテリジェンスを実行するためのインフラストラクチャ要件により、クラウド プロバイダのプラットフォームでのみ利用可能なものもあります。モダン アプリケーション プラットフォームは、このようなクラウド サービスとの統合を容易にし、必要に応じてアプリケーションが最適なサービスを活用できるようにします。

グローバルなロードバランサ

企業のデータセンターやネットワークは一般的に、複数のリージョンに分散しています。アプリケーションがリージョンをまたいでクラスタ全体にデプロイされるようになると、マルチクラスタの上り(内向き)トラフィック制御とグローバルな負荷分散が、モダン アプリケーション プラットフォームにおける重要な機能となります。

https://storage.googleapis.com/gweb-cloudblog-publish/images/0_0_3.max-839x525.png

アプリケーションのライフサイクル管理

アプリケーションのデベロッパー、テスト担当者、デプロイ担当者は、アジャイルや DevOps のアプローチを用いてアプリケーションのビルド、デプロイ、テスト、デバッグを行うにあたり、プラットフォームを統合して使用するためのツールが必要になります。モダン アプリケーション プラットフォームには、CLI、IDE、フレームワーク、現在のワークスペースでビルドするためのプラグインなどのツールが含まれているため、コンテナ化されたアプリケーションをビルド、テスト、デプロイしてデベロッパーの生産性を向上させ、内部開発ループのサイクルを短縮することができます。また、このプラットフォームには、Tekton をベースにしたオープンソースの CI/CD 技術と互換性のある CI/CD ツールが含まれているか、統合されています。さらに、ソース コントロール リポジトリ、コンテナ レジストリ、不具合追跡ツールも含まれているか、もしくは統合されています。

https://storage.googleapis.com/gweb-cloudblog-publish/images/0_0_4.max-838x471.png

まとめ

2 部構成のブログシリーズの 第 1 回目となる今回は、企業向けのモダン アプリケーション プラットフォームの機能について説明しました。Kubernetes ベースのハイブリッドなマルチクラウド プラットフォームでは、一元化された単一画面ビュー、アプリケーションのライフサイクルがサポートされ、業界のベスト プラクティスが組み込まれています。第 2 回目は、Google Cloud のモダン アプリケーション プラットフォームである Anthos の実装と、そのプラットフォームで提供されているソリューションについてご紹介します。

組織の IT 構造の変更はすべて、最終的には組織の顧客に価値を提供するものでなくてはなりません。「アプリケーションのモダナイゼーションに関する CIO のためのガイド」では、IT 組織を再編成し、ビジネス機能を迅速かつ効率よく安全に提供できるプロダクト ベースのモデルを採用するために、Google Cloud を活用する方法をご紹介しています。いますぐガイドをダウンロードして、おすすめ情報の詳細を確認し、アプリケーションのモダナイゼーションを開始してください。

-Google アプリケーション モダナイゼーション担当ソリューション マネージャー Veer Muchandi

投稿先