概要
Migrate to Virtual MachinesはMigrate for Compute Engineの後継(名称変更)にあたるサービスとなります。
version5以降はMigrate to Virtual Machines、v4.xはMigrate for Compute Engineと表記されます。
を利用すると、VMware、Microsoft Azure、Amazon EC2 などのソース プラットフォームから仮想マシン(VM)を Compute Engine に移行できます。
複数のデータセンターやクラウド間で多くのアプリケーションを移行可能となります。
Migrate to Virtual Machinesを利用することの利点
- 最小限のダウンタイムで移行を実施可能
- エージェントレスで移行可能
- オンプレミス、AWS、Azure等の環境から移行可能
- v5でAWSが正式サポートされたため、v5での移行方法を解説します。
- v4は2023年中にはサポート終了のため、可能であればv5を選択してください。
- Azureはプレビュー版のみとなります。
Migrate to Virtual Machinesのバージョンによる違い
https://cloud.google.com/migrate/virtual-machines/docs/5.0/concepts/comparison?hl=ja
移行ステップ
移行手順をステップに分けて記載します。
- AWS-Google
Cloud 間でVPNを設定する - 移行先のGoogle Cloud環境を設定する
- 移行用のAWS環境を設定する
- Migrate to Virtual Machinesをセットアップする
- 移行作業(移行準備)
- 移行作業(テスト移行)
- 移行作業(本番移行)
- 所感
公式ドキュメントにもステップが記載されております。
以下をご参照ください。
https://cloud.google.com/migrate/virtual-machines/docs/5.0/how-to?hl=ja
1. AWS-Google Cloud 間でVPNを設定する。
以下記事を参照し、VPN設定を行います。
※VPN設定ははversion4.xまでは必須でしたが、v5からはインターネット間で移行可能となりました。
ただし、移行に関しては、安定性、信頼性を求められる作業のため、VPN設定を行う前提で記載します。
2.移行先のGoogle Cloud環境を設定する
2-1.【Google Cloud】関連サービスの有効化
以下のプロジェクトを有効化します。
2-2.【Google Cloud】サービスアカウントを作成する
IAMと管理 > サービスアカウント > サービスアカウントの作成を押下します。
大項目 | 項目 | 値 |
---|---|---|
サービスアカウントの詳細 | サービスアカウント名 | 任意の名前 |
サービスアカウントID | 自動入力または任意のID | |
サービスアカウントの説明 | 任意の説明 | |
このサービス アカウントにプロジェクトへのアクセスを許可する | ロールを選択 | VM Migration 管理者 |
3. 移行用のAWS環境を設定する
3-1. 【AWS】移行用のIAMポリシーを作成する
移行対象のAWSアカウントに以下のポリシーでIAMポリシーを作成します。
作成するポリシーは以下のとおりです。
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ec2:DescribeInstances", "ec2:DescribeVolumes", "ec2:DescribeInstanceTypes", "ec2:DescribeSnapshots", "ec2:CreateTags", "ec2:CreateSnapshots", "ec2:StopInstances" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "ebs:ListSnapshotBlocks", "ebs:ListChangedBlocks", "ebs:GetSnapshotBlock", "ec2:DeleteSnapshot", "ec2:DeleteTags" ], "Resource": "*", "Condition": { "StringEquals": { "aws:ResourceTag/m2vm-resource": "snapshot" } } } ] }
3-2.【AWS】IAMユーザを作成する
任意の名前でIAMユーザを作成します。
– ポリシーは2-1で作成したポリシーを付与
– IAMキーの払い出しを行う。(後ほど利用するため、アクセスキー、シークレットキーは保存する)
3-3.【AWS】EC2にタグ付けを行う(オプション)
必要に応じてEC2にタグ付けを行います。
こちらな任意のキー・バリューで設定可能です。
特定のキー・バリューを持つEC2を対象に移行が可能となります。
4. Migrate to Virtual Machinesをセットアップする
4-1. 【Google Cloud】Migrate to Virtual Machinesのダッシュボードを開く
4-2. 【Google Cloud】ソースの追加
AWSソースを追加しますをクリックし、権限情報を追加します。
4-3.【Google Cloud】 ターゲットの追加
ターゲット > 追加から導入先のターゲットプロジェクトを追加します。
4-4. 【Google Cloud】ソースVMリストに対象のVMが表示されることを確認します。
5. 移行作業(移行準備)
5-1. 【Google Cloud】対象の仮想マシンに対し、「移行を追加」を選択する
対象確認のポップアップに対し、確認を押下します。
5-2.【Google Cloud】移行タブにて、対象の仮想マシンが移行対象となっていることを確認する
5-3.【Google Cloud】レプリケーションを開始を選択し、データ同期を行う
5-4.【Google Cloud】レプリケーションのステータスが有効(アイドル状態)であることを確認する
5-5.【Google Cloud】ターゲットの詳細を編集にて、ターゲットの詳細を追加する
大項目 | 項目 | 値 |
---|---|---|
General | インスタンス名 | 任意のインスタンス名 |
プロジェクト | 対象のプロジェクト | |
ゾーン | 対象のゾーン | |
ラベル | 任意のラベル(オプション) | |
Machine configuration | マシンタイプシリーズ | 移行後のマシンタイプを選択 |
マシンタイプ | 移行後のマシンタイプを選択 | |
ホストメンテナンス時 | VMインスタンスを移行(推奨) | |
自動再起動 | オン(推奨) | |
メタデータ | 任意のメタデータを追加(オプション) | |
Networking | ネットワーク | 移行先のネットワークを選択 |
サブネットワーク | 移行先のサブネットワークを選択 | |
外部IP | 任意の外部IPを選択 | |
内部IP | 任意の内部IPを選択(自動採番化) | |
ホスト名 | 任意のホスト名を入力(既にホスト名がある場合、移行時に引き継ぎ) | |
Addmitional configuration | サービスアカウント | 空白 |
ディスクタイプ | 任意のディスクタイプを選択 | |
ライセンス | ライセンス引き継ぎが必要な場合、こちらからライセンス持ち込みを実施 | |
sole tenancy(単一テナンシーを使う場合のみ) | ノードアフィニティのラベル | 必要に応じて入力 |
構成 | 必要に応じて入力 | |
Replication policy | スケジュール | 特にしていない場合、デフォルトのスケジュール |
6. 移行作業(テスト移行)
6-1. 【Google Cloud】テストクローンを実施する
テストクローンは既存AWS環境に影響を与えることなく、移行作業を実施出来ます。
カットオーバーとテストクローン > テストクローンを選択します。
ポップアップに対し、確認を押下します。
6-2. 【Google Cloud】テストクローンが進捗していることを確認する
7. 移行作業(本番移行)
7-1. 【Google Cloud】カットオーバーを実施する
※カットオーバーに際しては、AWS側の停止を伴うため、必要に応じて業務調整等が必要となります。
※テストクローンのインスタンスが残っている場合、カットオーバーに失敗するため、名前の変更または削除等でテストクローンを修正してください。
7-2. 【Google Cloud】カッドオーバーが進んだことを確認する
7-3.カットオーバーされたことを確認する
以上でAWS→Google Cloudへの移行は完了となります。
8. 所感
以前のバージョンでも移行は出来ましたが、Migrate to Virtual MachinesはUIがGoogle Cloud側に統合され、F/Wの設定等も少なくすむため、
かなり移行設定の手間が楽になりました。
また、テストクローンは本番ワークロードに影響与えることなく実施出来ることから、事前にテストを行い、安全性・動作性を担保した上で、カットオーバーが出来るため、本番利用でも使いやすいと感じます。
クラウド間移行を検討する場合、本サービスをまず第一に検討してみてはいかがでしょうか?