The purpose of Kubernetes is to solve a very complex problem and to organize and your application across the machines. However, spending some time to learning how to fit the pieces together is to be expected by the user. Complex installation and configuration document and management headache are the problems that might be faced.
A cluster needs at least one node running all of these processes. To run a production cluster you want fault tolerance which means you need a cluster of 3 etcd nodes and 2 Kube API nodes. Now you are running and maintaining 5 nodes!
Architecting IT Operation processes and Infrastructure that make applications easy to Deploy, test, and monitor.
Automating tasks to enable continuous integration and deployment
Orchestrating container system