MaaS and Juju with pods

I’m rethinking my deployment. I have a small number of machines to use and want to make the most of them for my real goal of workloads. Right now I end up with a lot of machines tied up in administrative type tasks.

I have gone through the process of redeploying with pods, but I feel like I’m missing something. Some details will help I think. I have 6 physical machines of varying abilities and ages. I manually deploy one and install MaaS and then enlist that machine as a pod. I have to be careful not to overload this as I can’t reserve cpu or memory for other things the machine is doing. I then enlist the other machines as pods as well. From there I deploy Charmed Kubernetes with a special bundle to properly spread things around so I don’t end up with all my etcd on 1 physical node or something. I feel like Juju will handle this for me, but I haven’t found a good guide for how to set up MaaS for Juju with availability zones or something to encourage this spreading.

I end up with machines that I need to ssh to in order to manage such as the enlisted pod machines and some machines I can manage with juju. I’d really like to be able to see and juju ssh to any of the machines in the pool. I really like the thought of everything visible on a single pane of glass so to speak and having to go to the MaaS GUI to find the machine IP and then ssh to it for some machines and juju ssh for the others seems clunky like I’m missing something.

My new plan is further confused with the addition of Ceph to my cluster. I want to deploy Ceph OSD on each machine as a base of sorts and then also use that machine for the VMs needed for Kubernetes. I’m currently using a monolithic NFS server and I grow concerned about the single point of failure in that hardware. It is ZFS with many disks, but if that power supply or motherboard dies it will take down the cluster.

So, with all that in mind, does anyone know of a good guide for how to cleanly set up MaaS as a Juju host with the day two operations in mind? How does one best spin this up and still administer the original host for MaaS? I think my current best practice is to set up the MaaS machine, enlist it as a pod, and then manually add the host to Juju. This seems like some serious work recreating what Juju and MaaS were meant to solve though. Am I missing something or is it just a chicken and egg issue?