Rancher GCP Quick Start Guide
The following steps will quickly deploy a Rancher server on GCP in a single-node K3s Kubernetes cluster, with a single-node downstream Kubernetes cluster attached.
Note: 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
Note Deploying to Google GCP will incur charges.
- Google GCP Account: A Google GCP Account is required to create resources for deploying Rancher and Kubernetes.
- Google GCP Project: Use this link to follow a tutorial to create a GCP Project if you don't have one yet.
- Google GCP Service Account: Use this link and follow instructions to create a GCP service account and token file.
- Terraform: Used to provision the server and cluster in Google GCP.
Getting Started
Clone Rancher Quickstart to a folder using
git clone https://github.com/rancher/quickstart
.Go into the GCP folder containing the Terraform files by executing
cd quickstart/rancher/gcp
.Rename the
terraform.tfvars.example
file toterraform.tfvars
.Edit
terraform.tfvars
and customize the following variables:gcp_account_json
- GCP service account file path and file namerancher_server_admin_password
- Admin password for created Rancher server
Optional: Modify optional variables within
terraform.tfvars
. See the Quickstart Readme and the GCP Quickstart Readme for more information. Suggestions include:- `gcp_region` - Google GCP region, choose the closest instead of the default (`us-east4`)
- `gcp_zone` - Google GCP zone, choose the closest instead of the default (`us-east4-a`)
- `prefix` - Prefix for all created resources
- `machine_type` - Compute instance size used, minimum is `n1-standard-1` but `n1-standard-2` or `n1-standard-4` could be used if within budgetRun
terraform init
.To initiate the creation of the environment, run
terraform apply --auto-approve
. Then wait for output similar to the following:Apply complete! Resources: 16 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.yyPaste the
rancher_server_url
from the output above into the browser. Log in when prompted (default username isadmin
, use the password set inrancher_server_admin_password
).ssh to the Rancher Server using the
id_rsa
key generated inquickstart/rancher/gcp
.
Result
Two Kubernetes clusters are deployed into your GCP 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
From the
quickstart/rancher/gcp
folder, executeterraform destroy --auto-approve
.Wait for confirmation that all resources have been destroyed.