kubernetes-the-hard-way/docs/01-prerequisites.md

3.6 KiB

Prerequisites

This tutorial uses Google Cloud Platform (GCP) to provision instrastructure required by the Kubernetes cluster, however code is also provided for users who prefer to use Amazon Web Services, in expandable sections marked AWS.

GCP

Google Cloud Platform

This tutorial leverages the Google Cloud Platform to streamline provisioning of the compute infrastructure required to bootstrap a Kubernetes cluster from the ground up. Sign up for $300 in free credits.

Estimated cost to run this tutorial: $0.22 per hour ($5.39 per day).

The compute resources required for this tutorial exceed the Google Cloud Platform free tier.

Google Cloud Platform SDK

Install the Google Cloud SDK

Follow the Google Cloud SDK documentation to install and configure the gcloud command line utility.

Verify the Google Cloud SDK version is 200.0.0 or higher:

gcloud version

Set a Default Compute Region and Zone

This tutorial assumes a default compute region and zone have been configured.

If you are using the gcloud command-line tool for the first time init is the easiest way to do this:

gcloud init

Otherwise set a default compute region:

gcloud config set compute/region us-west1

Set a default compute zone:

gcloud config set compute/zone us-west1-c

Use the gcloud compute zones list command to view additional regions and zones.

AWS

Amazon Web Services

This tutorial leverages the Amazon Web Services to streamline provisioning of the compute infrastructure required to bootstrap a Kubernetes cluster from the ground up. Sign up for 12 months of free services.

The compute resources required for this tutorial exceed the Amazon Web Services free tier.

Amazon Web Services CLI

Install the Amazon Web Services CLI

Follow the Amazon Web Services CLI documentation to install and configure the aws command line utility.

Configure the kubernetes-the-hard-way profile

Throughout this tutorial, an aws profile named kubernetes-the-hard-way will be used.

Create the profile and set its default region (us-west-2 in this example):

aws configure set region us-west-2 \
  --profile kubernetes-the-hard-way

Set the credentials for the profile to the same set as in the default profile:

aws configure set aws_access_key_id "$(aws configure get aws_access_key_id)" \
  --profile kubernetes-the-hard-way

aws configure set aws_secret_access_key "$(aws configure get aws_secret_access_key)" \
  --profile kubernetes-the-hard-way

Running Commands in Parallel with tmux

tmux can be used to run commands on multiple compute instances at the same time. Labs in this tutorial may require running the same commands across multiple compute instances, in those cases consider using tmux and splitting a window into multiple panes with synchronize-panes enabled to speed up the provisioning process.

The use of tmux is optional and not required to complete this tutorial.

tmux screenshot

Enable synchronize-panes: ctrl+b then shift :. Then type set synchronize-panes on at the prompt. To disable synchronization: set synchronize-panes off.

Next: Installing the Client Tools