I currently use VirtualBox + SaltStack to solve this problem, which has worked well and has significantly less overhead than going full Docker / K8s