本記事はAIによる要約を行った結果を記載しています。詳細は学習コンテンツを閲覧ください。
本記事について
Google Digital Leader公式の学習コンテンツである『Google Cloud によるインフラストラクチャとアプリケーションのモダナイゼーション』の講義内容を記載しています。
講義内容
コース全体の概要
- クラウドで誕生した組織が古いビジネスモデルに挑んでおり、規模はもはや競争上の優位性ではなくなっている。
- 既存の組織は、ITインフラの運用管理への投資から、新しい価値の高い製品やサービスの作成へとフォーカスをシフトする必要がある。
- クラウドを導入すると、固定容量を購入するのではなく、使った分だけ料金を支払う経済性に変わる。
- このコースは、「インフラとアプリのモダナイゼーションに関する共通の用語の紹介」「コンピューティングワークロードの実行オプション(VM、コンテナ、サーバーレス)の確認」「アプリ開発をモダナイズするオプション(リホスト、API)の確認」を目標とする。
1. 重要な用語
-
ワークロード: クラウドまたはオンプレミスで実行できる特定のアプリ、サービス、機能のこと(例:コンテナ、データベース、VM)。
-
廃止 (Retired): ワークロードが不要、費用対効果が悪い、安全でないなどの理由でプラットフォームから削除すること。
-
リホスト (Rehost): ワークロードのコードやアーキテクチャを変更せずにクラウドに移行すること。「リフト&シフト」とも呼ばれる。
-
リプラットフォーム (Replatform): ワークロードをクラウドに移行すると同時に、コードやアーキテクチャに変更を加えること。「移行して改良」とも呼ばれる。
-
リファクタリング (Refactor): クラウドベースのマイクロサービスやサーバーレスアーキテクチャに適応させるなど、ワークロードのコードを変更するプロセス。
2. クラウドで行うインフラストラクチャーのモダナイゼーション
コンピューティングワークロードをクラウドで実行するメリット
- 総所有コスト (TCO): 物理インフラの購入・保守が不要になり、従量課金制モデルによりコストを節約できる。
- スケーラビリティ: 需要の変化に応じて、サーバーやストレージなどのリソース量を増減できる。
- 信頼性: クラウドプロバイダがデータセンターの多地域配置などにより、高い信頼性と稼働率を確保する。
- セキュリティ: データ暗号化、Identity and Access Managementなど、高度なセキュリティ機能でデータとアプリを保護する。
- 柔軟性: ニーズに最適のクラウドサービスを選択し、随時変更や適応が可能。
- 抽象化: クラウドプロバイダがインフラ実装の詳細を管理するため、ユーザーは詳細を意識する必要がない。
コンピューティングの選択肢
-
- 概要: 仮想化技術により、1台のHW上で複数のシステム(VM)を実行する。各VMは本格的なOSの性能と機能を含む。
- Google Cloudのサービス: Compute Engine。Googleのインフラ上でVMを作成・実行できるIaaSプロダクト。
- 料金体系: 最低1分から秒単位で料金が発生。長時間の利用で継続利用割引が自動適用される。1年または3年の利用を確約すると確約利用割引が適用される。
-
VMの種類:
- プリエンプティブルVM / Spot VM: 他の処理でリソースが必要になった場合に終了される可能性があるVM。費用を最大90%削減できる。Spot VMは実行時間の上限がない点でプリエンプティブルVMより優れる。
-
コンテナ - Google Kubernetes Engine (GKE)
-
概要: OSレベルより上のソフトウェアレイヤを仮想化する。アプリとその依存関係をパッケージ化し、起動が速く、メモリ使用量も少ない。マイクロサービスアーキテクチャに最適。
-
- Kubernetes: コンテナ化されたワークロードとサービスを管理するためのオープンソースプラットフォーム。Googleが開発した。
- Google Kubernetes Engine (GKE): GoogleがホストするマネージドKubernetesサービス。GKEクラスタはCompute Engineインスタンスから構成される。
-
GKE Autopilot: クラスタ全体のインフラを完全に管理可能で、Podごとに請求されるモード。医療系スタートアップのUbie社は、GKE Autopilotの導入によりインフラ費用を20%削減し、メンテナンス作業を不要にした。
-
-
サーバーレス コンピューティング
-
概要: サーバーがないという意味ではなく、演算能力などのリソースが必要に応じてバックグラウンドで自動的にプロビジョニングされる。料金はクエリやアプリを実行する場合に限られる。
-
種類: Function as a Service (FaaS) は、特定のイベントへの応答としてコードを実行するソリューション。
-
Google Cloudのサービス:
-
メリット: 運用コストの削減、スケーラビリティ、製品化までの時間の短縮、開発費用の削減、復元力の向上、従量課金制モデル。
-
3. クラウドで行うアプリケーションのモダナイゼーション
最新のクラウドアプリケーション開発のメリット
- 従来の開発 (モノリシック): アプリの全構成要素を1つの密結合されたユニットとして開発する。
-
最新の開発 (マイクロサービス):
- アーキテクチャ: アプリを一連のマイクロサービスとして構築する。各サービスは独立してデプロイ可能。
- デプロイ: クラウドにデプロイされ、マネージドサービスを利用できる。
- 費用: 従量課金制モデルを使用。
- その他: 高いスケーラビリティ、高可用性(ロードバランシング、自動フェイルオーバー)、復元性を実現する。
既存アプリケーションのクラウドでの再ホスト
- 概要: リフト&シフトとも呼ばれ、アプリ自体に変更を加えずにオンプレミスからクラウドへ移行すること。
- デメリット: 複雑さ、リスク、ベンダーロックインの可能性がある。
-
Google Cloudのソリューション:
- Google Cloud VMware Engine: 既存のVMwareワークロードをアプリの再設計なしにクラウドへ移行できる。
- Bare Metal Solution: Oracleワークロードなどを、クラウド内の専用ベアメタルサーバー上で実行できるフルマネージドソリューション。
アプリケーション プログラミング インターフェース (API) と Apigee
- APIとは: ソフトウェアプログラム間のやり取りを可能にする一連の指示。レストランのウェイターに例えられる。
- APIのビジネスチャンス: APIを通じて自社のデータやサービスへのアクセスを提供することで、新しいプロダクトの作成、新たな収益源、パートナーシップの構築が可能になる。
-
Apigee API管理: APIを大規模、安全、自動的に運用できるGoogle CloudのAPI管理サービス。
- 機能: APIの保護(認証、認可)、使用状況の追跡・分析、開発とデプロイの支援、バージョニング、APIのスロットリング(リクエスト数制限)。
- 事例: AccuWeather社はApigeeを使い、開発者がAPIを簡単に利用できるポータルを提供し、サービスレベルごとの収益化を実現した。
ハイブリッドクラウドとマルチクラウド
-
現状: 世界の企業のコンピューティングのほとんどは、依然としてオンプレミスで行われている。
-
Google Cloudのソリューション: GKE Enterprise
- 概要: 複数のクラウド環境でKubernetesアプリケーションを実行するためのマネージドプラットフォーム。
- 利点: マルチクラウドとハイブリッドのサポート、単一コンソールでの一元管理、セキュリティとコンプライアンス機能、ネットワーキングとロードバランシング、モニタリングとロギングのツールセットを提供する。