AWS Application Migration Service (AWS MGN) でテストインスタンスの起動をスキップしてカットオーバーインスタンスを起動する方法

記事タイトルとURLをコピーする

こんにちは、やまぐちです。

概要

AWS Application Migration Service(以下 MGN)でインスタンスを起動するにはざっくり以下の流れになります。

  1. レプリケーションの開始
  2. テストインスタンスの起動
  3. カットオーバーインスタンスの起動


移行ダッシュボードをみても、ざっくりこの流れになっていることがわかります。

今回は、テストインスタンスの起動をスキップして、レプリケーションしているデータからカットオーバーインスタンスを起動する方法をご紹介します。

テストインスタンスの起動をスキップする方法について

先にテストインスタンスの起動をスキップ方法をご紹介します。
マネジメントコンソールでは実施できず AWS CLI で以下を実行するとテストインスタンスの起動をスキップできます。

$ aws mgn change-server-life-cycle-state --source-server-id <AWS ID> --life-cycle '{"\state\":\"READY_FOR_CUTOVER\"}'

「AWS ID」とは、サーバー情報に記載されているs-から始まる ID を指します。

やってみた

今回は、「テストの準備完了」の状態まで完了した状態から検証をしてみます。
「テストの準備完了」までのレプリケーションの方法は、以下ブログをご参照ください。
blog.serverworks.co.jp

レプリケーションの「サービス認証」に失敗する場合は、経路が確保されていない可能性があるので以下ブログを参考に経路をご確認ください。 blog.serverworks.co.jp

マネジメントコンソールからテストインスタンスの起動がスキップできるか試す

それでは、まずはマネジメントコンソールからテストインスタンスの起動がスキップできるか試します。

「テストおよびカットオーバー」のメニューを開きます。
「カットオーバーインスタンスを起動」を選択します。
「カットオーバーインスタンスを起動 できません」が表示され、カットオーバーインスタンスを起動できません。

AWS CLI からテストインスタンスの起動がスキップできるか試す

CloudShell から実行しようと思います。

以下のコマンドを実行して、テストインスタンスの起動をスキップします。

$ aws mgn change-server-life-cycle-state --source-server-id s-xxxxxxxxxxxxxxxx --life-cycle '{"state":"READY_FOR_CUTOVER"}'

実行すると結果が出力されます。

マネジメントコンソールから確認するとステータスが「カットオーバーの準備完了」になりました!

カットオーバーインスタンスを起動してみます。

カットオーバーインスタンスを起動できました!

まとめ

今回は、テストインスタンスの起動をスキップして、カットオーバーインスタンスを起動してみました。
AWS CLI からしか実行できないことがポイントとなります。

参考情報: aws.amazon.com

やまぐち まさる (記事一覧)

CS部・CS2課

AWS の構築・運用をやってます

3度の飯より野球が好き

2024 Japan AWS All Certifications Engineers