コンテンツにスキップ

Terraform で NetBox に情報を追加する

Terraform には NetBox 向けの Provider である netbox が存在します。 今回はこの Provider を使って、Terraform から NetBox を設定してみました。

NetBox の API トークンを発行する

外部から NetBox を操作するには事前に API トークンを発行しておく必要があります。 NetBox へログインしたら右上のユーザ名をクリックし、表示されるメニューから API Tokens をクリックします。

file

Add a Token をクリックします。

file

発行予定の API トークンが表示されますので、Key の右側にある下記赤枠のボタンをクリックして API トークンをクリップボードにコピーします。 この API トークンは後の手順で利用するので、記録しておきます。 実際には まだ API トークンは発行されていない 為、Create をクリックして API トークンを発行します。

file

API トークンの発行が完了しました。

file

Terraform の実行

今回、Terraform 用の .tf ファイルは以下の内容としました。

terraform {
  required_providers {
    netbox = {
      source  = "e-breuninger/netbox"
      version = "~> 3.8.0"
    }
  }
}

provider "netbox" {
  server_url = "http://10.0.0.1:8000"
  api_token  = "0123456789abcdefghij0123456789abcdefghij"
}

resource "netbox_ip_address" "ipaddr1" {
  ip_address = "10.0.0.1/24"
  status     = "active"
}

Terraform を実行します。

terraform init
terraform apply -auto-approve

NetBox に設定が追加されました。

file