Once a node is added to MAAS (see Add nodes) the next logical step is to commission it.
To commission a node, you must configure the underlying machine to netboot, which normally happens during enlistment stage. Such a machine will undergo the following process:
- DHCP server is contacted
- kernel and initrd are received over TFTP
- machine boots
- initrd mounts a Squashfs image ephemerally over HTTP
- cloud-init runs built-in and custom commissioning scripts
- machine shuts down
The commissioning scripts will talk to the region API server to ensure that everything is in order and that eventual deployment will succeed.
MAAS chooses the latest Ubuntu LTS release as the default image for commissioning. If desired, you can select a different image in the ‘Settings’ page of the web UI, by selecting the ‘General’ tab and then scrolling down to the Commissioning section.
To commission, on the ‘Machines’ page, select a node and choose ‘Commission’ under the ‘Take action’ drop-down menu.
You have the option of selecting some extra parameters (checkboxes) and performing hardware tests.
These options include:
Allow SSH access and prevent machine powering off: Machines are normally powered off after commissioning. This option keeps the machine on and enables SSH so you can access the machine.
Retain network configuration: When enabled, preserves any custom network settings previously configured for the machine. See Networking for more information.
Retain storage configuration: When enabled, preserves any storage settings previously configured for the machine. See Storage for more details.
Update firmware: Runs scripts tagged with 'update_firmware. See Testing scripts for more details.
Configure HBA: Runs scripts tagged with ‘configure_hba’. As above, see Testing scripts for further details.
Click the Hardware tests field to reveal a drop-down list of tests to add and run during commissioning. See Hardware testing) for more information on hardware testing scripts.
Finalise the directive by hitting ‘Commission machine’.
While commissioning, the node status will change to reflect this state (Commissioning). MAAS discovers the node’s network topology. MAAS then prompts a node network interface to connect to the fabric, VLAN, and subnet combination for configuration. Usually, MAAS assigns a static IP address out of the reserved IP range for the subnet (‘Auto assign’ mode). The next section details several assignment modes.
See MAAS CLI for how to commission a node with the CLI.
Once commissioned, a node’s status will change to Ready, and an extra tab for the node called ‘Commissioning’ will become available. This tab contains the results of the scripts executed during the commissioning process.
Once commissioned, you can configure the node’s network interface(s). Specifically, when a node’s status is either ‘Ready’ or ‘Broken’, interfaces can be added/removed, attached to a fabric and linked to a subnet, and provided an IP assignment mode. Tags can also be assigned to specific network interfaces (see Tags for network interfaces).
From a node’s ‘Interfaces’ page, click the menu icon for the interface to be edited and select ‘Edit Physical’ from the resulting menu:
The following window will appear:
Four modes determine how a subnet address is assigned when MAAS deploys the node. You can select one of these modes by clicking on the ‘IP mode’ drop-down menu.
Auto assign: MAAS will assign a random static address (
iface eth0 inet static). The pool of available addresses depends on whether the subnet is managed or unmanaged (see Subnet management).
Static assign: The administrator will specify a static address using a secondary field.
DHCP: The node leases a dynamic IP address, via either MAAS-managed DHCP or an external DHCP server.
Unconfigured: The interface is not configured.
Press the ‘Save’ button to apply the changes.
A bond interface is used to aggregate two or more physical interfaces into a single logical interface. A bond is created by selecting more than one interface and clicking the now-active ‘Create bond’ button:
After clicking the ‘Create bond’ button, the bond configuration pane will appear.
From the bond configuration pane, you can rename the bond, select a bond mode (see below), assign a MAC address to the aggregate device and attach one or more tags.
The interfaces aggregated into the bond interface are listed below the ‘Tags’ field. Use the ‘Primary’ column to select the interface to act as the primary device.
You can select from the following bonding modes on the ‘Bond mode’ drop-down menu:
balance-rr: Transmit packets in sequential order from the first available slave through to the last. This mode provides load balancing and fault tolerance.
active-backup: Only one slave in the bond is active. A different slave becomes active if, and only if, the active slave fails. The bond’s MAC address is externally visible on only one port (network adapter) to avoid confusing the switch.
balance-xor: Transmit based on the selected transmit hash policy. The default policy is simple, which means that an XOR operation selects packages. This XOR compares the source MAC address and the resultant XOR between the destination MAC address, the packet type identifier, and the modulo slave count.
broadcast: Transmit everything on all slave interfaces. This mode provides fault tolerance.
802.3ad: Creates aggregation groups that share the same speed and duplex settings. This mode utilises all slaves in the active aggregation, following the IEEE 802.3ad specification.
balance-tlb: Adaptive transmit load balancing, channel bonding that does not require any special switch support.
balance-alb: Adaptive load balancing, includes balance-tlb plus receive load balancing (rlb) for IPV4 traffic. This mode does not require any special switch support. ARP negotiation achieves load balancing in this case.
Press the ‘Save’ button when you’re done.
The MAC address defaults to the MAC address of the primary interface.
A bridge is created by selecting an interface and clicking the now-active ‘Create bridge’ button. A form will appear that allows you to configure a MAC address, STP, and an appropriate tag.
Press the ‘Save’ button when you’re done.
Pro tip: A network bridge may be useful if you intend to put virtual machines or containers on the node.
See CLI Interface Management for details on how you can configure interfaces from the command line.