How to label and find machines

When you’re working with a half-dozen machines, a lot of labelling isn’t necessary. As your constellation of machines grows, though, you reach a point where you can’t keep a compact picture in your head. This is where tags, annotations, and filtering come in.

Two of the more useful attributes of machines are tags and annotations. These can be used not only to identify machines, but to customise them (e.g., kernel options) when they are commissioned and deployed. You can tag machines, annotate machines, and use tags to mark machines, storage, controllers, and network interfaces.

You can also use filtering to find a given subset of machines. There isn’t a lot of theory, per se, on filtering, since it’s just a utility function of the user interface.

The rest of this article contains a little background information on tags and annotations.

About tags

Tags are short, descriptive, searchable words that can be applied to various MAAS objects, including:

  • machines (physical and virtual)
  • VM hosts
  • controllers (rack and region)
  • storage (virtual and physical; block devices or partitions)
  • network interfaces
  • devices
  • nodes (in the CLI only)

Tags serve to help you identify, group, and find objects easily, especially when you routinely deploy hundreds of machines.

About annotations

Annotations are descriptive, searchable phrases that apply only to machines. There are two types of annotations: static (always present in any machine state), and dynamic (only present in allocated or deployed states). Annotations help you identify, characterise, and inform others about your machines.

About tags and scripts

As with general tag management, tags make scripts easier to manage; grouping scripts together for commissioning and testing, for example:

maas $PROFILE node-script add-tag $SCRIPT_NAME tag=$TAG
maas $PROFILE node-script remove-tag $SCRIPT_NAME tag=$TAG

MAAS runs all commissioning scripts by default. However, you can select which custom scripts to run during commissioning by name or tag:

maas $PROFILE machine commission \
commissioning_scripts=$SCRIPT_NAME,$SCRIPT_TAG

You can also select which testing scripts to run by name or tag:

maas $PROFILE machine commission \
testing_scripts=$SCRIPT_NAME,$SCRIPT_TAG

Any testing scripts tagged with commissioning will also run during commissioning.

The big picture of tags

  • Work with tags: Tags for different objects have similar purposes, but they aren’t necessarily administered in the same way.
  • Work with annotations: Annotations are descriptive, searchable phrases that apply only to machines. There are two types of annotations: static (always present in any machine state), and dynamic (only present in allocated or deployed states). Annotations help you identify, characterise, and inform others about your machines.
  • Use machine tags: There are a number of ways you can use tags with machines.
  • Use controller tags: Controllers can be tagged to help identify and recognise them.
  • Use storage tags: Block devices (and to a lesser extent, partitions) can be tagged so you can recognise and identify them easily.
  • Use network tags: You can use tags to help distinguish one network interface from another, or group network interfaces by category.

Tags permuted index

