AWS Partner Network (APN) Blog

New AWS Quick Start Available: Heptio Kubernetes on AWS

We’re happy to announce a new AWS Quick Start: Kubernetes by Heptio. Heptio is an AWS Partner Network (APN) Technology Partner who brings deep expertise to customers who are interested in using Kubernetes (the CTO and CEO of Heptio founded the Kubernetes project), and they are focused on providing best practice guidance to the Kubernetes ecosystem.

While customers are currently using a wide variety of tools to deploy and manage Kubernetes on AWS, we are commonly asked for a streamlined and simple way to deploy a cluster with a reasonable default configuration. We’ve taken that to heart and built this Quick Start with the intention of providing what we feel is the most straightforward way to get started with Kubernetes on AWS.

Our plan, with the help of Heptio, is to incorporate best practices from the Kubernetes community into this Quick Start over time. Our goal is to help customers focus less on the underlying plumbing of Kubernetes deployments and more on powering their applications with the flexibility and scalability of AWS and Kubernetes used together.

The Quick Start includes AWS CloudFormation templates that launch and configure all necessary AWS resources for your Kubernetes cluster. Two templates are available: one for deploying Kubernetes into an existing VPC, and one that will configure a new VPC for deployment. If you choose to use the new VPC template, it will provision a virtual private cloud (VPC) with a public and private subnet, a bastion host, and an Elastic Load Balancing load balancer in the public subnet, along with the Kubernetes master and an Auto Scaling group of Kubernetes nodes in the private subnet. You can also choose to deploy the Kubernetes infrastructure into your existing VPC.

Heptio_1

The Kubernetes nodes use a custom Amazon Machine Image (AMI) that is managed by Heptio. The AMI is based on Ubuntu 16.04, and the configuration of the AMI is available as a Packer script in the Quick Start repository. The AMI uses kubeadm to bootstrap Kubernetes, installs Docker for the container runtime, and allows customers to choose between Calico and Weave for pod networking.

The template deploys the cluster into a single Availability Zone, and Heptio provides guidance for deciding on a Multi-AZ strategy once you’re familiar with Kubernetes. One such strategy is to deploy two instances of this template in different Availability Zones, and orchestrate them separately.

The team at Heptio have done a tremendous job of providing supporting collateral for this Quick Start. You can access a variety of relevant walkthroughs and guidance, from the Quick Start deployment guide to custom tutorials for Kubernetes on AWS. Take a look at the finished template in the Quick Start repository, and feel free to open issues and PRs on the template at the Heptio repository. We’re looking forward to having customers of all levels of Kubernetes experience and use cases give us feedback on this effort. Let us know how we can improve the Kubernetes by Heptio Quick Start!