Pools control who can use machines. Zones describe failure domains. Tags group machines by purpose. Together they make larger labs manageable.
maas admin resource-pools read | jq -r '.[] | [.name, .id, .description] | @tsv' | column -t
maas admin resource-pools create name=lab description="LXD lab pool"
maas admin machine update <SYSID> pool=lab
maas admin zones read | jq -r '.[] | [.name, .description] | @tsv' | column -t
maas admin zones create name=az1 description="rack-1 closet"
maas admin machine update <SYSID> zone=az1
maas admin tags create name=k8s comment="kubernetes workers"
maas admin tag nodes add k8s <SYSID>
maas admin tag nodes remove k8s <SYSID>