33 lines
4.2 KiB
Markdown
33 lines
4.2 KiB
Markdown
# 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 -->
|
|
|
|
## Variables
|
|
|
|
| name | description | type | required | default |
|
|
|---|---|:---:|:---:|:---:|
|
|
| [cluster_name](variables.tf#L23) | Name used for the cluster and DNS zone. | <code>string</code> | ✓ | |
|
|
| [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> | ✓ | |
|
|
| [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> |
|
|
| [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> |
|
|
|
|
## Outputs
|
|
|
|
| name | description | sensitive |
|
|
|---|---|:---:|
|
|
| [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. | |
|
|
|
|
<!-- END TFDOC -->
|