mvallim / kubernetes-under-the-hood

This tutorial is someone planning to install a Kubernetes cluster and wants to understand how everything fits together.
https://mvallim.github.io/kubernetes-under-the-hood
BSD 3-Clause "New" or "Revised" License
472 stars 105 forks source link
cloud-init corosync corosync-cluster docker etcd flannel gluster-kubernetes glusterfs infrastructure kubernetes kubernetes-cluster kubernetes-setup metallb pacemaker ssl tls virtualbox virtualization

Kubernetes under the hood

It even includes a SlideShare explaining the reasoning behid it Kubernetes under the hood journey

Target Audience

The target audience for this tutorial is someone planning to install a Kubernetes cluster and wants to understand how everything fits together.

Index

Atention: the documentation for this project is being actively improved to explain the demonstrated concepts clearly. If you face any difficulties while following the steps described in the documentation, please open an issue, so we can keep improving it. The version of Kubernetes used here is 1.20.15

  1. Introdution
  2. Planning
  3. Kubernetes
  4. Putting all together
    1. How to setup the Debian Linux image from scratch
    2. How to setup the Gateway and Busybox components
    3. How to setup the HAProxy Cluster with high availability
    4. How to setup the Masters using kubeadm bootstrap
    5. How to setup the Workers using kubeadm bootstrap
    6. How to setup the Dashboard
    7. Demo Application
    8. LoadBalancer
      1. How to setup the MetalLB
  5. Appendix
    1. External CA Infrastructure
      1. How to create the external CA Infrastructure
    2. External etcd
      1. How to setup the external etcd with TLS
      2. How to setup the Masters using kubeadm bootstrap with external etcd

Contributing

Please read CONTRIBUTING.md for details on our code of conduct, and the process for submitting pull requests to us.

Versioning

We use GitHub for versioning. For the versions available, see the tags on this repository.

Authors

See also the list of contributors who participated in this project.

License

This project is licensed under the BSD License - see the LICENSE file for details