🛻

Google Cloud への移行を支援するプロダクトの紹介

2024/12/16に公開

こんにちは、クラウドエース株式会社 第一開発部の阿部です。
この記事は Champion Innovators Advent Calendar 2024 の 16 日目の記事です。

はじめに

現在、私はクラウドエース株式会社における Infra Modernization 支援パートナーとして、お客様の Google Cloud 移行の支援を担当しています。
オンプレミス環境といっても多種多様な環境やビジネスがあり、それに合わせた移行方法を提案することが求められます。

この記事では、そうしたオンプレミス環境からの移行を支援する代表的な Google Cloud プロダクトについてご紹介します。

移行方法の概要

はじめに、移行方法の概要を説明します。

移行方法の概要

Rehost

オンプレミス環境で使用している VMware ESXi クラスタを Google Cloud VMware Engine (GCVE) に接続して仮想マシンをそのまま移行する方式です。
仮想マシンをそのまま移行でき、かつ、 VMware の運用ナレッジを活用できることが特長です。

Replatform

オンプレミス環境の仮想マシンを Compute Engine や Cloud SQL といったプラットフォームに移行する方式です。
移行の際は OS やアプリケーションのアップデートが必要になることがありますが、プラットフォームの運用コストを削減できることが特長です。
また、 M2VMs や DMS といった移行支援ツールも用意されています。

Refactor

アプリケーション自体を修正して、 GKE や Cloud Run などのクラウドネイティブプラットフォームに移行する方式です。
移行というよりは、アプリケーションのリプレースといった意味合いが強いですが、クラウドネイティブプラットフォームの利点を最大限に活用できることが特長です。
先に Rehost や Replatform を経てから段階的に Refactor を行うことをおすすめします。

移行先のプロダクト

ここからは、オンプレミス環境移行の選択肢となる Google Cloud プロダクトについてご紹介します。

Rehost: Google Cloud VMware Engine (GCVE)

GCVE

Google Cloud VMware Engine (GCVE) は、 Google Cloud 上で VMware vSphere 環境を提供するサービスです。
GCVE は最大 200 Gbps のネットワーク帯域を提供し、 ESXi の機能をはじめとして、 vCenter Server、NSX-T、HCX などの VMware コンポーネントを含んでいます。
これにより、オンプレミス環境にある VMware の仮想マシンを Google Cloud にオンライン移行することが可能です。
主な移行方式としては、オンプレミス環境の VMware クラスタと GCVE を VMware HCX で接続して、vMotion や vSphere Replication を使用する方法です。

また、VMware そのものを利用できるため、これまでの運用ナレッジをそのまま活用できます。
GCVE のクラスタは 72 コア/768 GiB メモリのノード毎に、3 ノード構成からスケール可能で、大規模なシステムに向いています。
ライセンス費用は GCVE の利用料金に含まれており、別途購入する必要はありません。
まずは 60 日間限定の 1 ノード構成で試用してみることも可能です。

GCVE の概要は下記のドキュメントをご覧ください。

https://cloud.google.com/vmware-engine/docs/overview?hl=ja

Replatform: Google Compute Engine (GCE)

GCE

Google Compute Engine (GCE) は、Google Cloud 上で仮想マシンを提供するサービスです。

用途に応じた高速なインスタンスタイプ(例えば、汎用、メモリ最適化、コンピューティング最適化など)が選択できます。
また、Migration Center や Migrate to Virtual Machines 等の移行ツールも用意されています。
必要に応じて、東京リージョンと大阪リージョンの 2 拠点で冗長化することができます。

ただし、ネットワークの仕様や仮想マシンの管理方法は VMware とは異なるため、学習コストがかかります。
また、GCE でサポートされるゲスト OS は GCVE に比べて限定されます。場合によっては移行元の OS をアップグレードするなど、移行にあたっての課題が発生することがあります。

GCE の概要は下記のドキュメントをご覧ください。

https://cloud.google.com/compute/docs/overview?hl=ja

Replatform: Cloud SQL

Cloud SQL は MySQL / PostgreSQL / SQL Server に対応するマネージド RDB プロダクトです。
オンプレミス環境のデータベースを Replatform で移行するケースや、データベースの運用コストを削減するために利用されることが多いです。
Cloud SQL は Enterprise と Enterprise Plus の 2 つのエディションがあり、Enterprise Plus エディションではメンテナンス時間を短くするニアゼロダウンタイムや、ローカル SSD を使ったデータキャッシュを使用することができます。

Cloud SQL の概要は下記のドキュメントをご覧ください。

https://cloud.google.com/sql/docs/introduction?hl=ja

