Kubernetes is initially hard to understand. Every website tells us it's a container orchestrator, but what does it actually do? Well, nothing makes things easier to understand than actually using this software yourself. Get access to a Kubernetes environment in seconds! No need to install anything. You just click a button and you get one ready-made, easily accessible from your browser. Enter kubectl commands, experiment, and see for yourself what this orchestrator is all about.
Kubernetes makes it easy to run thousands of containers across hundreds of servers. It takes care of distributing every container where it should be. It makes sure failed containers are replaced automatically. It even ensures that the cluster nodes that fail also get replaced (if extra servers are already available). It auto-heals and keeps things running the way you instructed it to do. It's an automation tool that orchestrates stuff for you; makes sure things go according to plan. And since it mainly works with containers, these are some reasons why it's called a container orchestrator.
Container Network Interfaces or CNI enables networking capabilities within your Kubernetes cluster and internal components. It allows communication between nodes, pods, and also services. It is one of the primary components that is required in order to set up a Kubernetes cluster. One of the widely-used CNI available is Flannel. It is a lightweight and quite a basic network layer solely designed for Kubernetes. This is the CNI for those who want a simple and quick networking solution for their Kubernetes clusters and do not need any other advanced features like network policies to be implemented.