Resource OmniCluster in pulumi-portainer.
Pulumi type: portainer:index/omniCluster:OmniCluster.
name is the Pulumi resource name. Nested object fields are documented under that object. They are not arguments of this resource.
Example#
Only required arguments are set. A string in angle brackets stands in for that argument. Any other value is an option or example written in the SDK description.
Arguments#
| Property | Type | Required | Description |
|---|---|---|---|
clusterConfig | string | no | Raw Omni cluster template, as an alternative to describing the cluster with the blocks below. Only read when the cluster is created. |
clusterPatches | OmniClusterClusterPatch (input)[] | no | Talos configuration patches to apply to the cluster as a whole. |
controlPlane | OmniClusterControlPlane (input) | no | The cluster's control plane. |
credentialId | number | yes | Identifier of the Portainer cloud credential holding the Omni endpoint and service account key. |
kind | string | no | Omni resource kind of the cluster. Leave unset unless Omni asks for a specific one. |
kubernetesVersion | string | no | Kubernetes version to run. Leave unset to let Omni pick, and read the result back from this attribute. |
labels | { [key: string]: string } | no | Labels to set on the Omni cluster resource. |
name | string | no | Name of the cluster. Omni cannot rename a cluster, so changing it replaces the resource. |
omniClusterId | string | no | |
portainerUrl | string | no | URL the provisioned nodes reach Portainer on. Leave unset to use the instance's configured URL. |
talosVersion | string | no | Talos version to run. Use the portainer.getOmniTalosVersions data source to see what the credential supports. |
tunnelServerAddress | string | no | Address the provisioned nodes reach Portainer's tunnel server on. |
validateBeforeCreate | boolean | no | Whether to validate the cluster configuration with Portainer before provisioning it. Defaults to true. |
worker | OmniClusterWorker (input) | no | The cluster's worker pool. |
Outputs#
Computed outputs are produced by the provider. They are not constructor arguments.
| Property | Type | Computed | Description |
|---|---|---|---|
available | boolean | yes | Whether Omni reports the cluster as available. |
backupEnabled | boolean | yes | Whether Omni backs the cluster's etcd up on a schedule. |
backupInterval | string | yes | Interval between the scheduled etcd backups. |
clusterConfig | string | no | Raw Omni cluster template, as an alternative to describing the cluster with the blocks below. Only read when the cluster is created. |
clusterPatches | OmniClusterClusterPatch (output)[] | no | Talos configuration patches to apply to the cluster as a whole. |
controlPlane | OmniClusterControlPlane (output) | no | The cluster's control plane. |
controlPlaneReady | boolean | yes | Whether the control plane has come up. |
credentialId | number | no | Identifier of the Portainer cloud credential holding the Omni endpoint and service account key. |
diskEncryption | boolean | yes | Whether disk encryption is enabled on the cluster. |
embeddedDiscoveryService | boolean | yes | Whether the cluster uses Omni's embedded discovery service. |
endpointId | number | yes | Identifier of the Portainer environment created for the cluster. |
kind | string | no | Omni resource kind of the cluster. Leave unset unless Omni asks for a specific one. |
kubernetesApiReady | boolean | yes | Whether the cluster's Kubernetes API is answering. |
kubernetesVersion | string | no | Kubernetes version to run. Leave unset to let Omni pick, and read the result back from this attribute. |
labels | { [key: string]: string } | no | Labels to set on the Omni cluster resource. |
machinesConnected | number | yes | Machines currently connected to Omni. |
machinesHealthy | number | yes | Machines Omni considers healthy. |
machinesRequested | number | yes | Machines the cluster asked for. |
machinesTotal | number | yes | Machines Omni counts in the cluster. |
name | string | no | Name of the cluster. Omni cannot rename a cluster, so changing it replaces the resource. |
omniClusterId | string | no | |
phase | number | yes | Provisioning phase Omni reports for the cluster. |
portainerUrl | string | no | URL the provisioned nodes reach Portainer on. Leave unset to use the instance's configured URL. |
ready | boolean | yes | Whether Omni reports the cluster as ready. |
talosVersion | string | no | Talos version to run. Use the portainer.getOmniTalosVersions data source to see what the credential supports. |
tunnelServerAddress | string | no | Address the provisioned nodes reach Portainer's tunnel server on. |
validateBeforeCreate | boolean | no | Whether to validate the cluster configuration with Portainer before provisioning it. Defaults to true. |
worker | OmniClusterWorker (output) | no | The cluster's worker pool. |
workloadProxyEnabled | boolean | yes | Whether Omni's workload proxy is enabled for the cluster. |
OmniClusterClusterPatch (input)#
Input object OmniClusterClusterPatch. Fields below belong to this object, not to the parent.
| Property | Type | Required | Description |
|---|---|---|---|
annotationName | string | no | Name annotation Omni shows for the patch. |
idOverride | string | no | Identifier Omni stores the patch under, instead of the generated one. |
inline | string | no | Patch body as a JSON object. Use jsonencode({...}). |
OmniClusterControlPlane (input)#
Input object OmniClusterControlPlane. Fields below belong to this object, not to the parent.
| Property | Type | Required | Description |
|---|---|---|---|
kind | string | no | Omni resource kind of the control plane. Leave unset unless Omni asks for a specific one. |
machines | OmniClusterControlPlaneMachine (input)[] | no | Machines that make up the cluster's control plane. |
OmniClusterControlPlaneMachine (input)#
Input object OmniClusterControlPlaneMachine. Fields below belong to this object, not to the parent.
| Property | Type | Required | Description |
|---|---|---|---|
hostname | string | no | Hostname to configure on the machine. |
installDisk | string | no | Block device Talos is installed onto, for example /dev/sda. |
interfaces | OmniClusterControlPlaneMachineInterface (input)[] | no | Network interfaces to configure on the machine. |
kind | string | no | Omni resource kind of the machine. Leave unset unless Omni asks for a specific one. |
name | string | yes | Name of the machine as Omni knows it. |
nameservers | string[] | no | DNS servers to configure on the machine. |
patches | OmniClusterControlPlaneMachinePatch (input)[] | no | Talos machine configuration patches to apply. |
systemDiskSize | number | no | Size of the ephemeral system volume in GiB. Omni turns this into a volume configuration patch. |
userDisk | OmniClusterControlPlaneMachineUserDisk (input) | no | A user volume to carve out of the remaining disk space. |
OmniClusterControlPlaneMachineInterface (input)#
Input object OmniClusterControlPlaneMachineInterface. Fields below belong to this object, not to the parent.
| Property | Type | Required | Description |
|---|---|---|---|
addresses | string[] | no | Static addresses in CIDR notation, for example 10.0.0.10/24. |
dhcp | boolean | no | Whether the interface takes its address from DHCP. Leave addresses unset when it does. |
interface | string | yes | Name of the interface, for example eth0. |
routes | OmniClusterControlPlaneMachineInterfaceRoute (input)[] | no | Static routes to add through the interface. |
OmniClusterControlPlaneMachineInterfaceRoute (input)#
Input object OmniClusterControlPlaneMachineInterfaceRoute. Fields below belong to this object, not to the parent.
| Property | Type | Required | Description |
|---|---|---|---|
gateway | string | yes | Gateway the route goes through. |
network | string | yes | Destination network in CIDR notation. Use 0.0.0.0/0 for a default route. |
OmniClusterControlPlaneMachinePatch (input)#
Input object OmniClusterControlPlaneMachinePatch. Fields below belong to this object, not to the parent.
| Property | Type | Required | Description |
|---|---|---|---|
idOverride | string | no | Identifier Omni stores the patch under, instead of the generated one. |
inline | string | no | Patch body as a JSON object. Use jsonencode({...}). |
OmniClusterControlPlaneMachineUserDisk (input)#
Input object OmniClusterControlPlaneMachineUserDisk. Fields below belong to this object, not to the parent.
| Property | Type | Required | Description |
|---|---|---|---|
size | number | no | Size of the volume in GiB. Zero means take all the space that is left. |
volumeName | string | yes | Name of the volume. |
OmniClusterWorker (input)#
Input object OmniClusterWorker. Fields below belong to this object, not to the parent.
| Property | Type | Required | Description |
|---|---|---|---|
kind | string | no | Omni resource kind of the worker pool. Leave unset unless Omni asks for a specific one. |
machines | OmniClusterWorkerMachine (input)[] | no | Machines that make up this worker pool. |
name | string | no | Name of the worker pool. |
OmniClusterWorkerMachine (input)#
Input object OmniClusterWorkerMachine. Fields below belong to this object, not to the parent.
| Property | Type | Required | Description |
|---|---|---|---|
hostname | string | no | Hostname to configure on the machine. |
installDisk | string | no | Block device Talos is installed onto, for example /dev/sda. |
interfaces | OmniClusterWorkerMachineInterface (input)[] | no | Network interfaces to configure on the machine. |
kind | string | no | Omni resource kind of the machine. Leave unset unless Omni asks for a specific one. |
name | string | yes | Name of the machine as Omni knows it. |
nameservers | string[] | no | DNS servers to configure on the machine. |
patches | OmniClusterWorkerMachinePatch (input)[] | no | Talos machine configuration patches to apply. |
systemDiskSize | number | no | Size of the ephemeral system volume in GiB. Omni turns this into a volume configuration patch. |
userDisk | OmniClusterWorkerMachineUserDisk (input) | no | A user volume to carve out of the remaining disk space. |
OmniClusterWorkerMachineInterface (input)#
Input object OmniClusterWorkerMachineInterface. Fields below belong to this object, not to the parent.
| Property | Type | Required | Description |
|---|---|---|---|
addresses | string[] | no | Static addresses in CIDR notation, for example 10.0.0.10/24. |
dhcp | boolean | no | Whether the interface takes its address from DHCP. Leave addresses unset when it does. |
interface | string | yes | Name of the interface, for example eth0. |
routes | OmniClusterWorkerMachineInterfaceRoute (input)[] | no | Static routes to add through the interface. |
OmniClusterWorkerMachineInterfaceRoute (input)#
Input object OmniClusterWorkerMachineInterfaceRoute. Fields below belong to this object, not to the parent.
| Property | Type | Required | Description |
|---|---|---|---|
gateway | string | yes | Gateway the route goes through. |
network | string | yes | Destination network in CIDR notation. Use 0.0.0.0/0 for a default route. |
OmniClusterWorkerMachinePatch (input)#
Input object OmniClusterWorkerMachinePatch. Fields below belong to this object, not to the parent.
| Property | Type | Required | Description |
|---|---|---|---|
idOverride | string | no | Identifier Omni stores the patch under, instead of the generated one. |
inline | string | no | Patch body as a JSON object. Use jsonencode({...}). |
OmniClusterWorkerMachineUserDisk (input)#
Input object OmniClusterWorkerMachineUserDisk. Fields below belong to this object, not to the parent.
| Property | Type | Required | Description |
|---|---|---|---|
size | number | no | Size of the volume in GiB. Zero means take all the space that is left. |
volumeName | string | yes | Name of the volume. |
OmniClusterClusterPatch (output)#
Output object OmniClusterClusterPatch. Fields below belong to this object.
| Property | Type | Always present | Description |
|---|---|---|---|
annotationName | string | no | Name annotation Omni shows for the patch. |
idOverride | string | no | Identifier Omni stores the patch under, instead of the generated one. |
inline | string | no | Patch body as a JSON object. Use jsonencode({...}). |
OmniClusterControlPlane (output)#
Output object OmniClusterControlPlane. Fields below belong to this object.
| Property | Type | Always present | Description |
|---|---|---|---|
kind | string | no | Omni resource kind of the control plane. Leave unset unless Omni asks for a specific one. |
machines | OmniClusterControlPlaneMachine (output)[] | no | Machines that make up the cluster's control plane. |
OmniClusterControlPlaneMachine (output)#
Output object OmniClusterControlPlaneMachine. Fields below belong to this object.
| Property | Type | Always present | Description |
|---|---|---|---|
hostname | string | no | Hostname to configure on the machine. |
installDisk | string | no | Block device Talos is installed onto, for example /dev/sda. |
interfaces | OmniClusterControlPlaneMachineInterface (output)[] | no | Network interfaces to configure on the machine. |
kind | string | no | Omni resource kind of the machine. Leave unset unless Omni asks for a specific one. |
name | string | yes | Name of the machine as Omni knows it. |
nameservers | string[] | no | DNS servers to configure on the machine. |
patches | OmniClusterControlPlaneMachinePatch (output)[] | no | Talos machine configuration patches to apply. |
systemDiskSize | number | no | Size of the ephemeral system volume in GiB. Omni turns this into a volume configuration patch. |
userDisk | OmniClusterControlPlaneMachineUserDisk (output) | no | A user volume to carve out of the remaining disk space. |
OmniClusterControlPlaneMachineInterface (output)#
Output object OmniClusterControlPlaneMachineInterface. Fields below belong to this object.
| Property | Type | Always present | Description |
|---|---|---|---|
addresses | string[] | no | Static addresses in CIDR notation, for example 10.0.0.10/24. |
dhcp | boolean | no | Whether the interface takes its address from DHCP. Leave addresses unset when it does. |
interface | string | yes | Name of the interface, for example eth0. |
routes | OmniClusterControlPlaneMachineInterfaceRoute (output)[] | no | Static routes to add through the interface. |
OmniClusterControlPlaneMachineInterfaceRoute (output)#
Output object OmniClusterControlPlaneMachineInterfaceRoute. Fields below belong to this object.
| Property | Type | Always present | Description |
|---|---|---|---|
gateway | string | yes | Gateway the route goes through. |
network | string | yes | Destination network in CIDR notation. Use 0.0.0.0/0 for a default route. |
OmniClusterControlPlaneMachinePatch (output)#
Output object OmniClusterControlPlaneMachinePatch. Fields below belong to this object.
| Property | Type | Always present | Description |
|---|---|---|---|
idOverride | string | no | Identifier Omni stores the patch under, instead of the generated one. |
inline | string | no | Patch body as a JSON object. Use jsonencode({...}). |
OmniClusterControlPlaneMachineUserDisk (output)#
Output object OmniClusterControlPlaneMachineUserDisk. Fields below belong to this object.
| Property | Type | Always present | Description |
|---|---|---|---|
size | number | no | Size of the volume in GiB. Zero means take all the space that is left. |
volumeName | string | yes | Name of the volume. |
OmniClusterWorker (output)#
Output object OmniClusterWorker. Fields below belong to this object.
| Property | Type | Always present | Description |
|---|---|---|---|
kind | string | no | Omni resource kind of the worker pool. Leave unset unless Omni asks for a specific one. |
machines | OmniClusterWorkerMachine (output)[] | no | Machines that make up this worker pool. |
name | string | no | Name of the worker pool. |
OmniClusterWorkerMachine (output)#
Output object OmniClusterWorkerMachine. Fields below belong to this object.
| Property | Type | Always present | Description |
|---|---|---|---|
hostname | string | no | Hostname to configure on the machine. |
installDisk | string | no | Block device Talos is installed onto, for example /dev/sda. |
interfaces | OmniClusterWorkerMachineInterface (output)[] | no | Network interfaces to configure on the machine. |
kind | string | no | Omni resource kind of the machine. Leave unset unless Omni asks for a specific one. |
name | string | yes | Name of the machine as Omni knows it. |
nameservers | string[] | no | DNS servers to configure on the machine. |
patches | OmniClusterWorkerMachinePatch (output)[] | no | Talos machine configuration patches to apply. |
systemDiskSize | number | no | Size of the ephemeral system volume in GiB. Omni turns this into a volume configuration patch. |
userDisk | OmniClusterWorkerMachineUserDisk (output) | no | A user volume to carve out of the remaining disk space. |
OmniClusterWorkerMachineInterface (output)#
Output object OmniClusterWorkerMachineInterface. Fields below belong to this object.
| Property | Type | Always present | Description |
|---|---|---|---|
addresses | string[] | no | Static addresses in CIDR notation, for example 10.0.0.10/24. |
dhcp | boolean | no | Whether the interface takes its address from DHCP. Leave addresses unset when it does. |
interface | string | yes | Name of the interface, for example eth0. |
routes | OmniClusterWorkerMachineInterfaceRoute (output)[] | no | Static routes to add through the interface. |
OmniClusterWorkerMachineInterfaceRoute (output)#
Output object OmniClusterWorkerMachineInterfaceRoute. Fields below belong to this object.
| Property | Type | Always present | Description |
|---|---|---|---|
gateway | string | yes | Gateway the route goes through. |
network | string | yes | Destination network in CIDR notation. Use 0.0.0.0/0 for a default route. |
OmniClusterWorkerMachinePatch (output)#
Output object OmniClusterWorkerMachinePatch. Fields below belong to this object.
| Property | Type | Always present | Description |
|---|---|---|---|
idOverride | string | no | Identifier Omni stores the patch under, instead of the generated one. |
inline | string | no | Patch body as a JSON object. Use jsonencode({...}). |
OmniClusterWorkerMachineUserDisk (output)#
Output object OmniClusterWorkerMachineUserDisk. Fields below belong to this object.
| Property | Type | Always present | Description |
|---|---|---|---|
size | number | no | Size of the volume in GiB. Zero means take all the space that is left. |
volumeName | string | yes | Name of the volume. |