[PATCH v3 17/36] terraform/gce: Update existing machine types and introduce new ones

Chuck Lever <[email protected]>
Newsgroups dev.linux.lists.kdevops
Message-ID <[email protected]>
From: Chuck Lever <[email protected]>

Add a spectrum of cost and performance choices, plus a new GPU
platform.

Reviewed-by: Luis Chamberlain <[email protected]>
Signed-off-by: Chuck Lever <[email protected]>
---
 terraform/gce/kconfigs/Kconfig.compute        |  8 +++
 .../gce/kconfigs/machines/Kconfig.a2-standard | 56 ++++++++++++++++++
 .../gce/kconfigs/machines/Kconfig.c3-standard | 41 +++++++++++++
 .../kconfigs/machines/Kconfig.c3d-standard    | 46 +++++++++++++++
 .../gce/kconfigs/machines/Kconfig.c4-standard | 23 +++++---
 .../kconfigs/machines/Kconfig.c4a-standard    | 57 ++++++++++++++++++
 .../kconfigs/machines/Kconfig.c4d-standard    | 51 ++++++++++++++++
 .../gce/kconfigs/machines/Kconfig.e2-highcpu  | 58 +++++++++++++++++++
 .../gce/kconfigs/machines/Kconfig.e2-standard | 58 +++++++++++++++++++
 .../gce/kconfigs/machines/Kconfig.n1-highcpu  | 55 ++++++++++++++++++
 .../gce/kconfigs/machines/Kconfig.n1-standard | 26 +++++----
 .../gce/kconfigs/machines/Kconfig.n2-highcpu  | 16 +++--
 .../gce/kconfigs/machines/Kconfig.n2-standard | 16 +++--
 .../gce/kconfigs/machines/Kconfig.n2d-highcpu | 15 +++--
 .../kconfigs/machines/Kconfig.n2d-standard    | 17 +++---
 .../gce/kconfigs/machines/Kconfig.n4-highcpu  | 16 +++--
 .../gce/kconfigs/machines/Kconfig.n4-standard | 16 +++--
 17 files changed, 503 insertions(+), 72 deletions(-)
 create mode 100644 terraform/gce/kconfigs/machines/Kconfig.a2-standard
 create mode 100644 terraform/gce/kconfigs/machines/Kconfig.c3-standard
 create mode 100644 terraform/gce/kconfigs/machines/Kconfig.c3d-standard
 create mode 100644 terraform/gce/kconfigs/machines/Kconfig.c4a-standard
 create mode 100644 terraform/gce/kconfigs/machines/Kconfig.c4d-standard
 create mode 100644 terraform/gce/kconfigs/machines/Kconfig.e2-highcpu
 create mode 100644 terraform/gce/kconfigs/machines/Kconfig.e2-standard
 create mode 100644 terraform/gce/kconfigs/machines/Kconfig.n1-highcpu

diff --git a/terraform/gce/kconfigs/Kconfig.compute b/terraform/gce/kconfigs/Kconfig.compute
index 0d3ae98e53d2..b0c999293cfd 100644
--- a/terraform/gce/kconfigs/Kconfig.compute
+++ b/terraform/gce/kconfigs/Kconfig.compute
@@ -55,14 +55,22 @@ config TERRAFORM_GCE_MACHINE_FAMILY_C4_STANDARD
 
 endchoice
 
+source "terraform/gce/kconfigs/machines/Kconfig.e2-highcpu"
+source "terraform/gce/kconfigs/machines/Kconfig.e2-standard"
 source "terraform/gce/kconfigs/machines/Kconfig.n1-standard"
+source "terraform/gce/kconfigs/machines/Kconfig.n1-highcpu"
 source "terraform/gce/kconfigs/machines/Kconfig.n2-standard"
 source "terraform/gce/kconfigs/machines/Kconfig.n2-highcpu"
 source "terraform/gce/kconfigs/machines/Kconfig.n2d-standard"
 source "terraform/gce/kconfigs/machines/Kconfig.n2d-highcpu"
 source "terraform/gce/kconfigs/machines/Kconfig.n4-standard"
 source "terraform/gce/kconfigs/machines/Kconfig.n4-highcpu"
+source "terraform/gce/kconfigs/machines/Kconfig.c3-standard"
+source "terraform/gce/kconfigs/machines/Kconfig.c3d-standard"
 source "terraform/gce/kconfigs/machines/Kconfig.c4-standard"
+source "terraform/gce/kconfigs/machines/Kconfig.c4a-standard"
+source "terraform/gce/kconfigs/machines/Kconfig.c4d-standard"
+source "terraform/gce/kconfigs/machines/Kconfig.a2-standard"
 
 choice
 	prompt "OS Distributor"
