3 Deploying your first application on Kubernetes
This chapter covers
- Running a local Kubernetes cluster on your laptop
- Setting up a cluster on Google Kubernetes Engine
- Setting up a cluster on Amazon Elastic Kubernetes Service
- Setting up and using the kubectl command-line tool
- Deploying an application in Kubernetes and exposing it outside the cluster
- Scaling the application horizontally
This chapter illustrates how to run a local single-node development Kubernetes cluster or set up a proper, managed multi-node cluster in the cloud. Once your cluster is up and running, you’ll use it to deploy the container you created in the previous chapter.
Note
The code files for this chapter are available at https://mng.bz/26xa.
3.1 Deploying a Kubernetes cluster
Setting up a full-fledged, multi-node Kubernetes cluster isn’t a simple task, especially if you’re not familiar with Linux and network administration. A proper Kubernetes installation spans multiple physical or virtual machines (VMs), and it requires a proper network setup to allow all containers in the cluster to communicate with each other.
You can install Kubernetes on your laptop computer, your organization’s infrastructure, or VMs provided by cloud providers (Google Compute Engine, Amazon EC2, Microsoft Azure, etc.). Alternatively, you can let the cloud provider manage your Kubernetes cluster. Here’s a short list of the largest and most popular managed Kubernetes options: