The following steps will quickly deploy a Rancher server on DigitalOcean in a single-node K3s Kubernetes cluster, with a single-node downstream Kubernetes cluster attached.
Note Deploying to DigitalOcean will incur charges.
- DigitalOcean Account: You will require an account on DigitalOcean as this is where the server and cluster will run.
- DigitalOcean Access Key: Use this link to create a DigitalOcean Access Key if you don’t have one.
- Terraform: Used to provision the server and cluster to DigitalOcean.
Clone Rancher Quickstart to a folder using
git clone https://github.com/rancher/quickstart.
Go into the DigitalOcean folder containing the terraform files by executing
terraform.tfvarsand customize the following variables:
do_token- DigitalOcean access key
rancher_server_admin_password- Admin password for created Rancher server
do_region- DigitalOcean region, choose the closest instead of the default (
prefix- Prefix for all created resources
droplet_size- Droplet size used, minimum is
s-4vcpu-8gbcould be used if within budget
To initiate the creation of the environment, run
terraform apply --auto-approve. Then wait for output similar to the following:
Apply complete! Resources: 15 added, 0 changed, 0 destroyed. Outputs: rancher_node_ip = xx.xx.xx.xx rancher_server_url = https://rancher.xx.xx.xx.xx.sslip.io workload_node_ip = yy.yy.yy.yy
rancher_server_urlfrom the output above into the browser. Log in when prompted (default username is
admin, use the password set in
ssh to the Rancher Server using the
id_rsakey generated in
Two Kubernetes clusters are deployed into your DigitalOcean 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.
Use Rancher to create a deployment. For more information, see Creating Deployments.
Destroying the Environment
terraform destroy --auto-approve.
Wait for confirmation that all resources have been destroyed.