Marketplace
BrowsePublish
Marketplace
You are viewing an outdated version of provider-azure.Go to Latest
upbound/provider-azure@v1.0.1
KubernetesCluster
containerservice.azure.upbound.io
KubernetesCluster
upbound/provider-azure@v1.0.1containerservice.azure.upbound.io

KubernetesCluster is the Schema for the KubernetesClusters API. Manages a managed Kubernetes Cluster (also known as AKS / Azure Kubernetes Service)

Type

CRD

Group

containerservice.azure.upbound.io

Version

v1beta1

apiVersion: containerservice.azure.upbound.io/v1beta1

kind: KubernetesCluster

API Documentation
apiVersion
string
kind
string
metadata
object
spec
object
object

KubernetesClusterSpec defines the desired state of KubernetesCluster

forProvider
requiredobject
requiredobject

No description provided.

array

A aci_connector_linux block as defined below. For more details, please visit Create and configure an AKS cluster to use virtual nodes.

object

Reference to a Subnet in network to populate subnetName.

name
requiredstring
policy
object
object

Policies for referencing.

resolve
string
object

Selector for a Subnet in network to populate subnetName.

policy
object
object

Policies for selection.

resolve
string
array

An api_server_access_profile block as defined below.

array

Set of authorized IP ranges to allow access to API server, e.g. ["198.51.100.0/24"].

subnetId
string
object

Reference to a Subnet in network to populate subnetId.

name
requiredstring
policy
object
object

Policies for referencing.

resolve
string
object

Selector for a Subnet in network to populate subnetId.

policy
object
object

Policies for selection.

resolve
string
array

Deprecated in favor of spec.forProvider.apiServerAccessProfile[0].authorizedIpRanges

array

A azure_active_directory_role_based_access_control block as defined below.

array

A list of Object IDs of Azure Active Directory Groups which should have Admin Role on the Cluster.

managed
boolean
object

The Server Secret of an Azure Active Directory Application.

key
requiredstring
name
requiredstring
namespace
requiredstring
tenantId
string
array

A confidential_computing block as defined below. For more details please the documentation

array

A list of up to 10 base64 encoded CAs that will be added to the trust store on nodes with the custom_ca_trust_enabled feature enabled.

array

A default_node_pool block as defined below.

array

A kubelet_config block as defined below. temporary_name_for_rotation must be specified when changing this block.

array

Specifies the allow list of unsafe sysctls command or patterns (ending in *).

podMaxPid
number
maxCount
number
maxPods
number
minCount
number
name
string
nodeCount
number
array

A node_network_profile block as documented below.

array

One or more allowed_host_ports blocks as defined below.

portEnd
number
portStart
number
protocol
string
array

A list of Application Security Group IDs which should be associated with this Node Pool.

array

No description provided.

osSku
string
object

Reference to a Subnet in network to populate podSubnetId.

name
requiredstring
policy
object
object

Policies for referencing.

resolve
string
object

Selector for a Subnet in network to populate podSubnetId.

policy
object
object

Policies for selection.

resolve
string
tags
object
type
string
array

A upgrade_settings block as documented below.

maxSurge
string
vmSize
string
object

Reference to a Subnet in network to populate vnetSubnetId.

name
requiredstring
policy
object
object

Policies for referencing.

resolve
string
object

Selector for a Subnet in network to populate vnetSubnetId.

policy
object
object

Policies for selection.

resolve
string
zones
array
array

Specifies a list of Availability Zones in which this Kubernetes Cluster should be located. temporary_name_for_rotation must be specified when changing this property.

dnsPrefix
string
edgeZone
string
array

A http_proxy_config block as defined below.

httpProxy
string
noProxy
array
array

The list of domains that will not use the proxy for communication.

object

The base64 encoded alternative CA certificate content in PEM format.

key
requiredstring
name
requiredstring
namespace
requiredstring
array

An identity block as defined below. One of either identity or service_principal must be specified.

array

Specifies a list of User Assigned Managed Identity IDs to be assigned to this Kubernetes Cluster.

type
string
array

An ingress_application_gateway block as defined below.

gatewayId
string
subnetId
string
object

Reference to a Subnet in network to populate subnetId.

name
requiredstring
policy
object
object

Policies for referencing.

resolve
string
object

Selector for a Subnet in network to populate subnetId.

policy
object
object

Policies for selection.

resolve
string
array

A key_management_service block as defined below. For more details, please visit Key Management Service (KMS) etcd encryption to an AKS cluster.

array

A key_vault_secrets_provider block as defined below.

array

A kubelet_identity block as defined below.

array

A linux_profile block as defined below.

sshKey
array
array

