I have deployed a kubernetes cluster on Azure using the following terraform configuration (sensitive info redacted):
resource "azurerm_container_service" "kubernetes" {
name = "myacsname"
location = "West Europe"
resource_group_name = "someresourcegroup"
orchestration_platform = "Kubernetes"
master_profile {
count = 1
dns_prefix = "xxxmaster"
}
linux_profile {
admin_username = "xxxx"
ssh_key {
key_data = "${file("authorized_keys")}"
}
}
agent_pool_profile {
name = "default"
count = 2
dns_prefix = "xxxagent"
vm_size = "Standard_F1s"
}
service_principal {
client_id = "xxx"
client_secret = "xxx"
}
diagnostics_profile {
enabled = false
}
}
The terraform documentation suggests that I can specify multiple agent_pool_profile
blocks which makes a lot of sense since I'd like to bind certain pods to more or less powerful nodes. Since the default container service already sets the beta.kubernetes.io/instance-type
annotation on the relevant nodes I see no issue there.
How ever terraform does not allow multiple agent_pool_profile
blocks for me:
azurerm_container_service.kubernetes: agent_pool_profile: attribute supports 1 item maximum, config has 2 declared
I cannot seem to add more profiles through the Azure portal either. Is the lack of support for different agent pool profiles documented somewhere?