equinix_network_device (Ressource)
La ressource equinix_network_device permet de créer et de gérer des dispositifs de réseau virtuel Equinix Network Edge.
Les équipements réseau virtuels Network Edge peuvent être créés selon deux modes :
- managed - (par défaut) Lorsque Equinix gère la connectivité et les services dans le dispositif et que le client obtient un accès limité au dispositif.
- **** auto-configuré - Lorsque le client fournit et gère ses propres Managed Solutions dans l'appareil avec un accès moins restreint. Certains types d'appareils ne sont proposés que dans ce mode.
Outre les modes de gestion, deux modes de licence logicielle sont disponibles :
- abonnement - Equinix fournit la licence du logiciel, y compris l'assistance de bout en bout, et facture le service respectivement.
- BYOL - [bring your own license] Lorsque le client apporte sa propre licence logicielle, déjà acquise. Il n'y a pas de frais associés à cette licence. C'est le seul mode de licence pour les appareils
self-configured.
Exemple d'utilisation
# Create pair of redundant, managed CSR1000V routers with license subscription
# in two different metro locations
data "equinix_network_account" "dc" {
metro_code = "DC"
}
data "equinix_network_account" "sv" {
metro_code = "SV"
}
resource "equinix_network_device" "csr1000v-ha" {
name = "tf-csr1000v-p"
throughput = 500
throughput_unit = "Mbps"
metro_code = data.equinix_network_account.dc.metro_code
type_code = "CSR1000V"
self_managed = false
connectivity = "INTERNET-ACCESS"
byol = false
package_code = "SEC"
notifications = ["john@equinix.com", "marry@equinix.com", "fred@equinix.com"]
hostname = "csr1000v-p"
term_length = 12
account_number = data.equinix_network_account.dc.number
version = "16.09.05"
core_count = 2
secondary_device {
name = "tf-csr1000v-s"
metro_code = data.equinix_network_account.sv.metro_code
hostname = "csr1000v-s"
notifications = ["john@equinix.com", "marry@equinix.com"]
account_number = data.equinix_network_account.sv.number
}
}
# Create self configured PANW cluster with BYOL license
data "equinix_network_account" "sv" {
metro_code = "SV"
}
resource "equinix_network_device" "panw-cluster" {
name = "tf-panw"
metro_code = data.equinix_network_account.sv.metro_code
type_code = "PA-VM"
self_managed = true
byol = true
package_code = "VM100"
notifications = ["john@equinix.com", "marry@equinix.com", "fred@equinix.com"]
term_length = 12
account_number = data.equinix_network_account.sv.number
version = "10.1.3"
interface_count = 10
core_count = 2
ssh_key {
username = "test"
key_name = "test-key"
}
acl_template_id = "0bff6e05-f0e7-44cd-804a-25b92b835f8b"
cluster_details {
cluster_name = "tf-panw-cluster"
node0 {
vendor_configuration {
hostname = "panw-node0"
}
license_token = "licenseToken"
}
node1 {
vendor_configuration {
hostname = "panw-node1"
}
license_token = "licenseToken"
}
}
}
# Create self configured single Aviatrix device with cloud init file
data "equinix_network_account" "sv" {
metro_code = "SV"
}
variable "filepath" { default = "cloudInitFileFolder/TF-AVX-cloud-init-file.txt" }
resource "equinix_network_file" "aviatrix-cloudinit-file" {
file_name = "TF-AVX-cloud-init-file.txt"
content = file("${path.module}/${var.filepath}")
metro_code = data.equinix_network_account.sv.metro_code
device_type_code = "AVIATRIX_EDGE_10"
process_type = "CLOUD_INIT"
self_managed = true
byol = true
}
resource "equinix_network_device" "aviatrix-single" {
name = "tf-aviatrix"
metro_code = data.equinix_network_account.sv.metro_code
type_code = "AVIATRIX_EDGE_10"
self_managed = true
byol = true
package_code = "STD"
notifications = ["john@equinix.com"]
term_length = 12
account_number = data.equinix_network_account.sv.number
version = "6.9"
core_count = 2
cloud_init_file_id = equinix_network_file.aviatrix-cloudinit-file.uuid
acl_template_id = "c06150ea-b604-4ad1-832a-d63936e9b938"
}
# Create self configured single Catalyst 8000V (Autonomous Mode) router with license token
data "equinix_network_account" "sv" {
name = "account-name"
metro_code = "SV"
}
resource "equinix_network_device" "c8kv-single" {
name = "tf-c8kv"
metro_code = data.equinix_network_account.sv.metro_code
type_code = "C8000V"
self_managed = true
byol = true
package_code = "network-essentials"
notifications = ["test@equinix.com"]
hostname = "C8KV"
account_number = data.equinix_network_account.sv.number
version = "17.06.01a"
core_count = 2
term_length = 12
license_token = "valid-license-token"
additional_bandwidth = 5
ssh_key {
username = "test-username"
key_name = "valid-key-name"
}
acl_template_id = "3e548c02-9164-4197-aa23-05b1f644883c"
}
# Create self configured single VSRX device with BYOL License
data "equinix_network_account" "sv" {
name = "account-name"
metro_code = "SV"
}
resource "equinix_network_device" "vsrx-single" {
name = "tf-c8kv-sdwan"
metro_code = data.equinix_network_account.sv.metro_code
type_code = "VSRX"
self_managed = true
byol = true
package_code = "STD"
notifications = ["test@equinix.com"]
hostname = "VSRX"
account_number = data.equinix_network_account.sv.number
version = "23.2R1.13"
core_count = 2
term_length = 12
additional_bandwidth = 5
project_id = "a86d7112-d740-4758-9c9c-31e66373746b"
diverse_device_id = "ed7891bd-15b4-4f72-ac56-d96cfdacddcc"
ssh_key {
username = "test-username"
key_name = "valid-key-name"
}
acl_template_id = "3e548c02-9164-4197-aa23-05b1f644883c"
}
# Create self configured redundant Arista router with DSA key
data "equinix_network_account" "sv" {
name = "account-name"
metro_code = "SV"
}
resource "equinix_network_ssh_key" "test-public-key" {
name = "key-name"
public_key = "ssh-dss key-value"
type = "DSA"
}
resource "equinix_network_device" "arista-ha" {
name = "tf-arista-p"
metro_code = data.equinix_network_account.sv.metro_code
type_code = "ARISTA-ROUTER"
self_managed = true
connectivity = "PRIVATE"
byol = true
package_code = "CloudEOS"
notifications = ["test@equinix.com"]
hostname = "arista-p"
account_number = data.equinix_network_account.sv.number
version = "4.29.0"
core_count = 4
term_length = 12
additional_bandwidth = 5
ssh_key {
username = "test-username"
key_name = equinix_network_ssh_key.test-public-key.name
}
acl_template_id = "c637a17b-7a6a-4486-924b-30e6c36904b0"
secondary_device {
name = "tf-arista-s"
metro_code = data.equinix_network_account.sv.metro_code
hostname = "arista-s"
notifications = ["test@eq.com"]
account_number = data.equinix_network_account.sv.number
acl_template_id = "fee5e2c0-6198-4ce6-9cbd-bbe6c1dbe138"
}
}
# Create self configured redundant BlueCat DNS and DHCP Server
data "equinix_network_account" "sv" {
name = "account-name"
metro_code = "SV"
}
resource "equinix_network_ssh_key" "test-public-key" {
name = "key-name"
public_key = "ssh-dss key-value"
type = "DSA"
}
resource "equinix_network_device" "bluecat-bdds-ha" {
name = "tf-bluecat-bdds-p"
metro_code = data.equinix_network_account.sv.metro_code
type_code = "BLUECAT"
self_managed = true
connectivity = "PRIVATE"
byol = true
package_code = "STD"
notifications = ["test@equinix.com"]
account_number = data.equinix_network_account.sv.number
version = "9.6.0"
core_count = 2
term_length = 12
vendor_configuration = {
"hostname" = "test"
"privateAddress" : "x.x.x.x"
"privateCidrMask" : "24"
"privateGateway" : "x.x.x.x"
"licenseKey" : "xxxxx-xxxxx-xxxxx-xxxxx-xxxxx"
"licenseId" : "xxxxxxxxxxxxxxx"
}
ssh_key {
username = "test-username"
key_name = equinix_network_ssh_key.test-public-key.name
}
secondary_device {
name = "tf-bluecat-bdds-s"
metro_code = data.equinix_network_account.sv.metro_code
notifications = ["test@eq.com"]
account_number = data.equinix_network_account.sv.number
vendor_configuration = {
"hostname" = "test"
"privateAddress" : "x.x.x.x"
"privateCidrMask" : "24"
"privateGateway" : "x.x.x.x"
"licenseKey" : "xxxxx-xxxxx-xxxxx-xxxxx-xxxxx"
"licenseId" : "xxxxxxxxxxxxxxx"
}
}
}
# Create self configured redundant BlueCat Edge Service Point
data "equinix_network_account" "sv" {
name = "account-name"
metro_code = "SV"
}
resource "equinix_network_file" "bluecat-edge-service-point-cloudinit-primary-file" {
file_name = "TF-BLUECAT-ESP-cloud-init-file.txt"
content = file("${path.module}/${var.filepath}")
metro_code = data.equinix_network_account.sv.metro_code
device_type_code = "BLUECAT-EDGE-SERVICE-POINT"
process_type = "CLOUD_INIT"
self_managed = true
byol = true
}
resource "equinix_network_file" "bluecat-edge-service-point-cloudinit-secondary-file" {
file_name = "TF-BLUECAT-ESP-cloud-init-file.txt"
content = file("${path.module}/${var.filepath}")
metro_code = data.equinix_network_account.sv.metro_code
device_type_code = "BLUECAT-EDGE-SERVICE-POINT"
process_type = "CLOUD_INIT"
self_managed = true
byol = true
}
resource "equinix_network_device" "bluecat-edge-service-point-ha" {
name = "tf-bluecat-edge-service-point-p"
metro_code = data.equinix_network_account.sv.metro_code
type_code = "BLUECAT-EDGE-SERVICE-POINT"
self_managed = true
connectivity = "PRIVATE"
byol = true
package_code = "STD"
notifications = ["test@equinix.com"]
account_number = data.equinix_network_account.sv.number
cloud_init_file_id = equinix_network_file.bluecat-edge-service-point-cloudinit-primary-file.uuid
version = "4.6.3"
core_count = 4
term_length = 12
secondary_device {
name = "tf-bluecat-edge-service-point-s"
metro_code = data.equinix_network_account.sv.metro_code
notifications = ["test@eq.com"]
account_number = data.equinix_network_account.sv.number
cloud_init_file_id = equinix_network_file.bluecat-edge-service-point-cloudinit-secondary-file.uuid
}
}
# Create PA-VM firewall cluster with Panorama Server Integration
# with Panorama Server IP and Panorama Auth Key in vendor Configuration
data "equinix_network_account" "sv" {
metro_code = "SV"
}
resource "equinix_network_device" "panw-cluster" {
name = "tf-panw"
metro_code = data.equinix_network_account.sv.metro_code
type_code = "PA-VM"
self_managed = true
byol = true
package_code = "VM100"
notifications = ["john@equinix.com", "marry@equinix.com", "fred@equinix.com"]
term_length = 12
account_number = data.equinix_network_account.sv.number
version = "11.1.3"
interface_count = 10
core_count = 2
ssh_key {
username = "test"
key_name = "test-key"
}
acl_template_id = "0bff6e05-f0e7-44cd-804a-25b92b835f8b"
cluster_details {
cluster_name = "tf-panw-cluster"
node0 {
vendor_configuration {
hostname = "panw-node0"
panorama_ip_address = "x.x.x.x"
panorama_auth_key = "xxxxxxxxxxx"
}
license_token = "licenseToken"
}
node1 {
vendor_configuration {
hostname = "panw-node1"
panorama_ip_address = "x.x.x.x"
panorama_auth_key = "xxxxxxxxxxx"
}
license_token = "licenseToken"
}
}
}
# Create C8000V BYOL device with bandwidth tier information
data "equinix_network_account" "sv" {
metro_code = "SV"
}
resource "equinix_network_device" "c8000v-byol-tier" {
name = "tf-c8000v-byol"
metro_code = data.equinix_network_account.sv.metro_code
type_code = "C8000V"
self_managed = true
byol = true
package_code = "network-essentials"
notifications = ["john@equinix.com", "marry@equinix.com", "fred@equinix.com"]
term_length = 12
account_number = data.equinix_network_account.sv.number
version = "17.11.01a"
interface_count = 10
core_count = 2
tier = 1
ssh_key {
username = "test"
key_name = "test-key"
}
acl_template_id = "0bff6e05-f0e7-44cd-804a-25b92b835f8b"
}
# Create C8000V BYOL device with numeric bandwidth throughput information
data "equinix_network_account" "sv" {
metro_code = "SV"
}
resource "equinix_network_device" "c8000v-byol-throughput" {
name = "tf-c8000v-byol"
metro_code = data.equinix_network_account.sv.metro_code
type_code = "C8000V"
self_managed = true
byol = true
package_code = "network-essentials"
notifications = ["john@equinix.com", "marry@equinix.com", "fred@equinix.com"]
term_length = 12
account_number = data.equinix_network_account.sv.number
version = "17.11.01a"
interface_count = 10
core_count = 2
throughput = "100"
throughput_unit = "Mbps"
ssh_key {
username = "test"
key_name = "test-key"
}
acl_template_id = "0bff6e05-f0e7-44cd-804a-25b92b835f8b"
}
# Create self configured single Aviatrix Transit Edge device with cloud init file
data "equinix_network_account" "sv" {
metro_code = "SV"
}
variable "filepath" { default = "cloudInitFileFolder/TF-AVX-cloud-init-file.txt" }
resource "equinix_network_file" "aviatrix-cloudinit-file" {
file_name = "TF-AVX-cloud-init-file.txt"
content = file("${path.module}/${var.filepath}")
metro_code = data.equinix_network_account.sv.metro_code
device_type_code = "AVIATRIX_TRANSIT_EDGE"
process_type = "CLOUD_INIT"
self_managed = true
byol = true
}
resource "equinix_network_device" "aviatrix-transit-edge-single" {
name = "tf-aviatrix"
metro_code = data.equinix_network_account.sv.metro_code
type_code = "AVIATRIX_TRANSIT_EDGE"
self_managed = true
byol = true
package_code = "STD"
notifications = ["john@equinix.com"]
term_length = 12
account_number = data.equinix_network_account.sv.number
version = "7.2.a"
core_count = 2
cloud_init_file_id = equinix_network_file.aviatrix-cloudinit-file.uuid
acl_template_id = "c06150ea-b604-4ad1-832a-d63936e9b938"
}
# Create ZSCALER APPC device
data "equinix_network_account" "sv" {
metro_code = "SV"
}
resource "equinix_network_device" "zscaler-appc-single" {
name = "tf-zscaler-appc"
project_id = "XXXXXX"
metro_code = data.equinix_network_account.sv.metro_code
type_code = "ZSCALER-APPC"
self_managed = true
byol = true
connectivity = "PRIVATE"
package_code = "STD"
notifications = ["john@equinix.com", "marry@equinix.com", "fred@equinix.com"]
term_length = 12
account_number = data.equinix_network_account.sv.number
version = "23.395.1"
interface_count = 1
core_count = 4
vendor_configuration = {"provisioningKey" = "XXXXXXXXXX", "hostname" = "XXXX"}
ssh_key {
username = "test"
key_name = "test-key"
}
}
# Create ZSCALER APPC device
data "equinix_network_account" "sv" {
metro_code = "SV"
}
resource "equinix_network_device" "zscaler-pse-single" {
name = "tf-zscaler-pse"
project_id = "XXXXXX"
metro_code = data.equinix_network_account.sv.metro_code
type_code = "ZSCALER-PSE"
self_managed = true
byol = true
connectivity = "PRIVATE"
package_code = "STD"
notifications = ["john@equinix.com", "marry@equinix.com", "fred@equinix.com"]
term_length = 12
account_number = data.equinix_network_account.sv.number
version = "23.395.1"
interface_count = 1
core_count = 4
vendor_configuration = {"provisioningKey" = "XXXXXXXXXX", "hostname" = "XXXX"}
ssh_key {
username = "test"
key_name = "test-key"
}
}
# Create C8000V BYOL device with bandwidth tier information
data "equinix_network_account" "sv" {
metro_code = "SV"
}
resource "equinix_network_device" "c8000v-byol-withtout-default-password" {
name = "tf-c8000v-byol"
metro_code = data.equinix_network_account.sv.metro_code
type_code = "C8000V"
self_managed = true
byol = true
generate_default_password = false
package_code = "network-essentials"
notifications = ["john@equinix.com", "marry@equinix.com", "fred@equinix.com"]
term_length = 12
account_number = data.equinix_network_account.sv.number
version = "17.11.01a"
interface_count = 10
core_count = 2
tier = 1
ssh_key {
username = "test"
key_name = "test-key"
}
acl_template_id = "0bff6e05-f0e7-44cd-804a-25b92b835f8b"
}
# Create Checkpoint single device
data "equinix_network_account" "sv" {
metro_code = "SV"
}
resource "equinix_network_device" "CHECKPOINT-SV" {
name = "TF_CHECKPOINT"
project_id = "XXXX"
metro_code = data.equinix_network_account.sv.metro_code
type_code = "CGUARD"
self_managed = true
byol = true
package_code = "STD"
notifications = ["test@eq.com"]
account_number = data.equinix_network_account.sv.number
version = "R81.20"
hostname = "test"
core_count = 2
term_length = 1
additional_bandwidth = 5
acl_template_id = "XXXXXXX"
ssh_key {
username = "XXXXX"
key_name = "XXXXXX"
}
}
# Create Cisco FTD Cluster with Connectivity- PRIVATE
data "equinix_network_account" "sv" {
metro_code = "SV"
}
resource "equinix_network_device" "Cisco-FTD-SV" {
name = "TF_Cisco_NGFW_CLUSTER_ZNPD"
project_id = "XXXXXXX"
metro_code = data.equinix_network_account.sv.metro_code
type_code = "Cisco_NGFW"
self_managed = true
connectivity = "PRIVATE"
byol = true
package_code = "FTDv10"
notifications = ["test@eq.com"]
account_number = data.equinix_network_account.sv.number
version = "7.0.4-55"
hostname = "test"
core_count = 4
term_length = 1
interface_count = 10
cluster_details {
cluster_name = "tf-ftd-cluster"
node0 {
vendor_configuration {
hostname = "test"
activation_key = "XXXXX"
controller1 = "X.X.X.X"
management_type = "FMC"
}
}
node1 {
vendor_configuration {
hostname = "test"
management_type = "FMC"
}
}
}
}
# Create Fortinet SDWAN single device
data "equinix_network_account" "sv" {
metro_code = "SV"
}
resource "equinix_network_device" "FTNT-SDWAN-SV" {
name = "TF_VERSA-SDWAN"
project_id = "XXXXXXXXX"
metro_code = data.equinix_network_account.sv.metro_code
type_code = "VERSA_SDWAN"
self_managed = true
byol = true
package_code = "FLEX_VNF_2"
notifications = ["test@eq.com"]
account_number = data.equinix_network_account.sv.number
version = "21.2.3"
core_count = 2
term_length = 1
additional_bandwidth = 50
acl_template_id = "XXXXXXXXX"
vendor_configuration = {
controller1 = "X.X.X.X"
controller2 = "X.X.X.X"
localId = "test@test.com"
remoteId = "test@test.com"
serialNumber = "4"
}
secondary_device {
name = "Praveena_TF_VERSA"
metro_code = data.equinix_network_account.sv.metro_code
account_number = data.equinix_network_account.sv.number
acl_template_id = "XXXXXXXX"
notifications = ["test@eq.com"]
vendor_configuration = {
controller1 = "X.X.X.X"
controller2 = "X.X.X.X"
localId = "test@test.com"
remoteId = "test@test.com"
serialNumber = "4"
}
}
}
# Create VYos Router HA device
data "equinix_network_account" "sv" {
metro_code = "SV"
}
resource "equinix_network_device" "VYOS-AM" {
name = "TF_VYOS"
project_id = "XXXXXXX"
metro_code = data.equinix_network_account.sv.metro_code
type_code = "VYOS-ROUTER"
self_managed = true
byol = false
package_code = "STD"
notifications = ["test@eq.com"]
account_number = data.equinix_network_account.sv.number
version = "1.4.1-2501"
hostname = "test"
core_count = 2
term_length = 1
additional_bandwidth = 50
acl_template_id = "XXXXXXXX"
ssh_key {
username = "test"
key_name = "xxxxxxxx"
}
secondary_device {
name = "TF_CHECKPOINT"
metro_code = data.equinix_network_account.sv.metro_code
account_number = data.equinix_network_account.sv.number
hostname = "test"
acl_template_id = "XXXXXXXXXXX"
notifications = ["test@eq.com"]
}
}
# Create Fortinet SDWAN single device
data "equinix_network_account" "sv" {
metro_code = "SV"
}
resource "equinix_network_device" "FTNT-SDWAN-SV" {
name = "TF_FTNT-SDWAN"
project_id = "XXXXXXXXXX"
metro_code = data.equinix_network_account.sv.metro_code
type_code = "FG-SDWAN"
self_managed = true
byol = true
package_code = "VM02"
notifications = ["test@eq.com"]
account_number = data.equinix_network_account.sv.number
version = "7.0.14"
hostname = "test"
core_count = 2
term_length = 1
additional_bandwidth = 50
acl_template_id = "XXXXXXXX"
vendor_configuration = {
adminPassword = "XXXXX"
controller1 = "X.X.X.X"
}
}
# Create Aruba Edgeconnect SDWAN HA device
data "equinix_network_account" "sv" {
metro_code = "SV"
}
resource "equinix_network_device" "ARUBA-EDGECONNECT-AM" {
name = "TF_Aruba_Edge_Connect"
project_id = "XXXXX"
metro_code = data.equinix_network_account.sv.metro_code
type_code = "EDGECONNECT-SDWAN"
self_managed = true
byol = true
package_code = "EC-V"
notifications = ["test@eq.com"]
account_number = data.equinix_network_account.sv.number
version = "9.4.2.3"
core_count = 2
term_length = 1
additional_bandwidth = 50
interface_count = 32
acl_template_id = "XXXXXXX"
vendor_configuration = {
accountKey : "xxxxx"
accountName : "xxxx"
applianceTag : "tests"
hostname : "test"
}
secondary_device {
name = "TF_CHECKPOINT"
metro_code = data.equinix_network_account.sv.metro_code
account_number = data.equinix_network_account.sv.number
acl_template_id = "XXXXXXX"
notifications = ["test@eq.com"]
vendor_configuration = {
accountKey : "xxxxx"
accountName : "xxxx"
applianceTag : "test"
hostname : "test"
}
}
}
# Create Infoblox Grid Member Single device
data "equinix_network_account" "sv" {
metro_code = "SV"
}
resource "equinix_network_device" "INFOBLOX-SV" {
name = "TF_INFOBLOX"
project_id = "XXXXXXXXXX"
metro_code = data.equinix_network_account.sv.metro_code
type_code = "INFOBLOX-GRID-MEMBER"
self_managed = true
byol = true
connectivity = "PRIVATE"
package_code = "STD"
notifications = ["test@eq.com"]
account_number = data.equinix_network_account.sv.number
version = "9.0.5"
core_count = 8
term_length = 1
vendor_configuration = {
adminPassword = "xxxxxx"
ipAddress = "X.X.X.X"
subnetMaskIp = "X.X.X.X"
gatewayIp = "X.X.X.X"
}
}
# Create Infoblox Grid Member HA device
data "equinix_network_account" "sv" {
metro_code = "SV"
}
resource "equinix_network_device" "INFOBLOX-SV" {
name = "TF_INFOBLOX"
project_id = "XXXXXXXXXX"
metro_code = data.equinix_network_account.sv.metro_code
type_code = "INFOBLOX-GRID-MEMBER"
self_managed = true
connectivity = "PRIVATE"
byol = true
package_code = "STD"
notifications = ["test@eq.com"]
account_number = data.equinix_network_account.sv.number
version = "9.0.5"
core_count = 8
term_length = 1
vendor_configuration = {
adminPassword = "X.X.X.X"
ipAddress = "X.X.X.X"
subnetMaskIp = "X.X.X.X"
gatewayIp = "X.X.X.X"
}
secondary_device {
name = "TF_INFOBLOX-Sec"
metro_code = data.equinix_network_account.sv.metro_code
account_number = data.equinix_network_account.sv.number
notifications = ["test@eq.com"]
vendor_configuration = {
adminPassword = "X.X.X.X"
ipAddress = "X.X.X.X"
subnetMaskIp = "X.X.X.X"
gatewayIp = "X.X.X.X"
}
}
}
# Create Infoblox Grid Member HA device
data "equinix_network_account" "sv" {
metro_code = "SV"
}
resource "equinix_network_device" "INFOBLOX-SV" {
name = "TF_INFOBLOX"
project_id = "XXXXXXXXXX"
metro_code = data.equinix_network_account.sv.metro_code
type_code = "INFOBLOX-GRID-MEMBER"
self_managed = true
byol = true
package_code = "STD"
notifications = ["test@eq.com"]
account_number = data.equinix_network_account.sv.number
version = "9.0.5"
connectivity = "PRIVATE"
core_count = 8
term_length = 1
cluster_details {
cluster_name = "tf-infoblox-cluster"
node0 {
vendor_configuration {
admin_password = "xxxxxxx"
ip_address = "X.X.X.X"
subnet_mask_ip = "X.X.X.X"
gateway_ip = "X.X.X.X"
}
}
node1 {
vendor_configuration {
admin_password = "xxxxxxx"
ip_address = "X.X.X.X"
subnet_mask_ip = "X.X.X.X"
gateway_ip = "X.X.X.X"
}
}
}
}
# Create F5XC device
data "equinix_network_account" "sv" {
metro_code = "SV"
}
resource "equinix_network_device" "f5xc-single" {
name = "tf-f5xc"
project_id = "XXXXXX"
metro_code = data.equinix_network_account.sv.metro_code
type_code = "F5XC"
self_managed = true
byol = true
connectivity = "INTERNET-ACCESS"
package_code = "STD"
notifications = ["john@equinix.com", "marry@equinix.com", "fred@equinix.com"]
term_length = 1
account_number = data.equinix_network_account.sv.number
acl_template_id = "xxxx"
version = "9.2025.17"
interface_count = 8
core_count = 8
vendor_configuration = {"token" = "XXXXXXXXXX", "hostname" = "XXXX"}
}
# Create C8000V HA - BYOL device with cloud init rest api support
data "equinix_network_account" "sv" {
metro_code = "SV"
}
resource "equinix_network_device" "c8000v-byol" {
name = "tf-c8000v-byol"
metro_code = data.equinix_network_account.sv.metro_code
type_code = "C8000V"
self_managed = true
byol = true
generate_default_password = true
package_code = "network-essentials"
notifications = ["john@equinix.com", "marry@equinix.com", "fred@equinix.com"]
term_length = 12
account_number = data.equinix_network_account.sv.number
version = "17.11.01a"
interface_count = 10
core_count = 2
tier = 1
ssh_key {
username = "test"
key_name = "test-key"
}
vendor_configuration = { restApiSupportRequirement = "true" }
acl_template_id = "0bff6e05-f0e7-44cd-804a-25b92b835f8b"
secondary_device {
name = "tf-c8000v-byol-secondary"
metro_code = data.equinix_network_account.sv.metro_code
hostname = "csr1000v-s"
notifications = ["john@equinix.com", "marry@equinix.com"]
account_number = data.equinix_network_account.sv.number
vendor_configuration = { restApiSupportRequirement = "true" }
acl_template_id = "0bff6e05-f0e7-44cd-804a-25b92b835f8b"
}
}
# Create Aruba Edgeconnect SDWAN HA device with 2different account numbers with purchase orders
data "equinix_network_account" "sv" {
metro_code = "SV"
}
resource "equinix_network_device" "ARUBA-EDGECONNECT-AM" {
name = "TF_Aruba_Edge_Connect"
project_id = "XXXXX"
metro_code = data.equinix_network_account.sv.metro_code
type_code = "EDGECONNECT-SDWAN"
self_managed = true
byol = true
package_code = "EC-V"
notifications = ["test@eq.com"]
account_number = data.equinix_network_account.sv.number
version = "9.4.2.3"
core_count = 2
term_length = 1
additional_bandwidth = 50
interface_count = 32
acl_template_id = "XXXXXXX"
purchase_order_number = "PO-Primary-Account-123"
vendor_configuration = {
accountKey : "xxxxx"
accountName : "xxxx"
applianceTag : "tests"
hostname : "test"
}
secondary_device {
name = "TF_CHECKPOINT"
metro_code = data.equinix_network_account.sv.metro_code
account_number = data.equinix_network_account.sv.number
purchase_order_number = "PO-Secondary-Account-123"
acl_template_id = "XXXXXXX"
notifications = ["test@eq.com"]
vendor_configuration = {
accountKey : "xxxxx"
accountName : "xxxx"
applianceTag : "test"
hostname : "test"
}
}
}
# Create C8000V HA - BYOL device with connectivity PRIVATE with DHCP IP address type
data "equinix_network_account" "sv" {
metro_code = "SV"
name = "account-name"
}
resource "equinix_network_device" "c8000v-byol" {
name = "tf-c8000v-byol"
metro_code = data.equinix_network_account.sv.metro_code
type_code = "C8000V"
self_managed = true
byol = true
package_code = "network-essentials"
connectivity = "PRIVATE"
notifications = ["john@equinix.com", "marry@equinix.com", "fred@equinix.com"]
term_length = 12
account_number = data.equinix_network_account.sv.number
version = "17.11.01a"
interface_count = 10
core_count = 2
tier = 1
ssh_key {
username = "test"
key_name = "test-key"
}
vendor_configuration = { restApiSupportRequirement = "true", ipAddressType = "DHCP", managementInterfaceId= "6" }
secondary_device {
name = "tf-c8000v-byol-secondary"
metro_code = data.equinix_network_account.sv.metro_code
hostname = "c8000v-s"
notifications = ["john@equinix.com", "marry@equinix.com"]
account_number = data.equinix_network_account.sv.number
vendor_configuration = { restApiSupportRequirement = "true", ipAddressType = "DHCP", managementInterfaceId= "6" }
}
}
# Create C8000V HA - BYOL device with connectivity PRIVATE with NO IP address type
data "equinix_network_account" "sv" {
metro_code = "SV"
name = "account-name"
}
resource "equinix_network_device" "c8000v-byol" {
name = "tf-c8000v-byol"
metro_code = data.equinix_network_account.sv.metro_code
type_code = "C8000V"
self_managed = true
byol = true
package_code = "network-essentials"
connectivity = "PRIVATE"
notifications = ["john@equinix.com", "marry@equinix.com", "fred@equinix.com"]
term_length = 12
account_number = data.equinix_network_account.sv.number
version = "17.11.01a"
interface_count = 10
core_count = 2
tier = 1
ssh_key {
username = "test"
key_name = "test-key"
}
vendor_configuration = { restApiSupportRequirement = "true", ipAddressType = "NO_IP_ADDRESS" }
secondary_device {
name = "tf-c8000v-byol-secondary"
metro_code = data.equinix_network_account.sv.metro_code
hostname = "csr8000v-s"
notifications = ["john@equinix.com", "marry@equinix.com"]
account_number = data.equinix_network_account.sv.number
vendor_configuration = { restApiSupportRequirement = "true", ipAddressType = "NO_IP_ADDRESS" }
}
}
# Create C8000V HA - BYOL device with connectivity PRIVATE with static IP address type
data "equinix_network_account" "sv" {
metro_code = "SV"
name = "account-name"
}
resource "equinix_network_device" "c8000v-byol" {
name = "tf-c8000v-byol"
metro_code = data.equinix_network_account.sv.metro_code
type_code = "C8000V"
self_managed = true
byol = true
package_code = "network-essentials"
connectivity = "PRIVATE"
notifications = ["john@equinix.com", "marry@equinix.com", "fred@equinix.com"]
term_length = 12
account_number = data.equinix_network_account.sv.number
version = "17.11.01a"
interface_count = 10
core_count = 2
tier = 1
ssh_key {
username = "test"
key_name = "test-key"
}
vendor_configuration = {
restApiSupportRequirement = "true", ipAddressType = "STATIC", ipAddress = "x.x.x.x", gatewayIp = "x.x.x.x",
subnetMaskIp = "x.x.x.x", managementInterfaceId= "6"
}
secondary_device {
name = "tf-c8000v-byol-secondary"
metro_code = data.equinix_network_account.sv.metro_code
hostname = "csr8000v-s"
notifications = ["john@equinix.com", "marry@equinix.com"]
account_number = data.equinix_network_account.sv.number
vendor_configuration = {
restApiSupportRequirement = "true", ipAddressType = "STATIC", ipAddress = "x.x.x.x", gatewayIp = "x.x.x.x",
subnetMaskIp = "x.x.x.x", managementInterfaceId= "6"
}
}
}
# Create FG VM Cluster with connectivity PRIVATE and IP Address Type as STATIC
data "equinix_network_account" "sv" {
metro_code = "SV"
name = "account-name"
}
resource "equinix_network_device" "FGVM-SV" {
name = "tf-fgvm-cluster-static-znpd"
metro_code = "DC"
type_code = "FG-VM"
project_id = "xxxxxxx"
self_managed = true
connectivity = "PRIVATE"
byol = true
package_code = "VM02"
notifications = ["john@equinix.com", "marry@equinix.com", "fred@equinix.com"]
term_length = 12
account_number = xxxxxx
version = "7.6.2"
interface_count = 10
core_count = 2
ssh_key {
username = "sanity1"
key_name = ""
}
cluster_details {
cluster_name = "tf-fgvm--cluster"
node0 {
vendor_configuration {
ip_address = "x.x.x.x"
subnet_mask_ip = "x.x.x.x"
gateway_ip = "x.x.x.x"
management_interface_id = "5"
hostname = "test"
ip_address_type = "STATIC"
}
}
node1 {
vendor_configuration {
ip_address = "x.x.x.x"
subnet_mask_ip = "x.x.x.x"
gateway_ip = "x.x.x.x"
management_interface_id = "5"
hostname = "test"
ip_address_type = "STATIC"
}
}
}
}
# Create Fortinet VM firewall ha device with connectivity PRIVATE and IP Address Type as DHCP
data "equinix_network_account" "sv" {
metro_code = "SV"
name = "account-name"
}
resource "equinix_network_device" "FTNT-FIREWALL-SV" {
name = "TF_FTNT-FIREWALL"
project_id = "XXXXXXXXXX"
metro_code = data.equinix_network_account.sv.metro_code
type_code = "FG-VM"
self_managed = true
byol = true
interface_count = 10
connectivity = "PRIVATE"
package_code = "VM02"
notifications = ["test@eq.com"]
account_number = data.equinix_network_account.sv.number
version = "7.6.3"
hostname = "test"
core_count = 2
term_length = 1
vendor_configuration = {
ipAddressType = "DHCP", managementInterfaceId= "6"
}
secondary_device {
name = "TF_FTNT-FIREWALL-secondary"
metro_code = data.equinix_network_account.sv.metro_code
hostname = "fg-vm-znpd"
notifications = ["john@equinix.com", "marry@equinix.com"]
account_number = data.equinix_network_account.sv.number
vendor_configuration = { ipAddressType = "DHCP", managementInterfaceId= "6"}
}
}
# Create Fortinet firewall ha device with connectivity PRIVATE and IP Address Type as NO IP Address
data "equinix_network_account" "sv" {
metro_code = "SV"
name = "account-name"
}
resource "equinix_network_device" "FTNT-FIREWALL-SV" {
name = "TF_FTNT-FIREWALL"
project_id = "XXXXXXXXXX"
metro_code = data.equinix_network_account.sv.metro_code
type_code = "FG-VM"
interface_count = 10
self_managed = true
byol = true
connectivity = "PRIVATE"
package_code = "VM02"
notifications = ["test@eq.com"]
account_number = data.equinix_network_account.sv.number
version = "7.6.3"
hostname = "test"
core_count = 2
term_length = 1
vendor_configuration = {
ipAddressType = "NO_IP_ADDRESS"
}
secondary_device {
name = "TF_FTNT-FIREWALL-secondary"
metro_code = data.equinix_network_account.sv.metro_code
hostname = "fg-vm-znpd"
notifications = ["john@equinix.com", "marry@equinix.com"]
account_number = data.equinix_network_account.sv.number
vendor_configuration = {
ipAddressType = "NO_IP_ADDRESS"
}
}
}
# Create FG VM ha device with connectivity PRIVATE and IP Address Type as STATIC
data "equinix_network_account" "sv" {
metro_code = "SV"
name = "account-name"
}
resource "equinix_network_device" "FTNT-FIREWALL-SV" {
name = "TF_FTNT-FIREWALL"
project_id = "XXXXXXXXXX"
metro_code = data.equinix_network_account.sv.metro_code
interface_count = 10
type_code = "FG-VM"
self_managed = true
byol = true
connectivity = "PRIVATE"
package_code = "VM02"
notifications = ["test@eq.com"]
account_number = data.equinix_network_account.sv.number
version = "7.6.3"
hostname = "test"
core_count = 2
term_length = 1
vendor_configuration = {
gatewayIp = "X.X.X.X"
ipAddress = "X.X.X.X"
ipAddressType = "STATIC"
subnetMaskIp = "x.x.x.x"
managementInterfaceId = "6"
}
secondary_device {
name = "TF_FTNT-FIREWALL-secondary"
metro_code = data.equinix_network_account.sv.metro_code
hostname = "fg-vm-znpd"
notifications = ["john@equinix.com", "marry@equinix.com"]
account_number = data.equinix_network_account.sv.number
vendor_configuration = {
gatewayIp = "X.X.X.X"
ipAddress = "X.X.X.X"
ipAddressType = "STATIC"
subnetMaskIp = "X.X.X.X"
managementInterfaceId = "6"
}
}
}
Référence de l'argument
Les arguments suivants sont soutenus :
name- (Obligatoire) Nom de l'appareil.type_code- (Obligatoire) Code du type d'appareil.metro_code- (Obligatoire) Code métro de l'emplacement de l'appareil.hostname- (Facultatif) Préfixe du nom d'hôte de l'appareil.package_code- (Obligatoire) Code du progiciel de l'appareil.version- (Obligatoire) Version du logiciel de l'appareil.core_count- (Obligatoire) Nombre de cœurs de CPU utilisés par l'appareil. (NOTE : Utilisez ce champ pour redimensionner votre appareil. Lors du redimensionnement de vos dispositifs HA, le dispositif principal sera mis à niveau en premier. Si la mise à niveau a échoué, le dispositif sera automatiquement ramené à l'état précédent avec le numéro de cœur d'origine.)tier- (Facultatif, en conflit avecthroughput,throughput_unit) Sélectionnez le niveau de bande passante pour votre propre licence, c'est-à-dire0ou1ou2ou3. Les niveaux ne s'appliquent qu'aux types de dispositifs C8000V Autonomous ou C8000V SDWAN (contrôleur). S'il n'est pas fourni, le niveau est défini par défaut à "2".term_length- (Obligatoire) Durée de la période de validité de l'appareil.self_managed- (Facultatif) Valeur booléenne qui détermine le mode de gestion de l'appareil, c'est-à-direself-managedouEquinix-managed(par défaut).byol- (Facultatif) Valeur booléenne qui détermine le mode d'octroi de licence de l'appareil, c'est-à-direbring your own licenseousubscription(par défaut).license_token- (Facultatif, en conflit aveclicense_file) Jeton de licence applicable à certains types d'appareils en mode de licence BYOL.license_file- (Facultatif) Chemin d'accès au fichier de licence qui sera téléchargé et appliqué sur un appareil. Applicable à certains types d'appareils en mode de licence BYOL.license_file_id- (Facultatif, en conflit aveclicense_file) Identifiant d'un fichier de licence qui sera appliqué sur l'appareil.cloud_init_file_id- (Facultatif) Identifiant d'un fichier cloud init qui sera appliqué sur l'appareil.throughput- (Facultatif) Débit de la licence de l'appareil.throughput_unit- Unité de débit de licence (facultatif). L'un deMbpsouGbps.account_number- (Obligatoire) Numéro de compte de facturation pour un appareil.notifications- (Obligatoire) Liste des adresses électroniques qui recevront les notifications sur l'état de l'appareil.purchase_order_number- (Facultatif) Numéro de commande associé à la commande d'un appareil. Pour les comptes de facturation qui nécessitent un bon de commande, ce champ est obligatoire.order_reference- (Facultatif) Nom/numéro utilisé pour identifier la commande d'appareils sur la facture.acl_template_id- (Facultatif) Identifiant d'un modèle ACL d'interface WAN qui sera appliqué sur l'appareil.mgmt_acl_template_uuid- (Facultatif) Identifiant d'un modèle ACL d'interface MGMT qui sera appliqué sur l'appareil.additional_bandwidth- (Facultatif) Largeur de bande Internet supplémentaire, en Mbps, qui sera allouée à l'appareil (en plus des 15 Mbps par défaut).interface_count- (Facultatif) Nombre d'interfaces réseau sur un appareil. S'il n'est pas spécifié, le nombre par défaut pour un type d'appareil donné sera utilisé.wan_interafce_id- (Facultatif) Spécifiez l'identifiant de l'interface WAN/SSH. Si elle n'est pas spécifiée, l'interface WAN/SSH par défaut pour un type d'appareil donné sera utilisée.vendor_configuration- (Facultatif) Carte des paramètres de configuration spécifiques au fournisseur pour un appareil (controller1, activationKey, managementType, siteId, systemIpAddress, privateAddress, privateCidrMask, privateGateway, licenseKey, licenseId, panoramaAuthKey, panoramaIpAddress, provisioningKey, ipAddress (applicable pour infoblox uniquement), subnetMaskIp (applicable pour infoblox uniquement), gatewayIp (applicable pour infoblox uniquement)).ssh-key- (Facultatif) Définition de la clé SSH qui sera fournie sur un appareil (max. une clé). Voir SSH Key ci-dessous pour plus de détails.secondary_device- (Facultatif) Définition du dispositif secondaire pour les configurations de dispositifs redondants. Voir Secondary Device ci-dessous pour plus de détails.cluster_details- (Facultatif) Un objet qui contient les détails du cluster. Voir Cluster Details ci-dessous pour plus de détails.connectivity- (Facultatif) Accessibilité du dispositif (INTERNET-ACCESS ou PRIVATE ou INTERNET-ACCESS-WITH-PRVT-MGMT). Si non spécifié, la valeur par défaut sera INTERNET-ACCESS.project_id- (Facultatif) Identifiant unique de la ressource du projet à laquelle le dispositif est rattaché. Si vous ne le précisez pas, le dispositif sera créé sous l'identifiant de projet par défaut de votre organisation.diverse_device_id- (Facultatif) ID unique d'un dispositif existant. Utilisez ce champ pour indiquer à Equinix si vous souhaitez que votre nouveau dispositif se trouve à un emplacement différent de celui d'un dispositif virtuel existant. Ce champ n'est utile que pour les dispositifs uniques.generate_default_password- (Facultatif) Valeur booléenne qui détermine si le dispositif doit être créé avec ou sans mot de passe par défaut. Utilisez ce champ pour indiquer à Equinix si vous souhaitez que votre nouveau dispositif soit créé avec un mot de passe administrateur par défaut. Ce champ n'est significatif que pour les dispositifs C8000V Autonomous (single/ha) et Fortinet Firewall (single/ha/cluster). S'il n'est pas spécifié, le dispositif est créé par défaut avec le mot de passe admin.
Dispositif secondaire
-> NOTE : Network Edge offre différentes options de haute disponibilité (HA). En définissant un bloc secondary_device, terraform déploiera [Redundant Devices, utile pour les clients qui ont besoin de deux plans de données de transmission active (Active/Active) sur des piles matérielles distinctes. Consultez la documentation [Architecting for Resiliency pour en savoir plus sur les solutions de tolérance aux pannes que vous pouvez obtenir.
Le bloc secondary_device prend en charge les arguments suivants :
name- (Obligatoire) Nom de l'appareil secondaire.metro_code- (Obligatoire) Emplacement métropolitain d'un dispositif secondaire.hostname- (Facultatif) Nom d'hôte du périphérique secondaire.license_token- (Facultatif, en conflit aveclicense_file) Le jeton de licence peut être fourni pour certains types d'appareils sur l'appareil.license_file- (Facultatif) Chemin d'accès au fichier de licence qui sera téléchargé et appliqué sur un appareil secondaire. Applicable à certains types d'appareils en mode de licence BYOL.license_file_id- (Facultatif, en conflit aveclicense_file) Identifiant d'un fichier de licence qui sera appliqué sur un appareil secondaire.cloud_init_file_id- (Facultatif) Identifiant d'un fichier cloud init qui sera appliqué sur un appareil secondaire.account_number- (Obligatoire) Numéro de compte de facturation pour l'appareil secondaire.notifications- (Obligatoire) Liste des adresses électroniques qui recevront les notifications concernant l'appareil secondaire.additional_bandwidth- (Facultatif) Largeur de bande Internet supplémentaire, en Mbps, pour un appareil secondaire.vendor_configuration- (Facultatif) Paires clé/valeur de paramètres de configuration spécifiques au fournisseur pour un dispositif secondaire. Les valeurs clés sontcontroller1,activationKey,managementType,siteId,systemIpAddress,privateAddress,privateCidrMask,privateGateway,licenseKey,licenseId,panoramaAuthKey,panoramaIpAddress,ipAddress,subnetMaskIp,gatewayIp.acl_template_id- (Facultatif) Identifiant d'un modèle ACL d'interface WAN qui sera appliqué sur un dispositif secondaire.mgmt_acl_template_uuid- (Facultatif) Identifiant d'un modèle ACL d'interface MGMT qui sera appliqué sur un appareil secondaire.ssh-key- (Facultatif) Jusqu'à une définition de la clé SSH qui sera fournie sur un périphérique secondaire.
Clé SSH
Le bloc ssh_key prend en charge les arguments suivants :
username- Nom d'utilisateur (obligatoire) associé à la clé donnée.name- (Facultatif) référence par nom à la clé SSH publique précédemment fournie.
Détails de la grappe
-> NOTE : Network Edge offre différentes options de haute disponibilité (HA). En définissant un bloc cluster_details, terraform déploiera un bloc Device Clustering. Cette option, basée sur des caractéristiques spécifiques au fournisseur, permet aux clients de déployer des configurations résilientes plus avancées que secondary_device. Consultez la documentation [Network Edge HA Options pour savoir quels fournisseurs prennent en charge les dispositifs en grappe. Consultez la documentation [Architecting for Resiliency pour en savoir plus sur les solutions de tolérance aux pannes que vous pouvez mettre en œuvre.
Le bloc cluster_details prend en charge les arguments suivants :
cluster_name- (Obligatoire) Le nom du dispositif de cluster.node0- (Obligatoire) Un objet qui a une configurationnode0. Voir Détails du cluster - Nœuds ci-dessous pour plus de détails.node1- (Obligatoire) Un objet qui a une configurationnode1. Voir Détails du cluster - Nœuds ci-dessous pour plus de détails.
Détails du cluster - Nœuds
Les blocs node0 et node1 prennent en charge les arguments suivants :
vendor_configuration- (Facultatif) Objet contenant des champs relatifs au fournisseur du dispositif de cluster. Voir Détails du cluster - Nœuds - Configuration du fournisseur ci-dessous pour plus de détails.license_file_id- (Facultatif) Identifiant du fichier de licence. Cette information est nécessaire pour les clusters Fortinet et Juniper.license_token- (Facultatif) Jeton de licence. Il est nécessaire pour les clusters Palo Alto.
Détails du cluster - Nœuds - Configuration du fournisseur
Le bloc vendor_configuration prend en charge les arguments suivants :
hostname- (Facultatif) Nom d'hôte. Cette information est nécessaire pour les clusters Palo Alto, Juniper et Fortinet.admin_password- (Facultatif) Le mot de passe administratif de l'appareil. Vous pouvez l'utiliser pour vous connecter à la console. Ce champ n'est pas disponible pour tous les types d'appareils.controller1- (Facultatif) Adresse IP du système. Obligatoire pour le dispositif de cluster Fortinet SDWAN.activation_key- (Facultatif) Clé d'activation. Elle est nécessaire pour les clusters Velocloud.controller_fqdn- (Facultatif) Controller fqdn. Ceci est nécessaire pour les clusters Velocloud.root_password- (Facultatif) Le mot de passe CLI de l'appareil. Ce champ n'est pertinent que pour le cluster SDWAN Velocloud.panorama_ip_address- (Facultatif) Adresse IP du serveur Panorama. Ce champ ne concerne que les dispositifs de pare-feu PA-VM intégrés au serveur Panorama.panorama_auth_key- (Facultatif) Clé d'authentification du serveur Panorama. Ce champ ne concerne que les dispositifs de pare-feu PA-VM intégrés au serveur Panorama.provisioning_key- (Facultatif) Provisioning Key (Clé de provisionnement). Ce champ ne concerne que les appareils ZSCALER APPC et ZSCALER PSE.ip_address- (Facultatif) Adresse IP. Ce champ ne concerne que les appareils Infoblox.subnet_mask_ip- (Facultatif) Masque de sous-réseau IP. Ce champ ne concerne que les appareils Infoblox.gateway_ip- (Facultatif) Gateway IP. Ce champ ne concerne que les appareils Infoblox.
Référence des attributs
En plus de tous les arguments ci-dessus, les attributs suivants sont exportés :
uuid- Identifiant unique de l'appareil.status- État de l'approvisionnement de l'appareil. Les valeurs possibles sontINITIALIZING,PROVISIONING,WAITING_FOR_PRIMARY,WAITING_FOR_SECONDARY,WAITING_FOR_REPLICA_CLUSTER_NODES,CLUSTER_SETUP_IN_PROGRESS,FAILED,PROVISIONED,DEPROVISIONING,DEPROVISIONED,RESOURCE_UPGRADE_IN_PROGRESS,RESOURCE_UPGRADE_FAILED.license_status- État de l'enregistrement de la licence de l'appareil. Les valeurs possibles sontAPPLYING_LICENSE,REGISTERED,APPLIED,WAITING_FOR_CLUSTER_SETUP,REGISTRATION_FAILED.license_file_id- Identifiant unique du fichier de licence appliqué.ibx- Emplacement de l'appareil Nom d'Equinix Business Exchange.region- Région de localisation de l'appareil.acl_template_id- Identifiant unique du modèle ACL appliqué.ssh_ip_address- Adresse IP de l'interface SSH sur l'appareil.ssh_ip_fqdn- FQDN de l'interface SSH sur l'appareil.redundancy_type- Type de redondance des dispositifs applicable aux dispositifs HA, qu'ils soient primaires ou secondaires.redundant_id- Identifiant unique d'un dispositif redondant applicable aux dispositifs HA.interface- Liste des interfaces de périphériques. Voir Attribut d'interface ci-dessous pour plus de détails.asn- (Autonomous System Number) Identifiant unique d'un réseau sur l'internet.zone_code- Code de la zone de localisation de l'appareil.cluster_id- L'ID du cluster.num_of_nodes- Le nombre de nœuds dans le cluster.diverse_device_name- Nom de l'appareil avec divers UUID d'appareil. Ce champ est renvoyé dans les détails de l'appareil si l'appareil est créé en passant diverse_device_id.
Attribut d'interface
Chaque attribut d'interface comporte les champs suivants :
id- identifiant d'interface.name- nom de l'interface.status- état de l'interface. L'un deAVAILABLE,RESERVED,ASSIGNED.operational_status- état opérationnel de l'interface. L'un deup,down.mac_address- adresse MAC de l'interface.ip_address- adresse IP de l'interface.assigned_type- type de gestion de l'interface (Equinix Managed ou vide).type- interface type.
Délais d'attente
Cette ressource offre les options suivantes [Configuration des délais :
- créer - La valeur par défaut est de 90 minutes
- mise à jour - La valeur par défaut est de 90 minutes
- delete - La valeur par défaut est de 30 minutes
Importer
Cette ressource peut être importée en utilisant un identifiant existant :
terraform import equinix_network_device.example {existing_id}
Les champs license_token, mgmt_acl_template_uuid et cloud_init_file_id ne peuvent pas être importés.