Earlier quoted context omitted.
k8s is not complex. You basically can spin up a cluster in no time on CoreOS via pxe/ipxe. You do not even need all these fancy stuff around k8s. You only need to ssh into your machine to start bootkube (on a single machine) or later to update the kubelet (can be done with ansible). Everything else can be managed via kubectl.
CoreOS, PXE, bootkube, kubelet, kubectl. And you say it's not complex? I don't think you and I will ever agree on the meaning of that word.
"You just take your app and put it in a container, then put that container in a pod, which is in a replica set with some other apps in their own containers, which is on a node in a cluster in a datacenter somewhere! Oh and the replica set is amongst a deployment. And if you want to talk to the outside world you'll need a sidecar with ngnix which is an app in a container in your pod. Or your deployment. But it's different than your app. Time to get kubectl and minikube installed..." People act like all these concepts are taught in beginner CS classes.