diff --git a/terraform/gce/kconfigs/machines/Kconfig.a2-standard b/terraform/gce/kconfigs/machines/Kconfig.a2-standard
new file mode 100644
index 000000000000..5e54db36b3ce
--- /dev/null
+++ b/terraform/gce/kconfigs/machines/Kconfig.a2-standard
@@ -0,0 +1,56 @@
+if TERRAFORM_GCE_MACHINE_FAMILY_A2_HIGHGPU
+
+choice
+	prompt "GCE Machine Type"
+	default TERRAFORM_GCE_MACHINE_A2_HIGHGPU_1G
+	help
+	  A2 High GPU machine types have a fixed number of A100
+	  40GB GPUs.
+
+config TERRAFORM_GCE_MACHINE_A2_HIGHGPU_1G
+	bool "a2-highgpu-1g"
+	help
+	  12 vCPUs, 85GB of memory, and 1 GPU with 40GB of GPU
+	  memory.
+
+config TERRAFORM_GCE_MACHINE_A2_HIGHGPU_2G
+	bool "a2-highgpu-2g"
+	help
+	  24 vCPUs, 170GB of memory, and 2 GPUs with 80GB of GPU
+	  memory.
+
+config TERRAFORM_GCE_MACHINE_A2_HIGHGPU_4G
+	bool "a2-highgpu-4g"
+	help
+	  48 vCPUs, 340GB of memory, and 4 GPUs with 160GB of GPU
+	  memory.
+
+config TERRAFORM_GCE_MACHINE_A2_HIGHGPU_8G
+	bool "a2-highgpu-8g"
+	help
+	  96 vCPUs, 680GB of memory, and 8 GPUs with 320GB of GPU
+	  memory.
+
+config TERRAFORM_GCE_MACHINE_A2_HIGHGPU_16G
+	bool "a2-highgpu-16g"
+	help
+	  96 vCPUs, 1360GB of memory, and 16 GPUs with 640GB of GPU
+	  memory.
+
+endchoice
+
+config TERRAFORM_GCE_MACHINE_TYPE
+	string
+	output yaml
+	default "a2-highgpu-1g" if TERRAFORM_GCE_MACHINE_A2_HIGHGPU_1G
+	default "a2-highgpu-2g" if TERRAFORM_GCE_MACHINE_A2_HIGHGPU_2G
+	default "a2-highgpu-4g" if TERRAFORM_GCE_MACHINE_A2_HIGHGPU_4G
+	default "a2-highgpu-8g" if TERRAFORM_GCE_MACHINE_A2_HIGHGPU_8G
+	default "a2-highgpu-16g" if TERRAFORM_GCE_MACHINE_A2_HIGHGPU_16G
+
+config TERRAFORM_GCE_IMAGE_TYPE
+	string
+	output yaml
+	default "pd-balanced"
+
+endif # TERRAFORM_GCE_MACHINE_FAMILY_A2_HIGHGPU
diff --git a/terraform/gce/kconfigs/machines/Kconfig.c3-standard b/terraform/gce/kconfigs/machines/Kconfig.c3-standard
new file mode 100644
index 000000000000..183ac315cabf
--- /dev/null
+++ b/terraform/gce/kconfigs/machines/Kconfig.c3-standard
@@ -0,0 +1,41 @@
+if TERRAFORM_GCE_MACHINE_FAMILY_C3_STANDARD
+
+choice
+	prompt "GCE Machine Type"
+	default TERRAFORM_GCE_MACHINE_C3_STANDARD_4
+	help
+	  C3 VMs are powered by the 4th generation Intel Xeon
+	  Scalable processors (code-named Sapphire Rapids), DDR5
+	  memory, and Titanium, enabling higher levels of networking
+	  performance, isolation and security.
+
+config TERRAFORM_GCE_MACHINE_C3_STANDARD_4
+	bool "c3-standard-4"
+	help
+	  4 vCPUs (2 cores) and 16GB of memory.
+
+config TERRAFORM_GCE_MACHINE_C3_STANDARD_8
+	bool "c3-standard-8"
+	help
+	  8 vCPUs (4 cores) and 32GB of memory.
+
+config TERRAFORM_GCE_MACHINE_C3_STANDARD_22
+	bool "c3-standard-22"
+	help
+	  22 vCPUs (11 cores) and 88GB of memory.
+
+endchoice
+
+config TERRAFORM_GCE_MACHINE_TYPE
+	string
+	output yaml
+	default "c3-standard-4" if TERRAFORM_GCE_MACHINE_C3_STANDARD_4
+	default "c3-standard-8" if TERRAFORM_GCE_MACHINE_C3_STANDARD_8
+	default "c3-standard-22" if TERRAFORM_GCE_MACHINE_C3_STANDARD_22
+
+config TERRAFORM_GCE_IMAGE_TYPE
+	string
+	output yaml
+	default "hyperdisk-balanced"
+
+endif # TERRAFORM_GCE_MACHINE_FAMILY_C3_STANDARD
diff --git a/terraform/gce/kconfigs/machines/Kconfig.c3d-standard b/terraform/gce/kconfigs/machines/Kconfig.c3d-standard
new file mode 100644
index 000000000000..4af821e5a14e
--- /dev/null
+++ b/terraform/gce/kconfigs/machines/Kconfig.c3d-standard
@@ -0,0 +1,46 @@
+if TERRAFORM_GCE_MACHINE_FAMILY_C3D_STANDARD
+
+choice
+	prompt "GCE Machine Type"
+	default TERRAFORM_GCE_MACHINE_C3D_STANDARD_4
+	help
+	  C3D VMs are powered by the 4th-gen AMD EPYC (Genoa)
+	  processor. C3D uses Titanium, enabling higher levels
+	  of networking performance, isolation and security.
+
+config TERRAFORM_GCE_MACHINE_C3D_STANDARD_4
+	bool "c3d-standard-4"
+	help
+	  4 vCPUs (2 cores) and 16GB of memory.
+
+config TERRAFORM_GCE_MACHINE_C3D_STANDARD_8
+	bool "c3d-standard-8"
+	help
+	  8 vCPUs (4 cores) and 32GB of memory.
+
+config TERRAFORM_GCE_MACHINE_C3D_STANDARD_16
+	bool "c3d-standard-16"
+	help
+	  16 vCPUs (8 cores) and 64GB of memory.
+
+config TERRAFORM_GCE_MACHINE_C3D_STANDARD_30
+	bool "c3d-standard-30"
+	help
+	  30 vCPUs (15 cores) and 120GB of memory.
+
+endchoice
+
+config TERRAFORM_GCE_MACHINE_TYPE
+	string
+	output yaml
+	default "c3d-standard-4" if TERRAFORM_GCE_MACHINE_C3D_STANDARD_4
+	default "c3d-standard-8" if TERRAFORM_GCE_MACHINE_C3D_STANDARD_8
+	default "c3d-standard-16" if TERRAFORM_GCE_MACHINE_C3D_STANDARD_16
+	default "c3d-standard-30" if TERRAFORM_GCE_MACHINE_C3D_STANDARD_30
+
+config TERRAFORM_GCE_IMAGE_TYPE
+	string
+	output yaml
+	default "hyperdisk-balanced"
+
+endif # TERRAFORM_GCE_MACHINE_FAMILY_C3D_STANDARD
diff --git a/terraform/gce/kconfigs/machines/Kconfig.c4-standard b/terraform/gce/kconfigs/machines/Kconfig.c4-standard
index 75c2eed2d111..3ec7f4ec1620 100644
--- a/terraform/gce/kconfigs/machines/Kconfig.c4-standard
+++ b/terraform/gce/kconfigs/machines/Kconfig.c4-standard
@@ -4,35 +4,39 @@ choice
 	prompt "GCE Machine Type"
 	default TERRAFORM_GCE_MACHINE_C4_STANDARD_4
 	help
