[アップデート] AWS MGNにマルチアカウント移行機能が追加されました(他、複数の機能改善あり)

AWS MGNが更にパワーアップしました。
2023.07.07

大家好,クラスメソッドの創業20周年目を喜ぶAWS事業本部の西野です。

AWS Application Migration Service (AWS MGN) にマルチアカウント移行機能が追加された他、既存の機能にいくつかの改善がなされました。

AWS Application Migration Service now supports multi-account migrations
AWS Application Migration Service Major Updates: Global View, Import and Export from Local Disk, and Additional Post-launch Actions | AWS News Blog

本アップデートで追加・改善された機能はAWS MGNをサポートしているすべてのリージョンで利用可能です。

まとめ

本アップデートで追加・改善された機能の一覧です。

  • マルチアカウント移行機能の追加
  • Import/Export機能のローカルディスク対応
  • 新たなPredefined post-launch actionsの追加
  • レプリケーションの開始・停止・一時停止・再開機能の追加

以下、それぞれについて見ていきます。

マルチアカウント移行機能の追加

マルチアカウントでAWS MGNの一括操作・監視ができるグローバルビュー機能が追加されました。AWS Organizationsの利用が前提条件です。

以前からCloud Migration FactoryというAWSソリューションを利用することによって同様の作業を実行出来ましたが、今回のアップデートによってAWS MGNがネイティブでこの機能を持つようになりました。
(Cloud Migration Factoryは他にも対象サーバーへのAgent一括インストールなどの便利な機能を持つソリューションですので、AWSへの大規模移行を検討中の方はぜひチェックしてみて下さい。)

手元でOrganizations環境を用意できなかったため、コンソールのイメージについては以下のAWSブログをご参照ください。

AWS Application Migration Service Major Updates: Global View, Import and Export from Local Disk, and Additional Post-launch Actions | AWS News Blog

また、グローバルビューから実行可能な操作の一覧は以下のページから確認できます。

Using global view - Application Migration Service

Import/Export機能のローカルディスク対応

移行対象サーバーのインベントリ情報を管理するためのImport/Export機能がローカルディスクからのImport/Exportに対応しました。

従来この機能を利用するためにはS3との連携が必須でしたが、本アップデートでより使いやすくなりました。

[アップデート] Application Migration Service (AWS MGN)でインベントリ情報のインポート・エクスポートができるようになりました | DevelopersIO

新たなPredefined post-launch actionsの追加

新たなPredefined post-launch actionsが4つ追加されました。

Action名 概要
Configure Time Sync ATSSを使用してLinuxインスタンスの時間を設定する。
Validate disk spac 自由に使用できるディスクスペースを可視化する。
Verify HTTP/HTTPS response 事前に定義されたURLリストへのHTTP/HTTPS接続チェックを行う。
Enable Amazon Inspector Amazon Inspectorを有効化する。

Post-launch actionsのおさらい

Post-launch actionsはAWS MGNで移行したインスタンスに対する設定を自動で行なう機能です。Post-launch actions機能の発表時にはAWSがあらかじめ定義したPost-launch actionsしか存在しなかったものの、後にユーザーが自ら内容をカスタマイズできるPost-launch actionsが追加されました。

そのため、現在では両者を区別するように、それぞれPredefined post-launch actions・Custom post-launch actionsと呼ばれています。

現存するすべてのPredefined post-launch actionsとその詳細を以下のページから確認可能です。

Predefined post-launch actions - Application Migration Service

レプリケーションの開始・停止・一時停止・再開機能の追加

データレプリケーションのステータスを自由に変更できるようになりました。

Replication menu - Application Migration Service

操作とその内容については以下のとおりです。

操作 内容
開始(Start data replication) データレプリケーションが停止しているソースサーバーのデータレプリケーションを開始する。
停止(Stop data replication) 実行中のデータレプリケーションを停止する。データレプリケーションの停止によってMGNの課金が停止され、作成済みのスナップショットおよびEBSボリュームが削除される。
一時停止(Pause data replication) 実行中のデータレプリケーションを一時停止する。一時停止をした場合MGNの課金は継続し、作成済みのスナップショットおよびEBSボリュームも残る。
再開(Resume data replication) 一時停止状態のデータレプリケーションを再開する。この再開によって前回同期以降の差分が同期される。

Service architecture and network architecture overview - Application Migration Serviceより

従来、データレプリケーションを一時停止するためには、たとえばReplication Server側のセキュリティグループ・NACLの設定変更などによってソースサーバー(AWS Replication Agent)とReplication Server間の通信を塞ぐ必要がありました。 本アップデートにより、このような手間をかけずにAWS MGNのAPIによってデータレプリケーションを一時停止できるようになりました。

また、AWS Replication Agentインストール時にレプリケーションを開始しないためのオプション(—no-replication)が追加されています。

これまではレプリケーション開始のタイミングにあわせてAgentをインストールする必要がありました。このオプションの登場によって移行プロジェクトにおける業務やスケジュールの調整が楽になりそうです。

試してみた

$ sudo python3 aws-replication-installer-init.py \
> --region ap-northeast-1 \
> --aws-access-key-id AKIAXXXXXXXXXXXXXXXX \
> --aws-secret-access-key 7IpAkAmhvXXXXXXXXXXXXXXXXXXXXXXXX \
> --no-replication

上記のように—no-replicationオプションを付与しAgentのインストールを行うと……

このように、データレプリケーションのステータスが「停止済み」の状態でソースサーバーとして登録されます。

レプリケーションを開始するためにはソースサーバーのレプリケーションメニューから「データレプリケーションを開始」をクリックします。

少し待つとレプリケーションが正常に開始されていました。

終わりに

このブログがほんの少しでも世界を良くできれば嬉しいです。

AWS事業本部の西野 (@xiyegen) がお送りしました。