Google Cloudの移行マネジャーを使ってAWSのWindows ServerをGoogle Cloud Compute Engineへ移行してみた※構築手順付き

2022年8月5日掲載

キービジュアル

Google Cloudの移行マネージャは、既存の環境、オンプレミス・クラウドで動かしているサーバOSをGoogle Cloud上の仮想マシンへ移行してくれるプラットフォームです。

今回はGoogle Cloudの移行マネージャを使って、AWS上にあるEC2インスタンスのWindows Server 2019をGoogle Cloud Compute Engineに移行してみます。

目次

  • Google Cloud の移行マネージャを使って、AWS上にあるEC2インスタンスのWindows Serverを Google Cloud に移行する方法を解説します
  • 初心者向けにステップバイステップで解説します

1.概要構成図

AWS EC2上に構築されたWindows Server 2019をGoogle Cloud Compute Engine(VM)に移行する際のシステム構成は以下の図の通りです。

移行先のGoogle Cloud環境には、移行されるサーバ以外に、移行マネージャ、Velostrate-edge等のサーバが自動で作成されます。

AWSのように、Google Cloud外の既存の環境、オンプレミス・クラウドと連携しながらGoogle Cloudの移行マネージャを利用して移行する場合、閉域のネットワーク接続が必要ですので、この接続環境の手順もあわせて紹介します。

また、AWS EC2上に構築されたWindows Server 2019のライセンスはGoogle Cloud Compute Engine(VM)上のWindows Server 2019へ移植することができないため、ここはGoogle Cloudらパブリッククラウドが提供しているライセンスを利用する必要があります。

2.移行手順 - 1. VPN接続

まずはじめにAWSとGoogle Cloudを接続するためのVPNを構成します。

それぞれの環境で以下のセグメントのVPCとSubnetを作成します。

◆AWS

  • VPC:192.168.0.0/16
  • Subnet:192.168.1.0/24
    ※Agentのインストールが必要のため、パブリックサブネットで作成します。

◆Google Cloud

  • VPC:セグメント指定なし
  • Subnet:172.16.1.0/24

Google CloudでVPN接続用グローバルIPを作成します。

操作画面

AWSで仮想プライベートゲートウェイを作成します。

AWSでカスタマーゲートウェイを作成します。

AWSでSite-to-Site VPN接続を作成します。ルーティングの設定は静的を選びます。

CiscoのConfigの場合、以下の青文字の部分が必要です。

crypto keyring keyring-vpn-0ff2aee376779cd64-0
  local-address Google CloudのグローバルIP
  pre-shared-key address AWSのグローバルIP key 事前共有鍵
exit

※AWSのVPNは2本のトンネルの設定がありますが、今回検証のため、1本のみ接続します。

 

Google CloudのVPN接続を設定します。

操作画面

ルートベースを選びます。

接続確認

AWSでGoogle Cloudセグメント行きのルートを追加します。
※Google Cloudは自動で追加されますので、追加不要です。

以上、VPN接続の設定が完了しました。

3.移行手順 - 2. Google Cloud環境設定

Google CloudのFirewallを設定します。

Google Cloudのルートアカウントでログインしている状態でCloudShellでGoogle Cloudの環境設定を行います。

CloudShell を開きます

 

◆サービスの有効化

$ gcloud services enable iam.googleapis.com
$ gcloud services enable cloudresourcemanager.googleapis.com
$ gcloud services enable compute.googleapis.com
$ gcloud services enable storage-component.googleapis.com 
$ gcloud services enable logging.googleapis.com
$ gcloud services enable monitoring.googleapis.com

 

◆構成スクリプトの実行

プロジェクトID及び名前は適宜に変更してください。

$ cd /google/migrate/gce/previous-versions/4.9
$ python3 velostrata_sa_roles.py -p certain-frame-338210 -d linmigr

移行マネージャを作成します。

※構成スクリプトを実行する際、最新バージョン:4.9しか選べません。コンソールの移行マネージャのバージョンは4.11.9、バージョンが一致しないので、ロールが足りないエラーが表示されます。今回は3つロールを追加します。

