2021-05-12 01:33:56 -07:00
# OpenShift Cluster Bootstrap
This example is a companion setup to the Python script in the parent folder, and is used to bootstrap OpenShift clusters on GCP. Refer to the documentation in the parent folder for usage instructions.
<!-- BEGIN TFDOC -->
2021-12-20 23:51:51 -08:00
2021-05-12 01:33:56 -07:00
## Variables
| name | description | type | required | default |
2021-12-20 23:51:51 -08:00
|---|---|:---:|:---:|:---:|
2022-01-22 04:34:35 -08:00
| [cluster_name ](variables.tf#L23 ) | Name used for the cluster and DNS zone. | < code > string</ code > | ✓ | |
2022-11-19 03:38:37 -08:00
| [domain ](variables.tf#L39 ) | Domain name used to derive the DNS zone. | < code > string</ code > | ✓ | |
| [fs_paths ](variables.tf#L44 ) | Filesystem paths for commands and data, supports home path expansion. | < code title = "object({ credentials = string config_dir = string openshift_install = string pull_secret = string ssh_key = string })" > object({…}) </ code > | ✓ | |
| [host_project ](variables.tf#L55 ) | Shared VPC project and network configuration. | < code title = "object({ default_subnet_name = string masters_subnet_name = string project_id = string vpc_name = string workers_subnet_name = string })" > object({…}) </ code > | ✓ | |
| [service_project ](variables.tf#L125 ) | Service project configuration. | < code title = "object({ project_id = string })" > object({…}) </ code > | ✓ | |
2023-05-13 20:51:46 -07:00
| [allowed_ranges ](variables.tf#L17 ) | Ranges that can SSH to the bootstrap VM and API endpoint. | < code > list( any) </ code > | | < code > [" 10.0.0.0/ 8"] </ code > |
2022-11-19 03:38:37 -08:00
| [disk_encryption_key ](variables.tf#L28 ) | Optional CMEK for disk encryption. | < code title = "object({ keyring = string location = string name = string project_id = string })" > object({…}) </ code > | | < code > null</ code > |
| [install_config_params ](variables.tf#L68 ) | OpenShift cluster configuration. | < code title = "object({ disk_size = number labels = map(string) network = object({ cluster = string host_prefix = number machine = string service = string }) proxy = object({ http = string https = string noproxy = string }) })" > object({…}) </ code > | | < code title = "{ disk_size = 16 labels = {} network = { cluster = "10.128.0.0/14" host_prefix = 23 machine = "10.0.0.0/16" service = "172.30.0.0/16" } proxy = null }" > {…} </ code > |
| [post_bootstrap_config ](variables.tf#L103 ) | Name of the service account for the machine operator. Removes bootstrap resources when set. | < code title = "object({ machine_op_sa_prefix = string })" > object({…}) </ code > | | < code > null</ code > |
| [region ](variables.tf#L111 ) | Region where resources will be created. | < code > string</ code > | | < code > " europe-west1" </ code > |
| [rhcos_gcp_image ](variables.tf#L117 ) | RHCOS image used. | < code > string</ code > | | < code > " projects/ rhcos-cloud/ global/ images/ rhcos-47-83-202102090044-0-gcp-x86-64" </ code > |
| [tags ](variables.tf#L132 ) | Additional tags for instances. | < code > list( string) </ code > | | < code > [" ssh"] </ code > |
| [zones ](variables.tf#L138 ) | Zones used for instances. | < code > list( string) </ code > | | < code > [" b" , " c" , " d"] </ code > |
2021-05-12 01:33:56 -07:00
## Outputs
| name | description | sensitive |
|---|---|:---:|
2022-01-22 04:34:35 -08:00
| [backend-health ](outputs.tf#L17 ) | Command to monitor API internal backend health. | |
| [bootstrap-ssh ](outputs.tf#L27 ) | Command to SSH to the bootstrap instance. | |
| [masters-ssh ](outputs.tf#L37 ) | Command to SSH to the master instances. | |
2021-12-20 23:51:51 -08:00
2021-05-12 01:33:56 -07:00
<!-- END TFDOC -->