-	  This option sets the GCE machine type. For other machine
-	  types, refer to this page:
-
-	  https://cloud.google.com/compute/docs/machine-types
+	  C4 VMs are powered by 6th generation (code-named Granite
+	  Rapids) or 5th generation (code-named Emerald Rapids)
+	  Intel Xeon Scalable processors and Titanium.
 
 config TERRAFORM_GCE_MACHINE_C4_STANDARD_2
 	bool "c4-standard-2"
 	help
-	  2 vCPU (1 core) and 7GB of memory.
+	  2 vCPUs (1 core) and 7GB of memory.
 
 config TERRAFORM_GCE_MACHINE_C4_STANDARD_4
 	bool "c4-standard-4"
 	help
-	  4 vCPU (2 core) and 15GB of memory.
+	  4 vCPUs (2 core) and 15GB of memory.
 
 config TERRAFORM_GCE_MACHINE_C4_STANDARD_8
 	bool "c4-standard-8"
 	help
-	  8 vCPU (4 cores) and 30GB of memory.
+	  8 vCPUs (4 cores) and 30GB of memory.
 
 config TERRAFORM_GCE_MACHINE_C4_STANDARD_16
 	bool "c4-standard-16"
 	help
-	  16 vCPU (8 cores) and 60GB of memory.
+	  16 vCPUs (8 cores) and 60GB of memory.
 
 config TERRAFORM_GCE_MACHINE_C4_STANDARD_24
 	bool "c4-standard-24"
 	help
-	  24 vCPU (12 cores) and 90GB of memory.
+	  24 vCPUs (12 cores) and 90GB of memory.
+
+config TERRAFORM_GCE_MACHINE_C4_STANDARD_32
+	bool "c4-standard-32"
+	help
+	  32 vCPUs (16 cores) and 120 of memory.
 
 endchoice
 
@@ -44,6 +48,7 @@ config TERRAFORM_GCE_MACHINE_TYPE
 	default "c4-standard-8" if TERRAFORM_GCE_MACHINE_C4_STANDARD_8
 	default "c4-standard-16" if TERRAFORM_GCE_MACHINE_C4_STANDARD_16
 	default "c4-standard-24" if TERRAFORM_GCE_MACHINE_C4_STANDARD_24
+	default "c4-standard-32" if TERRAFORM_GCE_MACHINE_C4_STANDARD_32
 
 config TERRAFORM_GCE_IMAGE_TYPE
 	string
