１つのvCenterで管理されるクラスタ間でHCXのBulk Migrationを実行する

HCXに関して、サイトAとサイトBにそれぞれvCenterが存在し、サイト毎にHCX ManagerをデプロイしてvCenterと連携させる構成がオンプレミス間で移行させる際の基本的な構成となります。そのため、１つのvCenterでサイトA、B両方を管理しているような環境では、HCXが構成できないと思っていたのですが、Version 4.5からシングルvCenter構成でのBulk Migrationがサポートされた旨の記載があったようです。

>HCX Bulk Migration for Single vCenter Server Topologies
　
>In HCX 4.5, HCX can be deployed within a single vCenter Server to enable the Bulk migration. This is useful for cluster-to-cluster migrations in environments where the vendor compatibility or other requirements for cluster-to-cluster vMotion cannot be satisfied.

こちらの方のBlogでも本構成が紹介されており、参考にさせていただきました。
https://chrisdooks.com/2023/02/20/hcx-bulk-migration-for-single-vcenter-server-topologies/

サイト毎にvCenterが存在する構成のデプロイしか経験したことがないので、このシングルvCenterでの構成イメージを掴むために実際にデプロイしてBulk Migrationができるところまで試してみました。Versionは4.10です。

# HCX Cloudのデプロイ
BroadcomダウンロードサイトからHCX CloudのOVAファイルをダウンロードし、移行先となるクラスタ上にデプロイします。

1枚1枚画面キャプチャを貼るのは省略しますが、おおまかな手順としては、OVAファイルからデプロイ時に指定したIPアドレス（or FQDN）の9443ポート宛にブラウザでアクセスし、初期設定を進めます。下記画像の入力項目＋ライセンスのアクティベーションを実施する必要があります。
![SnapCrab_NoName_2024-10-2_17-48-47_No-00.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3657075/0123de29-d06d-113b-9385-72e57c864144.png)
HCX Cloudは本番環境ではNSX Managerとの連携も必要となります。

# Network ProfileとCompute Profileを作成する
HCX Cloudの初期設定でvCenterと連携したことでHCXのvCenterプラグインが追加されます。vSphere ClientからHCXの設定が実施できるようになります。
HCX Manager（HCX CloudやHCX Connector）以外のHCXコンポーネントはNetwork ProfileとCompute Profileに従って、この後のService Mesh作成時に自動的にデプロイされます。
今回は管理用のネットワークとアップリンク用のネットワークを2つのクラスタ間で共通のものを用意しておりますので、下記のような形でアップリンク用とそれ以外としてNetwork Profileを2つ用意しました。

![SnapCrab_NoName_2024-10-2_18-9-37_No-00.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3657075/508fa85d-1002-2dfc-83cf-30c60d588a5a.png)

![SnapCrab_NoName_2024-10-2_18-9-50_No-00.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3657075/d3232158-bcf6-e221-0a9a-ef776bead8ee.png)

Compute Profileのほうでは、使用するサービス（今回はBulk Migration）やHCXコンポーネントをデプロイするクラスタやデータストア、使用するNetwork Profileの指定等を行います。
![SnapCrab_NoName_2024-10-2_18-11-35_No-00.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3657075/ea180bff-4336-4841-dfd2-3b476313094d.png)
Bulk MigrationとWAN Optimization（VM移行トラフィックの最適化）をサービスとして指定

![SnapCrab_NoName_2024-10-2_18-13-40_No-00.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3657075/1200ef88-1792-333e-928e-f03eab56178a.png)
選択したサービスに必要なコンポーネントをデプロイするクラスタとデータストアを指定

![SnapCrab_NoName_2024-10-2_18-13-58_No-00.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3657075/586eaaf8-2030-be7a-bd05-2c7eef85ebca.png)
使用するNetwork Profileの指定

![SnapCrab_NoName_2024-10-2_18-15-22_No-00.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3657075/b89549fa-f7f8-6fec-bc5d-84fb349ef352.png)
Compute Profileの作成が完了

これでHCX Cloud側（移行先側）での準備は完了です。

# HCX Connectorのデプロイ
HCX Connectorのデプロイに関してはHCX Cloudとほぼ同様です。ダウンロードサイトからOVAファイルをダウンロードし、移行元クラスタの方にデプロイします。ブラウザアクセス後の初期設定も下記画像の通り、ほぼ同様です。
![SnapCrab_NoName_2024-10-2_18-22-8_No-00.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3657075/278e3a82-8794-d300-9a98-fb6ea773275e.png)
HCX ConnectorについてはNSX Managerとの連携はオプションとなります。

