From e3205eba1cc3a56672750306e4c256d5c6724550 Mon Sep 17 00:00:00 2001 From: Alex Heye Date: Wed, 22 Dec 2021 18:32:26 +0000 Subject: [PATCH] Update DDN Exascaler to most recent commit Updating to af5a5b3 --- .../file-system/DDN-EXAScaler/README.md | 14 +-- .../file-system/DDN-EXAScaler/main.tf | 2 +- .../file-system/DDN-EXAScaler/module.json | 20 ++-- .../file-system/DDN-EXAScaler/variables.tf | 110 ++++++++++-------- 4 files changed, 84 insertions(+), 62 deletions(-) diff --git a/resources/third-party/file-system/DDN-EXAScaler/README.md b/resources/third-party/file-system/DDN-EXAScaler/README.md index 7b99f9a259..130b761f6d 100644 --- a/resources/third-party/file-system/DDN-EXAScaler/README.md +++ b/resources/third-party/file-system/DDN-EXAScaler/README.md @@ -41,7 +41,7 @@ No providers. | Name | Source | Version | |------|--------|---------| -| [ddn\_exascaler](#module\_ddn\_exascaler) | github.com/DDNStorage/exascaler-cloud-terraform//gcp | 9aed885 | +| [ddn\_exascaler](#module\_ddn\_exascaler) | github.com/DDNStorage/exascaler-cloud-terraform//gcp | af5a5b3 | ## Resources @@ -55,20 +55,20 @@ No resources. | [cls](#input\_cls) | Compute client properties |
object({
node_type = string
node_cpu = string
nic_type = string
node_count = number
public_ip = bool
})
|
{
"nic_type": "GVNIC",
"node_count": 0,
"node_cpu": "Intel Cascade Lake",
"node_type": "n2-standard-2",
"public_ip": true
}
| no | | [clt](#input\_clt) | Compute client target properties |
object({
disk_bus = string
disk_type = string
disk_size = number
disk_count = number
})
|
{
"disk_bus": "SCSI",
"disk_count": 0,
"disk_size": 256,
"disk_type": "pd-standard"
}
| no | | [fsname](#input\_fsname) | EXAScaler filesystem name, only alphanumeric characters are allowed, and the value must be 1-8 characters long | `string` | `"exacloud"` | no | -| [image](#input\_image) | Source image properties |
object({
project = string
name = string
})
|
{
"name": "exascaler-cloud-v522-centos7",
"project": "ddn-public"
}
| no | +| [image](#input\_image) | Source image properties |
object({
project = string
name = string
})
|
{
"name": "exascaler-cloud-v523-centos7",
"project": "ddn-public"
}
| no | | [local\_mount](#input\_local\_mount) | Mountpoint (at the client instances) for this EXAScaler system | `string` | `"/shared"` | no | | [mds](#input\_mds) | Metadata server properties |
object({
node_type = string
node_cpu = string
nic_type = string
node_count = number
public_ip = bool
})
|
{
"nic_type": "GVNIC",
"node_count": 1,
"node_cpu": "Intel Cascade Lake",
"node_type": "n2-standard-32",
"public_ip": true
}
| no | -| [mdt](#input\_mdt) | Metadata target properties |
object({
disk_bus = string
disk_type = string
disk_size = number
disk_count = number
})
|
{
"disk_bus": "SCSI",
"disk_count": 1,
"disk_size": 3500,
"disk_type": "pd-ssd"
}
| no | +| [mdt](#input\_mdt) | Metadata target properties |
object({
disk_bus = string
disk_type = string
disk_size = number
disk_count = number
disk_raid = bool
})
|
{
"disk_bus": "SCSI",
"disk_count": 1,
"disk_raid": false,
"disk_size": 3500,
"disk_type": "pd-ssd"
}
| no | | [mgs](#input\_mgs) | Management server properties |
object({
node_type = string
node_cpu = string
nic_type = string
node_count = number
public_ip = bool
})
|
{
"nic_type": "GVNIC",
"node_count": 1,
"node_cpu": "Intel Cascade Lake",
"node_type": "n2-standard-32",
"public_ip": true
}
| no | -| [mgt](#input\_mgt) | Management target properties |
object({
disk_bus = string
disk_type = string
disk_size = number
disk_count = number
})
|
{
"disk_bus": "SCSI",
"disk_count": 1,
"disk_size": 128,
"disk_type": "pd-standard"
}
| no | -| [mnt](#input\_mnt) | Monitoring target properties |
object({
disk_bus = string
disk_type = string
disk_size = number
disk_count = number
})
|
{
"disk_bus": "SCSI",
"disk_count": 1,
"disk_size": 128,
"disk_type": "pd-standard"
}
| no | +| [mgt](#input\_mgt) | Management target properties |
object({
disk_bus = string
disk_type = string
disk_size = number
disk_count = number
disk_raid = bool
})
|
{
"disk_bus": "SCSI",
"disk_count": 1,
"disk_raid": false,
"disk_size": 128,
"disk_type": "pd-standard"
}
| no | +| [mnt](#input\_mnt) | Monitoring target properties |
object({
disk_bus = string
disk_type = string
disk_size = number
disk_count = number
disk_raid = bool
})
|
{
"disk_bus": "SCSI",
"disk_count": 1,
"disk_raid": false,
"disk_size": 128,
"disk_type": "pd-standard"
}
| no | | [network](#input\_network) | Network options |
object({
routing = string
tier = string
id = string
auto = bool
mtu = number
new = bool
nat = bool
})
|
{
"auto": false,
"id": "projects/project-name/global/networks/network-name",
"mtu": 1500,
"nat": false,
"new": false,
"routing": "REGIONAL",
"tier": "STANDARD"
}
| no | | [network\_self\_link](#input\_network\_self\_link) | The self-link of the VPC network to where the system is connected. | `string` | `null` | no | | [oss](#input\_oss) | Object Storage server properties |
object({
node_type = string
node_cpu = string
nic_type = string
node_count = number
public_ip = bool
})
|
{
"nic_type": "GVNIC",
"node_count": 3,
"node_cpu": "Intel Cascade Lake",
"node_type": "n2-standard-16",
"public_ip": true
}
| no | -| [ost](#input\_ost) | Object Storage target properties |
object({
disk_bus = string
disk_type = string
disk_size = number
disk_count = number
})
|
{
"disk_bus": "SCSI",
"disk_count": 1,
"disk_size": 3500,
"disk_type": "pd-ssd"
}
| no | +| [ost](#input\_ost) | Object Storage target properties |
object({
disk_bus = string
disk_type = string
disk_size = number
disk_count = number
disk_raid = bool
})
|
{
"disk_bus": "SCSI",
"disk_count": 1,
"disk_raid": false,
"disk_size": 3500,
"disk_type": "pd-ssd"
}
| no | | [project\_id](#input\_project\_id) | Compute Platform project that will host the EXAScaler filesystem | `string` | n/a | yes | | [security](#input\_security) | Security options |
object({
admin = string
public_key = string
block_project_keys = bool
enable_local = bool
enable_ssh = bool
enable_http = bool
ssh_source_ranges = list(string)
http_source_ranges = list(string)
})
|
{
"admin": "stack",
"block_project_keys": false,
"enable_http": false,
"enable_local": false,
"enable_ssh": false,
"http_source_ranges": [
"0.0.0.0/0"
],
"public_key": "~/.ssh/id_rsa.pub",
"ssh_source_ranges": [
"0.0.0.0/0"
]
}
| no | -| [service\_account](#input\_service\_account) | Service account name used by deploy application |
object({
new = bool
name = string
})
|
{
"name": "default",
"new": false
}
| no | +| [service\_account](#input\_service\_account) | Service account name used by deploy application |
object({
new = bool
email = string
})
|
{
"email": null,
"new": false
}
| no | | [subnetwork](#input\_subnetwork) | Subnetwork properties. Ignored if subnetwork\_self\_link is supplied. |
object({
address = string
private = bool
id = string
new = bool
})
|
{
"address": "10.0.0.0/16",
"id": "projects/project-name/regions/region-name/subnetworks/subnetwork-name",
"new": false,
"private": true
}
| no | | [subnetwork\_address](#input\_subnetwork\_address) | The IP range of internal addresses for the subnetwork | `string` | `null` | no | | [subnetwork\_self\_link](#input\_subnetwork\_self\_link) | The self-link of the VPC subnetwork to where the system is connected. | `string` | `null` | no | diff --git a/resources/third-party/file-system/DDN-EXAScaler/main.tf b/resources/third-party/file-system/DDN-EXAScaler/main.tf index 316feeb555..381c28afc7 100644 --- a/resources/third-party/file-system/DDN-EXAScaler/main.tf +++ b/resources/third-party/file-system/DDN-EXAScaler/main.tf @@ -38,7 +38,7 @@ provider "google" { } module "ddn_exascaler" { - source = "github.com/DDNStorage/exascaler-cloud-terraform//gcp?ref=9aed885" + source = "github.com/DDNStorage/exascaler-cloud-terraform//gcp?ref=af5a5b3" fsname = var.fsname zone = var.zone diff --git a/resources/third-party/file-system/DDN-EXAScaler/module.json b/resources/third-party/file-system/DDN-EXAScaler/module.json index 2485577084..33ff284ea3 100644 --- a/resources/third-party/file-system/DDN-EXAScaler/module.json +++ b/resources/third-party/file-system/DDN-EXAScaler/module.json @@ -49,7 +49,7 @@ "type": "object({\n project = string\n name = string\n })", "description": "Source image properties", "default": { - "name": "exascaler-cloud-v522-centos7", + "name": "exascaler-cloud-v523-centos7", "project": "ddn-public" }, "required": false @@ -76,11 +76,12 @@ }, { "name": "mdt", - "type": "object({\n disk_bus = string\n disk_type = string\n disk_size = number\n disk_count = number\n })", + "type": "object({\n disk_bus = string\n disk_type = string\n disk_size = number\n disk_count = number\n disk_raid = bool\n })", "description": "Metadata target properties", "default": { "disk_bus": "SCSI", "disk_count": 1, + "disk_raid": false, "disk_size": 3500, "disk_type": "pd-ssd" }, @@ -101,11 +102,12 @@ }, { "name": "mgt", - "type": "object({\n disk_bus = string\n disk_type = string\n disk_size = number\n disk_count = number\n })", + "type": "object({\n disk_bus = string\n disk_type = string\n disk_size = number\n disk_count = number\n disk_raid = bool\n })", "description": "Management target properties", "default": { "disk_bus": "SCSI", "disk_count": 1, + "disk_raid": false, "disk_size": 128, "disk_type": "pd-standard" }, @@ -113,11 +115,12 @@ }, { "name": "mnt", - "type": "object({\n disk_bus = string\n disk_type = string\n disk_size = number\n disk_count = number\n })", + "type": "object({\n disk_bus = string\n disk_type = string\n disk_size = number\n disk_count = number\n disk_raid = bool\n })", "description": "Monitoring target properties", "default": { "disk_bus": "SCSI", "disk_count": 1, + "disk_raid": false, "disk_size": 128, "disk_type": "pd-standard" }, @@ -160,11 +163,12 @@ }, { "name": "ost", - "type": "object({\n disk_bus = string\n disk_type = string\n disk_size = number\n disk_count = number\n })", + "type": "object({\n disk_bus = string\n disk_type = string\n disk_size = number\n disk_count = number\n disk_raid = bool\n })", "description": "Object Storage target properties", "default": { "disk_bus": "SCSI", "disk_count": 1, + "disk_raid": false, "disk_size": 3500, "disk_type": "pd-ssd" }, @@ -199,10 +203,10 @@ }, { "name": "service_account", - "type": "object({\n new = bool\n name = string\n })", + "type": "object({\n new = bool\n email = string\n })", "description": "Service account name used by deploy application", "default": { - "name": "default", + "email": null, "new": false }, "required": false @@ -252,7 +256,7 @@ { "name": "ddn_exascaler", "source": "github.com/DDNStorage/exascaler-cloud-terraform//gcp", - "version": "9aed885", + "version": "af5a5b3", "description": null } ], diff --git a/resources/third-party/file-system/DDN-EXAScaler/variables.tf b/resources/third-party/file-system/DDN-EXAScaler/variables.tf index 4fef87a770..d46a009c24 100644 --- a/resources/third-party/file-system/DDN-EXAScaler/variables.tf +++ b/resources/third-party/file-system/DDN-EXAScaler/variables.tf @@ -24,7 +24,7 @@ variable "fsname" { default = "exacloud" } -# Project ID +# Project ID to manage resources # https://cloud.google.com/resource-manager/docs/creating-managing-projects variable "project_id" { description = "Compute Platform project that will host the EXAScaler filesystem" @@ -40,17 +40,18 @@ variable "zone" { # Service account name used by deploy application # https://cloud.google.com/iam/docs/service-accounts -# new: create a new custom service account, or use an existing one: true or false -# name: existing service account name, will be using if new is false +# new: create a new custom service account or use an existing one: true or false +# email: existing service account email address, will be using if new is false +# set email = null to use the default compute service account variable "service_account" { description = "Service account name used by deploy application" type = object({ - new = bool - name = string + new = bool + email = string }) default = { - new = false - name = "default" + new = false + email = null } } @@ -124,7 +125,7 @@ variable "network_self_link" { # id: existing network id, will be using if new is false # auto: create subnets in each region automatically: false or true # mtu: maximum transmission unit in bytes: 1460 - 1500 -# new: create a new network, or use an existing one: true or false +# new: create a new network or use an existing one: true or false # nat: allow instances without external IP to communicate with the outside world: true or false variable "network" { description = "Network options" @@ -169,7 +170,7 @@ variable "subnetwork_address" { # Private Google Access: true or false # https://cloud.google.com/vpc/docs/private-access-options # id: existing subnetwork id, will be using if new is false -# new: create a new subnetwork, or use an existing one: true or false +# new: create a new subnetwork or use an existing one: true or false variable "subnetwork" { description = "Subnetwork properties. Ignored if subnetwork_self_link is supplied." type = object({ @@ -212,17 +213,19 @@ variable "image" { }) default = { project = "ddn-public" - name = "exascaler-cloud-v522-centos7" + name = "exascaler-cloud-v523-centos7" } } # Management server properties +# node_type: type of management server # https://cloud.google.com/compute/docs/machine-types +# node_cpu: CPU family # https://cloud.google.com/compute/docs/instances/specify-min-cpu-platform +# nic_type: type of network connectivity, GVNIC or VIRTIO_NET # https://cloud.google.com/compute/docs/networking/using-gvnic -# nic_type: GVNIC or VIRTIO_NET -# public_ip: true or false -# node_count: number of instances +# public_ip: assign an external IP address, true or false +# node_count: number of management servers variable "mgs" { description = "Management server properties" type = object({ @@ -243,11 +246,11 @@ variable "mgs" { # Management target properties # https://cloud.google.com/compute/docs/disks -# disk_bus: SCSI or NVME (NVME is for scratch disks only) -# disk_type: pd-standard, pd-ssd, pd-balanced or scratch -# disk_size: target size in in GB -# scratch disk size must be exactly 375 -# disk_count: number of targets +# disk_bus: type of management target interface, SCSI or NVME (NVME is for scratch disks only) +# disk_type: type of management target, pd-standard, pd-ssd, pd-balanced or scratch +# disk_size: size of management target in GB (scratch disk size must be exactly 375) +# disk_count: number of management targets +# disk_raid: create striped management target, true or false variable "mgt" { description = "Management target properties" type = object({ @@ -255,23 +258,25 @@ variable "mgt" { disk_type = string disk_size = number disk_count = number + disk_raid = bool }) default = { disk_bus = "SCSI" disk_type = "pd-standard" disk_size = 128 disk_count = 1 + disk_raid = false } } # Monitoring target properties # https://cloud.google.com/compute/docs/disks -# disk_bus: SCSI or NVME (NVME is for scratch disks only) -# disk_type: pd-standard, pd-ssd, pd-balanced or scratch -# disk_size: target size in in GB -# scratch disk size must be exactly 375 -# disk_count: number of targets +# disk_bus: type of monitoring target interface, SCSI or NVME (NVME is for scratch disks only) +# disk_type: type of monitoring target, pd-standard, pd-ssd, pd-balanced or scratch +# disk_size: size of monitoring target in GB (scratch disk size must be exactly 375) +# disk_count: number of monitoring targets +# disk_raid: create striped monitoring target, true or false variable "mnt" { description = "Monitoring target properties" type = object({ @@ -279,21 +284,26 @@ variable "mnt" { disk_type = string disk_size = number disk_count = number + disk_raid = bool }) default = { disk_bus = "SCSI" disk_type = "pd-standard" disk_size = 128 disk_count = 1 + disk_raid = false } } + # Metadata server properties +# node_type: type of metadata server # https://cloud.google.com/compute/docs/machine-types +# node_cpu: CPU family # https://cloud.google.com/compute/docs/instances/specify-min-cpu-platform +# nic_type: type of network connectivity, GVNIC or VIRTIO_NET # https://cloud.google.com/compute/docs/networking/using-gvnic -# nic_type: GVNIC or VIRTIO_NET -# public_ip: true or false -# node_count: number of instances +# public_ip: assign an external IP address, true or false +# node_count: number of metadata servers variable "mds" { description = "Metadata server properties" type = object({ @@ -314,11 +324,11 @@ variable "mds" { # Metadata target properties # https://cloud.google.com/compute/docs/disks -# disk_bus: SCSI or NVME (NVME is for scratch disks only) -# disk_type: pd-standard, pd-ssd, pd-balanced or scratch -# disk_size: target size in in GB -# scratch disk size must be exactly 375 -# disk_count: number of targets +# disk_bus: type of metadata target interface, SCSI or NVME (NVME is for scratch disks only) +# disk_type: type of metadata target, pd-standard, pd-ssd, pd-balanced or scratch +# disk_size: size of metadata target in GB (scratch disk size must be exactly 375) +# disk_count: number of metadata targets +# disk_raid: create striped metadata target, true or false variable "mdt" { description = "Metadata target properties" type = object({ @@ -326,21 +336,26 @@ variable "mdt" { disk_type = string disk_size = number disk_count = number + disk_raid = bool }) default = { disk_bus = "SCSI" disk_type = "pd-ssd" disk_size = 3500 disk_count = 1 + disk_raid = false } } # Object Storage server properties +# node_type: type of storage server # https://cloud.google.com/compute/docs/machine-types +# node_cpu: CPU family # https://cloud.google.com/compute/docs/instances/specify-min-cpu-platform +# nic_type: type of network connectivity, GVNIC or VIRTIO_NET # https://cloud.google.com/compute/docs/networking/using-gvnic -# nic_type: GVNIC or VIRTIO_NET -# public_ip: true or false +# public_ip: assign an external IP address, true or false +# node_count: number of storage servers variable "oss" { description = "Object Storage server properties" type = object({ @@ -361,11 +376,11 @@ variable "oss" { # Object Storage target properties # https://cloud.google.com/compute/docs/disks -# disk_bus: SCSI or NVME (NVME is for scratch disks only) -# disk_type: pd-standard, pd-ssd, pd-balanced or scratch -# disk_size: target size in in GB -# scratch disk size must be exactly 375 -# disk_count: number of targets +# disk_bus: type of storage target interface, SCSI or NVME (NVME is for scratch disks only) +# disk_type: type of storage target, pd-standard, pd-ssd, pd-balanced or scratch +# disk_size: size of storage target in GB (scratch disk size must be exactly 375) +# disk_count: number of storage targets +# disk_raid: create striped storage target, true or false variable "ost" { description = "Object Storage target properties" type = object({ @@ -373,22 +388,26 @@ variable "ost" { disk_type = string disk_size = number disk_count = number + disk_raid = bool }) default = { disk_bus = "SCSI" disk_type = "pd-ssd" disk_size = 3500 disk_count = 1 + disk_raid = false } } # Compute client properties +# node_type: type of compute client # https://cloud.google.com/compute/docs/machine-types +# node_cpu: CPU family # https://cloud.google.com/compute/docs/instances/specify-min-cpu-platform +# nic_type: type of network connectivity, GVNIC or VIRTIO_NET # https://cloud.google.com/compute/docs/networking/using-gvnic -# nic_type: GVNIC or VIRTIO_NET -# public_ip: true or false -# node_count: number of instances +# public_ip: assign an external IP address, true or false +# node_count: number of compute clients variable "cls" { description = "Compute client properties" type = object({ @@ -408,11 +427,10 @@ variable "cls" { } # Compute client target properties # https://cloud.google.com/compute/docs/disks -# disk_bus: SCSI or NVME (NVME is for scratch disks only) -# disk_type: pd-standard, pd-ssd, pd-balanced or scratch -# disk_size: target size in in GB -# scratch disk size must be exactly 375 -# disk_count: number of targets, 0 to disable +# disk_bus: type of compute target interface, SCSI or NVME (NVME is for scratch disks only) +# disk_type: type of compute target, pd-standard, pd-ssd, pd-balanced or scratch +# disk_size: size of compute target in GB (scratch disk size must be exactly 375) +# disk_count: number of compute targets variable "clt" { description = "Compute client target properties" type = object({