I can&#x27;t speak for the commenter, but for me the ... concern ... with using shell scripts is the complete lack of understanding of what they are going to do. It&#x27;s not exactly a lack of trust for the Kubernetes team as much as <i>when</i> it goes toes-up (not <i>if</i>), then one needs to be able to understand what it did in order to understand what it didn&#x27;t.<p>I haven&#x27;t used their cluster provisioning in a while, but back when I did it made a lot of modifications to AWS before falling over, at which point I need to either undo those changes or the scripts need to be smart enough to resume where they left off. Shell scripts are not well suited to that purpose, in my experience.<p>Yes, I am aware of their salt stack procedure, but it doesn&#x27;t hold a candle to the simplicity of Kubernetes on CoreOS, which unlike the 23+ directories worth of salt things to read is something you would probably fit on 3 A4 sheets of paper: <a href="https:&#x2F;&#x2F;github.com&#x2F;coreos&#x2F;coreos-kubernetes&#x2F;tree&#x2F;master&#x2F;multi-node&#x2F;vagrant" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;coreos&#x2F;coreos-kubernetes&#x2F;tree&#x2F;master&#x2F;mult...</a>  I provisioned a Vagrant cluster using the Kubernetes salt mechanism just for this comment, and the &quot;Cockpit&quot; username and password didn&#x27;t work after it was finished. Which salt config contains that information? Beats me. I&#x27;m thankful that `vagrant ssh master` did as expected.<p>I recognize that the previous paragraph is just _my_ experience and _my_ preferences, but the anecdote is the reason why (in my experience) one must understand what the &quot;magic&quot; deployment process is doing, and only after that voluntarily cede control to the scripts merely as a labor-saving tactic. It does me no good to have a cluster brought to life that I then have zero idea how to maintain.