# Network ProfileとCompute Profileを作成する
こちらも手順としてはHCX Cloud側と同様です。vSphere ClientのHCXプラグインがどうなるのかと思いましたが、HCX ConnectorをデプロイしvCenterと連携した時点でHCX Connector側のプラグインで上書きされ、vSphere ClientからはHCX Connector側の設定のみが行える状態になるようです。そのため、HCX Cloud側の設定を後から変更したい場合は、vSphere Clientからではなく、HCX Cloud自体にブラウザでアクセスしGUIから設定変更する形となります。

# Site PairとService Meshを作成する
ここまででHCX CloudとHCX Connectorの個別の準備が完了しましたら、Site Pairを作成し、その後Service Meshを作成することで、すべての準備が完了します。

設定自体はこのままHCX Connector側のGUIを利用するため、vSphere Clientのプラグインから行えます。

![SnapCrab_NoName_2024-10-2_18-40-17_No-00.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3657075/3ac93627-910b-8e27-859c-f901d17e103b.png)


![SnapCrab_NoName_2024-10-2_18-41-17_No-00.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3657075/7c1235ce-ac44-17f5-166c-6ae22127fd26.png)
Site Pairに関してはHCX Cloudの初期設定で入力したPublic Access URL宛にvCenterのクレデンシャルを入力して正しく認証されればペアリング完了となります。

最後にService Meshを作成します。
![SnapCrab_NoName_2024-10-2_18-42-21_No-00.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3657075/794ea976-27ca-31f8-90f1-40af49c8f7c6.png)
Service Mesh作成ではお互いのサイトで使用するCompute Profileを選択します。それぞれのサイトでCompute Profile作成時に選択したNetwork Profileを自動的に選んでくれます。その他WAN Optimizationアプライアンスのアップリンク帯域幅の設定などがあります。

Service Mesh作成が開始されるとお互いのサイト（今回の場合はクラスタ）でHCXコンポーネントのデプロイが開始されます。HCXのGUIからは下図のTasksタブで進行状況が確認できます。（なんらかのエラーで作成が失敗した場合などはこのTasksの画面からどこで失敗したのかが確認できます）
![SnapCrab_NoName_2024-10-2_18-50-6_No-00.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3657075/b9cbaeb7-06ca-d3e7-f82e-bc2baff30bb9.png)

![SnapCrab_NoName_2024-10-2_18-50-27_No-00.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3657075/a1935857-42ad-3a01-f9e6-a0a5c489a648.png)
Service Meshが作成完了した後、上図のようにAppliancesタブからデプロイされたアプライアンスの状況を確認し、Tunnel StatusがUPになっていれば、正しくアプライアンス同士が疎通しており、仮想マシン移行ができる状態となります。

下図のように2つのクラスタそれぞれでHCXアプライアンスをデプロイすることができました。
![SnapCrab_NoName_2024-10-2_18-51-21_No-00.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3657075/3fa13c60-a4bf-afc9-9817-290c33e99349.png)
（interconnect.. という名前の仮想マシンが自動デプロイされたものです。IXが仮想マシン移行用、WOはWAN Optimization用のアプライアンスとなります）

# 仮想マシンを移行してみる
それでは実際に仮想マシンをBulk Migrationで移行してみます。テスト用の仮想マシンを選択し、仮想マシンの切り替えスケジュールは即時とします。
![SnapCrab_NoName_2024-10-3_13-44-29_No-00.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3657075/7ffb19a7-a376-162e-8ab9-8763fd57873d.png)
![SnapCrab_NoName_2024-10-3_13-45-59_No-00.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3657075/da391dd8-7f16-92ba-267c-5cb96570c195.png)

今回参考にさせていただいた冒頭のBlogにも情報があったのですが、移行の際に移行先のクラスタやデータストア、仮想マシンフォルダを指定する際に、フォルダが移行元の仮想マシンが存在するフォルダと同一ですと、エラーとなり移行ができません。
![SnapCrab_NoName_2024-10-3_13-46-58_No-01.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3657075/e8a03cab-3c58-bc91-ef30-cd765ca6558b.png)
ここはvCenterが別れている環境であれば気にしなくても良いポイントでしたので、注意が必要です。

その後、特に問題なく移行完了できました。
![SnapCrab_NoName_2024-10-3_14-0-8_No-00.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3657075/e05b1766-0dc5-242f-0063-85887fcb90bb.png)

# おわりに
シングルvCenter環境のHCXデプロイ試してみましたが、普段の2サイトでvCenterが個別にある場合とほぼかわらなかったですね、、（そりゃそうか）
いつもの環境との差異というとvSphere Clientのプラグインが書き換わり、HCX Cloud側を後から設定変更する場合は直接HCX Cloudにブラウザでログインする、というのと仮想マシン移行の際のフォルダぐらいでしょうか。