はじめに
皆様こんにちは、ネットワールドNutanix担当の米川と申します。
今回は、数あるNutanix製品群の一つである「Move」に関しての記事です。
このBlog はNutanix アドベントカレンダー2021 の12/10 分です。
「Move」とは…
Nuatnix社が提供している仮想マシンの移行ツールです。
移行元はESXiやAHVなどのオンプレミス環境はもちろんのこと、AWS、Azure等のクラウド環境なども該当します。(ただし、移行先はAHV、Nutanix搭載のESXi、AWSに限りますのでご注意ください)
移行元の選択肢が広い以外の利点としては
・Nutanixをご利用のユーザーは追加料金なしで利用可能
・VirtIOの自動インストール(AHVの場合)
・ダウンタイムが少ない移行方式
・移行元にデータが残る(何かあった際に移行元に切り戻しができる)
なども挙げられます。
Nutanixへの移行には現状最適なツールと言えるでしょう。
最新のバージョンではついにAzureからの移行もできるようになりました!!
というわけでさっそくAzureから弊社のオンプレミスNutanix環境へMove移行検証を行いました。
★移行元環境
Azure (東日本リージョン)
★移行先環境
HW:NX-1365-G5
AOS: 5.20.2(LTS)
Hypervisor: AHV(el7.nutanix.20201105.2229)
★移行ツール
Nutanix Move 4.2.1
Nutanix公式ドキュメントはこちらからご確認ください。
何かしらの参考にしていただけると幸いです。
(ところどころ青く塗りつぶしておりますが、ご了承ください)
step1 ~ Nutanix Move展開~
Moveを利用する際、移行元および移行先が何であろうとまずはMove仮想マシンの展開が必要となります。
基本的にMove仮想マシンは移行先の環境に展開することが推奨されております。
ESXi上に展開する場合はOVA、AHVの場合はQCOW2をNutanix公式サポートよりダウンロードします。
今回の記事ではAHV上にMove仮想マシンをデプロイするため、Prismのイメージ展開よりQCOW2をアップロードし、仮想マシン作成時にディスクとして追加します。
Move仮想マシン作成後、Moveを起動するとユーザー名とパスワードを要求されます。
ユーザー : admin
パスワード : nutanix/4u
その後、仮想マシンのIPアドレス情報もろもろ要求されますので。入力します。
Configration completed successfullyと表示されますと設定完了です。
WebブラウザよりMoveのIPアドレスへアクセスし、ログインします。
ユーザー : nutanix
パスワード : nutanix/4u
(パスワード入力後、新しいパスワードを設定します。)
Move仮想マシンの展開に関しては終了です。
続いてAzure側の作業に移ります。
step2 ~ AzureにてIDの取得~
Move上に移行元および移行先環境を登録する必要があります。
Azureを登録する際、
①サブスクリプション ID,②テナント ID,③クライアント ID,④クライアントシークレットの4つの情報が必要となります。
以下、簡単な用語解説となります
①サブスクリプション…Azureを利用する上での料金支払い単位となります。Azure上の仮想マシンやストレージ等のリソースは必ず1つのサブスクリプションに基づいています。
②テナント…Azureを利用している組織の単位となります。一つのテナントには複数のサブスクリプションが紐づけられます。
③クライアントID…アプリケーションIDとも呼ばれております。Azureリソースへのアクセスが必要なサービス用に発行するIDとなります。
④クライアントシークレット…サービスがAzureリソースにアクセスするために必要な証明書となります。クライアントIDとセットの関係です。
さっそくこれらを入手していきたいと思います。Azure Portal画面の説明に入ります。
アプリの登録>新規登録よりアプリケーションを登録します。
これによりクライアントIDおよびテナントIDを入手できます。
その後、証明書とシークレットより、クライアントシークレットを取得します。
その後、サブスクリプションに移動し、サブスクリプションIDを取得します。
この時のサブスクリプションは、移動したい仮想マシンが属しているものとなります。
(移動したい仮想マシンが複数のサブスクリプション上にあった場合、対象のサブスクリプションIDを全て入手してください)
Azureの登録に必要な情報は全て入手しました。
しかし、MoveがAzureのリソースに対するアクセス権を得るには、さらに以下の作業が必要となります。
step3 ~ Moveへのアクセス権付与~
サブスクリプションのアクセス制御>追加>カスタムロールの追加 より、新規にカスタムロールを作成します。
(注:この作業は自分に「所有者」もしくは「ユーザーアクセス管理者」のロールが割り当てられている場合のみ行えます。「共同作成者」は行えません。)
これはアクセス件に関するルールの基盤となっており、この基盤に割り当てた仮想マシン等のリソースに対してルールが適用されるという仕組みとなっております。
デフォルトの状態からJSONファイルに様々なAzureリソースのアクセス権を追加します。
追加するテキストの内容はこちらをご参照ください。
(上の画像のように、permission>action内にテキストを追加します)
ルールの基盤ができたので、こちらにアクセス制御>追加>ロール割り当ての追加より先ほど登録したアプリを割り当てます。
これにてAzure側の作業は終了となります。
step4 ~ サイト登録~
Moveの画面に戻ります。
左上の+Add Environmentより、環境の登録を行います。
これらの順番は逆でも大丈夫です。
①移行元
先ほどの画像となりますが、
Select Environment TypeをMicrosoft Azureに設定し、
入手した情報を入れていきます。
②移行先
Select Environment TypeをNutanix AOSに設定し、
クラスタ Virtual IPおよびPrismのユーザー、パスワードを入力します。
step5 ~ 仮想マシン移行~
ここまで来て、ようやくVMの移行を行うことができます。
Moveの+New Migration Planより、移行計画を立てます。
計画名を設定し、最初の画面に入ります。
こちらの画面で注目していただきたいのは、Locationの部分です。
Azureではリソースを作成する際、世界のどの地域で作成するか(リージョンといいます)を設定します。
Locationとはこのリージョンのことで、一度の計画においてリージョンを一つしか選べません。つまり、アメリカ西部で作成した仮想マシンと東日本で作成した仮想マシンは同じ計画上では移行できないということになります。
続いて2つ目の画面です。
今回はSYtestというWindows仮想マシンを移行します。
対象の仮想マシンを選択し、Nextをクリックします。
続いて3つ目の画面です。
SYtestが所属していたtest-yonekawa-vnetからNutanix上のネットワークへ移行となります。
4枚目の画面です。
Prepare ModeはほかにもManualとMixedがありますが、今回は説明を省略いたします。
Timezoneを東京に設定します。
これで計画の作成が完了いたしました。
スタートします。
最終的にカットオーバー準備完了と表示されますので、SYtestを選択し、Cutoverをクリックします。
Nutanix上でSYtestの移行が確認できましたので、移行完了となります。
その他
AzureからAHVに移行する上での注意事項があります。
①IPアドレス・MACアドレスは保存されない
ESXiからAHVなどでは移行時のオプションとして、IPアドレス・MACアドレスの保持が選択可能なのですが、AzureからAHVへの移行においてはサポートされておりません。
②仮想マシンは課金された状態のまま
Azure仮想マシンの停止状態は 「停止済み」 と 「停止済み(割り当て解除済み)」 の2種類があります。
どちらも仮想マシンは停止しているのですが、前者は課金が継続されており、後者は課金が停止しているという違いがあります。
Moveで AHVへ移行された後のAzure仮想マシンは 「停止済み」 になっており課金されている状態になりました。
(おそらく Moveが行っている Azure仮想マシンの停止は内部OSから行っているようです)
課金されないようにするには、移行後にAzure Portal上で手動で停止するか、もしくは仮想マシンを削除しましょう。
以上が注意事項となります。
さいごに
クラウド環境、オンプレミス環境間のマイグレーションはこれからホットな分野となる予感がしております。
今後とも調査を進めていきたいと思います。