Yes, your point on the two drivers is interesting. The mscm.py appears in MAAS under chassis, so it feels like the right one. The moonshot.py appears under machine, and it feels like a way of configuring individual nodes in the chassis, since it asks for much more detail. I agree, I’m not sure why there are two.
I’m working away at making changes to mscm.py now. Just to provide some commentary on the learning experience I’m having…
There are some pretty breaking changes in Chassis Manager 2.0. Commands like
show node list and
set node boot are gone, so those commands will need to be changed for equivalents if they still exist.
Cartridges are now called Blades now. So even if you query for the list of nodes (which can be done with
show node mgmtaddr4 all, and outputs:
Slot ID Management Address
---- ----- ------------------
1 c1n1 192.168.4.125:736
2 c2n1 192.168.4.125:737
To then get the model you then need to query against the blade (e.g. b1), instead of the node (e.g. c1n1):
MoonshotCM2.0->show blades b1
iLO HTTPS: https://192.168.4.125:736
iLO SSH: 192.168.4.125:826
iLO MAC: [REDACTED]
Model: ProLiant m750 Server Blade
Notice that the Model is “ProLiant m750 Server Blade” here, whereas in previous versions the models all showed as “ProLiant mXXX Server Cartridge”. If I took an old m710 cartridge and put it in the this chassis with the new firmware I wonder what it would show as. Since I don’t have a wide variety of hardware to test with I might be better assuming either.
I’m not sure whether the changes are significant enough for this to be a new chassis type (e.g. Moonshot Chassis Manager 2.0) or whether the existing chassis type should be modified to detect whether it’s v1.0 or v2.0. For detection, the
show firmware command pretty definitely helps identify that it’s a 2.0 chassis.