Errors or typos? Topics missing? Hard to read? Let us know.
Find machines
Discover active machines
MAAS detects devices via network traffic.
UI
Networking > Network discovery
CLI
maas $PROFILE discoveries read
Find a machine’s ID
Everything in MAAS revolves around the system ID. Get it:
UI
Machines > [machine] (Check browser URL: ...machine/<SYSTEM_ID>/summary
)
CLI
maas admin machines read | jq -r '(["HOSTNAME","SYSID"] | (., map(length*"-"))),(.[] | [.hostname, .system_id]) | @tsv' | column -t
List machines
UI
Machines (View list)
CLI
maas $PROFILE machines read | jq -r '(["HOSTNAME","SYSID","STATUS"] | join(","))'
Search for machines
Use MAAS search syntax to find specific machines.
UI
Hardware > Machines > [Search bar] and enter a search term; MAAS updates the list dynamically.
For exact matches, prefix the value with =
; for partial matches, omit it; and for negation, use !
:
Exact: pod:=able-cattle
Partial: pod:able,cattle
Negated: pod:!cattle
CLI
maas $PROFILE machines read | jq -r '(["HOSTNAME","SYSID","STATUS"] | join(","))'
Filter machines by parameters
UI
Hardware > Machines > Filters dropdown > [Select parameters]
MAAS builds the search term dynamically and updates the list. You can copy and save these terms for reuse.
Add & configure machines
Add a machine
Provide architecture, MAC address, power type, and parameters.
UI
Machines > Add hardware
CLI
maas $PROFILE machines create architecture=$ARCH mac_addresses=$MAC_ADDRESS \
power_type=$POWER_TYPE power_parameters_power_id=$POWER_ID \
power_parameters_power_address=$POWER_ADDRESS power_parameters_power_pass=$POWER_PASSWORD
Clone a machine
UI
Machines > [machine] > Take action > Clone
CLI
maas $PROFILE machine clone $SOURCE_SYSTEM_ID new_hostname=$NEW_HOSTNAME
Set power type
Without this, MAAS can’t control the machine.
UI
Machines > [machine] > Configuration > Power > Edit
CLI
maas $PROFILE machine update $SYSTEM_ID power_type="$POWER_TYPE"
Control machine power
Turn on
UI
Machines > [machine] > Take action > Power on
CLI
maas $PROFILE machine start $SYSTEM_ID
Turn off
UI
Machines > [machine] > Take action > Power off
CLI
maas $PROFILE machine stop $SYSTEM_ID
Soft power-Off
maas $PROFILE machine stop $SYSTEM_ID force=false
Commission & test machines
Commission a machine
Required before deployment.
UI
Machines > [machine] > Take action > Commission
CLI
maas $PROFILE machine commission $SYSTEM_ID
**Run tests
UI
Machines > [machine] > Take action > Test
CLI
maas $PROFILE machine test $SYSTEM_ID tests=cpu,storage
View test results
UI
Machines > [machine] > Test results
CLI
maas $PROFILE machine read $SYSTEM_ID | jq '.test_results'
Override failed tests
UI
Machines > [machine] > Take action > Override test results
CLI
maas $PROFILE machine set-test-result $SYSTEM_ID result=passed
Deploy machines
Allocate a machine
Locks ownership to the user who allocates it.
UI
Machines > [machine] > Take action > Allocate
CLI
maas $PROFILE machines allocate system_id=$SYSTEM_ID
Deploy a machine
UI
Machines > [machine] > Take action > Deploy
CLI
maas $PROFILE machine deploy $SYSTEM_ID
Deploy as a VM host
UI
Machines > [machine] > Take action > Deploy > Install KVM
CLI
maas $PROFILE machine deploy $SYSTEM_ID install_kvm=True
Deploy with cloud-init config
UI
Machines > [machine] > Take action > Deploy > Configuration options
CLI
maas $PROFILE machine deploy $SYSTEM_ID cloud_init_userdata="$(cat cloud-init.yaml)"
Configure machine settings
Set kernel version
System-wide default:
UI
Settings > Configuration > Commissioning > Default minimum kernel version
CLI
maas $PROFILE maas set-config name=default_min_hwe_kernel value=$KERNEL
Per-machine kernel:
UI
Machines > [machine] > Configuration > Edit > Minimum kernel
CLI
maas $PROFILE machine update $SYSTEM_ID min_hwe_kernel=$HWE_KERNEL
Deploy with a specific kernel:
UI
Machines > [machine] > Take action > Deploy > Choose kernel
CLI
maas $PROFILE machine deploy $SYSTEM_ID distro_series=$SERIES hwe_kernel=$KERNEL
Set boot options
System-wide default:
UI
Settings > Kernel parameters
CLI
maas $PROFILE maas set-config name=kernel_opts value='$KERNEL_OPTIONS'
Configure storage layout
Default layout for all machines:
UI
Settings > Storage > Default layout
CLI
maas $PROFILE maas set-config name=default_storage_layout value=$LAYOUT_TYPE
Per-machine layout:
UI
Machines > [machine] > Storage > Edit layout
CLI
maas $PROFILE machine set-storage-layout $SYSTEM_ID storage_layout=$LAYOUT_TYPE
Rescue & recovery
Enter rescue mode
UI
Machines > [machine] > Take action > Enter rescue mode
CLI
maas $PROFILE machine enter-rescue-mode $SYSTEM_ID
SSH into a machine
ssh ubuntu@$MACHINE_IP
Exit rescue mode
UI
Machines > [machine] > Take action > Exit rescue mode
CLI
maas $PROFILE machine exit-rescue-mode $SYSTEM_ID
Mark a machine as broken
UI
Machines > [machine] > Take action > Mark broken
CLI
maas $PROFILE machines mark-broken $SYSTEM_ID
Mark a machine as fixed
UI
Machines > [machine] > Take action > Mark fixed
CLI
maas $PROFILE machines mark-fixed $SYSTEM_ID
Release or remove machines
Release a machine
UI
Machines > [machine] > Take action > Release
CLI
maas $PROFILE machines release $SYSTEM_ID
Erase disks on release
UI
Machines > [machine] > Take action > Release > Enable disk erasure options
CLI
maas $PROFILE machine release $SYSTEM_ID erase=true secure_erase=true quick_erase=true
Delete a machine
UI
Machines > [machine] > Take action > Delete
CLI
maas $PROFILE machine delete $SYSTEM_ID
Force delete a stuck machine
maas $PROFILE machine delete $SYSTEM_ID force=true
Verify everything
Check all machines
UI
Machines (View list or search)
CLI
maas $PROFILE machines read | jq -r '.[].hostname'
Last updated 14 hours ago.