# Hetzner Cloud Rancher Quickstart
Two single-node Kubernetes clusters will be created from two instances running Ubuntu 20.04 and Docker.
Both instances will be accessible over SSH using the auto-generated SSH keys `id_rsa` and `id_rsa.pub`.
## Requirements
| Name | Version |
|------|---------|
| [terraform](#requirement\_terraform) | >= 1.0.0 |
| [hcloud](#requirement\_hcloud) | 1.33.2 |
| [local](#requirement\_local) | 2.4.0 |
| [tls](#requirement\_tls) | 4.0.4 |
## Providers
| Name | Version |
|------|---------|
| [hcloud](#provider\_hcloud) | 1.33.2 |
| [local](#provider\_local) | 2.4.0 |
| [tls](#provider\_tls) | 4.0.4 |
## Modules
| Name | Source | Version |
|------|--------|---------|
| [rancher\_common](#module\_rancher\_common) | ../rancher-common | n/a |
## Resources
| Name | Type |
|------|------|
| [hcloud_network.private](https://registry.terraform.io/providers/hetznercloud/hcloud/1.33.2/docs/resources/network) | resource |
| [hcloud_network_subnet.private](https://registry.terraform.io/providers/hetznercloud/hcloud/1.33.2/docs/resources/network_subnet) | resource |
| [hcloud_server.quickstart_node](https://registry.terraform.io/providers/hetznercloud/hcloud/1.33.2/docs/resources/server) | resource |
| [hcloud_server.rancher_server](https://registry.terraform.io/providers/hetznercloud/hcloud/1.33.2/docs/resources/server) | resource |
| [hcloud_ssh_key.quickstart_ssh_key](https://registry.terraform.io/providers/hetznercloud/hcloud/1.33.2/docs/resources/ssh_key) | resource |
| [local_file.ssh_public_key_openssh](https://registry.terraform.io/providers/hashicorp/local/2.4.0/docs/resources/file) | resource |
| [local_sensitive_file.ssh_private_key_pem](https://registry.terraform.io/providers/hashicorp/local/2.4.0/docs/resources/sensitive_file) | resource |
| [tls_private_key.global_key](https://registry.terraform.io/providers/hashicorp/tls/4.0.4/docs/resources/private_key) | resource |
## Inputs
| Name | Description | Type | Default | Required |
|------|-------------|------|---------|:--------:|
| [hcloud\_token](#input\_hcloud\_token) | Hetzner Cloud API token used to create infrastructure | `string` | n/a | yes |
| [rancher\_server\_admin\_password](#input\_rancher\_server\_admin\_password) | Admin password to use for Rancher server bootstrap, min. 12 characters | `string` | n/a | yes |
| [cert\_manager\_version](#input\_cert\_manager\_version) | Version of cert-manager to install alongside Rancher (format: 0.0.0) | `string` | `"1.11.0"` | no |
| [hcloud\_location](#input\_hcloud\_location) | Hetzner location used for all resources | `string` | `"fsn1"` | no |
| [instance\_type](#input\_instance\_type) | Type of instance to be used for all instances | `string` | `"cx21"` | no |
| [network\_cidr](#input\_network\_cidr) | Network to create for private communication | `string` | `"10.0.0.0/8"` | no |
| [network\_ip\_range](#input\_network\_ip\_range) | Subnet to create for private communication. Must be part of the CIDR defined in `network_cidr`. | `string` | `"10.0.1.0/24"` | no |
| [network\_zone](#input\_network\_zone) | Zone to create the network in | `string` | `"eu-central"` | no |
| [prefix](#input\_prefix) | Prefix added to names of all resources | `string` | `"quickstart"` | no |
| [rancher\_helm\_repository](#input\_rancher\_helm\_repository) | The helm repository, where the Rancher helm chart is installed from | `string` | `"https://releases.rancher.com/server-charts/latest"` | no |
| [rancher\_kubernetes\_version](#input\_rancher\_kubernetes\_version) | Kubernetes version to use for Rancher server cluster | `string` | `"v1.24.14+k3s1"` | no |
| [rancher\_version](#input\_rancher\_version) | Rancher server version (format: v0.0.0) | `string` | `"2.7.9"` | no |
| [workload\_kubernetes\_version](#input\_workload\_kubernetes\_version) | Kubernetes version to use for managed workload cluster | `string` | `"v1.24.14+rke2r1"` | no |
## Outputs
| Name | Description |
|------|-------------|
| [rancher\_node\_ip](#output\_rancher\_node\_ip) | n/a |
| [rancher\_server\_url](#output\_rancher\_server\_url) | n/a |
| [workload\_node\_ip](#output\_workload\_node\_ip) | n/a |