a block device How to assign tags to
a block device How to remove tags from
About automatic tags
About Kernel options
About XPath expressions
Adding and removing machine tags simultaneously from multiple machines
all block devices How to list tags for
all machines at once Deleting tags from
all machines How to list machine tags for
all machines How to list dynamic annotations for
all machines How to list static annotations for
all network interfaces How to list tags for
all partitions How to list tags for
all rack controllers How to list tags for
all region controllers How to list tags for
all tagged nodes How to see
all tags available on this MAAS How to list
all virtual machine hosts How to list tags for
a machine How to assign machine tags to
a machine How to remove machine tags from
a machine How to change or clear a static annotation for
a machine How to clear and change dynamic annotations for
a machine How to set a static annotation for
a machine How to set dynamic annotations for
and assign block device tags How to create
and assign controller tags How to create
and assign machine tags to machines How to create
and assign network interface tags How to create
and assign static annotations How to create
and assign tags How to create
and change dynamic annotations for a machine How to clear
and delete block device tags How to remove
and delete controller tags How to remove
and delete machine tags from machines How to remove
and delete network interface tags How to remove
and partition tags How to list block device
and remove tags How to delete
and removing machine tags simultaneously from multiple machines Adding
a network interface How to assign tags to
a network interface How to remove tags from
annotation for a machine How to change or clear a static
annotation for a machine How to set a static
annotation for one machine How to view a static
annotations for all machines How to list dynamic
annotations for all machines How to list static
annotations for a machine How to clear and change dynamic
annotations for a machine How to set dynamic
annotations for one machine How to list dynamic
annotations for one machine How to view dynamic (workload)
annotations How to create and assign static
annotations How to delete static
annotations How to filter on dynamic (workload)
annotations How to identify machines that can receive dynamic
annotations How to view static
annotations Work with
annotations How to work with dynamic (workload)
annotations How to work with static
a partition How to assign tags to
a partition How to remove tags from
a rack controller How to assign tags to
a rack controller How to remove tags from
a region controller How to assign tags to
a region controller How to remove tags from
assign block device tags How to create and
assign controller tags How to create and
assign machine tags to a machine How to
assign machine tags to machines How to create and
assign network interface tags How to create and
assign static annotations How to create and
assign tags How to create and
assign tags to a block device How to
assign tags to a network interface How to
assign tags to a partition How to
assign tags to a rack controller How to
assign tags to a region controller How to
assign tags to a virtual machine host How to
a static annotation for a machine How to change or clear
a static annotation for a machine How to set
a static annotation for one machine How to view
a tag from specific machines Removing
a tag How to create
a tag How to delete
a tag How to update the definition of
a tag How to rebuild
a tag How to update
a Tag How to update the kernel option on
at once How to tag multiple machines
at once Deleting tags from all machines
automatic tags About
automatic tags How to create
available on this MAAS How to list all tags
a virtual machine host How to assign tags to
a virtual machine host How to remove tags from
a VM host How to view machine tags for
block device and partition tags How to list
block devices How to list tags for all
block device tags How to create and assign
block device tags How to remove and delete
block device tags How to view
block device How to assign tags to a
block device How to discover the ID of your
block device How to remove tags from a
block device How to view tags for one
built-in kernel options How to create tags with
can receive dynamic annotations How to identify machines that
Capabilities
change dynamic annotations for a machine How to clear and
change or clear a static annotation for a machine How to
classes Device
clear and change dynamic annotations for a machine How to
clear a static annotation for a machine How to change or
configuration information Hardware
controller(s) How to discover the ID of your rack
controller(s) How to discover the ID of your region
controllers How to list tags for all rack
controllers How to list tags for all region
controller tags How to create and assign
controller tags How to remove and delete
controller tags How to view
controller How to assign tags to a rack
controller How to assign tags to a region
controller How to remove tags from a rack
controller How to remove tags from a region
controller How to view tags for one rack
controller How to view tags for one region
create and assign block device tags How to
create and assign controller tags How to
create and assign machine tags to machines How to
create and assign network interface tags How to
create and assign static annotations How to
create and assign tags How to
create a tag How to
create automatic tags How to
create tags with built-in kernel options How to
definition of a tag How to update the
definition reference examples Tag
delete and remove tags How to
delete a tag How to
delete block device tags How to remove and
delete controller tags How to remove and
delete machine tags from machines How to remove and
delete network interface tags How to remove and
delete static annotations How to
Deleting tags from all machines at once
device and partition tags How to list block
Device classes
devices How to list tags for all block
device tags How to create and assign block
device tags How to remove and delete block
device tags How to view block
device How to assign tags to a block
device How to discover the ID of your block
device How to remove tags from a block
device How to view tags for one block
discover the ID of your block device How to
discover the ID of your network interface How to
discover the ID of your partition How to
discover the ID of your rack controller(s) How to
discover the ID of your region controller(s) How to
discover your virtual machine host ID How to
dynamic annotations for all machines How to list
dynamic annotations for a machine How to clear and change
dynamic annotations for a machine How to set
dynamic annotations for one machine How to list
dynamic annotations How to identify machines that can receive
dynamic (workload) annotations for one machine How to view
dynamic (workload) annotations How to filter on
dynamic (workload) annotations How to work with
examples Tag definition reference
expressions About XPath
filter on dynamic (workload) annotations How to
for all block devices How to list tags
for all machines How to list machine tags
for all machines How to list dynamic annotations
for all machines How to list static annotations
for all network interfaces How to list tags
for all partitions How to list tags
for all rack controllers How to list tags
for all region controllers How to list tags
for all virtual machine hosts How to list tags
for a machine How to change or clear a static annotation
for a machine How to clear and change dynamic annotations
for a machine How to set a static annotation
for a machine How to set dynamic annotations
for a VM host How to view machine tags
for multiple machines How to list machine tags
for one block device How to view tags
for one machine How to view machine tags
for one machine How to list dynamic annotations
for one machine How to view a static annotation
for one machine How to view dynamic (workload) annotations
for one network interface How to view tags
for one partition How to view tags
for one rack controller How to view tags
for one region controller How to view tags
for one virtual machine host How to view tags
from a block device How to remove tags
from all machines at once Deleting tags
from a machine How to remove machine tags
from a network interface How to remove tags
from a partition How to remove tags
from a rack controller How to remove tags
from a region controller How to remove tags
from a virtual machine host How to remove tags
from machines How to remove and delete machine tags
from machines How to unassign tags
from multiple machines Adding and removing machine tags simultaneously
from specific machines Removing a tag
Hardware configuration information
host ID How to discover your virtual machine
hosts How to list tags for all virtual machine
host How to assign tags to a virtual machine
host How to remove tags from a virtual machine
host How to view machine tags for a VM
host How to view tags for one virtual machine
How to assign machine tags to a machine
How to assign tags to a block device
How to assign tags to a network interface
How to assign tags to a partition
How to assign tags to a rack controller
How to assign tags to a region controller
How to assign tags to a virtual machine host
How to change or clear a static annotation for a machine
How to clear and change dynamic annotations for a machine
How to create and assign block device tags
How to create and assign controller tags
How to create and assign machine tags to machines
How to create and assign network interface tags
How to create and assign static annotations
How to create and assign tags
How to create a tag
How to create automatic tags
How to create tags with built-in kernel options
How to delete and remove tags
How to delete a tag
How to delete static annotations
How to discover the ID of your block device
How to discover the ID of your network interface
How to discover the ID of your partition
How to discover the ID of your rack controller(s)
How to discover the ID of your region controller(s)
How to discover your virtual machine host ID
How to filter on dynamic (workload) annotations
How to identify machines that can receive dynamic annotations
How to identify your machines
How to list all tags available on this MAAS
How to list block device and partition tags
How to list dynamic annotations for all machines
How to list dynamic annotations for one machine
How to list machine tags for all machines
How to list machine tags for multiple machines
How to list static annotations for all machines
How to list tags for all block devices
How to list tags for all network interfaces
How to list tags for all partitions
How to list tags for all rack controllers
How to list tags for all region controllers
How to list tags for all virtual machine hosts
How to name tags
How to rebuild a tag
How to remove and delete block device tags
How to remove and delete controller tags
How to remove and delete machine tags from machines
How to remove and delete network interface tags
How to remove machine tags from a machine
How to remove tags from a block device
How to remove tags from a network interface
How to remove tags from a partition
How to remove tags from a rack controller
How to remove tags from a region controller
How to remove tags from a virtual machine host
How to see all tagged nodes
How to set a static annotation for a machine
How to set dynamic annotations for a machine
How to tag multiple machines at once
How to unassign tags from machines
How to update a tag
How to update the definition of a tag
How to update the kernel option on a Tag
How to view a static annotation for one machine
How to view block device tags
How to view controller tags
How to view dynamic (workload) annotations for one machine
How to view machine tags for a VM host
How to view machine tags for one machine
How to view network interface tags
How to view partition tags
How to view static annotations
How to view tags for one block device
How to view tags for one network interface
How to view tags for one partition
How to view tags for one rack controller
How to view tags for one region controller
How to view tags for one virtual machine host
How to work with dynamic (workload) annotations
How to work with static annotations
identify machines that can receive dynamic annotations How to
identify your machines How to
ID of your block device How to discover the
ID of your network interface How to discover the
ID of your partition How to discover the
ID of your rack controller(s) How to discover the
ID of your region controller(s) How to discover the
ID How to discover your virtual machine host
information Hardware configuration
interfaces How to list tags for all network
interface tags How to create and assign network
interface tags How to remove and delete network
interface tags How to view network
interface How to assign tags to a network
interface How to discover the ID of your network
interface How to remove tags from a network
interface How to view tags for one network
kernel option on a Tag How to update the
kernel options How to create tags with built-in
Kernel options About
list all tags available on this MAAS How to
list block device and partition tags How to
list dynamic annotations for all machines How to
list dynamic annotations for one machine How to
list machine tags for all machines How to
list machine tags for multiple machines How to
list static annotations for all machines How to
list tags for all block devices How to
list tags for all network interfaces How to
list tags for all partitions How to
list tags for all rack controllers How to
list tags for all region controllers How to
list tags for all virtual machine hosts How to
MAAS How to list all tags available on this
machine host ID How to discover your virtual
machine hosts How to list tags for all virtual
machine host How to assign tags to a virtual
machine host How to remove tags from a virtual
machine host How to view tags for one virtual
machines at once How to tag multiple
machines at once Deleting tags from all
machines that can receive dynamic annotations How to identify
machines Adding and removing machine tags simultaneously from multiple
machines How to create and assign machine tags to
machines How to list machine tags for all
machines How to list machine tags for multiple
machines How to remove and delete machine tags from
machines How to identify your
machines How to list dynamic annotations for all
machines How to list static annotations for all
machines Removing a tag from specific
machines How to unassign tags from
machine tags for all machines How to list
machine tags for a VM host How to view
machine tags for multiple machines How to list
machine tags for one machine How to view
machine tags from a machine How to remove
machine tags from machines How to remove and delete
machine tags simultaneously from multiple machines Adding and removing
machine tags to a machine How to assign
machine tags to machines How to create and assign
machine How to assign machine tags to a
machine How to remove machine tags from a
machine How to view machine tags for one
machine How to change or clear a static annotation for a
machine How to clear and change dynamic annotations for a
machine How to list dynamic annotations for one
machine How to set a static annotation for a
machine How to set dynamic annotations for a
machine How to view a static annotation for one
machine How to view dynamic (workload) annotations for one
multiple machines at once How to tag
multiple machines Adding and removing machine tags simultaneously from
multiple machines How to list machine tags for
name tags How to
network interfaces How to list tags for all
network interface tags How to create and assign
network interface tags How to remove and delete
network interface tags How to view
network interface How to assign tags to a
network interface How to discover the ID of your
network interface How to remove tags from a
network interface How to view tags for one
nodes How to see all tagged
of a tag How to update the definition
of your block device How to discover the ID
of your network interface How to discover the ID
of your partition How to discover the ID
of your rack controller(s) How to discover the ID
of your region controller(s) How to discover the ID
on a Tag How to update the kernel option
once How to tag multiple machines at
once Deleting tags from all machines at
on dynamic (workload) annotations How to filter
one block device How to view tags for
one machine How to view machine tags for
one machine How to list dynamic annotations for
one machine How to view a static annotation for
one machine How to view dynamic (workload) annotations for
one network interface How to view tags for
one partition How to view tags for
one rack controller How to view tags for
one region controller How to view tags for
one virtual machine host How to view tags for
on this MAAS How to list all tags available
option on a Tag How to update the kernel
options How to create tags with built-in kernel
options About Kernel
or clear a static annotation for a machine How to change
partitions How to list tags for all
partition tags How to list block device and
partition tags How to view
partition How to assign tags to a
partition How to discover the ID of your
partition How to remove tags from a
partition How to view tags for one
rack controller(s) How to discover the ID of your
rack controllers How to list tags for all
rack controller How to assign tags to a
rack controller How to remove tags from a
rack controller How to view tags for one
rebuild a tag How to
receive dynamic annotations How to identify machines that can
reference examples Tag definition
region controller(s) How to discover the ID of your
region controllers How to list tags for all
region controller How to assign tags to a
region controller How to remove tags from a
region controller How to view tags for one
remove and delete block device tags How to
remove and delete controller tags How to
remove and delete machine tags from machines How to
remove and delete network interface tags How to
remove machine tags from a machine How to
remove tags from a block device How to
remove tags from a network interface How to
remove tags from a partition How to
remove tags from a rack controller How to
remove tags from a region controller How to
remove tags from a virtual machine host How to
remove tags How to delete and
Removing a tag from specific machines
removing machine tags simultaneously from multiple machines Adding and
see all tagged nodes How to
set a static annotation for a machine How to
set dynamic annotations for a machine How to
simultaneously from multiple machines Adding and removing machine tags
specific machines Removing a tag from
static annotation for a machine How to change or clear a
static annotation for a machine How to set a
static annotation for one machine How to view a
static annotations for all machines How to list
static annotations How to create and assign
static annotations How to delete
static annotations How to view
static annotations How to work with
Tag definition reference examples
tag from specific machines Removing a
tagged nodes How to see all
tag multiple machines at once How to
tags available on this MAAS How to list all
tags for all block devices How to list
tags for all machines How to list machine
tags for all network interfaces How to list
tags for all partitions How to list
tags for all rack controllers How to list
tags for all region controllers How to list
tags for all virtual machine hosts How to list
tags for a VM host How to view machine
tags for multiple machines How to list machine
tags for one block device How to view
tags for one machine How to view machine
tags for one network interface How to view
tags for one partition How to view
tags for one rack controller How to view
tags for one region controller How to view
tags for one virtual machine host How to view
tags from a block device How to remove
tags from all machines at once Deleting
tags from a machine How to remove machine
tags from a network interface How to remove
tags from a partition How to remove
tags from a rack controller How to remove
tags from a region controller How to remove
tags from a virtual machine host How to remove
tags from machines How to remove and delete machine
tags from machines How to unassign
tags simultaneously from multiple machines Adding and removing machine
tags How to create and assign controller
tags How to remove and delete controller
tags How to view controller
tags How to create and assign network interface
tags How to remove and delete network interface
tags How to view network interface
tags How to create and assign block device
tags How to list block device and partition
tags How to remove and delete block device
tags How to view block device
tags How to view partition
tags About automatic
tags How to create and assign
tags How to delete and remove
tags How to create automatic
tags How to name
tags to a block device How to assign
tags to a machine How to assign machine
tags to a network interface How to assign
tags to a partition How to assign
tags to a rack controller How to assign
tags to a region controller How to assign
tags to a virtual machine host How to assign
tags to machines How to create and assign machine
tags with built-in kernel options How to create
tag How to create a
tag How to delete a
tag How to update the definition of a
tag How to rebuild a
tag How to update a
Tag How to update the kernel option on a
that can receive dynamic annotations How to identify machines
the definition of a tag How to update
the ID of your block device How to discover
the ID of your network interface How to discover
the ID of your partition How to discover
the ID of your rack controller(s) How to discover
the ID of your region controller(s) How to discover
the kernel option on a Tag How to update
this MAAS How to list all tags available on
How to create and assign controller tags
to a block device How to assign tags
to a machine How to assign machine tags
to a network interface How to assign tags
to a partition How to assign tags
to a rack controller How to assign tags
to a region controller How to assign tags
to assign machine tags to a machine How
to assign tags to a block device How
to assign tags to a network interface How
to assign tags to a partition How
to assign tags to a rack controller How
to assign tags to a region controller How
to assign tags to a virtual machine host How
to a virtual machine host How to assign tags
to change or clear a static annotation for a machine How
to clear and change dynamic annotations for a machine How
to create and assign block device tags How
to create and assign controller tags How
to create and assign machine tags to machines How
to create and assign network interface tags How
to create and assign static annotations How
to create and assign tags How
to create a tag How
to create automatic tags How
to create tags with built-in kernel options How
to delete and remove tags How
to delete a tag How
to delete static annotations How
to discover the ID of your block device How
to discover the ID of your network interface How
to discover the ID of your partition How
to discover the ID of your rack controller(s) How
to discover the ID of your region controller(s) How
to discover your virtual machine host ID How
to filter on dynamic (workload) annotations How
to identify machines that can receive dynamic annotations How
to identify your machines How
to list all tags available on this MAAS How
to list block device and partition tags How
to list dynamic annotations for all machines How
to list dynamic annotations for one machine How
to list machine tags for all machines How
to list machine tags for multiple machines How
to list static annotations for all machines How
to list tags for all block devices How
to list tags for all network interfaces How
to list tags for all partitions How
to list tags for all rack controllers How
to list tags for all region controllers How
to list tags for all virtual machine hosts How
to machines How to create and assign machine tags
to name tags How
to rebuild a tag How
to remove and delete block device tags How
to remove and delete controller tags How
to remove and delete machine tags from machines How
to remove and delete network interface tags How
to remove machine tags from a machine How
to remove tags from a block device How
to remove tags from a network interface How
to remove tags from a partition How
to remove tags from a rack controller How
to remove tags from a region controller How
to remove tags from a virtual machine host How
to see all tagged nodes How
to set a static annotation for a machine How
to set dynamic annotations for a machine How
to tag multiple machines at once How
to unassign tags from machines How
to update a tag How
to update the definition of a tag How
to update the kernel option on a Tag How
to view a static annotation for one machine How
to view block device tags How
to view controller tags How
to view dynamic (workload) annotations for one machine How
to view machine tags for a VM host How
to view machine tags for one machine How
to view network interface tags How
to view partition tags How
to view static annotations How
to view tags for one block device How
to view tags for one network interface How
to view tags for one partition How
to view tags for one rack controller How
to view tags for one region controller How
to view tags for one virtual machine host How
to work with dynamic (workload) annotations How
to work with static annotations How
unassign tags from machines How to
update a tag How to
update the definition of a tag How to
update the kernel option on a Tag How to
view a static annotation for one machine How to
view block device tags How to
view controller tags How to
view dynamic (workload) annotations for one machine How to
view machine tags for a VM host How to
view machine tags for one machine How to
view network interface tags How to
view partition tags How to
view static annotations How to
view tags for one block device How to
view tags for one network interface How to
view tags for one partition How to
view tags for one rack controller How to
view tags for one region controller How to
view tags for one virtual machine host How to
virtual machine host ID How to discover your
virtual machine hosts How to list tags for all
virtual machine host How to assign tags to a
virtual machine host How to remove tags from a
virtual machine host How to view tags for one
VM host How to view machine tags for a
with annotations Work
with built-in kernel options How to create tags
with dynamic (workload) annotations How to work
with static annotations How to work
(workload) annotations for one machine How to view dynamic
(workload) annotations How to filter on dynamic
(workload) annotations How to work with dynamic
Work with annotations
work with dynamic (workload) annotations How to
work with static annotations How to
XPath expressions About
your block device How to discover the ID of
your machines How to identify
your network interface How to discover the ID of
your partition How to discover the ID of
your rack controller(s) How to discover the ID of
your region controller(s) How to discover the ID of
your virtual machine host ID How to discover