Choose label keys and values that are meaningful for your infrastructure organization.

omnictl
CLI tool or using Image Factory directly.
Both methods allow you to label your machines programmatically.
Using omnictl
When generating Talos installation media or a PXE boot URL using omnictl
, you can set initial machine labels using the --initial-labels
flag. This allows you to assign key-value pairs as labels to the machines that boot from that media or the PXE boot URL.
Here’s the basic syntax for adding initial labels:
amd64
ISO image and set two labels: environment=production
and region=us-west
. Here’s how you would do that:
d2f4229b6157ba7e1dba8c3b4de42263e4baa35111e960b6a18841332d0f2035
.
Here, you can see that the custom image contains the extra Kernel arguments for Talos to connect to your Omni instance on boot using Siderolink. It also contains the machine labels you have specified in a nested yaml in the meta section with key 12
. Here, the key 12
is a Talos META key reserved for Omni for the initial machine labels.
These initial labels work not only for ISOs but for most installation media and for PXE boot URL. For example, to get a PXE boot URL for a Raspberry Pi board, you can run
omnictl download rpi_generic --initial-labels environment=production,region=us-west --pxe
.This command will print the PXE boot URL and exit.Using Image Factory Directly
Instead of using your Omni instance to generate labeled boot media or PXE URLs, you can use the image factory directly. To do this, you need to craft an HTTP POST request with the schematic YAML in its body. First, you need to find the Kernel arguments for your Omni instance. You can do this by either:- clicking “Copy Kernel Parameters” on your Omni overview page, which will copy them to your clipboard
- or by running
omnictl get connectionparams -oyaml
, which will print them under.spec.args
field.
Note that the printed schematic ID is the same as the one we got when we used
omnictl
.Although Image Factory has a web UI, it is currently not possible to specify META values on the UI. Therefore, the initial machine labels cannot be specified on the UI at the moment. The version of the Image Factory UI built into Omni does support specifying initial machine labels.
Verifying Labels
After a machine boots from the labeled media/PXE URL and registers with Omni, you can verify the labels using the Omni web interface or theomnictl
CLI tool.
To check labels using omnictl
, you can use either of these commands (replace <machine-id>
with the actual machine ID):