An ssh_key block as defined below. Only one is currently allowed. Changing this will update the key on all node pools. More information can be found in the documentation.

keyData
string
location
string
array

A maintenance_window block as defined below.

allowed
array
array

One or more allowed blocks as defined below.

day
string
hours
array
array

An array of hour slots in a day. For example, specifying 1 will allow maintenance from 1:00am to 2:00am. Specifying 1, 2 will allow maintenance from 1:00am to 3:00m. Possible values are between 0 and 23.

array

One or more not_allowed block as defined below.

end
string
start
string
array

A maintenance_window_auto_upgrade block as defined below.

dayOfWeek
string
duration
number
frequency
string
interval
number
array

One or more not_allowed block as defined below.

end
string
start
string
startDate
string
startTime
string
utcOffset
string
weekIndex
string
array

A maintenance_window_node_os block as defined below.

dayOfWeek
string
duration
number
frequency
string
interval
number
array

One or more not_allowed block as defined below.

end
string
start
string
startDate
string
startTime
string
utcOffset
string
weekIndex
string
array

A microsoft_defender block as defined below.

array

Specifies a Prometheus add-on profile for the Kubernetes Cluster. A monitor_metrics block as defined below.

array

A network_profile block as defined below.

array

Specifies a list of IP versions the Kubernetes Cluster will use to assign IP addresses to its nodes and pods. Possible values are IPv4 and/or IPv6. IPv4 must always be specified. Changing this forces a new resource to be created.

array

A load_balancer_profile block as defined below. This can only be specified when load_balancer_sku is set to standard. Changing this forces a new resource to be created.

array

The ID of the Public IP Addresses which should be used for outbound communication for the cluster load balancer.

array

The ID of the outbound Public IP Address Prefixes which should be used for the cluster load balancer.

array

A nat_gateway_profile block as defined below. This can only be specified when load_balancer_sku is set to standard and outbound_type is set to managedNATGateway or userAssignedNATGateway. Changing this forces a new resource to be created.

podCidr
string
array

A list of CIDRs to use for pod IP addresses. For single-stack networking a single IPv4 CIDR is expected. For dual-stack networking an IPv4 and IPv6 CIDR are expected. Changing this forces a new resource to be created.

array

A list of CIDRs to use for Kubernetes services. For single-stack networking a single IPv4 CIDR is expected. For dual-stack networking an IPv4 and IPv6 CIDR are expected. Changing this forces a new resource to be created.

array

An oms_agent block as defined below.

object

Reference to a PrivateDNSZone in network to populate privateDnsZoneId.

name
requiredstring
policy
object
object

Policies for referencing.

resolve
string
object

Selector for a PrivateDNSZone in network to populate privateDnsZoneId.

policy
object
object

Policies for selection.

resolve
string
object

Reference to a ResourceGroup in azure to populate resourceGroupName.

name
requiredstring
policy
object
object

Policies for referencing.

resolve
string
object

Selector for a ResourceGroup in azure to populate resourceGroupName.

policy
object
object

Policies for selection.

resolve
string
array

A service_mesh_profile block as defined below.

array

A service_principal block as documented below. One of either identity or service_principal must be specified.

clientId
string
clientSecretSecretRef
requiredobject
requiredobject

The Client Secret for the Service Principal.

key
requiredstring
name
requiredstring
namespace
requiredstring
skuTier
string
array

A storage_profile block as defined below.

tags
object
array

A web_app_routing block as defined below.

dnsZoneId
string
array

A windows_profile block as defined below.

object

The Admin Password for Windows VMs. Length must be between 14 and 123 characters.

key
requiredstring
name
requiredstring
namespace
requiredstring
gmsa
array
array

A gmsa block as defined below.

license
string
array

A workload_autoscaler_profile block defined below.

object

THIS IS A BETA FIELD. It will be honored unless the Management Policies feature flag is disabled. InitProvider holds the same fields as ForProvider, with the exception of Identifier and other resource reference fields. The fields that are in InitProvider are merged into ForProvider when the resource is created. The same fields are also added to the terraform ignore_changes hook, to avoid updating them after creation. This is useful for fields that are required on creation, but we do not desire to update them after creation, for example because of an external controller is managing them, like an autoscaler.

array

A aci_connector_linux block as defined below. For more details, please visit Create and configure an AKS cluster to use virtual nodes.

object

Reference to a Subnet in network to populate subnetName.

name
requiredstring
policy
object
object

Policies for referencing.

resolve
string
object

Selector for a Subnet in network to populate subnetName.

policy
object
object

Policies for selection.

resolve
string
array

An api_server_access_profile block as defined below.

array

