Nutanix Clusters on AWS環境を構築してみる

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

概要

 Nutanix Clusters on AWS環境を構築する機会に恵まれたのでその際の手順や関連情報を残します。

当エントリーでは、どのような手順で構築し、どのような形でAWSインフラが生成されるのかといった視点でご紹介します。

画面キャプチャーは執筆時点(2021/10)の内容となり、最新のものと異なる場合がある可能性がある点ご注意ください。

Nutanix Clusters on AWS (NCA)とは

 Nutanix Clusters on AWS (以後NCA)とは、Nutanix Clusterを AWSのインフラ上で稼働させるものです。 プライベートクラウドやAWS以外のパブリッククラウドの Nutanix Clusterを拡張する事で、マルチクラウド環境を実現出来ます。

ざっくり、Amazon Virtual Private Cloud (以後VPC) 内の EC2ベアメタルインスタンスに Nutanixのハイパーバイザーが導入され、Nutanix Clusterが構築させるイメージとなります。

詳細は Nutanix社公式をご確認ください。 www.nutanix.com

作業の前に

 NCAではベアメタルインスタンスを利用する為、環境によっては以下の上限に抵触する場合があるので事前に数値を確認し、必要な場合はNutanix指定値(後の手順で確認可能) まで引き上げます。

オンデマンドの場合

Running On-Demand All Standard (A, C, D, H, I, M, R, T, Z) instances

現時点での最小構成である z1d.metal * 1 でも vCPU 100 が必須となっており、
本番利用で想定される i3.metal * 3 の場合は vCPU 292 が必須となっていました。

実際の引き上げまでに時間を要す場合もある為、余裕を持って申請作業を行っておくと良いでしょう。

(参考) My Nutanix での Check Quotas画面 f:id:swx-tamura:20211020143745p:plain

My Nutanix の Organizations 設定

 My Nutanix内に組織情報を作成して、AWSアカウントと連携していきます。

1. Nutanix Cluster作成画面へ接続

My Nutanix サインインして Nutanix Clusterの [Launch]を押下

f:id:swx-tamura:20211019143928p:plain

2. Organization の作成

左ペイン Oraganizations -> Create Organization から組織名を入力し、[Create]を押下 (一般的に当環境を管理される社名とかになると思います)

f:id:swx-tamura:20211019150955p:plain

3. Cloud account の追加

作成した組織のハンバーガーマーク -> Cloud accounts を押下 f:id:swx-tamura:20211019151242p:plain

[Add Cloud Account]を押下

f:id:swx-tamura:20211019151424p:plain

3. 対象AWSアカウントの指定

以下画面が表示されるので、①でNCAを構築する対象のAWSアカウントIDを指定

f:id:swx-tamura:20211019143946p:plain


4. 対象AWSアカウントのAWSマネジメントコンソールへサインイン

同ブラウザの別タブ 等で、対象AWSアカウントIDのマネジメントコンソールへログインし、利用するリージョンに遷移しておきます。

f:id:swx-tamura:20211020144659p:plain

5. CloudFormation画面へと遷移

手順3.の画面にて戻り、②の[Open AWS Console] を押下

すると、サインインしているAWSアカウントのCloudFormation 画面へと遷移するので、そのまま機能のチェックボックスをつけてスタックを作成

(参考)当スタックでは必要なIAMロールが作成されます)

Nutanix-Clusters-High-Cloud-Stack-Prod

f:id:swx-tamura:20211019144508p:plain

6.認証およびアカウントの追加

手順3.の画面に戻り、③[Verify Connection] を押下して、問題なく認証が通れば [Add Account]を押下

上と共通なので画面は割愛

Nutanix Clusterの構築

 My Nutanixと連携が完了したAWSアカウントに対して、Nutanix Clusterを構築していきます。

7.Nutanix Cluster作成画面へ遷移

My Nutanix サインインして Nutanix Clusterの [Launch]を押下した画面にて 左ペインのCluster -> [Create Cluster ] を押下

f:id:swx-tamura:20211020093402p:plain

8.用途の選択

General Purpose が選択されている状態となっているのでそのまま [Next]を押下

f:id:swx-tamura:20211020093359p:plain

9.対象リージョンの指定

Region で 利用するものを選択し、[Next]を押下

f:id:swx-tamura:20211020093357p:plain

10.ネットワークの設定

Networkingの項目にて今回は、Create New VPCのラジオボタンを選択、適当なVPC CIDRを指定する形で 新規作成します。

画面の通り、既存VPCに構築するか新規でVPCを作成するかをラジオボタンで選択可能でこちらの設定は重要となってきます。

左画面にポップアップが出ていますが、新規VPCのCIDRを指定するだけでサブネットやらNAT Gatewayやら必要なリソースも同時に作成してくれます。

f:id:swx-tamura:20211020093350p:plain

(補足) 新規VPCを作成する場合

ネットワークCIDRの考え方ですが、必要なサブネットは以下の通りとなるため /24のサブネットを 3つ+αが収まればよいネットワーク設計となります。

  • /24のPublic サブネットが1つ (NGW,NLB配置用)
  • /24 のPrivateサブネットが1つ (NCA Management用 ベアメタルインスタンス起動)
  • /24 のPrivateサブネットが最低1つ + α (UVM用)

ここでの+αとは、UVM(EC2インスタンスのようなもの) を用途毎にサブネットを分けたいという場合にその分だけ発生すると理解ください。

(補足) 既存VPCを利用する場合

既存VPCを選択する場合は Private Subnetが最低1つ必要等の成約がある他、 インターネット経由で Prismと呼ばれる管理コンソール(AWSでいうマネジメントコンソールのようなもの)へのアクセスを許可する構成を作る場合はユーザー側で手動設定が必要となります。

