Skip to main content
You can add kernel arguments when creating installation media, or modify them later on existing machines. For a full list of available kernel arguments, refer to the Kernel argument reference documentation.
Some kernel arguments are added automatically by Omni (for example, the SideroLink arguments), while others are provided by Talos.These automatically added arguments are not user-editable and modifying them is not supported.This document describes how to modify additional kernel arguments only.

Add kernel arguments during installation media creation

You can include additional kernel arguments into your Talos Omni image using either cluster templates, the Omni CLI or the Omni UI.
You can add kernel arguments to your machines by defining them in the machine configuration within your cluster template.Use the kernelArgs field in your cluster template to specify which extensions to install. For more details, see the Cluster Templates reference documentation.The code block below defines the configuration for a cluster named my-cluster, including kernel arguments for both control plane and worker machines.
kind: Cluster
name: my-cluster
kubernetes:
  version: v1.35.0
talos:
  version: v1.12.2
---
kind: ControlPlane
machines:
  - ec2d0bff-ea56-3ee5-cae3-d56663de6272
---
kind: Workers
machines:
  - ec2fe180-8445-eea2-410f-af334b831fcb
---
kind: Machine
name: ec2d0bff-ea56-3ee5-cae3-d56663de6272
install:
  disk: /dev/xvda
kernelArgs:
  - talos.dashboard.disabled=1
---
kind: Machine
name: ec2fe180-8445-eea2-410f-af334b831fcb
install:
  disk: /dev/xvda
kernelArgs:
  - console=ttyS0,115200n8
After defining your cluster template, validate it using:
omnictl cluster template validate -f cluster.yaml
If the validation succeeds, sync the template to apply the configuration to your Omni instance:
omnictl cluster template sync -f cluster.yaml --verbose
After syncing, the control plane machine will boot with the talos.dashboard.disabled=1 kernel argument, while the worker machine will boot with the console=ttyS0,115200n8 kernel argument.
Once you boot your machine with kernel arguments, Omni automatically creates a KernelArgs resource for that machine. You can view and update this resource later to modify the kernel arguments. To retrieve the resource, run:
omnictl get kernelargs $MACHINE_ID -o yaml
Example output:
metadata:
  namespace: default
  type: KernelArgs.omni.sidero.dev
  id: $MACHINE_ID
  version: 1
  owner:
  phase: running
  created: 2025-10-29T12:58:17Z
  updated: 2025-10-29T12:58:17Z
spec:
  args:
    - talos.dashboard.disabled=1
    - talos.environment=http_proxy=http://proxy.example.com:8080

Update kernel arguments on existing machines

Modifying kernel arguments on existing machines triggers an upgrade and reboots the machine.
Some conditions must be met for kernel argument updates to take effect. If these conditions are not met, they appear in the unmetconditions field of the KernelArgsStatus resource and in the UI.
  1. Go to the Machines tab.
  2. Click the three dots next to the machine you want to modify and select Update kernel args.
Update kernel args
  1. In the popup, click the pencil icon to edit the current kernel arguments.
  2. Click Update.
Update kernel args popup