Flow Virtual Networking(FVN)の Overlay サブネットを、Terraform の Nutanix Provider v2 で作成してみます。
今回の環境
以前の投稿で、すでに FVN を有効化してある Prism Central で下記のように VPC と Overlay サブネットを作成しました。
今回は、同様の VPC と Overlay サブネットを、Terraform の Nutanix Provider v2 で作成してみます。
ちなみに、以前に作成した VPC とサブネットは、これから同名リソースを作成するため、いったん下記のような手順で削除してあります。
1. Terraform 実行環境の準備
Terraform の実行環境は、下記の手順で用意しておきます。
2. tf ファイルの作成
Terraform の .tf ファイルを作成します。今回もファイルを多めに分割していますが、1つのファイルにすべて記載しても動作します。
今回のファイル構成
ディレクトリには、下記のようにファイルを作成します。
$ tree --charset=ascii ./ ./ |-- prism.auto.tfvars |-- provider.tf |-- subnet-overlay_v2.tf |-- variable.tf `-- vpc_v2.tf
前回の投稿の tf ファイル
以前の投稿 で作成したファイル一式も、そのままコピーして利用します。
- provider.tf
- variable.tf
- prism.auto.tfvars
cluster_v2.tf
前回と同様に、「nutanix_clusters_v2」データ ソースを使用して、Nutanix クラスタ「lab-nxce-10」の UUID を取得します。
vpc_v2.tf
「vpc-01」という名前の VPC を作成します。
subnet-overlay_v2.tf
VPC に、Overlay サブネットを作成します。
- L2-L3:Overlay サブネット「overlay-01」 を作成します。
- L4:vpc_reference には、作成した VPC「vpc-01」の ID を取得できる resource.nutanix_vpc_v2.vpc1.ext_id を指定しています。
- L10-L11:ネットワーク アドレスとして、10.0.1.0/24 を指定しています。
- L13:ゲートウェイのアドレスは、10.0.1.1 です。
3. terraform の実行
下記のように、「terraform plan」で事前確認しておきます。
$ terraform plan
そして、「terraform apply」を実行して、リソースを作成します。
$ terraform apply -auto-approve
「terraform state list」を実行すると、リソースが作成されたことが確認できます。
$ terraform state list nutanix_subnet_v2.overlay1 nutanix_vpc_v2.vpc1
Prism Central でも、リソース作成のタスクが実行されています。
VPC「vpc-01」が作成されています。
Overlay サブネット「overlay-01」が作成されています。
おまけ:リソースの削除
terraform apply で作成したリソースは、terraform destroy で削除できます。
$ terraform destroy -auto-approve
terraform destroy を実行すると、下記のように Prism Central でもリソース削除のタスクが実行されます。
つづく。