基本的な考え方として、NCAとして構築されたリソースについては、AWSのAPIでは操作せずMy Nutanix画面経由でのオペレーションに限定すべきものとなっていますので、既存で運用されているVPCとは別に分けた方が無難な場合が多いと思われます。(既存環境や運用方針を考慮のうえ検討ください)

11. EC2インスタンス構成の指定

Host type に利用するベアメタルインスタンスと数と Redundancy Factor の数を指定します。

Redundancy Factorとはどこまでの障害を許容範囲とするかの値となり、デフォルトの2であれば、 3台のうち1台に障害が発生しても影響ない構成となります。

ここでは本番想定でHost typeは i3.metal * 3台としてますが、検証用途であれば z1.metal * 1台が最も安価な構成となるので必要に応じて変更します。

上と共通なので画面は割愛

12.Host Access through SSH

SSH用の既存のキーペアを利用するか新規で作成するかが選択出来るので好ましい方を指定し、[Next]を押下

上と共通なので画面は割愛

13.ソフトウェア設定

Nutanixのソフトウェア関連のバージョンを指定でき、Nutanix Files という機能を追加の選択ができます。

特別な要件、例えば既存環境とバージョンを合わせたいとか当該機能を使いたい場合に必要に応じて変更します。

f:id:swx-tamura:20211020160505p:plain

14.インターネットからの接続許可設定

Prism と Management Serviceへインターネット(IGW)経由で接続させたい場合にはこちらの設定を変更します。(デフォルトは両方Disabled)

(参考) Restricted では、Sourceの制限が可能となっており、デフォルトではNutanixで新規作成する VPC全体から許可がされます。

f:id:swx-tamura:20211020093347p:plain

(補足) Prismとインターネットから接続許可をした場合の経路について

Nutanixには、Prism というAWSでいうマネジメントコンソールのような環境を一元管理出来るものがあり、それはNCAのノード上で動作します。

インターネット経由でPrismへのアクセスを許可(Publicを選択)した場合、Publicサブネットにアクセス用のNetwork Load Balancer が1つ自動作成されます。

15.自動削除のスケジューリング

Advanced Settings を開くと以下画面のように削除スケジュールを指定する事が可能です。 指定したタイミングに構築されたNCA環境すべてが自動削除されます。

検証用途の場合は、高価なベアメタルインスタンスの削除し忘れ予防の為にも設定をしておくのが無難です。

f:id:swx-tamura:20211020093345p:plain

16.指定してきた内容の確認

設定してきた内容の最終確認画面へと遷移するので問題ない事を確認します。

f:id:swx-tamura:20211020093341p:plain

17.Quotasのチェック

Show details のプルダウンを開くと Quotasのチェックが実施出来るので、抵触していな事を確認します。

もし、抵触していた場合は構築処理が失敗しますので対象AWSアカウントにて必要な上限緩和の対応を実施します。

f:id:swx-tamura:20211020093335p:plain

18.Nutanix Clusterの作成開始

同意して、[Create]を押下

f:id:swx-tamura:20211020093338p:plain

19.Nutanix Cluster管理画面へと遷移

Nutanix Cluster作成中の画面へと遷移します。

構築には45-60min程度を要するので完了するまで待ちます。

f:id:swx-tamura:20211020093331p:plain

構築が完了すると右上の Statusが Active となります。

これでNutanix Clusterの構築作業は完了です。

f:id:swx-tamura:20211020164050p:plain

(参考) AWSマネジメントコンソールでの確認

AWSマネジメントコンソールからEC2インスタンス一覧を確認したところ、指定通り i3.metalで3台起動していました。 ネームタグにも誤ってAWS APIから停止したり終了しないような注意書きが埋め込まれています。

Nutanix Cluster - Node XXXXXXXXX - DO NOT STOP OR TERMINATE - STOPPING THIS INSTANCE CAN CAUSE DATA LOSS

f:id:swx-tamura:20211020164346p:plain

(参考) Prism画面へ接続

今回は、インターネット経由での接続を許可したので 自動的に作成されたNLB経由で接続が可能となっています。

画面右上の [Launch Prism Element] を押下すると

f:id:swx-tamura:20211020164100p:plain

Prismの認証画面へと遷移します

f:id:swx-tamura:20211020165733p:plain


これより先は、Nutanix Clusterの中の世界の話となり、既存Clusterとの連携や、UVMやコンテナを作成したり監視/バックアップ等の Nutanix設計/構築のフェーズへと進みます。

ちなみに、以下の Test Driveという試用サイトにて無料 で Prismにログインした先の機能を気軽に試すことが可能です。(一部権限の制限やら時間制限はあります)

個人の検証環境とかでは今回のようなベアメタルインスタンスの構築は難しい事が多いでしょうからすぐに無料で試せるのは大変ありがたいですね。

Test Drive

www.nutanix.com

Nutanix Cluster の削除

Nutanix Clusterを手動で削除するには以下を実行します。 Actions のプルダウンから [Terminate] を押下

f:id:swx-tamura:20211020165431p:plain

対象を確認し、再度 [Terminate] を押下

f:id:swx-tamura:20211020165451p:plain

確認画面が表示されるので、削除する cluster名称を入力し、[Terminate]を押下

f:id:swx-tamura:20211020165448p:plain

当作業で、構築した内容がすべて綺麗に削除されます。

ただし、初期設定のAWSアカウントとの連携の為にAWS Cloud Formationのスタックで作成したIAMロールに関しては残ったままとなりますので、不要な場合は削除してください。

まとめ

NCAを本番構成で構築してみました。

最小構成でも気軽に検証出来るようなインスタンスタイプではないのでどなたかの参考になり、NCA導入検討のきっかけになれば幸いです。

関連エントリー

blog.serverworks.co.jp