Внутренний балансировщик нагрузки Terraform Azure AKS

Я развернул кластер Azure AKS с помощью следующих операторов terraform в существующей виртуальной сети. Это сработало, кластер AKS создан с балансировщиком нагрузки Azure и назначенным ему общедоступным IP-адресом. Мне нужна установка только с внутренним балансировщиком нагрузки Azure. Как мне изменить код terraform, чтобы получить только внутренний балансировщик нагрузки Azure? Спасибо

resource "azurerm_kubernetes_cluster" "aks" {

  name = "${var.tags.department}-${var.tags.stage}-${var.tags.environment}_aks"

  location = var.location

  resource_group_name = azurerm_resource_group.aksrg.name

  dns_prefix = lower("${var.tags.department}-${var.tags.stage}-${var.tags.environment}-aks")

  private_link_enabled = true

  node_resource_group =     "${var.tags.department}-${var.tags.stage}-${var.tags.environment}_aks_nodes_rg"

  linux_profile {

    admin_username = "testadmin"

  ssh_key {

    key_data = file("/ssh/id_rsa.pub") #ssh-keygen

    }

  }

  default_node_pool {

    name = "default"

    vm_size = "Standard_DS1_v2"

    enable_auto_scaling = false

    enable_node_public_ip = false

    node_count = 1

    vnet_subnet_id = azurerm_subnet.akssubnet.id

  }

  network_profile {

    network_plugin = "azure"

    service_cidr = "172.100.0.0/24"

    dns_service_ip = "172.100.0.10"

    docker_bridge_cidr = "172.101.0.1/16"

    load_balancer_sku = "standard"

  }

  service_principal {

    client_id = azurerm_azuread_service_principal.aks_sp.application_id

    client_secret = azurerm_azuread_service_principal_password.aks_sp_pwd.value

  }



addon_profile {

    kube_dashboard {

      enabled = true

   }

}

  role_based_access_control {

    enabled = false

  }

}

person Christian Schroeder    schedule 22.01.2020    source источник
comment
почему вы хотите создать балансировщик нагрузки с помощью Azure, а не кубернетов?   -  person 4c74356b41    schedule 22.01.2020
comment
На первом этапе я хочу, чтобы ресурсы Azure не были общедоступными через развертывание Terraform. Но после развертывания Terraform я получаю балансировщик нагрузки Azure с общедоступным IP-адресом (azurerm v.1.41).   -  person Christian Schroeder    schedule 23.01.2020
comment
Есть еще вопросы? Решает ли это вашу проблему? Если да, пожалуйста, примите это. Если вы не даете ответа, как решить проблему? Или вы просто хотите получить ответ и ничего не делать?   -  person Charles Xu    schedule 31.01.2020


Ответы (1)


Что касается вашей проблемы, вы можете видеть, что вы установили network_profile кластера AKS следующим образом:

network_profile {

    network_plugin = "azure"

    service_cidr = "172.100.0.0/24"

    dns_service_ip = "172.100.0.10"

    docker_bridge_cidr = "172.101.0.1/16"

    load_balancer_sku = "standard"

  }

И вы устанавливаете свойство load_balancer_sku, оно создаст для вас балансировщик нагрузки типа standard. И это свойство может использовать только значения basic и standard. Таким образом, кажется, что невозможно создать кластер AKS без балансировщика нагрузки. И вы можете увидеть проблему в Github. Как уже говорилось, новейший интерфейс командной строки также не может помочь вам в этом.

Если у вас есть дополнительные вопросы по этой проблеме, дайте мне знать. Я рад, если смогу помочь вам решить проблему.

person Charles Xu    schedule 29.01.2020