Replatform: AlloyDB for PostgreSQL

AlloyDB for PostgreSQL は PostgreSQL 互換のマネージド RDB です。
Cloud SQL とは異なり、PostgreSQL 14, 15, 16 のみをサポートしています。

独自のストレージエンジンを使用しており、単純移行するだけでパフォーマンス向上を見込めます。
リードプールインスタンスやカラムナエンジンといった分析クエリ向けの機能も提供しており、トランザクションと分析クエリを両立する HTAP 用途にも対応しています。

PostgreSQL 互換動作でありベンダロックイン要素が少ないため、DMS を使用して OracleDB の移行先としても検討されることが多いです。

AlloyDB for PostgreSQL の概要は下記のドキュメントをご覧ください。

https://cloud.google.com/alloydb/docs/overview

Refactor: Google Kubernetes Engine

Google Kubernetes Engine (GKE) は、 Google Cloud 上で Kubernetes クラスタを提供するマネージドサービスです。
アプリケーションをコンテナ化して GKE にデプロイすることで、スケーラビリティや高可用性を向上させることができます。
Google Cloud のロードバランサやロギング、モニタリングといったサービスとの連携も組み込まれており、クラウドネイティブアプリケーションの開発に適しています。

ただし、レガシーなアプリケーションをそのままコンテナ化するのは難しく、リファクタリングが必要になることがあります。
Migrate to Containers といった移行支援ツールも用意されており、段階的な移行をサポートしています。

GKE の概要は下記のドキュメントをご覧ください。

https://cloud.google.com/kubernetes-engine/docs/concepts/kubernetes-engine-overview?hl=ja

Refactor: Cloud Run

Cloud Run は、 コンテナ化された Web アプリケーションをサーバーレスで実行するサービスです。
最近、 Cloud Functions が Cloud Run functions として統合されたことで、Google Cloud におけるサーバーレスプラットフォームとしての位置づけが強化されました。

Cloud Run はリクエスト実行に使用した vCPU とメモリの処理時間で課金されるため、利用コストを最適化することができます。
GKE は処理時間ではなくノードやコンテナの起動時間がそのままコストとして計上されますが、Cloud Run を利用することでより細かいコスト節約が可能です。

こちらも Migrate to Containers による移行支援ツールを利用可能です。
ただし、Migrate to Containers による Cloud Run 移行はアプリケーションの前提条件が限定的であるため、移行時は十分な検証が必要です。

Cloud Run の概要は下記のドキュメントをご覧ください。

https://cloud.google.com/run/docs/overview/what-is-cloud-run?hl=ja

Refactor: Cloud Spanner

Cloud Spanner は、 フルマネージドなリレーショナルデータベースサービスです。
リレーショナルデータベースでありながら、水平スケーリングと高可用性を実現しており、大規模なトランザクション処理に適しています。
マルチリージョン構成にも対応しており、最大 99.999% の SLA を提供しています。

Cloud Spanner は、リレーショナルデータベースの機能をそのまま利用できますが、内部は分散データベースとして設計されているため、従来のリレーショナルデータベースとは異なる性能特性があります。
PostgreSQL Interface を使用することで、PostgreSQL ツールセットやドライバとの互換性を維持できますが、スキーマ構成やインデックス設計はそのまま使用しても十分なパフォーマンスを得られないことがあるため、設計の見直しや最適化が必要になることがあります。

Cloud Spanner の概要は下記のドキュメントをご覧ください。

https://cloud.google.com/spanner/docs?hl=ja

その他: Oracle Database@Google Cloud

Google Cloud は 2024 年に Oracle 社の認定クラウドベンダとして、 Oracle Database をはじめとする Oracle 社の製品を Google Cloud 上で提供可能になりました。
これまでは、Oracle Database を Google Cloud で動作させる場合、 BMS (Bare Metal Solution) を用いて物理的な環境を Google Cloud に構築して提供していました。
BMS で構築する場合、物理環境を提供するため Oracle Database の運用はやりやすい反面、コストが高く、導入が難しいという課題がありました。
今後は Oracle Database を GCVE や GCE で提供することが可能になり、GCE 上のアプリケーションをはじめとする Google Cloud のプロダクトとの相互運用性が向上します。
なお、GCVE や GCE で Oracle Database を提供する場合は、BYOL (Bring Your Own License) として、利用者が Oracle Database のライセンスを購入・管理する必要があります。

