![]() This commit introduces a new directory structure for managing virtual machines, specifically tailored for setting up Kubernetes manually on Ubuntu. Files have been added to the `virtual-machines` directory, which includes scripts and configurations necessary for the setup. The following files have been added: - `README.md`: Documentation for the virtual machines setup. - `Vagrantfile`: Configuration for Vagrant to manage the virtual machines. - `ssh.sh`: Script to set up SSH access. - `tmux.conf`: Configuration file for tmux. - `update-dns.sh`: Script to update DNS settings. - `controlplane.sh`: Script to set up the control plane. - `setup-hosts.sh`: Script to configure the hosts file. - `vimrc`: Configuration file for Vim. This commit is part of the ongoing effort to enhance the documentation and setup instructions for manual installation of Kubernetes. Making it easier for users to get started with manual installations and configurations. With the intended purpose of making them more capabale administrators and users of Kubernetes. |
||
---|---|---|
configs | ||
docs | ||
units | ||
virtual-machines | ||
.gitignore | ||
CONTRIBUTING.md | ||
COPYRIGHT.md | ||
LICENSE | ||
README.md | ||
ca.conf | ||
downloads-amd64.txt | ||
downloads-arm64.txt |
README.md
Kubernetes The Hard Way
This tutorial walks you through setting up Kubernetes the hard way. This guide is not for someone looking for a fully automated tool to bring up a Kubernetes cluster. Kubernetes The Hard Way is optimized for learning, which means taking the long route to ensure you understand each task required to bootstrap a Kubernetes cluster.
The results of this tutorial should not be viewed as production ready, and may receive limited support from the community, but don't let that stop you from learning!
Copyright
This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.
Target Audience
The target audience for this tutorial is someone who wants to understand the fundamentals of Kubernetes and how the core components fit together.
Cluster Details
Kubernetes The Hard Way guides you through bootstrapping a basic Kubernetes cluster with all control plane components running on a single node, and two worker nodes, which is enough to learn the core concepts.
Component versions:
- kubernetes v1.32.x
- containerd v2.1.x
- cni v1.6.x
- etcd v3.6.x
Labs
This tutorial requires four (4) ARM64 or AMD64 based virtual or physical machines connected to the same network.
- Prerequisites
- Setting up the Jumpbox
- Provisioning Compute Resources
- Provisioning the CA and Generating TLS Certificates
- Generating Kubernetes Configuration Files for Authentication
- Generating the Data Encryption Config and Key
- Bootstrapping the etcd Cluster
- Bootstrapping the Kubernetes Control Plane
- Bootstrapping the Kubernetes Worker Nodes
- Configuring kubectl for Remote Access
- Provisioning Pod Network Routes
- Smoke Test
- Cleaning Up