https://github.com/kelseyhightower/kubernetes-the-hard-way
Bootstrap Kubernetes the hard way. No scripts.
https://github.com/kelseyhightower/kubernetes-the-hard-way
Last synced: 5 days ago
JSON representation
Bootstrap Kubernetes the hard way. No scripts.
- Host: GitHub
- URL: https://github.com/kelseyhightower/kubernetes-the-hard-way
- Owner: kelseyhightower
- License: apache-2.0
- Created: 2016-07-07T14:15:27.000Z (almost 9 years ago)
- Default Branch: master
- Last Pushed: 2025-04-10T06:11:47.000Z (5 days ago)
- Last Synced: 2025-04-10T07:23:32.933Z (5 days ago)
- Homepage:
- Size: 694 KB
- Stars: 43,394
- Watchers: 928
- Forks: 14,666
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
Awesome Lists containing this project
- awesome-me - Kubernetes
- awesome - kubernetes-the-hard-way - Bootstrap Kubernetes the hard way on Google Cloud Platform. No scripts. (Others)
- awesome-cka - - This tutorial walks you through setting up Kubernetes the hard way. This guide is not for people looking for a fully automated command to bring up a Kubernetes cluster. (📚 Study / Do)
- awesome-repositories - kelseyhightower/kubernetes-the-hard-way - Bootstrap Kubernetes the hard way. No scripts. (Others)
- awesome-repositories - kelseyhightower/kubernetes-the-hard-way
- awesome-starred - kubernetes-the-hard-way - Bootstrap Kubernetes the hard way on Google Cloud Platform. No scripts. (Others)
- awesome-cybersecurity-practice - https://github.com/kelseyhightower/kubernetes-the-hard-way
- Awesome-CIS-Resources - Kubernetes the Hard Way
- LearningDevOpsUkraine - github.com/kelseyhightower
- awesome-list - kubernetes-the-hard-way
- awesome-k8s-security - Kubernetes The Hard Way - Kelsey Hightower
- awesome-k8s-resources - Kubernetes The Hard Way - Kubernetes The Hard Way guides you through bootstrapping a highly available Kubernetes cluster with end-to-end encryption between components and RBAC authentication. (Guides, Documentations, Blogs, and Learnings / Guides)
- awesome-starred - kelseyhightower/kubernetes-the-hard-way - Bootstrap Kubernetes the hard way on Google Cloud Platform. No scripts. (others)
- StarryDivineSky - kelseyhightower/kubernetes-the-hard-way
- jimsghstars - kelseyhightower/kubernetes-the-hard-way - Bootstrap Kubernetes the hard way. No scripts. (Others)
- awesome-starred - kelseyhightower/kubernetes-the-hard-way - Bootstrap Kubernetes the hard way. No scripts. (Others)
- awesome-starred - kelseyhightower/kubernetes-the-hard-way - Bootstrap Kubernetes the hard way. No scripts. (Others)
- awesome-k8s-resources - Kubernetes The Hard Way - 从零搭建高可用Kubernetes集群的详细教程。 (Uncategorized / Uncategorized)
- awesome-k8s-resources - Kubernetes The Hard Way - 从零搭建高可用Kubernetes集群的详细教程。 (Uncategorized / Uncategorized)
README
# 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](https://github.com/kubernetes/kubernetes) v1.32.x
* [containerd](https://github.com/containerd/containerd) v2.1.x
* [cni](https://github.com/containernetworking/cni) v1.6.x
* [etcd](https://github.com/etcd-io/etcd) v3.6.x## Labs
This tutorial requires four (4) ARM64 or AMD64 based virtual or physical machines connected to the same network.
* [Prerequisites](docs/01-prerequisites.md)
* [Setting up the Jumpbox](docs/02-jumpbox.md)
* [Provisioning Compute Resources](docs/03-compute-resources.md)
* [Provisioning the CA and Generating TLS Certificates](docs/04-certificate-authority.md)
* [Generating Kubernetes Configuration Files for Authentication](docs/05-kubernetes-configuration-files.md)
* [Generating the Data Encryption Config and Key](docs/06-data-encryption-keys.md)
* [Bootstrapping the etcd Cluster](docs/07-bootstrapping-etcd.md)
* [Bootstrapping the Kubernetes Control Plane](docs/08-bootstrapping-kubernetes-controllers.md)
* [Bootstrapping the Kubernetes Worker Nodes](docs/09-bootstrapping-kubernetes-workers.md)
* [Configuring kubectl for Remote Access](docs/10-configuring-kubectl.md)
* [Provisioning Pod Network Routes](docs/11-pod-network-routes.md)
* [Smoke Test](docs/12-smoke-test.md)
* [Cleaning Up](docs/13-cleanup.md)