If you're deploying a cluster with kube-aws:

Deploying to an existing VPC

kube-aws tries its best to not modify your existing AWS resources. It's our users' responsibility to ensure existing AWS resources provided to kube-aws are properly configured.

Please note that you don't need to care about modifications if you've instructed kube-aws to create all the AWS resources for you i.e. you've omitted vpcId and routeTableId from cluster.yaml.

What kube-aws does modify are:

  • Adding a record set for Kubernetes API Endpoint to an existing hosted zone you've provided via the hostedZoneId configuration key in cluster.yaml
  • Adding one or more subnet(s) to an existing VPC specified by the vpcId
  • Associating one or more subnet(s) to an existing route table specified by the routeTableId

See cluster.yaml for more details.

All the other configurations for existing AWS resources must be done properly by users before kube-aws is run.

For example, if you're deploying a cluster to an existing VPC:

Once you understand pre-requisites, you are ready to launch your first Kubernetes cluster.