diff --git a/terraform/gce/kconfigs/machines/Kconfig.c4a-standard b/terraform/gce/kconfigs/machines/Kconfig.c4a-standard
new file mode 100644
index 000000000000..3a486fe4a6c3
--- /dev/null
+++ b/terraform/gce/kconfigs/machines/Kconfig.c4a-standard
@@ -0,0 +1,57 @@
+if TERRAFORM_GCE_MACHINE_FAMILY_C4A_STANDARD
+
+choice
+	prompt "GCE Machine Type"
+	default TERRAFORM_GCE_MACHINE_C4A_STANDARD_4
+	help
+	  C4A VMs are powered by Google's first Arm-based Axion™
+	  processor, DDR5 memory, and local Titanium SSDs.
+
+config TERRAFORM_GCE_MACHINE_C4A_STANDARD_1
+	bool "c4a-standard-1"
+	help
+	  1 vCPU and 4GB of memory.
+
+config TERRAFORM_GCE_MACHINE_C4A_STANDARD_2
+	bool "c4a-standard-2"
+	help
+	  2 vCPUs and 8GB of memory.
+
+config TERRAFORM_GCE_MACHINE_C4A_STANDARD_4
+	bool "c4a-standard-4"
+	help
+	  4 vCPUs and 16GB of memory.
+
+config TERRAFORM_GCE_MACHINE_C4A_STANDARD_8
+	bool "c4a-standard-8"
+	help
+	  8 vCPUs and 32GB of memory.
+
+config TERRAFORM_GCE_MACHINE_C4A_STANDARD_16
+	bool "c4a-standard-16"
+	help
+	  16 vCPUs and 64GB of memory.
+
+config TERRAFORM_GCE_MACHINE_C4A_STANDARD_32
+	bool "c4a-standard-32"
+	help
+	  32 vCPUs and 128GB of memory.
+
+endchoice
+
+config TERRAFORM_GCE_MACHINE_TYPE
+	string
+	output yaml
+	default "c4a-standard-1" if TERRAFORM_GCE_MACHINE_C4A_STANDARD_1
+	default "c4a-standard-2" if TERRAFORM_GCE_MACHINE_C4A_STANDARD_2
+	default "c4a-standard-4" if TERRAFORM_GCE_MACHINE_C4A_STANDARD_4
+	default "c4a-standard-8" if TERRAFORM_GCE_MACHINE_C4A_STANDARD_8
+	default "c4a-standard-16" if TERRAFORM_GCE_MACHINE_C4A_STANDARD_16
+	default "c4a-standard-32" if TERRAFORM_GCE_MACHINE_C4A_STANDARD_32
+
+config TERRAFORM_GCE_IMAGE_TYPE
+	string
+	output yaml
+	default "hyperdisk-balanced"
+
+endif # TERRAFORM_GCE_MACHINE_FAMILY_C4A_STANDARD
diff --git a/terraform/gce/kconfigs/machines/Kconfig.c4d-standard b/terraform/gce/kconfigs/machines/Kconfig.c4d-standard
new file mode 100644
index 000000000000..6d7b4bb96c8b
--- /dev/null
+++ b/terraform/gce/kconfigs/machines/Kconfig.c4d-standard
@@ -0,0 +1,51 @@
+if TERRAFORM_GCE_MACHINE_FAMILY_C4D_STANDARD
+
+choice
+	prompt "GCE Machine Type"
+	default TERRAFORM_GCE_MACHINE_C4D_STANDARD_4
+	help
+	  C4D VMs are powered by the fifth generation AMD EPYC Turin
+	  processor and Titanium.
+
+config TERRAFORM_GCE_MACHINE_C4D_STANDARD_2
+	bool "c4d-standard-2"
+	help
+	  2 vCPUs (1 core) and 7GB of memory.
+
+config TERRAFORM_GCE_MACHINE_C4D_STANDARD_4
+	bool "c4d-standard-4"
+	help
+	  4 vCPUs (2 core) and 15GB of memory.
+
+config TERRAFORM_GCE_MACHINE_C4D_STANDARD_8
+	bool "c4d-standard-8"
+	help
+	  8 vCPUs (4 cores) and 31GB of memory.
+
+config TERRAFORM_GCE_MACHINE_C4D_STANDARD_16
+	bool "c4d-standard-16"
+	help
+	  16 vCPUs (8 cores) and 62GB of memory.
+
+config TERRAFORM_GCE_MACHINE_C4D_STANDARD_24
+	bool "c4d-standard-24"
+	help
+	  32 vCPUs (16 cores) and 124GB of memory.
+
+endchoice
+
+config TERRAFORM_GCE_MACHINE_TYPE
+	string
+	output yaml
+	default "c4d-standard-2" if TERRAFORM_GCE_MACHINE_C4D_STANDARD_2
+	default "c4d-standard-4" if TERRAFORM_GCE_MACHINE_C4D_STANDARD_4
+	default "c4d-standard-8" if TERRAFORM_GCE_MACHINE_C4D_STANDARD_8
+	default "c4d-standard-16" if TERRAFORM_GCE_MACHINE_C4D_STANDARD_16
+	default "c4d-standard-32" if TERRAFORM_GCE_MACHINE_C4D_STANDARD_32
+
+config TERRAFORM_GCE_IMAGE_TYPE
+	string
+	output yaml
+	default "hyperdisk-balanced"
+
+endif # TERRAFORM_GCE_MACHINE_FAMILY_C4D_STANDARD
diff --git a/terraform/gce/kconfigs/machines/Kconfig.e2-highcpu b/terraform/gce/kconfigs/machines/Kconfig.e2-highcpu
new file mode 100644
index 000000000000..eb401451b3c8
--- /dev/null
+++ b/terraform/gce/kconfigs/machines/Kconfig.e2-highcpu
@@ -0,0 +1,58 @@
+if TERRAFORM_GCE_MACHINE_FAMILY_E2_HIGHCPU
+
+choice
+	prompt "GCE Machine type"
+	default TERRAFORM_GCE_MACHINE_E2_HIGHCPU_8
+	help
+	  The E2 machine series offers both Intel and AMD EPYC
+	  processors, selected for you at the time of VM creation.
+	  Machine types in this series are available in all regions
+	  and zones and support a virtio memory balloon device.
+
+config TERRAFORM_GCE_MACHINE_E2_HIGHCPU_2
+	bool "e2-highcpu-2"
+	depends on TARGET_ARCH_X86_64
+	help
+	  2 vCPUs (1 core) and 2GB of memory.
+
+config TERRAFORM_GCE_MACHINE_E2_HIGHCPU_4
+	bool "e2-highcpu-4"
+	depends on TARGET_ARCH_X86_64
+	help
+	  4 vCPUs (2 cores) and 4GB of memory.
+
+config TERRAFORM_GCE_MACHINE_E2_HIGHCPU_8
+	bool "e2-highcpu-8"
+	depends on TARGET_ARCH_X86_64
+	help
+	  8 vCPUs (4 cores) and 8GB of memory.
+
+config TERRAFORM_GCE_MACHINE_E2_HIGHCPU_16
+	bool "e2-highcpu-16"
+	depends on TARGET_ARCH_X86_64
+	help
+	  16 vCPUs (8 cores) and 16GB of memory.
+
+config TERRAFORM_GCE_MACHINE_E2_HIGHCPU_32
+	bool "e2-highcpu-32"
+	depends on TARGET_ARCH_X86_64
+	help
+	  32 vCPUs (16 cores) and 32GB of memory.
+
+endchoice
+
+config TERRAFORM_GCE_MACHINE_TYPE
+	string
+	output yaml
+	default "e2-highcpu-2" if TERRAFORM_GCE_MACHINE_E2_HIGHCPU_2
+	default "e2-highcpu-4" if TERRAFORM_GCE_MACHINE_E2_HIGHCPU_4
+	default "e2-highcpu-8" if TERRAFORM_GCE_MACHINE_E2_HIGHCPU_8
+	default "e2-highcpu-16" if TERRAFORM_GCE_MACHINE_E2_HIGHCPU_16
+	default "e2-highcpu-32" if TERRAFORM_GCE_MACHINE_E2_HIGHCPU_32
+
+config TERRAFORM_GCE_IMAGE_TYPE
+	string
+	output yaml
+	default "pd-balanced"
+
+endif # TERRAFORM_GCE_MACHINE_FAMILY_E2_HIGHCPU
diff --git a/terraform/gce/kconfigs/machines/Kconfig.e2-standard b/terraform/gce/kconfigs/machines/Kconfig.e2-standard
new file mode 100644
index 000000000000..26180f841d5a
--- /dev/null
+++ b/terraform/gce/kconfigs/machines/Kconfig.e2-standard
@@ -0,0 +1,58 @@
+if TERRAFORM_GCE_MACHINE_FAMILY_E2_STANDARD
+
+choice
+	prompt "GCE Machine type"
+	default TERRAFORM_GCE_MACHINE_E2_STANDARD_8
+	help
+	  The E2 machine series offers both Intel and AMD EPYC
+	  processors, selected for you at the time of VM creation.
+	  Machine types in this series are available in all regions
+	  and zones and support a virtio memory balloon device.
+
+config TERRAFORM_GCE_MACHINE_E2_STANDARD_2
+	bool "e2-standard-2"
+	depends on TARGET_ARCH_X86_64
+	help
+	  2 vCPUs (1 core) and 8GB of memory.
+
+config TERRAFORM_GCE_MACHINE_E2_STANDARD_4
+	bool "e2-standard-4"
+	depends on TARGET_ARCH_X86_64
+	help
+	  4 vCPUs (2 cores) and 16GB of memory.
+
+config TERRAFORM_GCE_MACHINE_E2_STANDARD_8
+	bool "e2-standard-8"
+	depends on TARGET_ARCH_X86_64
+	help
+	  8 vCPUs (4 cores) and 32GB of memory.
+
+config TERRAFORM_GCE_MACHINE_E2_STANDARD_16
+	bool "e2-standard-16"
+	depends on TARGET_ARCH_X86_64
+	help
+	  16 vCPUs (8 cores) and 64GB of memory.
+
+config TERRAFORM_GCE_MACHINE_E2_STANDARD_32
+	bool "e2-standard-32"
+	depends on TARGET_ARCH_X86_64
+	help
+	  32 vCPUs (16 cores) and 128GB of memory.
+
+endchoice
+
+config TERRAFORM_GCE_MACHINE_TYPE
+	string
+	output yaml
+	default "e2-standard-2" if TERRAFORM_GCE_MACHINE_E2_STANDARD_2
+	default "e2-standard-4" if TERRAFORM_GCE_MACHINE_E2_STANDARD_4
+	default "e2-standard-8" if TERRAFORM_GCE_MACHINE_E2_STANDARD_8
+	default "e2-standard-16" if TERRAFORM_GCE_MACHINE_E2_STANDARD_16
+	default "e2-standard-32" if TERRAFORM_GCE_MACHINE_E2_STANDARD_32
+
+config TERRAFORM_GCE_IMAGE_TYPE
+	string
+	output yaml
+	default "pd-balanced"
+
+endif # TERRAFORM_GCE_MACHINE_FAMILY_E2_STANDARD
diff --git a/terraform/gce/kconfigs/machines/Kconfig.n1-highcpu b/terraform/gce/kconfigs/machines/Kconfig.n1-highcpu
new file mode 100644
index 000000000000..7684b2961962
--- /dev/null
+++ b/terraform/gce/kconfigs/machines/Kconfig.n1-highcpu
@@ -0,0 +1,55 @@
+if TERRAFORM_GCE_MACHINE_FAMILY_N1_HIGHCPU
+
+choice
+	prompt "GCE Machine type"
+	default TERRAFORM_GCE_MACHINE_N1_HIGHCPU_8
+	help
+	  The N1 machine series is Compute Engine's first generation
+	  general-purpose machine series available on Intel Skylake,
+	  Broadwell, Haswell, Sandy Bridge, and Ivy Bridge CPU
+	  platforms.
+
+config TERRAFORM_GCE_MACHINE_N1_HIGHCPU_2
+	bool "n1-highcpu-2"
+	help
+	  2 vCPUs (1 core) and 1.8GB of memory.
+
+config TERRAFORM_GCE_MACHINE_N1_HIGHCPU_4
+	bool "n1-highcpu-4"
+	help
+	  4 vCPUs (2 cores) and 3.6GB of memory.
+
+config TERRAFORM_GCE_MACHINE_N1_HIGHCPU_8
+	bool "n1-highcpu-8"
+	help
+	  8 vCPUs (4 cores) and 7.2GB of memory.
+
+config TERRAFORM_GCE_MACHINE_N1_HIGHCPU_16
+	bool "n1-highcpu-16"
+	depends on TARGET_ARCH_X86_64
+	help
+	  16 vCPUs (8 cores) and 14.4GB of memory.
+
+config TERRAFORM_GCE_MACHINE_N1_HIGHCPU_32
+	bool "n1-highcpu-32"
+	depends on TARGET_ARCH_X86_64
+	help
+	  32 vCPUs (16 cores) and 28.8GB of memory.
+
+endchoice
+
+config TERRAFORM_GCE_MACHINE_TYPE
+	string
+	output yaml
+	default "n1-highcpu-2" if TERRAFORM_GCE_MACHINE_N1_HIGHCPU_2
+	default "n1-highcpu-4" if TERRAFORM_GCE_MACHINE_N1_HIGHCPU_4
+	default "n1-highcpu-8" if TERRAFORM_GCE_MACHINE_N1_HIGHCPU_8
+	default "n1-highcpu-16" if TERRAFORM_GCE_MACHINE_N1_HIGHCPU_16
+	default "n1-highcpu-32" if TERRAFORM_GCE_MACHINE_N1_HIGHCPU_32
+
+config TERRAFORM_GCE_IMAGE_TYPE
+	string
+	output yaml
+	default "pd-balanced"
+
+endif # TERRAFORM_GCE_MACHINE_FAMILY_N1_HIGHCPU
diff --git a/terraform/gce/kconfigs/machines/Kconfig.n1-standard b/terraform/gce/kconfigs/machines/Kconfig.n1-standard
index 65dbd672893d..7201231c74a0 100644
--- a/terraform/gce/kconfigs/machines/Kconfig.n1-standard
+++ b/terraform/gce/kconfigs/machines/Kconfig.n1-standard
@@ -4,12 +4,10 @@ choice
 	prompt "GCE Machine type"
 	default TERRAFORM_GCE_MACHINE_N1_STANDARD_8
 	help
