MaaS minimum requirements with juju-jitsu?
I've browsed through so many different sites and found so much contradictory information. As I am getting tired of this and do belive this question affects many other users, so I would like to collect the "once and for all times" answer. Unfortunately, the documentation on MaaS and Juju is ... well, not the best, sorry to say that.
What are the minimum system requirements for setting up a MaaS cluster, which is going to be orchestrated with juju-jitsu
?
Do they need to have the exact system specifications or can I just combine different hardware?
What are the minimum requirements for the master machine?
E.g. "You need at least 8GB of RAM, a dual core CPU with at least 3.0 GHz."
How many machines to I need to deploy MaaS on?
I've read six machines, nine machines, and so on. I clearly want to know: "You need one for the Master and e.g. five nodes."
Do I need to attach as many NICs (network interface cards) to my master machine as there are nodes, or can I simply attach two NICs and a switch?
One NIC for connecting to the internet, one for handling the MaaS tasks, connected to a switch, which connects my nodes to the master?
Is Juju now ready for local deployment?
The last time I experimented with juju
and had to reboot my machine, the services orchestrated by juju were gone. This was an issue I also found on the official juju site. Unfortunately, as mentioned above, the documentation is not the best, so I could not find the necessary info on that again. So:
Can I use juju on a local environment or will a reboot break my setup?
Solution 1:
What are the minimum system requirements for setting up a MaaS cluster, which is going to be orchestrated with juju-jitsu?
For the region controller (the master machine), you don't need anything particularly powerful unless you want to manage 100s or 1000s of machines.
Cluster controllers place even fewer demands, but unless you're dealing with more than, say, 200 machines you won't need a dedicated cluster controller anyway.
The machines you're going to manage can be pretty much anything, but I strongly suggest that you use machines with IPMI controllers, so that MAAS can control their power. MAAS can use Wake-On-LAN, but only for turning machines on, not off.
What are the minimum requirements for the master machine?
Nothing is particularly RAM or CPU intensive, so a machine with 2GB of RAM and a fairly modest CPU should get you going. You will need disk space for downloaded machine images and logs (MAAS collects remote syslogs), but even something like 20GB should be fine for starters too.
Evaluating complex tag expressions are one of the few things that MAAS does that are CPU intensive, but it does distribute this load to cluster controllers. The more machines you have under management, the more cluster controllers you will have, and therefore the more machines over which this load will be spread. When you're starting out you almost certainly have nothing to worry about in this regard.
How many machines to I need to deploy MaaS on?
Again, for getting started, you could have one machine as the region controller and the first cluster controller, and use that to manage 100s of machines.
We recommend that you have a dedicated cluster controller for each ~1000 machines, and that the cluster lives on its own broadcast domain. You must also assign a distinct IP subnetwork to each cluster.
Do I need to attach as many NICs (network interface cards) to my master machine as there are nodes, or can I simply attach two NICs and a switch?
One NIC is enough. To prevent broadcast traffic swamping the network, we suggest that you don't put more than ~1000 machines in each broadcast domain.
Is Juju now ready for local deployment?
Can I use juju on a local environment or will a reboot break my setup?
I'll leave the Juju questions for someone with more experience to answer.
Solution 2:
This is a partial answer only to your local deployment question. Juju's local provider in .7 is intended for local development of charms, and as you've found rebooting really breaks that workflow.
Juju will not have a production ready local provider until the end of this summer; however it will have support for surviving a reboot.