ブログ | XIMIX

AWS EC2のM2VM 移行のポイント

作成者: Kazumasa Sasazawa|2024.10.02

 

はじめに

こんにちは、日本情報通信の笹澤です。
AWS EC2の移行についての質問が増えてきているので、Migrate to Virtual Machinesで移行するポイントについて纏めてみました。
どこのクラウドで稼働していても可搬性を意識して運用することは重要です。いざ引っ越しとなった時にあの手、この手でシームレスに業務を継続して移行できるように準備をしましょう。
今回紹介するツールはGoogleCloudが提供するMigrate to Virtual Machinesを使った移行です。
このツールは無償で提供されレプリケーション機能で切替間際までスナップショットを取得して移行することができます。最近の案件ではVM(Vertual Machine/コンピュータリソース)要件は減ってきておりますが、レガシー環境に取り残されたVM群を何とかしたい、リフトしたい、シフトしたいという相談は増えてきております。そんな要件に応えるべく本ツールを紹介します。
前置きが長くなりました。AWSのEC2移行を始めます。

AWS 準備

GoogleCloudのMigrate to Virtual Machinesについてはこちらのブログを参考にして下さい。
以下Migrate to Virtual MachinesはM2VMと表記します。

移行の前に必ずサポートされるOSかどうかを確認する必要があります。EC2からGCEへのサポートパスはこちらをご確認ください。Linux系はリリースまで条件を意識する必要があります。
準備としてはGoogleCloudからAWSリソースへAPI接続するための2つの設定を行います。

  • IAM ポリシーの作成

    提供された JSON テンプレートを使用して、ポリシーに移行権限を付与します。
    {
    "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"
    }
    }
    }
    ]
    }
  • IAM ユーザーの作成

    移行で使用する IAM ユーザ名を作成します。(名前は任意)
    先ほど作成したポリシーをアタッチし、最後にシークレットアクセスキーを作成します。
    シークレットキーは後述のM2VMの設定で利用します。

Google Cloud M2VMの移行設定

M2VMよりAWSの定義を行います。
「リソース」タブから[リソース追加]を進めます。
ポイントは事前準備で作成した「アクセスキーID」、「シークレットキー」を設定します。

設定内容 設定値
GCP リージョン asia-northeast1
アクセスID AWSで作成したアクセスキーID
シークレットキー シークレットアクセスキー値(発行時にのみ表示)

リソースの追加が正常に完了するとAWSにあるEC2が一覧表示されます。

続いて移行するEC2に対してVM移行定義を行います。移行元のリソースIDが正しいことを確認ください。

レプリケーション開始

「ターゲットの詳細」より移行後のVMサイズやネットワークを定義します。

設定情報 設定値
インスタンス名 GCEの名前
プロジェクト プロジェクト名
ゾーン GCEが動作するゾーン
マシンの構成 GCEタイプ
ネットワーク 利用するネットワーク
サブネット 利用するサブネット

「移行」より移行対象ECを選択し[レプリケーションを開始]を押下します。
AWS側はスナップショットが開始されます。

10GBであれば6,7分でレプリケーションが完了しました。「有効(アイドル状態)」になれば移行準備完了です。

GCEへ移行

「VM移行」から操作します。
対象のVMを選択して [カットオーバーとテストクローン]より「テストクローン」を押下します。

GCEが上記で定義したインスタンス名、マシン構成でデプロイされることを確認します。移行したVMへ接続しOS構成情報、ログ、データ、アプリケーション動作を確認します。

まとめ

M2VMを使った移行を見てきましたが、GUIも非常に分かりやすくEC2移行も簡単に実現できます。
本番移行前に移行手法の確認、移行後の訂正箇所、アプリケーションの動作確認を検証できます。予め移行元のM2VMの前提条件を確認し実環境に合わせた最適な方式で安全に移行を実現させてください。本ブログが皆様のビジネスのお役に立てれば幸いです。