This book is inspired by Kelsey Hightower's work on Kubernetes. It tries to address areas which Kelsey's guide ("Kubernetes the Hard Way") does not cover, or are not explained well - or so I understood.
This ebook will show you how to setup a Kubernetes cluster on bare-metal. The setup may as well consist of VMs instead of real bare-metal machines. You can also implement the same concepts on AWS and GCE clouds, or any other cloud for that matter, such as Digital Ocean, Zetta, etc - except for the HA bits.
Note: The order of the chapters can change. This outline will change heavily in the coming days / weeks.
- (and why not plain docker, or docker swarm, etc?)
- Concepts and terminology of Kubernetes.
- Write about what type of hardware is needed. If not physical hardware, then what size of VMs are needed. etc.
- Discuss what type of network technologies are we going to use. Such as flannel or CIDR, etc.
- This will be a relatively short chapter.
- Here we provision our machines, and also setup networking.
- This will have a couple of diagrams
- Talk about what etcd is and how to set it up, including it's installation
- Also show how to to setup etcd in HA mode.
- Talk about how kubernetes master node is setup
- also talk about HA for controller nodes.
- Include access control and Authentication/Authorization, etc.
- Here we setup Corosync/Pacemaker to provide HA to Kubernetes.
- Setup Kubernetes worker nodes.
- Including docker
- Setup networking (CNI/CIDR)
- Setup remote access with Kubectl
- short chapter.
- Just verification of components.
- What to expect in logs, etc.
- Setting up a work computer to use kubectl and talk to kubernetes master.
- Creating a simple nginx RC/Deployment
- Scaling a Deployment
- Accessing a pod from within pod network, using pod IPs
- Creating a service using cluster IP and accessing it from within pod network
- Creating a service using external IP and accessing it from outside the cluster network and also outside of kubernetes cluster.
- Some Visualizers (CAdvisor, fedora CockPit, kubernetes visualizer, etc)
- Alerting?