$ gcloud projects add-iam-policy-binding certain-frame-338210 --member serviceAccount:"velos-manager-linmigr@certain-frame-338210.iam.gserviceaccount.com" --role "roles/cloudmigration.inframanager" --no-user-output-enabled --quiet
$ gcloud projects add-iam-policy-binding certain-frame-338210 --member serviceAccount:"velos-manager-linmigr@certain-frame-338210.iam.gserviceaccount.com" --role "roles/cloudmigration.storageaccess" --no-user-output-enabled --quiet
$ gcloud projects add-iam-policy-binding certain-frame-338210 --member serviceAccount:"velos-cloud-extension-linmigr@certain-frame-338210.iam.gserviceaccount.com" --role "roles/cloudmigration.storageaccess" --no-user-output-enabled --quiet

移行マネージャが作成され、 https://172.16.1.2 でアクセスできるようになりました。

4.移行手順 - 3. AWS環境設定

以下のリンクからAWS CloudFormationの構成をダウンロードします。

https://cloud.google.com/migrate/compute-engine/docs/4.11/resources/downloads

IAMユーザにVelosMgrGroupを追加し、アクセスキー/シークレッドを作成します。

作成したアクセスキーとシークレッドは後程の設定に利用しますので、メモっておきます。

5.移行手順 - 4. Agentインストール

以下のリンクから移行対象サーバにAgentをダウンロードし、インストールします。

https://cloud.google.com/migrate/compute-engine/docs/4.11/resources/downloads

管理者権限でPowerShellを起動して以下のコマンドを実行します。

 $ Import-Module Velostrata.PowerShell
 $ Connect-VelostrataManager
    □ Server:移行マネージャのIP
    □ Username:移行マネージャ作成時のUsername
    □ Password:移行マネージャ作成時のPassword

 $ Get-help Connect-VelostrataManager

6.移行手順 - 5. 移行

移行マネージャにアクセスします。

移行マネージャはプライベートIPアドレスしか持っていませんので、移行マネージャと通信できるWindows端末からアクセスさせる必要があります。今回の環境は移行対象サーバからアクセスさせています。

操作画面

TARGET CLOUDを設定します。

AWSの移行対象サーバのタグに上記のLabelの設定が必要です。

30分程待ってたら、Google Cloudコンソールで2台のサーバが自動で作成されました。

2台のサーバのFirewallにて以下のHTTP/HTTPSの通信を許可します。

MIGRATION WAVESを設定します。

Migrate_Runbook.csvが作成されます。

2ヵ所修正が必要です。

Waveを作成します。

WARNのエラーが出ていますが、問題なく移行が完了しました。

【注意】

移行が開始されると移行対象サーバがシャットダウンされます。
30分くらいでGoogle Cloudコンソールでサーバが作られました。

ログインできました。

7.ハマったポイント:①

Google CloudのFirewallはタグを使って転送ルールを作成することができます。

移行マネージャを作成する際、タグを忘れてしまいますと、ルールに引っかからなく、

以下のような443通信エラーが発生します。

7.ハマったポイント:②

Runbookを作成する際のTagsとAWSの移行対象サーバのTagが一致しないと、対象サーバが

引っかからなく、csvの中身が空白になってしまいます。

操作画面
操作画面

8. さいごに

今回、Google Cloudの移行マネージャをご紹介しました。Google Cloudは閉域接続して作業する必要があります。作業ごとにStep-by-stepで進む必要があり、細かい部分もありますが、その分オンプレミス等さまざまな環境からGoogle Cloudへシームレスにマイグレーションすることができます。もちろん、Alibaba Cloud、AWS、Azureにも同様のマイグレーションサービスがありますので、こちらも参考にしてみるといいでしょう。

関連サービス

Amazon Web Services (AWS)

ソフトバンクはAWS アドバンストティアサービスパートナーです

「はじめてのAWS導入」から大規模なサービス基盤や基幹システムの構築まで、お客さまのご要望にあわせて最適なAWS環境の導入を支援します。

Google Cloud

Google サービスを支える、信頼性に富んだクラウドサービスです。お客さまのニーズにあわせて利用可能なコンピューティングサービスに始まり、データから価値を導き出す情報分析や、最先端の機械学習技術が搭載されています。

おすすめの記事

条件に該当するページがございません