The following steps will quickly deploy a Rancher server on AWS 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.
Note Deploying to Amazon AWS will incur charges.
- Amazon AWS Account: An Amazon AWS Account is required to create resources for deploying Rancher and Kubernetes.
- Amazon AWS Access Key: Use this link to follow a tutorial to create an Amazon AWS Access Key if you don't have one yet.
- IAM Policy created: Defines the permissions an account attached with this policy has.
- Install Terraform: Used to provision the server and cluster in Amazon AWS.
Example IAM Policy
The AWS module just creates an EC2 KeyPair, an EC2 SecurityGroup and an EC2 instance. A simple policy would be:
Clone Rancher Quickstart to a folder using
git clone https://github.com/rancher/quickstart.
Go into the AWS folder containing the Terraform files by executing
terraform.tfvarsand customize the following variables:
aws_access_key- Amazon AWS Access Key
aws_secret_key- Amazon AWS Secret Key
rancher_server_admin_password- Admin password for created Rancher server
- `aws_region` - Amazon AWS region, choose the closest instead of the default (`us-east-1`)
- `prefix` - Prefix for all created resources
- `instance_type` - EC2 instance size used, minimum is `t3a.medium` but `t3a.large` or `t3a.xlarge` could be used if within budget
- `add_windows_node` - If true, an additional Windows worker node is added to the workload cluster
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.
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 AWS 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.