Set of authorized IP ranges to allow access to API server, e.g. ["198.51.100.0/24"].

subnetId
string
object

Reference to a Subnet in network to populate subnetId.

name
requiredstring
policy
object
object

Policies for referencing.

resolve
string
object

Selector for a Subnet in network to populate subnetId.

policy
object
object

Policies for selection.

resolve
string
array

Deprecated in favor of spec.forProvider.apiServerAccessProfile[0].authorizedIpRanges

array

A azure_active_directory_role_based_access_control block as defined below.

array

A list of Object IDs of Azure Active Directory Groups which should have Admin Role on the Cluster.

managed
boolean
tenantId
string
array

A confidential_computing block as defined below. For more details please the documentation

array

A list of up to 10 base64 encoded CAs that will be added to the trust store on nodes with the custom_ca_trust_enabled feature enabled.

array

A default_node_pool block as defined below.

array

A kubelet_config block as defined below. temporary_name_for_rotation must be specified when changing this block.

array

Specifies the allow list of unsafe sysctls command or patterns (ending in *).

podMaxPid
number
maxCount
number
maxPods
number
minCount
number
name
string
nodeCount
number
array

A node_network_profile block as documented below.

array

One or more allowed_host_ports blocks as defined below.

portEnd
number
portStart
number
protocol
string
array

A list of Application Security Group IDs which should be associated with this Node Pool.

array

No description provided.

osSku
string
object

Reference to a Subnet in network to populate podSubnetId.

name
requiredstring
policy
object
object

Policies for referencing.

resolve
string
object

Selector for a Subnet in network to populate podSubnetId.

policy
object
object

Policies for selection.

resolve
string
tags
object
type
string
array

A upgrade_settings block as documented below.

maxSurge
string
vmSize
string
object

Reference to a Subnet in network to populate vnetSubnetId.

name
requiredstring
policy
object
object

Policies for referencing.

resolve
string
object

Selector for a Subnet in network to populate vnetSubnetId.

policy
object
object

Policies for selection.

resolve
string
zones
array
array

Specifies a list of Availability Zones in which this Kubernetes Cluster should be located. temporary_name_for_rotation must be specified when changing this property.

dnsPrefix
string
edgeZone
string
array

A http_proxy_config block as defined below.

httpProxy
string
noProxy
array
array

The list of domains that will not use the proxy for communication.

array

An identity block as defined below. One of either identity or service_principal must be specified.

array

Specifies a list of User Assigned Managed Identity IDs to be assigned to this Kubernetes Cluster.

type
string
array

An ingress_application_gateway block as defined below.

gatewayId
string
subnetId
string
object

Reference to a Subnet in network to populate subnetId.

name
requiredstring
policy
object
object

Policies for referencing.

resolve
string
object

Selector for a Subnet in network to populate subnetId.

policy
object
object

Policies for selection.

resolve
string
array

A key_management_service block as defined below. For more details, please visit Key Management Service (KMS) etcd encryption to an AKS cluster.

array

A key_vault_secrets_provider block as defined below.

array

A kubelet_identity block as defined below.

array

A linux_profile block as defined below.

sshKey
array
array

An ssh_key block as defined below. Only one is currently allowed. Changing this will update the key on all node pools. More information can be found in the documentation.

keyData
string
location
string
array

A maintenance_window block as defined below.

allowed
array
array

One or more allowed blocks as defined below.

day
string
hours
array
array

An array of hour slots in a day. For example, specifying 1 will allow maintenance from 1:00am to 2:00am. Specifying 1, 2 will allow maintenance from 1:00am to 3:00m. Possible values are between 0 and 23.

array

One or more not_allowed block as defined below.

end
string
start
string
array

A maintenance_window_auto_upgrade block as defined below.

dayOfWeek
string
duration
number
frequency
string
interval
number
array

One or more not_allowed block as defined below.

end
string
start
string
startDate
string
startTime
string
utcOffset
string
weekIndex
string
array

A maintenance_window_node_os block as defined below.

dayOfWeek
string
duration
number
frequency
string
interval
number
array

One or more not_allowed block as defined below.

end
string
start
string
startDate
string
startTime
string
utcOffset
string
weekIndex
string
array

A microsoft_defender block as defined below.

array

Specifies a Prometheus add-on profile for the Kubernetes Cluster. A monitor_metrics block as defined below.

array

A network_profile block as defined below.

array

Specifies a list of IP versions the Kubernetes Cluster will use to assign IP addresses to its nodes and pods. Possible values are IPv4 and/or IPv6. IPv4 must always be specified. Changing this forces a new resource to be created.

array

