Terraform で NetBox に情報を追加する
Terraform には NetBox 向けの Provider である netbox が存在します。 今回はこの Provider を使って、Terraform から NetBox を設定してみました。
Terraform には NetBox 向けの Provider である netbox が存在します。 今回はこの Provider を使って、Terraform から NetBox を設定してみました。
Terraform で CML 上にラボを作成する際、同時に「ノードにコンフィグを流し込む」ことが可能です。 Terraform からノードへ設定を行うには cml2_node (Resource) の configuration を使います。 更にこの流し込むコンフィグを外部ファイルから参照したい場合は Terraform の file Function を利用することで実現出来ます。
但し、file Function を使って外部ファイルを参照させても CML Provider のバグなのか、以下のエラーになってしまいました。
1 2 3 4 5 6 7 8 9 10 |
|
このエラーは「外部ファイルの改行コードを (CRLF では無く) LF に設定する」ことで回避することが出来ました。
Terraform には CML 用の Provider があります。 現時点で最新バージョンは 0.7.0 でした。 今回はごく基本的な利用方法を学ぶ為に以下を参照し、小規模なラボを作成してみました。
Terraform の thousandeyes 用 Provider をローカルでビルドしてみたので手順をメモしておきます。
以前に Ubuntu 24.04 へ asdf をインストールして言語 / ツールのバージョンを管理する というメモを書きました。 今回は asdf で Terraform をインストールする手順をメモしておきます。
Terraform を使い、AWS Marketplace から Cisco Catalyst 8000V Edge Software - BYOL
をデプロイする .tf ファイルのサンプルをメモしておきます。
Terraform で AWS を構成管理する際、VPC を新規作成した際に自動作成される Default Security Group に設定を行いたい場合があります。 そういったケースでは Resource: aws_default_security_group を利用することで Default Security Group を Terraform で簡単に扱えます。
Terraform を利用する際、一般的には HCL (HashiCorp Configuration Language) 形式で記載された .tf (Template File) を利用するケースをよく見かけます。 ですが、Terraform 自体は HCL = .tf ファイル以外にも JSON を扱うことも出来ます。 .tf ファイルを JSON 形式に変換するには HashiCorp 公式の hcldec を使う方法もありますが、より手軽に OSS の tmccombs/hcl2json を利用する方法もあります。 今回はこの hcl2json を利用し、HCL を JSON 形式に変換する方法をメモしておきます。 尚、今回は Ubuntu 22.04LTS 上でテストしました。
Terraform で検証用の AWS や GCP を設定する際、"検証用の設定" であることを分かりやすくする為、設定名に接頭辞 = Prefix を付与したい場合があります (私の場合!)。 設定毎に Prefix を付与しても良いのですが「Prefix を変更したい」といった場合に置換する手間が発生します。 こういった場合は Terraform の変数 = variable を使うことで「Prefix を変数として付与する」といった記述が可能になります。
ACI 用の Terraform Provider を利用すれば Terraform から ACI の構成管理 (設定/設定削除) することが出来ます。 ACI の場合も他 Provider と同様に設定を tfstate にインポートすることが可能です。 例えば Tenant-1
というテナントをインポートする場合、以下のような .tf ファイルを用意します。