-	  This option sets the GCE machine type. For other machine types,
-	  refer to this page:
-
-	  https://cloud.google.com/compute/docs/machine-types
-
-	  Documentation: https://registry.terraform.io/providers/hashicorp/google/latest/docs/resources/compute_instance#machine_type
+	  The N1 machine series is Compute Engine's first generation
+	  general-purpose machine series available on Intel Skylake,
+	  Broadwell, Haswell, Sandy Bridge, and Ivy Bridge CPU
+	  platforms.
 
 config TERRAFORM_GCE_MACHINE_N1_STANDARD_1
 	bool "n1-standard-1"
@@ -19,23 +17,30 @@ config TERRAFORM_GCE_MACHINE_N1_STANDARD_1
 config TERRAFORM_GCE_MACHINE_N1_STANDARD_2
 	bool "n1-standard-2"
 	help
-	  2 vCPU (1 core) and 7.5GB of memory.
+	  2 vCPUs (1 core) and 7.5GB of memory.
 
 config TERRAFORM_GCE_MACHINE_N1_STANDARD_4
 	bool "n1-standard-4"
 	help
-	  4 vCPU (2 cores) and 15GB of memory.
+	  4 vCPUs (2 cores) and 15GB of memory.
 
 config TERRAFORM_GCE_MACHINE_N1_STANDARD_8
 	bool "n1-standard-8"
 	help
