Terraform variables
terraform-google-dss
The following table describes the variables of this terraform module.
Variable name | Type | Default value | Description |
---|---|---|---|
google_project_name | string |
Name of the GCP project hosting the future cluster |
|
google_zone | string |
GCP zone hosting the kubernetes cluster List of available zones: https://cloud.google.com/compute/docs/regions-zones#available Example: |
|
google_dns_managed_zone_name | string |
GCP DNS zone name to automatically manage DNS entries. Leave it empty to manage it manually. |
|
google_machine_type | string |
GCP machine type used for the Kubernetes node pool.
Example: |
|
app_hostname | string |
Fully-qualified domain name of your HTTPS Gateway ingress endpoint. Example: |
|
db_hostname_suffix | string |
The domain name suffix shared by all of your databases nodes. For instance, if your database nodes were addressable at 0.db.example.com, 1.db.example.com and 2.db.example.com (CockroachDB) or 0.master.db.example.com, 1.tserver.db.example.com (Yugabyte), then the value would be db.example.com. Example: db.example.com |
|
datastore_type | string |
"cockroachdb" |
Type of datastore used Supported technologies: cockroachdb, yugabyte |
node_count | number |
Number of Kubernetes nodes which should correspond to the desired CockroachDB nodes. Currently, only single node or three nodes deployments are supported. Example: |
|
cluster_name | string |
Name of the kubernetes cluster that will host this DSS instance (should generally describe the DSS instance being hosted) Example: |
|
kubernetes_version | string |
Desired version of the Kubernetes cluster control plane and nodes. Supported versions: 1.24 to 1.32 |
|
google_kubernetes_storage_class | string |
GCP Kubernetes Storage Class to use for CockroachDB and Prometheus persistent volumes. See https://cloud.google.com/kubernetes-engine/docs/concepts/persistent-volumes for more details and available options. Example: |
|
crdb_hostname_suffix | string |
"" |
This variable has been renamed to db_hostname_suffix and is left to warn users about migration. |
image | string |
URL of the DSS docker image. Official public images are available on Docker Hub: https://hub.docker.com/r/interuss/dss/tags See /build/README.md Docker images section to learn how to build and publish your own image. Example: |
|
image_pull_secret | string |
"" |
Secret name of the credentials to access the image registry.
If the image specified in
Replace Example: docker-registry |
authorization | object({ |
One of
|
|
enable_scd | bool |
true |
Set this boolean true to enable ASTM strategic conflict detection functionality |
should_init | bool |
none |
Set to false if joining an existing pool, true if creating the first DSS instance for a pool. When set true, this can initialize the data directories on your cluster, and prevent you from joining an existing pool. Only used for CockroachDB with Tanka Example: |
desired_rid_db_version | string |
"latest" |
Desired RID DB schema version.
Use Example: |
desired_scd_db_version | string |
"latest" |
Desired SCD DB schema version.
Use Example: |
crdb_image_tag | string |
Version tag of the CockroachDB image. Until v.16, the recommended CockroachDB version is v21.2.7. From v.17, the recommended CockroachDB version is v24.1.3. Example: v24.1.3 |
|
crdb_cluster_name | string |
A string that specifies a CRDB cluster name. This is used together to ensure that all newly created nodes join the intended cluster when you are running multiple clusters. The CRDB cluster is automatically given a randomly-generated name if an empty string is provided. The CRDB cluster name must be 6-20 characters in length, and can include lowercase letters, numbers, and dashes (but no leading or trailing dashes). A cluster's name cannot be edited after it is created. At the moment, this variable is only used for helm charts deployments. Example: interuss-us-production |
|
crdb_locality | string |
Unique name for your DSS instance. Currently, we recommend "<ORG_NAME>_<CLUSTER_NAME>", and the = character is not allowed. However, any unique (among all other participating DSS instances) value is acceptable. Example: <ORGNAME_CLUSTER_NAME> |
|
crdb_external_nodes | list(string) |
[] |
Fully-qualified domain name of existing CRDB nodes outside of the cluster if you are joining an existing pool. Example: ["0.db.dss.example.com", "1.db.dss.example.com", "2.db.dss.example.com"] |
kubernetes_namespace | string |
"default" |
Namespace where to deploy Kubernetes resources. Only default is supported at the moment. Example: |
yugabyte_cloud | string |
"dss" |
Cloud of yugabyte instances, used for partionning. Should be set to dss unless you're doing advanced partitionning. |
yugabyte_region | string |
"uss-1" |
Region of yugabyte instances, used for partionning. Should be different from others USS in a cluster. |
yugabyte_zone | string |
"zone" |
Zone of yugabyte instances, used for partionning. Should be set to zone unless you're doing advanced partitionning. |
yugabyte_light_resources | bool |
false |
Enable light resources reservation for yugabyte instances. Useful for a dev cluster when you don't want to overload your kubernetes cluster. |
yugabyte_external_nodes | list(string) |
[] |
Fully-qualified domain name of existing yugabyte master nodes outside of the cluster if you are joining an existing pool. Example: ["0.master.db.dss.example.com", "1.master.db.dss.example.com", "2.master.db.dss.example.com"] |