├── .gitignore ├── LICENSE ├── README.md ├── addaptrepos.sh ├── addhelmrepos.sh ├── auth ├── admin-csr.json ├── ca-config.json ├── ca-csr.json ├── control0-csr.json ├── control1-csr.json ├── control2-csr.json ├── deployauth.sh ├── genauth.sh ├── genenckey.sh ├── kube-controller-manager-csr.json ├── kube-proxy-csr.json ├── kube-scheduler-csr.json ├── kubernetes-csr.json ├── service-account-csr.json ├── setuplocalkubeconfig.sh ├── worker0-csr.json ├── worker1-csr.json └── worker2-csr.json ├── cloud-init ├── network-config.control ├── network-config.gateway ├── network-config.worker ├── user-data.control ├── user-data.gateway └── user-data.worker ├── deploybinaries.sh ├── deploysetup.sh ├── docs ├── 00_Introduction.md ├── 01_Learning_How_to_Run_VMs_with_QEMU.md ├── 02_Preparing_Environment_for_a_VM_Cluster.md ├── 03_Launching_the_VM_Cluster.md ├── 04_Bootstrapping_Kubernetes_Security.md ├── 05_Installing_Kubernetes_Control_Plane.md ├── 06_Spinning_up_Worker_Nodes.md ├── 07_Installing_Essential_Cluster_Services.md ├── 08_Simplifying_Network_Setup_with_Cilium.md ├── 09_TLDR_Version_of_the_Guide.md └── images │ ├── grub_menu.png │ ├── qemu_console.png │ ├── tmux_initial.png │ ├── tmux_new_window.png │ ├── tmux_qemu.png │ ├── tmux_synchronized.png │ ├── tmux_vertical_split.png │ ├── ubuntu_graphic.png │ ├── ubuntu_headless.png │ ├── ubuntu_login.png │ ├── uefi_console.png │ └── vm_interface.png ├── helpers.sh ├── restartdnsmasq.sh ├── setupall.sh ├── setupcluster.sh ├── setupcontrol.sh ├── setupgateway.sh ├── setuphost.sh ├── setupkubeletaccess.sh ├── setupnode.sh ├── setuproutes.sh ├── tapup.sh ├── variables.sh ├── vmlaunch.sh ├── vmlaunchall.sh ├── vmsetup.sh ├── vmsetupall.sh ├── vmsshall.sh └── vmsshsetup.sh /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghik/kubernetes-the-harder-way/HEAD/.gitignore -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghik/kubernetes-the-harder-way/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghik/kubernetes-the-harder-way/HEAD/README.md -------------------------------------------------------------------------------- /addaptrepos.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghik/kubernetes-the-harder-way/HEAD/addaptrepos.sh -------------------------------------------------------------------------------- /addhelmrepos.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghik/kubernetes-the-harder-way/HEAD/addhelmrepos.sh -------------------------------------------------------------------------------- /auth/admin-csr.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghik/kubernetes-the-harder-way/HEAD/auth/admin-csr.json -------------------------------------------------------------------------------- /auth/ca-config.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghik/kubernetes-the-harder-way/HEAD/auth/ca-config.json -------------------------------------------------------------------------------- /auth/ca-csr.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghik/kubernetes-the-harder-way/HEAD/auth/ca-csr.json -------------------------------------------------------------------------------- /auth/control0-csr.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghik/kubernetes-the-harder-way/HEAD/auth/control0-csr.json -------------------------------------------------------------------------------- /auth/control1-csr.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghik/kubernetes-the-harder-way/HEAD/auth/control1-csr.json -------------------------------------------------------------------------------- /auth/control2-csr.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghik/kubernetes-the-harder-way/HEAD/auth/control2-csr.json -------------------------------------------------------------------------------- /auth/deployauth.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghik/kubernetes-the-harder-way/HEAD/auth/deployauth.sh -------------------------------------------------------------------------------- /auth/genauth.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghik/kubernetes-the-harder-way/HEAD/auth/genauth.sh -------------------------------------------------------------------------------- /auth/genenckey.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghik/kubernetes-the-harder-way/HEAD/auth/genenckey.sh -------------------------------------------------------------------------------- /auth/kube-controller-manager-csr.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghik/kubernetes-the-harder-way/HEAD/auth/kube-controller-manager-csr.json -------------------------------------------------------------------------------- /auth/kube-proxy-csr.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghik/kubernetes-the-harder-way/HEAD/auth/kube-proxy-csr.json -------------------------------------------------------------------------------- /auth/kube-scheduler-csr.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghik/kubernetes-the-harder-way/HEAD/auth/kube-scheduler-csr.json -------------------------------------------------------------------------------- /auth/kubernetes-csr.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghik/kubernetes-the-harder-way/HEAD/auth/kubernetes-csr.json -------------------------------------------------------------------------------- /auth/service-account-csr.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghik/kubernetes-the-harder-way/HEAD/auth/service-account-csr.json -------------------------------------------------------------------------------- /auth/setuplocalkubeconfig.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghik/kubernetes-the-harder-way/HEAD/auth/setuplocalkubeconfig.sh -------------------------------------------------------------------------------- /auth/worker0-csr.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghik/kubernetes-the-harder-way/HEAD/auth/worker0-csr.json -------------------------------------------------------------------------------- /auth/worker1-csr.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghik/kubernetes-the-harder-way/HEAD/auth/worker1-csr.json -------------------------------------------------------------------------------- /auth/worker2-csr.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghik/kubernetes-the-harder-way/HEAD/auth/worker2-csr.json -------------------------------------------------------------------------------- /cloud-init/network-config.control: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghik/kubernetes-the-harder-way/HEAD/cloud-init/network-config.control -------------------------------------------------------------------------------- /cloud-init/network-config.gateway: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghik/kubernetes-the-harder-way/HEAD/cloud-init/network-config.gateway -------------------------------------------------------------------------------- /cloud-init/network-config.worker: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /cloud-init/user-data.control: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghik/kubernetes-the-harder-way/HEAD/cloud-init/user-data.control -------------------------------------------------------------------------------- /cloud-init/user-data.gateway: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghik/kubernetes-the-harder-way/HEAD/cloud-init/user-data.gateway -------------------------------------------------------------------------------- /cloud-init/user-data.worker: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghik/kubernetes-the-harder-way/HEAD/cloud-init/user-data.worker -------------------------------------------------------------------------------- /deploybinaries.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghik/kubernetes-the-harder-way/HEAD/deploybinaries.sh -------------------------------------------------------------------------------- /deploysetup.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghik/kubernetes-the-harder-way/HEAD/deploysetup.sh -------------------------------------------------------------------------------- /docs/00_Introduction.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghik/kubernetes-the-harder-way/HEAD/docs/00_Introduction.md -------------------------------------------------------------------------------- /docs/01_Learning_How_to_Run_VMs_with_QEMU.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghik/kubernetes-the-harder-way/HEAD/docs/01_Learning_How_to_Run_VMs_with_QEMU.md -------------------------------------------------------------------------------- /docs/02_Preparing_Environment_for_a_VM_Cluster.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghik/kubernetes-the-harder-way/HEAD/docs/02_Preparing_Environment_for_a_VM_Cluster.md -------------------------------------------------------------------------------- /docs/03_Launching_the_VM_Cluster.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghik/kubernetes-the-harder-way/HEAD/docs/03_Launching_the_VM_Cluster.md -------------------------------------------------------------------------------- /docs/04_Bootstrapping_Kubernetes_Security.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghik/kubernetes-the-harder-way/HEAD/docs/04_Bootstrapping_Kubernetes_Security.md -------------------------------------------------------------------------------- /docs/05_Installing_Kubernetes_Control_Plane.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghik/kubernetes-the-harder-way/HEAD/docs/05_Installing_Kubernetes_Control_Plane.md -------------------------------------------------------------------------------- /docs/06_Spinning_up_Worker_Nodes.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghik/kubernetes-the-harder-way/HEAD/docs/06_Spinning_up_Worker_Nodes.md -------------------------------------------------------------------------------- /docs/07_Installing_Essential_Cluster_Services.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghik/kubernetes-the-harder-way/HEAD/docs/07_Installing_Essential_Cluster_Services.md -------------------------------------------------------------------------------- /docs/08_Simplifying_Network_Setup_with_Cilium.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghik/kubernetes-the-harder-way/HEAD/docs/08_Simplifying_Network_Setup_with_Cilium.md -------------------------------------------------------------------------------- /docs/09_TLDR_Version_of_the_Guide.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghik/kubernetes-the-harder-way/HEAD/docs/09_TLDR_Version_of_the_Guide.md -------------------------------------------------------------------------------- /docs/images/grub_menu.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghik/kubernetes-the-harder-way/HEAD/docs/images/grub_menu.png -------------------------------------------------------------------------------- /docs/images/qemu_console.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghik/kubernetes-the-harder-way/HEAD/docs/images/qemu_console.png -------------------------------------------------------------------------------- /docs/images/tmux_initial.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghik/kubernetes-the-harder-way/HEAD/docs/images/tmux_initial.png -------------------------------------------------------------------------------- /docs/images/tmux_new_window.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghik/kubernetes-the-harder-way/HEAD/docs/images/tmux_new_window.png -------------------------------------------------------------------------------- /docs/images/tmux_qemu.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghik/kubernetes-the-harder-way/HEAD/docs/images/tmux_qemu.png -------------------------------------------------------------------------------- /docs/images/tmux_synchronized.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghik/kubernetes-the-harder-way/HEAD/docs/images/tmux_synchronized.png -------------------------------------------------------------------------------- /docs/images/tmux_vertical_split.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghik/kubernetes-the-harder-way/HEAD/docs/images/tmux_vertical_split.png -------------------------------------------------------------------------------- /docs/images/ubuntu_graphic.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghik/kubernetes-the-harder-way/HEAD/docs/images/ubuntu_graphic.png -------------------------------------------------------------------------------- /docs/images/ubuntu_headless.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghik/kubernetes-the-harder-way/HEAD/docs/images/ubuntu_headless.png -------------------------------------------------------------------------------- /docs/images/ubuntu_login.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghik/kubernetes-the-harder-way/HEAD/docs/images/ubuntu_login.png -------------------------------------------------------------------------------- /docs/images/uefi_console.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghik/kubernetes-the-harder-way/HEAD/docs/images/uefi_console.png -------------------------------------------------------------------------------- /docs/images/vm_interface.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghik/kubernetes-the-harder-way/HEAD/docs/images/vm_interface.png -------------------------------------------------------------------------------- /helpers.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghik/kubernetes-the-harder-way/HEAD/helpers.sh -------------------------------------------------------------------------------- /restartdnsmasq.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghik/kubernetes-the-harder-way/HEAD/restartdnsmasq.sh -------------------------------------------------------------------------------- /setupall.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghik/kubernetes-the-harder-way/HEAD/setupall.sh -------------------------------------------------------------------------------- /setupcluster.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghik/kubernetes-the-harder-way/HEAD/setupcluster.sh -------------------------------------------------------------------------------- /setupcontrol.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghik/kubernetes-the-harder-way/HEAD/setupcontrol.sh -------------------------------------------------------------------------------- /setupgateway.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghik/kubernetes-the-harder-way/HEAD/setupgateway.sh -------------------------------------------------------------------------------- /setuphost.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghik/kubernetes-the-harder-way/HEAD/setuphost.sh -------------------------------------------------------------------------------- /setupkubeletaccess.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghik/kubernetes-the-harder-way/HEAD/setupkubeletaccess.sh -------------------------------------------------------------------------------- /setupnode.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghik/kubernetes-the-harder-way/HEAD/setupnode.sh -------------------------------------------------------------------------------- /setuproutes.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghik/kubernetes-the-harder-way/HEAD/setuproutes.sh -------------------------------------------------------------------------------- /tapup.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghik/kubernetes-the-harder-way/HEAD/tapup.sh -------------------------------------------------------------------------------- /variables.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghik/kubernetes-the-harder-way/HEAD/variables.sh -------------------------------------------------------------------------------- /vmlaunch.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghik/kubernetes-the-harder-way/HEAD/vmlaunch.sh -------------------------------------------------------------------------------- /vmlaunchall.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghik/kubernetes-the-harder-way/HEAD/vmlaunchall.sh -------------------------------------------------------------------------------- /vmsetup.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghik/kubernetes-the-harder-way/HEAD/vmsetup.sh -------------------------------------------------------------------------------- /vmsetupall.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghik/kubernetes-the-harder-way/HEAD/vmsetupall.sh -------------------------------------------------------------------------------- /vmsshall.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghik/kubernetes-the-harder-way/HEAD/vmsshall.sh -------------------------------------------------------------------------------- /vmsshsetup.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghik/kubernetes-the-harder-way/HEAD/vmsshsetup.sh --------------------------------------------------------------------------------