-	  8 vCPU (4 cores) and 30GB of memory.
+	  8 vCPUs (4 cores) and 30GB of memory.
 
 config TERRAFORM_GCE_MACHINE_N1_STANDARD_16
 	bool "n1-standard-16"
 	depends on TARGET_ARCH_X86_64
 	help
-	  16 vCPU (8 cores) and 60GB of memory.
+	  16 vCPUs (8 cores) and 60GB of memory.
+
+config TERRAFORM_GCE_MACHINE_N1_STANDARD_32
+	bool "n1-standard-32"
+	depends on TARGET_ARCH_X86_64
+	help
+	  32 vCPUs (16 cores) and 120GB of memory.
+
 endchoice
 
 config TERRAFORM_GCE_MACHINE_TYPE
@@ -46,6 +51,7 @@ config TERRAFORM_GCE_MACHINE_TYPE
 	default "n1-standard-4" if TERRAFORM_GCE_MACHINE_N1_STANDARD_4
 	default "n1-standard-8" if TERRAFORM_GCE_MACHINE_N1_STANDARD_8
 	default "n1-standard-16" if TERRAFORM_GCE_MACHINE_N1_STANDARD_16
+	default "n1-standard-32" if TERRAFORM_GCE_MACHINE_N1_STANDARD_32
 
 config TERRAFORM_GCE_IMAGE_TYPE
 	string
diff --git a/terraform/gce/kconfigs/machines/Kconfig.n2-highcpu b/terraform/gce/kconfigs/machines/Kconfig.n2-highcpu
index 8aa6893c7252..83823753dc93 100644
--- a/terraform/gce/kconfigs/machines/Kconfig.n2-highcpu
+++ b/terraform/gce/kconfigs/machines/Kconfig.n2-highcpu
@@ -4,40 +4,38 @@ choice
 	prompt "GCE Machine type"
 	default TERRAFORM_GCE_MACHINE_N2_HIGHCPU_4
 	help
-	  This option sets the GCE machine type. For other machine
-	  types, refer to this page:
-
-	  https://cloud.google.com/compute/docs/machine-types
+	  The N2 machine series can run on either Intel Cascade Lake
+	  (on smaller configurations) or Intel Ice Lake.
 
 config TERRAFORM_GCE_MACHINE_N2_HIGHCPU_2
 	bool "n2-highcpu-2"
 	depends on TARGET_ARCH_X86_64
 	help
-	  2 vCPU (1 core) and 2GB of memory.
+	  2 vCPUs (1 core) and 2GB of memory.
 
 config TERRAFORM_GCE_MACHINE_N2_HIGHCPU_4
 	bool "n2-highcpu-4"
 	depends on TARGET_ARCH_X86_64
 	help
-	  4 vCPU (2 core) and 4GB of memory.
+	  4 vCPUs (2 cores) and 4GB of memory.
 
 config TERRAFORM_GCE_MACHINE_N2_HIGHCPU_8
 	bool "n2-highcpu-8"
 	depends on TARGET_ARCH_X86_64
 	help
-	  8 vCPU (4 cores) and 8GB of memory.
+	  8 vCPUs (4 cores) and 8GB of memory.
 
 config TERRAFORM_GCE_MACHINE_N2_HIGHCPU_16
 	bool "n2-highcpu-16"
 	depends on TARGET_ARCH_X86_64
 	help
-	  16 vCPU (8 cores) and 16GB of memory.
+	  16 vCPUs (8 cores) and 16GB of memory.
 
 config TERRAFORM_GCE_MACHINE_N2_HIGHCPU_32
 	bool "n2-highcpu-32"
 	depends on TARGET_ARCH_X86_64
 	help
-	  32 vCPU (16 cores) and 32GB of memory.
+	  32 vCPUs (16 cores) and 32GB of memory.
 
 endchoice
 
