diff --git a/.github/workflows/integration.yml b/.github/workflows/integration.yml index 4d4e74d..8a87dfe 100644 --- a/.github/workflows/integration.yml +++ b/.github/workflows/integration.yml @@ -60,7 +60,7 @@ jobs: ssh-add <(echo $METAL_SSH_PRIVATE_KEY_BASE64 | base64 -d) # Arrays of strings are hard to define via TF env vars (in yaml) - run: | - echo 'metal_facilities = ["da11"]' > terraform.tfvars + echo 'metal_metro = "da"' > terraform.tfvars echo 'metal_project_id = "${{ steps.project.outputs.projectID }}"' >> terraform.tfvars - name: Terraform Plan id: plan diff --git a/BareMetal.tf b/BareMetal.tf index 7608d5b..d42e709 100644 --- a/BareMetal.tf +++ b/BareMetal.tf @@ -48,7 +48,7 @@ resource "equinix_metal_device" "controller" { private_key = local_file.cluster_private_key_pem.content } user_data = "#cloud-config\n\nssh_authorized_keys:\n - \"${local_file.cluster_public_key.content}\"" - facilities = var.metal_facilities + metro = var.metal_metro project_id = local.metal_project_id billing_cycle = "hourly" # ip_address { @@ -71,7 +71,7 @@ resource "equinix_metal_device" "dashboard" { } user_data = "#cloud-config\n\nssh_authorized_keys:\n - \"${local_file.cluster_public_key.content}\"" - facilities = var.metal_facilities + metro = var.metal_metro project_id = local.metal_project_id billing_cycle = "hourly" } @@ -91,7 +91,7 @@ resource "equinix_metal_device" "compute-x86" { private_key = file(local_file.cluster_private_key_pem) } user_data = "#cloud-config\n\nssh_authorized_keys:\n - \"${local_file.cluster_public_key.content}\"" - facilities = var.metal_facilities + metro = var.metal_metro project_id = local.metal_project_id billing_cycle = "hourly" } @@ -111,7 +111,7 @@ resource "equinix_metal_device" "compute-arm" { private_key = file(local_file.cluster_private_key_pem) } user_data = "#cloud-config\n\nssh_authorized_keys:\n - \"${local_file.cluster_public_key.content}\"" - facilities = var.metal_facilities + metro = var.metal_metro project_id = local.metal_project_id billing_cycle = "hourly" } diff --git a/ProviderNetwork.tf b/ProviderNetwork.tf index 02c6003..c356c20 100644 --- a/ProviderNetwork.tf +++ b/ProviderNetwork.tf @@ -4,8 +4,7 @@ # use private IPv4 addresses to save precious Internet resources data "equinix_metal_precreated_ip_block" "private_ipv4" { - - facility = equinix_metal_device.controller.deployed_facility + metro = equinix_metal_device.controller.metro project_id = local.metal_project_id address_family = 4 public = false @@ -22,8 +21,7 @@ resource "equinix_metal_ip_attachment" "controller_private_ipv4" { # ipv6 is free so let's go crazy data "equinix_metal_precreated_ip_block" "public_ipv6" { - - facility = equinix_metal_device.controller.deployed_facility + metro = equinix_metal_device.controller.metro project_id = local.metal_project_id address_family = 6 public = true diff --git a/sample-arm.terraform.tfvars b/sample-arm.terraform.tfvars index cd2cede..04fa8b0 100644 --- a/sample-arm.terraform.tfvars +++ b/sample-arm.terraform.tfvars @@ -3,7 +3,8 @@ # # This configuration file will override the defaults in vars.tf # -# c3.large.arm64 - 32 Core Ampere eMAG, 128GB, 480GB, 2x10Gbps +# c3.large.arm64 - 80 Core Ampere Altra Q80-30, 256GB, 2x960GB NVMe, 2x25Gbps +# https://metal.equinix.com/product/servers/c3-large-arm64/ # metal_controller_type = "c3.large.arm64" metal_dashboard_type = "c3.large.arm64" @@ -11,7 +12,7 @@ metal_compute-arm_type = "c3.large.arm64" openstack_compute-arm_count = 1 openstack_compute-x86_count = 0 -metal_facilities = ["ewr1"] +metal_metro = "da" # Use an existing project: # metal_create_project = false diff --git a/sample-gen3.terraform.tfvars b/sample-gen3.terraform.tfvars index 01949f4..c0d302e 100644 --- a/sample-gen3.terraform.tfvars +++ b/sample-gen3.terraform.tfvars @@ -3,15 +3,18 @@ # # This configuration file will override the defaults in vars.tf # -# c3.medium - 24 Core AMD EPYC 7402P, 64GB, 960GB, 2x10Gbps -# s3.xlarge - 24 Core Intel 4214, 192GB, 1.9TB, 2x10Gbps +# c3.medium - 24 Core AMD EPYC 7401p, 64GB, 2x480GB SSD, 2x10Gbps +# https://metal.equinix.com/product/servers/c3-medium/ +# s3.xlarge - 24 Core Xeon Silver 4214, 192GB, 2x256GB SSD, 2x960GB, 12x8TB HDD, 2x10Gbps +# https://metal.equinix.com/product/servers/s3-xlarge/ +# metal_controller_type = "c3.medium.x86" metal_dashboard_type = "c3.medium.x86" metal_compute-x86_type = "s3.xlarge.x86" openstack_compute-arm_count = 1 openstack_compute-x86_count = 1 -metal_facilities = ["dfw2"] +metal_metro = "da" # Use an existing project: # metal_create_project = false diff --git a/sample.terraform.tfvars b/sample.terraform.tfvars index d210d57..646c74a 100644 --- a/sample.terraform.tfvars +++ b/sample.terraform.tfvars @@ -3,9 +3,12 @@ # # This configuration file will override the defaults in vars.tf # -# c2.medium - 24 Core AMD EPYC 7401p, 64GB, 960GB, 2x10Gbps -# n2.xlarge - 28 Core Xeon Gold 5120, 384GB, 3.8TB, 4x10Gbps -# c3.large.arm64 - 32 Core Ampere eMAG, 128GB, 480GB, 2x10Gbps +# c3.medium - 24 Core AMD EPYC 7401p, 64GB, 2x480GB SSD, 2x10Gbps +# https://metal.equinix.com/product/servers/c3-medium/ +# n3.xlarge - 32 Core Xeon Gold 6314, 512GB, 2x240GB SSD, 2x3.8TB NVMe, 4x25Gbps +# https://metal.equinix.com/product/servers/n3-xlarge/ +# c3.large.arm64 - 80 Core Ampere Altra Q80-30, 256GB, 2x960GB NVMe, 2x25Gbps +# https://metal.equinix.com/product/servers/c3-large-arm64/ # metal_controller_type = "c3.medium.x86" metal_dashboard_type = "c3.medium.x86" @@ -14,7 +17,7 @@ metal_compute-x86_type = "n3.xlarge.x86" openstack_compute-arm_count = 1 openstack_compute-x86_count = 1 -metal_facilities = ["sjc1"] +metal_metro = "da" # Use an existing project: # metal_create_project = false diff --git a/variables.tf b/variables.tf index f67aaea..a61a2b3 100644 --- a/variables.tf +++ b/variables.tf @@ -2,10 +2,9 @@ variable "metal_auth_token" { description = "Your metal API key" } -# for best results deploy all hosts in the same facility - list a single facility -variable "metal_facilities" { - description = "Metal facilities: US East(ewr1), US West(sjc1), Tokyo (nrt1) or EU(ams1). Default: ewr1" - default = ["sjc1"] +variable "metal_metro" { + description = "Metal Metro (https://metal.equinix.com/developers/docs/locations/metros/)" + default = "da" } variable "metal_project_id" {