AWS Server Migration Serviceを使って移行してみた
投稿者:マルチクラウド担当
みなさん、こんにちは。NI+Cでは、主要パブリッククラウドサービス(AWS、Azure、GCP、ECL、IBM Cloud)の提案、設計、構築、移行、運用までを一貫して提供しております。
今回は今年注力しているAWSサービスの1つ、AWS SMSの検証を実施した中で得られた知見を手順と共に紹介したいと思います。
◆AWS Server Migration Service (SMS)とは?
AWS SMSとはAWSが提供している仮想マシン移行サービスです。
オンプレミス環境やIBM Cloudのベアメタル上で稼働するVMwareやHyper-V、またはAzure仮想マシンをAmazon EC2へ移行することができます。
◆AWS SMS検証環境
IBM Cloud上にベアメタルサーバでESXiを用意し、VMware環境からの移行を実施します。
SMS Connectorに必要なvCenterサーバとSMS ConnectorをESXi上にデプロイし、SMSの検証を実施しました。
本記事はVMware環境からの検証結果を元に作成しております。
そのためHyper-VやAzure仮想マシンを移行する場合には、本記事の内容とは異なる部分があるかもしれませんのでご了承ください。
◆AWS SMSを利用するメリット
クラウド環境へ移行する際に現在稼働しているサーバをそのままの状態で、手をかけずに移行できればという要望を持っている方は多いと思います。
AWS SMSでは以下のようなメリットがあり、そのような要望を満たしてくれる移行サービスとなっています。
・エージェントレス型
移行対象サーバへ追加でモジュールをインストールする必要がありません。
代わりに移行用のツールとしてAWSが提供しているSMS Connectorというサーバを移行元の仮想基盤で稼働させる必要があります。
・AWS SMS利用は無料
AWS SMSの利用については無料となっておりますのでAWSへ仮想マシンを移行する際に費用を検討する必要がありません。
ぜひ活用したいサービスですね!
・ダウンタイムの最小化
増分レプリケーションが可能なので、切り替えをする際のダウンタイムを最小限に抑えることができます。
・同時移行が可能
50台の仮想マシンを同時に移行することが可能です。
ただし複数台を同時に移行する際にはネットワーク帯域や仮想基盤のパフォーマンス低下が懸念されます。
そのため本番移行前にAWS SMSによる移行検証を行い、ご使用の環境では何台まで同時移行が可能か確認されるのがよいでしょう。
◆AWS SMS利用時の事前確認項目
上記のようなメリットがありますが、サーバ移行をスムーズに進めるためにもAWSのユーザーガイドを事前にしっかり確認しましょう。
また今回の移行検証前に弊社が確認した項目をピックアップしてご紹介しますので、合わせてご確認ください。
・SMS Connectorを稼働させるリソースが必要
移行用ツールであるSMS Connectorをご使用の仮想基盤で稼働させますので、その分のリソースを準備する必要があります。
VMware環境ではご使用の仮想基盤に以下リソースが必要となります。
- 8 GiB 以上の RAM
– 20 GiB (シンプロビジョニング) または 250 GiB (シックプロビジョニング) 以上の使用可能なディスクストレージ
・AWS SMS利用以外の料金が発生
AWS SMSの利用については無料ですが、移行した仮想マシンの一時的な格納先としてS3を使用するためその分の料金が発生します。
S3は安価なためそれほど高額にはならないと思いますが、移行するサーバの数・容量によっては高額になる可能性もありますので注意が必要です。
・サーバライセンスが発生する場合あり
移行元のサーバOSによってはAWSから提供されるライセンスに置き換えられず、ライセンス持ち込み(BYOL)が必要となる場合があります。
こちらにサーバライセンスについて情報が記載されています。
サーバライセンスの他にも移行可能なOSやファイルシステム、仮想基盤のバージョンなどの情報がユーザーガイドのAWS SMS要件についてに記載されていますので、サーバ移行前にしっかり確認しましょう。
また移行対象サーバが仮想基盤で稼働していない場合にはAWS Application Migration Serviceでの移行が可能か検討頂くのがよいかと思います。
◆AWS SMS移行手順
ここからは実際の手順について記載していきます。
1. IAMユーザー・IAMロールの作成
SMS Connectorで使用するIAMユーザーとIAMロールの2つを作成します。
・IAMユーザーの作成
SMS Connectorを利用するにあたって、AWSで必要なユーザーとロールを作成します。
[IAM]-[ユーザー]-[ユーザーの作成]- ユーザー名を設定し、プログラムによるアクセスに☑を入れる[次のステップ:アクセス権限]-[ServerMigrationConnecter]をアタッチし[次のステップ:タグ] – [次のステップ:確認 ] – [ユーザの作成]と進みユーザを作成します。
作成したユーザのアクセスキーとシークレットアクセスキーは取得しておきます、後のSMS Connectorの設定で使用します。
・ IAMロールの作成
[IAM]-[ロール]-[ロールの作成]-[AWSサービス]-[SMS]を選択-[次のステップ:アクセス権限]- AWSServiceRoleForSMSが設定されていることを確認し[次のステップ:タグ]-[次のステップ:確認]-[ロールの作成]と進みロールを作成します。
2. AWS SMSコネクターのダウンロード
仮想基盤上で導入するSMS Connectorをダウンロードします。
[Server Mingration Service]-[今すぐ始める]- vCenter環境の場合[OVAのダウンロード]
3. OVFテンプレートを起動
ダウンロードしたSMS ConnectorのOVFテンプレートをvCenterに移動し仮想マシンを作成します。
OVFテンプレートのインポートが完了したら、電源をONにして起動します。
4. SMS Connectorの設定
作成したSMS Connectorにアクセスして必要な設定を行います。
SMS Connectorに固定IPアドレスを割り当てる場合は以下手順を実行します。
SMS Connectorにコンソールからアクセスし、ec2-userとしてログインします。
sudo setup.rb
$ sudo setup.rb Thanks for downloading the Server Migration Connector Choose one of the following options: |
[2. Set up a static IP]を選択します。
Current network configuration: IP: 0.0.0.0 Netmask: 255.0.0.0 Gateway: DNS server 1: DNS server 2: DNS suffix search list: Web proxy: not configured
Reconfigure your network: |
IPアドレス、サブネットマスク、ゲートウェイアドレス、DNSを設定します。
Setting up static IP: 1.Enter IP address: xxx.xxx.xxx.xxx 2.Enter netmask: xxx.xxx.xxx.xxx 3.Enter gateway: xxx.xxx.xxx.xxx 4.Enter DNS 1: xxx.xxx.xxx.xxx 5.Enter DNS 2: xxx.xxx.xxx.xxx
Static IP address configured. |
SMS ConnectorにIPアドレスが設定されたらブラウザでSMS Connectorにアクセスします。
AWS Server Migration Serviceの画面がでたら[今すぐ始める]をクリックします。
[ステップ1:ライセンス契約]-[AWSライセンス契約を呼んで同意します]に☑を入れ、[次へ]をクリックします。
[ステップ2:パスワードの作成]にてパスワードを設定し、[次へ]をクリックします。
[ステップ3:ネットワーク情報]を確認し、[次へ]をクリックします。設定についてはコンソール画面から実施済みです。
[ステップ4:ログのアップロードとアップグレード]にて[ログの自動アップロード]と[AWS Server Migration Service 自動アップグレード]に☑を入れ、[次へ]をクリックします。
[ステップ5:Server Migration Service]にて[AWSリージョン]を選択し、「IAMユーザー・IAMロールの作成」で作成したIAMユーザーの[アクセスキー]と[シークレットキー]を入力し、 [次へ]をクリックします。
[vCenterサービスアカウント]にて仮想環境の[vCenterホストネーム][ユーザーネーム][パスワード]を入力します。
今回の検証ではvCenterユーザはAdministratorを使用しましたが、SMS Connectorで使用する権限のみを持った専用ユーザを作成することがセキュリティ的には望ましいです。
その際はVMware 環境用にコネクタをセットアップするにはの「4.vCenter で以下の権限を持つロールを作成します」を参照してvCenterサーバにユーザ作成をしてください。
入力が完了すると次のような画面が表示されます。
5. AWSコンソールでServer Migrationの確認
SMS Connectorで必要な設定が完了すると、AWSコンソールでもServer Migrationの確認ができます。
[Server Migration Service]-[コネクター]-[サーバーカタログのインポート]を実行することで、仮想基盤上の仮想マシン一覧が[サーバー]に表示されます。
6. レプリケーションジョブの実行
AWSコンソールからサーバー移行ジョブの作成を実行します。
移行したい仮想マシンにチェックを入れ、[レプリケーションジョブの作成]をクリックします。
[サーバ固有の設定を指定画面]でライセンスタイプについて選択します。こちらにサーバライセンスについて情報が記載されています。
次に[レプリケーションジョブ設定を指定]します。
画像では検証ではLinuxサーバーを17時間ごとにAWS環境へ複製する設定(増分レプリケーション)としました。
最後に[作成]をクリックしてレプリケーションジョブを作成し、[レプリケーションテーブル]へ移動すると、ジョブが開始されています。
仮想基盤上ではOVFテンプレートのエクスポートが実行されていることが確認できます。
AWSへの移行にはこのOVFテンプレートや、複数回実行時はスナップショットデータがSMS ConnectorよりAWSへ転送されるようです。
レプリケーションジョブによってエクスポートされたスナップショットはS3へ一時的に保存されます。
S3内のスナップショットはレプリケーションジョブによってAMIが作成されることで自動的に削除されます。
7. ジョブ完了の確認とAMI作成の確認
レプリケーションジョブが完了するか移行対象の仮想マシンがAMIとしてAWS環境に登録されます。
AMIからEC2を作成しAWS環境へのサーバ移行は完了となります。EC2を稼働させアプリケーションの動作確認を行ってください。
今回の検証では移行元のサーバにミドルウェアとしてDb2とWebSphere Application Serverを導入していましたが、EC2への移行後も正常に動作することを確認しています。
8. 移行の所要時間
今回の検証で異なるサイズのサーバーを用いてAMIが作成されるまでの時間を検証しました。
結果は下記の表のようになりました。
OSサイズ | 1回目 S3転送時間 | 2回目 合計時間 | メモ | ||||
4分 | 11分 | 18分 | 1分 | 8分 | |||
3分 | 12分 | 18分 | – | – | – | 1回のみの実施 | |
28.0GB | 25分 | 29分 | 57分 | – | – | – | 1回のみの実施 |
移行に要する時間はサイズに比例して増加することが分かりました。
複数回移行する場合、2回目以降は差分のみが移行されるため、移行時間は初回より短縮されることが分かりました。
◆まとめ
AWS SMSを使用してのサーバ移行について記載しましたが手順の流れや確認ポイントなどは参考になりましたでしょうか。
VMware環境からAWS SMSを使用しての移行については手軽に行うことができますので、ぜひご活用ください。
弊社では、オンプレミスや他社クラウドからAWS/Azureに簡単に移行したいというお客様向けに、以下の移行メニューを用意しております。
興味のある方は是非、本ページ下段の「マルチクラウドに関するお問い合わせはこちら」からお問い合わせください。
*本ブログに記載の会社名、商品名、サービス名は各社の商標または登録商標です