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.
Enable
synchronize-panes
:ctrl+b
thenshift :
. Then typeset synchronize-panes on
at the prompt. To disable synchronization:set synchronize-panes off
.