Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 3 additions & 1 deletion docs/labs/kubernetes-the-hard-way/lab0-README.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,9 @@ contributors: Steven Spencer, Ganna Zhyrnova

# Kubernetes The Hard Way (Rocky Linux)

> This is a fork of the original ["Kubernetes the hard way"](https://github.com/kelseyhightower/kubernetes-the-hard-way) originally written by Kelsey Hightower (GitHub: kelseyhightower). Unlike the original, which bases itself on Debian-like distributions for the ARM64 architecture, this fork targets Enterprise Linux distributions such as Rocky Linux, which runs on x86_64 architecture.
!!! info

This is a fork of the original ["Kubernetes the hard way"](https://github.com/kelseyhightower/kubernetes-the-hard-way) originally written by Kelsey Hightower (GitHub: kelseyhightower). Unlike the original, which bases itself on Debian-like distributions for the ARM64 architecture, this fork targets Enterprise Linux distributions such as Rocky Linux, which runs on x86_64 architecture.

This tutorial walks you through setting up Kubernetes the hard way. It is not for someone looking for a fully automated tool to set up a Kubernetes cluster. Kubernetes The Hard Way is designed for learning, so it means taking the long route to ensure you understand each task required to bootstrap a Kubernetes cluster.

Expand Down
4 changes: 3 additions & 1 deletion docs/labs/kubernetes-the-hard-way/lab1-prerequisites.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,9 @@ tags:

# Lab 1: Prerequisites

> This is a fork of the original ["Kubernetes the hard way"](https://github.com/kelseyhightower/kubernetes-the-hard-way) originally written by Kelsey Hightower (GitHub: kelseyhightower). Unlike the original, which bases itself on Debian-like distributions for the ARM64 architecture, this fork targets Enterprise Linux distributions such as Rocky Linux, which runs on x86_64 architecture.
!!! info

This is a fork of the original ["Kubernetes the hard way"](https://github.com/kelseyhightower/kubernetes-the-hard-way) originally written by Kelsey Hightower (GitHub: kelseyhightower). Unlike the original, which bases itself on Debian-like distributions for the ARM64 architecture, this fork targets Enterprise Linux distributions such as Rocky Linux, which runs on x86_64 architecture.

In this lab, you will review the machine requirements necessary to follow this tutorial.

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,9 @@ tags:

# Lab 10: Configuring `kubectl` for Remote Access

> This is a fork of the original ["Kubernetes the hard way"](https://github.com/kelseyhightower/kubernetes-the-hard-way) originally written by Kelsey Hightower (GitHub: kelseyhightower). Unlike the original, which bases itself on Debian-like distributions for the ARM64 architecture, this fork targets Enterprise Linux distributions such as Rocky Linux, which runs on x86_64 architecture.
!!! info

This is a fork of the original ["Kubernetes the hard way"](https://github.com/kelseyhightower/kubernetes-the-hard-way) originally written by Kelsey Hightower (GitHub: kelseyhightower). Unlike the original, which bases itself on Debian-like distributions for the ARM64 architecture, this fork targets Enterprise Linux distributions such as Rocky Linux, which runs on x86_64 architecture.

In this lab, you will generate a kubeconfig file for the `kubectl` command-line utility based on the `admin` user credentials.

Expand All @@ -23,7 +25,7 @@ In this lab, you will generate a kubeconfig file for the `kubectl` command-line

Each kubeconfig requires a Kubernetes API Server to connect to.

Based on the `/etc/hosts` DNS entry from an earlier lab, you should be able to ping` server.kubernetes.local`.
Based on the `/etc/hosts` DNS entry from an earlier lab, you should be able to ping`server.kubernetes.local`.

```bash
curl -k --cacert ca.crt \
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,9 @@ tags:

# Lab 11: Provisioning Pod Network Routes

> This is a fork of the original ["Kubernetes the hard way"](https://github.com/kelseyhightower/kubernetes-the-hard-way) originally written by Kelsey Hightower (GitHub: kelseyhightower). Unlike the original, which bases itself on Debian-like distributions for the ARM64 architecture, this fork targets Enterprise Linux distributions such as Rocky Linux, which runs on x86_64 architecture.
!!! info

This is a fork of the original ["Kubernetes the hard way"](https://github.com/kelseyhightower/kubernetes-the-hard-way) originally written by Kelsey Hightower (GitHub: kelseyhightower). Unlike the original, which bases itself on Debian-like distributions for the ARM64 architecture, this fork targets Enterprise Linux distributions such as Rocky Linux, which runs on x86_64 architecture.

Pods scheduled to a node receive an IP address from the node's Pod CIDR range. Currently, pods cannot communicate with other pods running on different nodes due to missing network [routes](https://cloud.google.com/compute/docs/vpc/routes).

Expand Down
4 changes: 3 additions & 1 deletion docs/labs/kubernetes-the-hard-way/lab12-smoke-test.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,9 @@ tags:

# Lab 12: Smoke Test

> This is a fork of the original ["Kubernetes the hard way"](https://github.com/kelseyhightower/kubernetes-the-hard-way) originally written by Kelsey Hightower (GitHub: kelseyhightower). Unlike the original, which bases itself on Debian-like distributions for the ARM64 architecture, this fork targets Enterprise Linux distributions such as Rocky Linux, which runs on x86_64 architecture.
!!! info

This is a fork of the original ["Kubernetes the hard way"](https://github.com/kelseyhightower/kubernetes-the-hard-way) originally written by Kelsey Hightower (GitHub: kelseyhightower). Unlike the original, which bases itself on Debian-like distributions for the ARM64 architecture, this fork targets Enterprise Linux distributions such as Rocky Linux, which runs on x86_64 architecture.

In this lab, you will complete tasks to ensure your Kubernetes cluster functions correctly.

Expand Down
4 changes: 3 additions & 1 deletion docs/labs/kubernetes-the-hard-way/lab13-cleanup.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,9 @@ tags:

# Lab 13: Cleaning Up

> This is a fork of the original ["Kubernetes the hard way"](https://github.com/kelseyhightower/kubernetes-the-hard-way) originally written by Kelsey Hightower (GitHub: kelseyhightower). Unlike the original, which bases itself on Debian-like distributions for the ARM64 architecture, this fork targets Enterprise Linux distributions such as Rocky Linux, which runs on x86_64 architecture.
!!! info

This is a fork of the original ["Kubernetes the hard way"](https://github.com/kelseyhightower/kubernetes-the-hard-way) originally written by Kelsey Hightower (GitHub: kelseyhightower). Unlike the original, which bases itself on Debian-like distributions for the ARM64 architecture, this fork targets Enterprise Linux distributions such as Rocky Linux, which runs on x86_64 architecture.

You will delete the compute resources created during this tutorial in this lab.

Expand Down
4 changes: 4 additions & 0 deletions docs/labs/kubernetes-the-hard-way/lab2-jumpbox.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,10 @@ tags:

# Lab 2: Set Up The Jumpbox

!!! info

This is a fork of the original ["Kubernetes the hard way"](https://github.com/kelseyhightower/kubernetes-the-hard-way) originally written by Kelsey Hightower (GitHub: kelseyhightower). Unlike the original, which bases itself on Debian-like distributions for the ARM64 architecture, this fork targets Enterprise Linux distributions such as Rocky Linux, which runs on x86_64 architecture.

In this lab, you will set up one of the four machines as a `jumpbox`. You will use this machine to run commands in this tutorial. While a dedicated machine is used to ensure consistency, you can run these commands from just about any machine, including your personal workstation running macOS or Linux.

Think of the `jumpbox` as the administration machine you will use as a home base when setting up your Kubernetes cluster from the ground up. One thing you need to do before you get started is to install a few command line utilities and clone the Kubernetes The Hard Way git repository, which contains some additional configuration files that you will use to configure various Kubernetes components throughout this tutorial.
Expand Down
4 changes: 4 additions & 0 deletions docs/labs/kubernetes-the-hard-way/lab3-compute-resources.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,10 @@ tags:

# Lab 3: Provisioning Compute Resources

!!! info

This is a fork of the original ["Kubernetes the hard way"](https://github.com/kelseyhightower/kubernetes-the-hard-way) originally written by Kelsey Hightower (GitHub: kelseyhightower). Unlike the original, which bases itself on Debian-like distributions for the ARM64 architecture, this fork targets Enterprise Linux distributions such as Rocky Linux, which runs on x86_64 architecture.

Kubernetes requires a set of machines to host the Kubernetes control plane and the worker nodes where containers are ultimately run. In this lab you will provision the machines required for setting up a Kubernetes cluster.

## Machine Database
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,10 @@ tags:

# Lab 4: Provisioning a CA and Generating TLS Certificates

!!! info

This is a fork of the original ["Kubernetes the hard way"](https://github.com/kelseyhightower/kubernetes-the-hard-way) originally written by Kelsey Hightower (GitHub: kelseyhightower). Unlike the original, which bases itself on Debian-like distributions for the ARM64 architecture, this fork targets Enterprise Linux distributions such as Rocky Linux, which runs on x86_64 architecture.

In this lab, you will provision a [PKI Infrastructure](https://en.wikipedia.org/wiki/Public_key_infrastructure) using OpenSSL to bootstrap a Certificate Authority and generate TLS certificates for the following components:

* kube-apiserver
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,9 @@ tags:

# Lab 5: Generating Kubernetes Configuration Files for Authentication

> This is a fork of the original ["Kubernetes the hard way"](https://github.com/kelseyhightower/kubernetes-the-hard-way) originally written by Kelsey Hightower (GitHub: kelseyhightower). Unlike the original, which is based on Debian (or similar) distributions for ARM64 architecture, this fork targets Enterprise Linux distributions such as Rocky Linux running on x86_64 architecture.
!!! info

This is a fork of the original ["Kubernetes the hard way"](https://github.com/kelseyhightower/kubernetes-the-hard-way) originally written by Kelsey Hightower (GitHub: kelseyhightower). Unlike the original, which bases itself on Debian-like distributions for the ARM64 architecture, this fork targets Enterprise Linux distributions such as Rocky Linux, which runs on x86_64 architecture.

In this lab, you will generate [Kubernetes client configuration files](https://kubernetes.io/docs/concepts/configuration/organize-cluster-access-kubeconfig/), which are typically called kubeconfigs. These files configure Kubernetes clients to connect to and authenticate with Kubernetes API Servers.

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,9 @@ tags:

# Lab 6: Generating the Data Encryption Configuration and Key

>This is a fork of the original ["Kubernetes the hard way"](https://github.com/kelseyhightower/kubernetes-the-hard-way) originally written by Kelsey Hightower (GitHub: kelseyhightower). Unlike the original, which bases itself on Debian-like distributions for the ARM64 architecture, this fork targets Enterprise Linux distributions such as Rocky Linux, which runs on x86_64 architecture.
!!! info

This is a fork of the original ["Kubernetes the hard way"](https://github.com/kelseyhightower/kubernetes-the-hard-way) originally written by Kelsey Hightower (GitHub: kelseyhightower). Unlike the original, which bases itself on Debian-like distributions for the ARM64 architecture, this fork targets Enterprise Linux distributions such as Rocky Linux, which runs on x86_64 architecture.

Kubernetes stores various data, including cluster state, application configurations, and secrets. Kubernetes enables [encrypt](https://kubernetes.io/docs/tasks/administer-cluster/encrypt-data) cluster data at rest.

Expand Down
4 changes: 3 additions & 1 deletion docs/labs/kubernetes-the-hard-way/lab7-bootstrapping-etcd.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,9 @@ tags:

# Lab 7: Bootstrapping the `etcd` Cluster

> This is a fork of the original ["Kubernetes the hard way"](https://github.com/kelseyhightower/kubernetes-the-hard-way) originally written by Kelsey Hightower (GitHub: kelseyhightower). Unlike the original, which bases itself on Debian-like distributions for the ARM64 architecture, this fork targets Enterprise Linux distributions such as Rocky Linux, which runs on x86_64 architecture.
!!! info

This is a fork of the original ["Kubernetes the hard way"](https://github.com/kelseyhightower/kubernetes-the-hard-way) originally written by Kelsey Hightower (GitHub: kelseyhightower). Unlike the original, which bases itself on Debian-like distributions for the ARM64 architecture, this fork targets Enterprise Linux distributions such as Rocky Linux, which runs on x86_64 architecture.

Kubernetes components are stateless and store cluster state in [etcd](https://github.com/etcd-io/etcd). In this lab, you will bootstrap a three node `etcd` cluster and configure it for high availability and secure remote access.

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,9 @@ tags:

# Lab 8: Bootstrapping the Kubernetes Control Plane

> This is a fork of the original ["Kubernetes the hard way"](https://github.com/kelseyhightower/kubernetes-the-hard-way) originally written by Kelsey Hightower (GitHub: kelseyhightower). Unlike the original, which bases itself on Debian-like distributions for the ARM64 architecture, this fork targets Enterprise Linux distributions such as Rocky Linux, which runs on x86_64 architecture.
!!! info

This is a fork of the original ["Kubernetes the hard way"](https://github.com/kelseyhightower/kubernetes-the-hard-way) originally written by Kelsey Hightower (GitHub: kelseyhightower). Unlike the original, which bases itself on Debian-like distributions for the ARM64 architecture, this fork targets Enterprise Linux distributions such as Rocky Linux, which runs on x86_64 architecture.

In this lab, you will bootstrap the Kubernetes control plane. You will install the following components on the controller machine: Kubernetes API Server, Scheduler, and Controller Manager.

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,9 @@ tags:

# Lab 9: Bootstrapping the Kubernetes Worker Nodes

> This is a fork of the original ["Kubernetes the hard way"](https://github.com/kelseyhightower/kubernetes-the-hard-way) originally written by Kelsey Hightower (GitHub: kelseyhightower). Unlike the original, which bases itself on Debian-like distributions for the ARM64 architecture, this fork targets Enterprise Linux distributions such as Rocky Linux, which runs on x86_64 architecture.
!!! info

This is a fork of the original ["Kubernetes the hard way"](https://github.com/kelseyhightower/kubernetes-the-hard-way) originally written by Kelsey Hightower (GitHub: kelseyhightower). Unlike the original, which bases itself on Debian-like distributions for the ARM64 architecture, this fork targets Enterprise Linux distributions such as Rocky Linux, which runs on x86_64 architecture.

In this lab, you will bootstrap two Kubernetes worker nodes. You will install the following components: [runc](https://github.com/opencontainers/runc), [container networking plugins](https://github.com/containernetworking/cni), [containerd](https://github.com/containerd/containerd), [kubelet](https://kubernetes.io/docs/admin/kubelet), and [kube-proxy](https://kubernetes.io/docs/concepts/cluster-administration/proxies).

Expand Down