Configuration
Config
Package config
contains all the options available for configuring a Talos cluster.
Field | Type | Description | Default Value | Required |
---|---|---|---|---|
clusterName |
string | Configures the cluster's name.Show example
|
"" |
|
endpoint |
string | Configures the cluster's controlplane endpoint.Can be an IP address or a DNS hostnameShow example
|
"" |
|
nodes |
[]Node | List of nodes configurationsShow example
|
[] |
|
talosVersion |
string | Talos version to perform the installation.Image reference for each Talos release can be found onTalos GitHub release page Show example
|
"latest" |
|
kubernetesVersion |
string | Allows for supplying the Kubernetes version to use.Show example
|
"" |
|
domain |
string | Allows for supplying the domain used by Kubernetes DNS.Show example
|
"cluster.local" |
|
allowSchedulingOnMasters |
bool | Whether to allow running workload on controlplane nodes.Show example
|
false |
|
allowSchedulingOnControlPlanes |
bool | Whether to allow running workload on controlplane nodes.It is an alias toallowSchedulingOnMasters Show example
|
false |
|
additionalMachineCertSans |
[]string | Extra certificate SANs for the machine's certificate.Show example
|
[] |
|
additionalApiServerCertSans |
[]string | Extra certificate SANs for the API server's certificate.Show example
|
[] |
|
cniConfig |
CNIConfig | The CNI to be used for the cluster's network.Show example
|
nil |
|
imageFactory |
ImageFactory | Configures selfhosted image factory.Show example
|
nil |
|
patches |
[]string | Patches to be applied to all nodes.List of strings containing RFC6902 JSON patches, strategic merge patches,or a file containing them Show example
|
[] |
|
controlPlane |
NodeConfigs | Configurations targetted for all controlplane nodes.Show example
|
nil |
|
worker |
NodeConfigs | Configurations targetted for all worker nodes.Show example
|
nil |
Node
Node
defines machine configurations for each node.
Field | Type | Description | Default Value | Required |
---|---|---|---|---|
hostname |
string | Configures the hostname of a node.Show example
|
"" |
|
ipAddress |
string | IP address where the node can be reached, can be IP or comma separated list of IPs.Needed for endpoint and node address insidetalosconfig .Show example
|
"" |
|
installDisk |
string | The disk used for installation.Show example
|
"" |
|
installDiskSelector |
InstallDiskSelector | Look up disk used for installation.Required ifinstallDisk is not specified.Show example
|
nil |
|
controlPlane |
bool | Whether the node is a controlplane.Show example
|
false |
|
ignoreHostname |
bool | Whether to set machine.network.hostname to the generated config file.Show example
|
false |
|
overridePatches |
bool | Whether By default they will get appended instead. |
false |
|
overrideExtraManifests |
bool | Whether By default they will get appended instead. |
false |
|
- | NodeConfigs | Node specific configurations that will override node group configurations.Show example
|
nil |
NodeConfigs
NodeConfigs
defines machine configurations.
Field | Type | Description | Default Value | Required |
---|---|---|---|---|
talosImageURL |
string | Allows for supplying the node level image used to perform the installation.Show example
|
"" |
|
machineSpec |
MachineSpec | Machine hardware specification for the node.Only used forgenurl iso subcommand.Show example
|
nil |
|
ingressFirewall |
IngressFirewall | Machine firewall specification for the node.Show example
|
nil |
|
extensionServices |
[]ExtensionService | Machine extension services specification for the node.Show example
|
nil |
|
nodeLabels |
map[string]string | Labels to be added to the node.Show example
|
false |
|
nodeAnnotations |
map[string]string | Annotations to be added to the node.Show example
|
false |
|
nodeTaints |
map[string]string | Node taints for the node.Show example
|
false |
|
disableSearchDomain |
bool | Whether to disable generating default search domain.Show example
|
false |
|
machineDisks |
[]MachineDisk | List of additional disks to partition, format, mount.Show example
|
[] |
|
noSchematicValidate |
bool | Whether to skip schematic validation.Show example
|
false |
|
disableSearchDomain |
bool | Whether to disable generating default search domain.Show example
|
false |
|
machineFiles |
[]MachineFile | List of additional files to create inside the node.Show example
|
[] |
|
schematic |
Schematic | Configure Talos image customization to be used in the installer imageShow example
|
nil |
|
isoSchematic |
Schematic | Configure Talos image customization to be used for ISO imageShow example
|
nil |
|
kernelModules |
[]KernelModuleConfig | List of additional kernel modules to load.Show example
|
[] |
|
nameservers |
[]string | List of nameservers for the node.Show example
|
[] |
|
networkInterfaces |
[]Device | List of network interface configurations for the node.Show example
|
[] |
|
extraManifests |
[]string | List of manifest files to be added for the node.Show example
|
[] |
|
patches |
[]string | Patches to be applied to the node.List of strings containing RFC6902 JSON patches, strategic merge patches,or a file containing them. Show example
|
[] |
ImageFactory
ImageFactory
defines configuration for selfhosted image-factory.
Field | Type | Description | Default Value | Required |
---|---|---|---|---|
registryURL |
string | Registry URL of the factory.Show example
|
"factory.talos.dev" |
|
protocol |
string | Protocol the registry is listening to.Show example
|
https |
|
schematicEndpoint |
string | Path to do HTTP POST request to the registry.Show example
|
/schematics |
|
installerURLTmpl |
string | Go template to parse the full installer URL.Available placeholders:RegistryURL ,ID ,Version , Secureboot Show example
|
{{.RegistryURL}}/installer{{if .Secureboot}}-secureboot{{end}}/{{.ID}}:{{.Version}} |
|
ISOURLTmpl |
string | Go template to parse the full ISO image URL.Available placeholders:Protocol ,RegistryURL ,ID ,Version ,Mode ,Arch , Secureboot , UseUKI Show example
|
{{.Protocol}}://{{.RegistryURL}}/image/{{.ID}}/{{.Version}}/{{.Mode}}-{{.Arch}}{{if .Secureboot}}-secureboot{{end}}{{if and .Secureboot .UseUKI}}-uki.efi{{else}}.iso{{end}} |
MachineSpec
MachineSpec
defines machine hardware configurations for a node.
Field | Type | Description | Default Value | Required |
---|---|---|---|---|
mode |
string | Machine mode.Show example
|
"metal" |
|
arch |
string | Machine architecture.Show example
|
amd64 |
|
secureboot |
bool | Whether to enable Secure Boot.Show example
|
false |
|
useUKI |
bool | Whether to use UKI if Secure Boot is enabled.Show example
|
false |
IngressFirewall
IngressFirewall
defines machine firewall configuration for a node.
Field | Type | Description | Default Value | Required |
---|---|---|---|---|
defaultAction |
string |
Default action for all not explicitly configured traffic.Can be "accept" or "block"Show example
|
nil |
|
rules |
[]NetworkRule | List of matching network rules to allow or block against the defaultAction.IfdefaultAction is set to block, matching rules will be allowed vice versa.Show example
|
nil |
ExtensionService
ExtensionService
defines machine extension service configuration for a node.
Field | Type | Description | Default Value | Required |
---|---|---|---|---|
name |
string |
Name of the extension service config.Show example
|
nil |
|
configFiles |
[]ConfigFile | The config files for the extension service.Show example
|
nil |
|
environment |
[]string | The environment for the extension service.Show example
|
nil |
NetworkRule
NetworkRule
defines the firewall rules to match.
Field | Type | Description | Default Value | Required |
---|---|---|---|---|
name |
string |
Name of the rule.Show example
|
nil |
|
portSelector |
PortSelector | Ports and protocols on the host affected by the rule.Show example
|
nil |
|
ingress |
[]IngressConfig | List of source subnets allowed to access the host ports/protocols.Show example
|
nil |
CNIConfig
CNIConfig
is type of upstream Talos v1alpha1.CNIConfig
InstallDiskSelector
InstallDiskSelector
is type of upstream Talos v1alpha1.InstallDiskSelector
.
MachineDisk
MachineDisk
is type of upstream Talos v1alpha1.MachineDisk
MachineFile
MachineFile
is type of upstream Talos v1alpha1.MachineFile
InstallExtensionConfig
InstallExtensionConfig
is type of upstream Talos v1alpha1.InstallExtensionConfig
Schematic
Schematic
is type of upstream Talos Image Factory schematic.Schematic
KernelModuleConfig
KernelModuleConfig
is type of upstream Talos v1alpha1.KernelModuleConfig
Device
Device
is type of upstream Talos v1alpha1.Device
PortSelector
PortSelector
is type of upstream Talos network.RulePortSelector
IngressConfig
IngressConfig
is type of upstream Talos network.IngressConfig
ConfigFile
ConfigFile
is type of upstream Talos extensions.ConfigFile