A load_balancer_profile block as defined below. This can only be specified when load_balancer_sku is set to standard. Changing this forces a new resource to be created.

array

The ID of the Public IP Addresses which should be used for outbound communication for the cluster load balancer.

array

The ID of the outbound Public IP Address Prefixes which should be used for the cluster load balancer.

array

A nat_gateway_profile block as defined below. This can only be specified when load_balancer_sku is set to standard and outbound_type is set to managedNATGateway or userAssignedNATGateway. Changing this forces a new resource to be created.

podCidr
string
array

A list of CIDRs to use for pod IP addresses. For single-stack networking a single IPv4 CIDR is expected. For dual-stack networking an IPv4 and IPv6 CIDR are expected. Changing this forces a new resource to be created.

array

A list of CIDRs to use for Kubernetes services. For single-stack networking a single IPv4 CIDR is expected. For dual-stack networking an IPv4 and IPv6 CIDR are expected. Changing this forces a new resource to be created.

array

An oms_agent block as defined below.

object

Reference to a PrivateDNSZone in network to populate privateDnsZoneId.

name
requiredstring
policy
object
object

Policies for referencing.

resolve
string
object

Selector for a PrivateDNSZone in network to populate privateDnsZoneId.

policy
object
object

Policies for selection.

resolve
string
array

A service_mesh_profile block as defined below.

array

A service_principal block as documented below. One of either identity or service_principal must be specified.

clientId
string
skuTier
string
array

A storage_profile block as defined below.

tags
object
array

A web_app_routing block as defined below.

dnsZoneId
string
array

A windows_profile block as defined below.

gmsa
array
array

A gmsa block as defined below.

license
string
array

A workload_autoscaler_profile block defined below.

array

THIS IS A BETA FIELD. It is on by default but can be opted out through a Crossplane feature flag. ManagementPolicies specify the array of actions Crossplane is allowed to take on the managed and external resources. This field is planned to replace the DeletionPolicy field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. If both are custom, the DeletionPolicy field will be ignored. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md

object

ProviderConfigReference specifies how the provider that will be used to create, observe, update, and delete this managed resource should be configured.

name
requiredstring
policy
object
object

Policies for referencing.

resolve
string
object

PublishConnectionDetailsTo specifies the connection secret config which contains a name, metadata and a reference to secret store config to which any connection details for this managed resource should be written. Connection details frequently include the endpoint, username, and password required to connect to the managed resource.

configRef
object
object

SecretStoreConfigRef specifies which secret store config should be used for this ConnectionSecret.

name
requiredstring
policy
object
object

Policies for referencing.

resolve
string
metadata
object
object

Metadata is the metadata for connection secret.

labels
object
type
string
name
requiredstring
object

WriteConnectionSecretToReference specifies the namespace and name of a Secret to which any connection details for this managed resource should be written. Connection details frequently include the endpoint, username, and password required to connect to the managed resource. This field is planned to be replaced in a future release in favor of PublishConnectionDetailsTo. Currently, both could be set independently and connection details would be published to both without affecting each other.

name
requiredstring
namespace
requiredstring
status
object
object

KubernetesClusterStatus defines the observed state of KubernetesCluster.

object

No description provided.

array

A aci_connector_linux block as defined below. For more details, please visit Create and configure an AKS cluster to use virtual nodes.

array

A connector_identity block is exported. The exported attributes are defined below.

array

An api_server_access_profile block as defined below.

array

Set of authorized IP ranges to allow access to API server, e.g. ["198.51.100.0/24"].

subnetId
string
array

Deprecated in favor of spec.forProvider.apiServerAccessProfile[0].authorizedIpRanges

array

A azure_active_directory_role_based_access_control block as defined below.

array

A list of Object IDs of Azure Active Directory Groups which should have Admin Role on the Cluster.

managed
boolean
tenantId
string
array

A confidential_computing block as defined below. For more details please the documentation

array

A list of up to 10 base64 encoded CAs that will be added to the trust store on nodes with the custom_ca_trust_enabled feature enabled.

array

A default_node_pool block as defined below.

array

A kubelet_config block as defined below. temporary_name_for_rotation must be specified when changing this block.

array

Specifies the allow list of unsafe sysctls command or patterns (ending in *).

podMaxPid
number
maxCount
number
maxPods
number
minCount
number
name
string
nodeCount
number
array

A node_network_profile block as documented below.

array

One or more allowed_host_ports blocks as defined below.

portEnd
number
portStart
number
protocol
string
array

A list of Application Security Group IDs which should be associated with this Node Pool.

array

No description provided.

osSku
string
tags
object
type
string
array

A upgrade_settings block as documented below.

maxSurge
string
vmSize
string
zones
array
array

