Rancher Hetzner Cloud Quick Start Guide

The following steps will quickly deploy a Rancher server on Hetzner Cloud in a single-node K3s Kubernetes cluster, with a single-node downstream Kubernetes cluster attached.

Rancher Hetzner Cloud Quick Start Guide - 图1caution

The intent of these guides is to quickly launch a sandbox that you can use to evaluate Rancher. These guides are not intended for production environments. For comprehensive setup instructions, see Installation.

Prerequisites

Rancher Hetzner Cloud Quick Start Guide - 图2caution

Deploying to Hetzner Cloud will incur charges.

  • Hetzner Cloud Account: You will require an account on Hetzner as this is where the server and cluster will run.
  • Hetzner API Access Key: Use these instructions to create a Hetzner Cloud API Key if you don’t have one.
  • Terraform: Used to provision the server and cluster to Hetzner.

Getting Started

  1. Clone Rancher Quickstart to a folder using git clone https://github.com/rancher/quickstart.

  2. Go into the Hetzner folder containing the Terraform files by executing cd quickstart/rancher/hcloud.

  3. Rename the terraform.tfvars.example file to terraform.tfvars.

  4. Edit terraform.tfvars and customize the following variables:

    • hcloud_token - Hetzner API access key
    • rancher_server_admin_password - Admin password for created Rancher server. See Setting up the Bootstrap Password for password requirments.
  5. Optional: Modify optional variables within terraform.tfvars. See the Quickstart Readme and the Hetzner Quickstart Readme for more information. Suggestions include:

    • prefix - Prefix for all created resources
    • instance_type - Instance type, minimum required is cx21
    • hcloud_location - Hetzner Cloud location, choose the closest instead of the default (fsn1)
  6. Run terraform init.

  7. To initiate the creation of the environment, run terraform apply --auto-approve. Then wait for output similar to the following:

    1. Apply complete! Resources: 15 added, 0 changed, 0 destroyed.
    2. Outputs:
    3. rancher_node_ip = xx.xx.xx.xx
    4. rancher_server_url = https://rancher.xx.xx.xx.xx.sslip.io
    5. workload_node_ip = yy.yy.yy.yy
  8. Paste the rancher_server_url from the output above into the browser. Log in when prompted (default username is admin, use the password set in rancher_server_admin_password).

  9. ssh to the Rancher Server using the id_rsa key generated in quickstart/rancher/hcloud.

Result

Two Kubernetes clusters are deployed into your Hetzner account, one running Rancher Server and the other ready for experimentation deployments. Please note that while this setup is a great way to explore Rancher functionality, a production setup should follow our high availability setup guidelines. SSH keys for the VMs are auto-generated and stored in the module directory.

What’s Next?

Use Rancher to create a deployment. For more information, see Creating Deployments.

Destroying the Environment

  1. From the quickstart/rancher/hcloud folder, execute terraform destroy --auto-approve.

  2. Wait for confirmation that all resources have been destroyed.