This module will create a managed Kubernetes cluster using Azure Kubernetes Service.
Name | Version |
---|---|
azurerm | >= 2.57.0 |
Name | Description | Type | Default | Required |
---|---|---|---|---|
acr_pull_access | map of ACR ids to allow AcrPull | map(string) |
{} |
no |
api_server_authorized_ip_ranges | authorized IP ranges to communicate with K8s API | map(string) |
n/a | yes |
cluster_name | Name of AKS cluster. | string |
n/a | yes |
configure_network_role | Add Network Contributor role for identity on input subnets. | bool |
true |
no |
default_node_pool | Default node pool. Value refers to key within node_pools variable. | string |
"default" |
no |
dns_prefix | DNS prefix specified when creating the managed cluster. | string |
n/a | yes |
enable_azure_policy | to apply at-scale enforcements and safeguards on your clusters in a centralized, consistent manner | bool |
false |
no |
enable_kube_dashboard | enable kubernetes dashboard | bool |
false |
no |
identity_type | SystemAssigned or UserAssigned. | string |
"UserAssigned" |
no |
kubernetes_version | kubernetes version | string |
n/a | yes |
location | Azure region. | string |
n/a | yes |
log_analytics_workspace_id | ID of the Azure Log Analytics Workspace | string |
n/a | yes |
names | Names to be applied to resources. | map(string) |
n/a | yes |
network_plugin | network plugin to use for networking (azure or kubenet) | string |
"kubenet" |
no |
network_policy | Sets up network policy to be used with Azure CNI. | string |
n/a | yes |
network_profile_options | docker_bridge_cidr, dns_service_ip and service_cidr should all be empty or all should be set | object({ |
n/a | yes |
node_pool_defaults | node pool defaults | object({ |
{ |
no |
node_pools | node pools | any |
{ |
no |
node_resource_group | The name of the Resource Group where the Kubernetes Nodes should exist. | string |
n/a | yes |
outbound_type | outbound (egress) routing method which should be used for this Kubernetes Cluster | string |
"loadBalancer" |
no |
pod_cidr | used for pod IP addresses | string |
n/a | yes |
private_cluster_enabled | Private Cluster | string |
"false" |
no |
rbac | role based access control settings | object({ |
{ |
no |
rbac_admin_object_ids | Admin group object ids for use with rbac active directory integration | map(string) |
{} |
no |
resource_group_name | Resource group name. | string |
n/a | yes |
sku_tier | Sets the cluster's SKU tier. The paid tier has a financially-backed uptime SLA. Read doc here. | string |
"Free" |
no |
tags | Tags to be applied to resources. | map(string) |
n/a | yes |
user_assigned_identity | User assigned identity for the manged cluster (leave and the module will create one). | object({ |
n/a | yes |
user_assigned_identity_name | Name of user assigned identity to be created (if applicable). | string |
n/a | yes |
virtual_network | Virtual network info. | object({ |
n/a | yes |
windows_profile | windows profile admin user/pass | object({ |
n/a | yes |
Name | Description |
---|---|
client_certificate | kubernetes client certificate |
client_key | kubernetes client key |
cluster_ca_certificate | kubernetes cluster ca certificate |
effective_outbound_ips_ids | The outcome (resource IDs) of the specified arguments. |
fqdn | kubernetes managed cluster fqdn |
host | kubernetes host |
id | kubernetes managed cluster id |
kube_config | kubernetes config to be used by kubectl and other compatible tools |
kube_config_raw | raw kubernetes config to be used by kubectl and other compatible tools |
kubelet_identity | kubelet identity information |
name | kubernetes managed cluster name |
node_resource_group | auto-generated resource group which contains the resources for this managed kubernetes cluster |
password | kubernetes password |
principal_id | id of the principal used by this managed kubernetes cluster |
username | kubernetes username |
See examples folder. These are designed to test module updates and use random_string to run without any user input.