Specifies a list of Availability Zones in which this Kubernetes Cluster should be located. temporary_name_for_rotation must be specified when changing this property.

dnsPrefix
string
edgeZone
string
fqdn
string
array

A http_proxy_config block as defined below.

httpProxy
string
noProxy
array
array

The list of domains that will not use the proxy for communication.

id
string
array

An identity block as defined below. One of either identity or service_principal must be specified.

array

Specifies a list of User Assigned Managed Identity IDs to be assigned to this Kubernetes Cluster.

tenantId
string
type
string
array

An ingress_application_gateway block as defined below.

gatewayId
string
array

An ingress_application_gateway_identity block is exported. The exported attributes are defined below.

subnetId
string
array

A key_management_service block as defined below. For more details, please visit Key Management Service (KMS) etcd encryption to an AKS cluster.

array

A key_vault_secrets_provider block as defined below.

array

An secret_identity block is exported. The exported attributes are defined below.

array

A kubelet_identity block as defined below.

array

A linux_profile block as defined below.

sshKey
array
array

An ssh_key block as defined below. Only one is currently allowed. Changing this will update the key on all node pools. More information can be found in the documentation.

keyData
string
location
string
array

A maintenance_window block as defined below.

allowed
array
array

One or more allowed blocks as defined below.

day
string
hours
array
array

An array of hour slots in a day. For example, specifying 1 will allow maintenance from 1:00am to 2:00am. Specifying 1, 2 will allow maintenance from 1:00am to 3:00m. Possible values are between 0 and 23.

array

One or more not_allowed block as defined below.

end
string
start
string
array

A maintenance_window_auto_upgrade block as defined below.

dayOfWeek
string
duration
number
frequency
string
interval
number
array

One or more not_allowed block as defined below.

end
string
start
string
startDate
string
startTime
string
utcOffset
string
weekIndex
string
array

A maintenance_window_node_os block as defined below.

dayOfWeek
string
duration
number
frequency
string
interval
number
array

One or more not_allowed block as defined below.

end
string
start
string
startDate
string
startTime
string
utcOffset
string
weekIndex
string
array

A microsoft_defender block as defined below.

array

Specifies a Prometheus add-on profile for the Kubernetes Cluster. A monitor_metrics block as defined below.

array

A network_profile block as defined below.

array

Specifies a list of IP versions the Kubernetes Cluster will use to assign IP addresses to its nodes and pods. Possible values are IPv4 and/or IPv6. IPv4 must always be specified. Changing this forces a new resource to be created.

array

A load_balancer_profile block as defined below. This can only be specified when load_balancer_sku is set to standard. Changing this forces a new resource to be created.

array

The outcome (resource IDs) of the specified arguments.

array

The ID of the Public IP Addresses which should be used for outbound communication for the cluster load balancer.

array

The ID of the outbound Public IP Address Prefixes which should be used for the cluster load balancer.

array

A nat_gateway_profile block as defined below. This can only be specified when load_balancer_sku is set to standard and outbound_type is set to managedNATGateway or userAssignedNATGateway. Changing this forces a new resource to be created.

array

The outcome (resource IDs) of the specified arguments.

podCidr
string
array

A list of CIDRs to use for pod IP addresses. For single-stack networking a single IPv4 CIDR is expected. For dual-stack networking an IPv4 and IPv6 CIDR are expected. Changing this forces a new resource to be created.

array

A list of CIDRs to use for Kubernetes services. For single-stack networking a single IPv4 CIDR is expected. For dual-stack networking an IPv4 and IPv6 CIDR are expected. Changing this forces a new resource to be created.

array

An oms_agent block as defined below.

array

An oms_agent_identity block is exported. The exported attributes are defined below.

array

A service_mesh_profile block as defined below.

array

A service_principal block as documented below. One of either identity or service_principal must be specified.

clientId
string
skuTier
string
array

A storage_profile block as defined below.

tags
object
array

A web_app_routing block as defined below.

dnsZoneId
string
array

A web_app_routing_identity block is exported. The exported attributes are defined below.

array

A windows_profile block as defined below.

gmsa
array
array

A gmsa block as defined below.

license
string
array

Conditions of the resource.

lastTransitionTime
requiredstring
message
string
reason
requiredstring
status
requiredstring
type
requiredstring
Marketplace

Discover the building blocks for your internal cloud platform.

© 2022 Upbound, Inc.

SolutionsProvidersConfigurations
LearnDocumentationTry for Free
MorePrivacy PolicyTerms & Conditions
Marketplace

© 2022 Upbound, Inc.

Marketplace

Discover the building blocksfor your internal cloud platform.