We have a pool of bare-metal servers that have pre-trunked all possible VLANs. The specific VLAN(s) that need to configured on the bm server is dictated by the workload being deployed.
So for example, if the physical ToR switch has the following VLANs trunked to all machine interfaces:
VLAN 100-199
A single machine deploy would run an app that uses VLAN 150, which means we need maas to create a VLAN interface on 150. say, "bond0.150"
Unfortunately, we cannot first Acquire/Allocate the node, and then configure the network because of the maas error:
"Interface configuration cannot be modified unless the node is Ready or Broken."
By forcing the interface configuration to occur during Ready state, means we introduce a possibility of simultaneous maas service requests trying to configure the same maas machine. Which of course, Allocation/Acquire nicely removes this possibility.
As a workaround, we are thinking of first marking a node as 'Broken'->(configure interface)->'Mark Fixed'->'Acquire'->'Deploy'.
We have a pool of bare-metal servers that have pre-trunked all possible VLANs. The specific VLAN(s) that need to configured on the bm server is dictated by the workload being deployed.
So for example, if the physical ToR switch has the following VLANs trunked to all machine interfaces:
VLAN 100-199
A single machine deploy would run an app that uses VLAN 150, which means we need maas to create a VLAN interface on 150. say, "bond0.150"
Unfortunately, we cannot first Acquire/Allocate the node, and then configure the network because of the maas error:
"Interface configuration cannot be modified unless the node is Ready or Broken."
By forcing the interface configuration to occur during Ready state, means we introduce a possibility of simultaneous maas service requests trying to configure the same maas machine. Which of course, Allocation/Acquire nicely removes this possibility.
As a workaround, we are thinking of first marking a node as 'Broken' ->(configure interface)->'Mark Fixed'- >'Acquire' ->'Deploy' .
This is all done via maas api.