Поддерживает ли Azure несколько профилей агентов для Kubernetes со службой контейнеров?

Я развернул кластер kubernetes в Azure, используя следующую конфигурацию terraform (конфиденциальная информация удалена):

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
  }
}

документация terraform предполагает, что я могу указать несколько блоков agent_pool_profile , что имеет большой смысл, поскольку я хотел бы привязать определенные модули к более или менее мощным узлам. Поскольку служба контейнеров по умолчанию уже устанавливает бета. kubernetes.io/instance-type аннотации на соответствующих узлах Я не вижу здесь проблемы.

Однако терраформа не позволяет мне использовать несколько блоков agent_pool_profile :

azurerm_container_service.kubernetes: agent_pool_profile: attribute supports 1 item maximum, config has 2 declared

Кажется, я не могу добавить дополнительные профили через портал Azure. Документировано ли где-нибудь отсутствие поддержки различных профилей пула агентов?

1
задан 13 March 2017 в 11:26
2 ответа

Ответ Джейсона Пуна верен. Сама служба Azure Container Service пока не поддерживает несколько пулов агентов, отсюда и сообщение об ошибке.

API настроен так, чтобы позволить им в будущем, поэтому Terraform моделирует его как поддерживающий несколько пулов агентов. Я думаю, что они позволяют вам указать больше, чтобы всякий раз, когда ACS поддерживает его, Terraform также немедленно поддерживала его.

.
1
ответ дан 3 December 2019 в 18:31

Развертывание нескольких пулов агентов поддерживается, если вы используете acs-engine. Вот базовый шаблон Kubernetes template, который будет подавать acs-engine, но если вы хотите установить несколько типов пулов агентов, вы можете изменить файл так, чтобы он выглядел как:

"masterProfile": { "считать": 1, "dnsPrefix": "kubernetes-master", "vmSize": "Standard_D2_v2" }, "agentPoolProfiles": [ { "имя": "агентпул2", "считать": 3, "vmSize": "Standard_D2_v2", "Профиль доступности": "AvailabilitySet" }, { "имя": "агентпул1", "считать": 2, "vmSize": "Standard_DS2", "ДоступностьПрофиль": "AvailabilitySet" }

К сожалению, я не знаком с терраформой, чтобы знать, может ли она пройти по этому пути.

2
ответ дан 3 December 2019 в 18:31

Теги

Похожие вопросы