diff --git a/terraform/gce/kconfigs/machines/Kconfig.n2-standard b/terraform/gce/kconfigs/machines/Kconfig.n2-standard
index b7b2d68fa522..a485a754ab44 100644
--- a/terraform/gce/kconfigs/machines/Kconfig.n2-standard
+++ b/terraform/gce/kconfigs/machines/Kconfig.n2-standard
@@ -4,40 +4,38 @@ choice
 	prompt "GCE Machine type"
 	default TERRAFORM_GCE_MACHINE_N2_STANDARD_8
 	help
-	  This option sets the GCE machine type. For other machine
-	  types, refer to this page:
-
-	  https://cloud.google.com/compute/docs/machine-types
+	  The N2 machine series can run on either Intel Cascade Lake
+	  (on smaller configurations) or Intel Ice Lake.
 
 config TERRAFORM_GCE_MACHINE_N2_STANDARD_2
 	bool "n2-standard-2"
 	depends on TARGET_ARCH_X86_64
 	help
-	  2 vCPU (1 core) and 8GB of memory.
+	  2 vCPUs (1 core) and 8GB of memory.
 
 config TERRAFORM_GCE_MACHINE_N2_STANDARD_4
 	bool "n2-standard-4"
 	depends on TARGET_ARCH_X86_64
 	help
-	  4 vCPU (2 core) and 16GB of memory.
+	  4 vCPUs (2 cores) and 16GB of memory.
 
 config TERRAFORM_GCE_MACHINE_N2_STANDARD_8
 	bool "n2-standard-8"
 	depends on TARGET_ARCH_X86_64
 	help
-	  8 vCPU (4 cores) and 32GB of memory.
+	  8 vCPUs (4 cores) and 32GB of memory.
 
 config TERRAFORM_GCE_MACHINE_N2_STANDARD_16
 	bool "n2-standard-16"
 	depends on TARGET_ARCH_X86_64
 	help
-	  16 vCPU (8 cores) and 64GB of memory.
+	  16 vCPUs (8 cores) and 64GB of memory.
 
 config TERRAFORM_GCE_MACHINE_N2_STANDARD_32
 	bool "n2-standard-32"
 	depends on TARGET_ARCH_X86_64
 	help
-	  32 vCPU (16 cores) and 128GB of memory.
+	  32 vCPUs (16 cores) and 128GB of memory.
 
 endchoice
 
diff --git a/terraform/gce/kconfigs/machines/Kconfig.n2d-highcpu b/terraform/gce/kconfigs/machines/Kconfig.n2d-highcpu
index 3050349416fd..e3cf9c6e5c41 100644
--- a/terraform/gce/kconfigs/machines/Kconfig.n2d-highcpu
+++ b/terraform/gce/kconfigs/machines/Kconfig.n2d-highcpu
@@ -4,10 +4,9 @@ choice
 	prompt "GCE Machine type"
 	default TERRAFORM_GCE_MACHINE_N2D_HIGHCPU_4
 	help
-	  This option sets the GCE machine type. For other machine
-	  types, refer to this page:
-
-	  https://cloud.google.com/compute/docs/machine-types
+	  The N2D machine series can run on either AMD EPYC Milan or
+	  AMD EPYC Rome processors. The third generation AMD EPYC
+	  Milan processor is available only in specific regions and zones.
 
 config TERRAFORM_GCE_MACHINE_N2D_HIGHCPU_2
 	bool "n2d-highcpu-2"
@@ -19,25 +18,25 @@ config TERRAFORM_GCE_MACHINE_N2D_HIGHCPU_4
 	bool "n2d-highcpu-4"
 	depends on TARGET_ARCH_X86_64
 	help
-	  4 vCPU (2 core) and 4GB of memory.
+	  4 vCPUs (2 cores) and 4GB of memory.
 
 config TERRAFORM_GCE_MACHINE_N2D_HIGHCPU_8
 	bool "n2d-highcpu-8"
 	depends on TARGET_ARCH_X86_64
 	help
-	  8 vCPU (4 cores) and 8GB of memory.
+	  8 vCPUs (4 cores) and 8GB of memory.
 
 config TERRAFORM_GCE_MACHINE_N2D_HIGHCPU_16
 	bool "n2d-highcpu-16"
 	depends on TARGET_ARCH_X86_64
 	help
-	  16 vCPU (8 cores) and 16GB of memory.
+	  16 vCPUs (8 cores) and 16GB of memory.
 
 config TERRAFORM_GCE_MACHINE_N2D_HIGHCPU_32
 	bool "n2d-highcpu-32"
 	depends on TARGET_ARCH_X86_64
 	help
-	  32 vCPU (16 cores) and 32GB of memory.
+	  32 vCPUs (16 cores) and 32GB of memory.
 
 endchoice
 
diff --git a/terraform/gce/kconfigs/machines/Kconfig.n2d-standard b/terraform/gce/kconfigs/machines/Kconfig.n2d-standard
index 08744d396595..4f86e0b7d3cf 100644
--- a/terraform/gce/kconfigs/machines/Kconfig.n2d-standard
+++ b/terraform/gce/kconfigs/machines/Kconfig.n2d-standard
@@ -4,40 +4,39 @@ choice
 	prompt "GCE Machine type"
 	default TERRAFORM_GCE_MACHINE_N2D_STANDARD_4
 	help
-	  This option sets the GCE machine type. For other machine
-	  types, refer to this page:
-
-	  https://cloud.google.com/compute/docs/machine-types
+	  The N2D machine series can run on either AMD EPYC Milan or
+	  AMD EPYC Rome processors. The third generation AMD EPYC
+	  Milan processor is available only in specific regions and zones.
 
 config TERRAFORM_GCE_MACHINE_N2D_STANDARD_2
 	bool "n2d-standard-2"
 	depends on TARGET_ARCH_X86_64
 	help