また、今年 9 月には Oracle Database@Google Cloud を提供開始しました。
これは、Google Cloud と Oracle Cloud Infrastructure を相互接続し、Google Cloud のマネージドサービスのように Exadata Cloud Service や Oracle Autonomus Database を利用できるサービスです。
現段階では、Oracle Database@Google Cloud はまだ日本のリージョンで提供されていませんが、今後の提供が期待されます。

移行支援プロダクト

ここからは、オンプレミス環境の移行を支援する Google Cloud プロダクトについてご紹介します。

Migration Center

Migration Center は、オンプレミス環境の VM の情報を検出・収集し、Google Cloud へ移行先プランを提案するツールです。
収集した情報を元に、GCVE や GCE のサイジングや、ランニングコストの見積りを行うことができます。
情報収集は Migration Center ディスカバリークライアントを使用して自動収集する手順と、RVTools 等で作成した CSV ファイルを使用して手動インポートする方法があります。

なお、Migration Center 自体はあくまで情報の収集と分析を行うツールであり、実際の移行作業は別の手段で行う必要があります。

Migration Center の概要は下記のドキュメントをご覧ください。

https://cloud.google.com/migration-center/docs/migration-center-overview?hl=ja

Migrate to Virtual Machines (M2VMs)

Migrate to Virtual Machines (M2VMs) は、VMware から GCE への移行をサポートしているツールです。また、AWS や Azure からの移行もサポートしています。
VMware からの移行では、Migrate Connector (アプライアンス VM として提供)を使用し、 vCenter Server アカウントからオンプレミス環境の仮想マシンにアクセスして移行します。
古い M2VMs (バージョン 4 以前)は、移行に Cloud VPN や Cloud Interconnect のような内部経路が必要でしたが、新しい M2VMs (バージョン 5 以降) は、Google Cloud API にアクセスできればよく、インターネット経由での移行も可能になりました。

M2VMs のアーキテクチャ概要は下記のドキュメントをご覧ください。

https://cloud.google.com/migrate/virtual-machines/docs/5.0/discover/architecture?hl=ja

Database Migration Assessment (DMA)

Database Migration Assessment (DMA) は、MySQL, PostgreSQL, Oracle Database, MS SQL Server の移行を分析するために使用するツールです。
DMA の収集ツールはオープンソースとして公開されており、データベースのスキーマ情報や Staspack (性能情報) を収集します。
なお、実際の運用としては、 Google のパートナーエンジニアと連携して DMA 収集ツールで得られた情報を分析情報に加工してもらう必要があります。

DMA は実環境への影響を最小限にしつつ、動作に必要なパーミッションを最小限にする設計になっています。
収集ツールの実行に必要なパーミッションは公開ドキュメントに記載されています。

DMA は正確には Google Cloud のサービスではありませんが、公式ブログで概要が紹介されています。

https://cloud.google.com/blog/ja/products/databases/introducing-open-source-database-migration-assessment-tool

Database Migration Service (DMS)

Database Migration Service (DMS) は、オンプレミス環境のデータベースを Google Cloud のマネージドデータベースサービスに移行するためのツールです。
MySQL, PostgreSQL, Oracle Database, MS SQL Server に対応しており、オンプレミス環境のデータベースを Cloud SQL、AlloyDB に移行することができます。
DMS は、 Oracle Database のスキーマを変換しながら、 Cloud SQL for PostgreSQL や AlloyDB for PostgreSQL に移行することも可能です。

DMS によるスキーマ変換では、 Conversion Workspace を使用します。
Coversion Workspace を使用すると、スキーマの変換がどのように行われるかを Google Cloud コンソールの GUI で確認することができ、必要に応じて変更を加えることができます。
そのため、自動のスキーマ変換に不安がある場合でも、目で確認しながら変換を行うことができます。

DMS の概要は下記のドキュメントをご覧ください。

https://cloud.google.com/database-migration/docs/overview

また、弊社のエンジニアによる DMS の利用方法についての記事も公開されています。

https://zenn.dev/cloud_ace/articles/migrate-oracle-to-cloudsql-with-dms

まとめ

オンプレミス環境から Google Cloud への移行を支援する代表的なプロダクトを紹介しました。
昨今、VMware のライセンス体系の変更をはじめとする、オンプレミス環境の運用コストの増大やセキュリティリスクの増加などが見られます。これにより、クラウド移行のニーズが再び高まっていると感じています。

Google Cloud は、オンプレミス環境からの移行を支援する多くのプロダクトを提供しており、利用者のニーズに合わせた移行方法を選択できます。
是非、これらのプロダクトを活用して、 Google Cloud への移行を検討してみてください。

この記事が、オンプレミス環境からの Google Cloud 移行を検討している方の参考になれば幸いです。

Discussion