-	  2 vCPU (1 core) and 8GB of memory.
+	  2 vCPUs (1 core) and 8GB of memory.
 
 config TERRAFORM_GCE_MACHINE_N2D_STANDARD_4
 	bool "n2d-standard-4"
 	depends on TARGET_ARCH_X86_64
 	help
-	  4 vCPU (2 core) and 16GB of memory.
+	  4 vCPUs (2 cores) and 16GB of memory.
 
 config TERRAFORM_GCE_MACHINE_N2D_STANDARD_8
 	bool "n2d-standard-8"
 	depends on TARGET_ARCH_X86_64
 	help
-	  8 vCPU (4 cores) and 32GB of memory.
+	  8 vCPUs (4 cores) and 32GB of memory.
 
 config TERRAFORM_GCE_MACHINE_N2D_STANDARD_16
 	bool "n2d-standard-16"
 	depends on TARGET_ARCH_X86_64
 	help
-	  16 vCPU (8 cores) and 64GB of memory.
+	  16 vCPUs (8 cores) and 64GB of memory.
 
 config TERRAFORM_GCE_MACHINE_N2D_STANDARD_32
 	bool "n2d-standard-32"
 	depends on TARGET_ARCH_X86_64
 	help
-	  32 vCPU (16 cores) and 128GB of memory.
+	  32 vCPUs (16 cores) and 128GB of memory.
 
 endchoice
 
diff --git a/terraform/gce/kconfigs/machines/Kconfig.n4-highcpu b/terraform/gce/kconfigs/machines/Kconfig.n4-highcpu
index 9f871940a73b..880a386ea01d 100644
--- a/terraform/gce/kconfigs/machines/Kconfig.n4-highcpu
+++ b/terraform/gce/kconfigs/machines/Kconfig.n4-highcpu
@@ -4,35 +4,33 @@ choice
 	prompt "GCE Machine Type"
 	default TERRAFORM_GCE_MACHINE_N4_HIGHCPU_4
 	help
-	  This option sets the GCE machine type. For other machine
-	  types, refer to this page:
-
-	  https://cloud.google.com/compute/docs/machine-types
+	  N4 VMs are powered by the 5th generation Intel Xeon Scalable
+	  processors (code-named Emerald Rapids) and Titanium.
 
 config TERRAFORM_GCE_MACHINE_N4_HIGHCPU_2
 	bool "n4-highcpu-2"
 	help
-	  2 vCPU (1 core) and 4GB of memory.
+	  2 vCPUs (1 core) and 4GB of memory.
 
 config TERRAFORM_GCE_MACHINE_N4_HIGHCPU_4
 	bool "n4-highcpu-4"
 	help
-	  4 vCPU (2 core) and 8GB of memory.
+	  4 vCPUs (2 cores) and 8GB of memory.
 
 config TERRAFORM_GCE_MACHINE_N4_HIGHCPU_8
 	bool "n4-highcpu-8"
 	help
-	  8 vCPU (4 cores) and 16GB of memory.
+	  8 vCPUs (4 cores) and 16GB of memory.
 
 config TERRAFORM_GCE_MACHINE_N4_HIGHCPU_16
 	bool "n4-highcpu-16"
 	help
-	  16 vCPU (8 cores) and 32GB of memory.
+	  16 vCPUs (8 cores) and 32GB of memory.
 
 config TERRAFORM_GCE_MACHINE_N4_HIGHCPU_32
 	bool "n4-highcpu-32"
 	help
-	  32 vCPU (16 cores) and 64GB of memory.
+	  32 vCPUs (16 cores) and 64GB of memory.
 
 endchoice
 
diff --git a/terraform/gce/kconfigs/machines/Kconfig.n4-standard b/terraform/gce/kconfigs/machines/Kconfig.n4-standard
index d1d1202cbb7b..807f8638e865 100644
--- a/terraform/gce/kconfigs/machines/Kconfig.n4-standard
+++ b/terraform/gce/kconfigs/machines/Kconfig.n4-standard
@@ -4,35 +4,33 @@ choice
 	prompt "GCE Machine Type"
 	default TERRAFORM_GCE_MACHINE_N4_STANDARD_4
 	help
-	  This option sets the GCE machine type. For other machine
-	  types, refer to this page:
-
-	  https://cloud.google.com/compute/docs/machine-types
+	  N4 VMs are powered by the 5th generation Intel Xeon Scalable
+	  processors (code-named Emerald Rapids) and Titanium.
 
 config TERRAFORM_GCE_MACHINE_N4_STANDARD_2
 	bool "n4-standard-2"
 	help
-	  2 vCPU (1 core) and 8GB of memory.
+	  2 vCPUs (1 core) and 8GB of memory.
 
 config TERRAFORM_GCE_MACHINE_N4_STANDARD_4
 	bool "n4-standard-4"
 	help
-	  4 vCPU (2 core) and 16GB of memory.
+	  4 vCPUs (2 cores) and 16GB of memory.
 
 config TERRAFORM_GCE_MACHINE_N4_STANDARD_8
 	bool "n4-standard-8"
 	help
-	  8 vCPU (4 cores) and 32GB of memory.
+	  8 vCPUs (4 cores) and 32GB of memory.
 
 config TERRAFORM_GCE_MACHINE_N4_STANDARD_16
 	bool "n4-standard-16"
 	help
-	  16 vCPU (8 cores) and 64GB of memory.
+	  16 vCPUs (8 cores) and 64GB of memory.
 
 config TERRAFORM_GCE_MACHINE_N4_STANDARD_32
 	bool "n4-standard-32"
 	help
-	  32 vCPU (16 cores) and 128GB of memory.
+	  32 vCPUs (16 cores) and 128GB of memory.
 
 endchoice
 
-- 
2.51.0
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.