Невозможно создать узел в кластере сервисных структур с помощью terraform - PullRequest
0 голосов
/ 20 сентября 2019

Я следовал документации по terraform azure, чтобы создать кластер сервисной фабрики, который успешно создается.Но также мне нужно создать один узел в кластере, который не создается.

Что мне нужно добавить для создания узлов в скрипте terraform?

# Create a resource group if it doesn’t exist
resource "azurerm_resource_group" "rg-terraform-group" {
    name     = "rg-terraform-group"
    location = "eastus"

    tags = {
        environment = "Terraform Node Demo"
    }
}

#Create a service fabric cluster
resource "azurerm_service_fabric_cluster" "rg-terraform-sf" {
  name                 = "myServicefabric"
  resource_group_name  = "${azurerm_resource_group.rg-terraform-group.name}"
  location             = "${azurerm_resource_group.rg-terraform-group.location}"
  reliability_level    = "Bronze"
  upgrade_mode         = "Manual"
  cluster_code_version = "6.5.466.1"
  vm_image             = "Linux"
  management_endpoint  = "https://test.eastus.cloudapp.azure.com:19080"

  node_type {
    name                 = "first"
    instance_count       = 3
    is_primary           = true
    client_endpoint_port = 19000
    http_endpoint_port   = 19080
  }
}

1 Ответ

0 голосов
/ 23 сентября 2019

Как уже упоминалось в следующих выпусках Github:

https://github.com/terraform-providers/terraform-provider-azurerm/issues/1948#issuecomment-433851818

Как уже упоминалось выше, ресурс azurerm_service_fabric_cluster создает кластер Service Fabric только в Azure (так какСервис Fabric API разработан).В то время как Terraform поддерживает все отдельные компоненты, необходимые для Service Fabric (например, наборы масштабов VM / расширения для построения вычислительных узлов / балансировщиков нагрузки и т. Д.) - к сожалению, у нас нет образца для раскрутки всех зависимостей для кластера Service Fabric вна этот раз - но, как упомянул @ steve-hawkins, это должно быть возможно для портирования из документации / шаблона ARM.

Опять же, как упомянул @ steve-hawkins, более новая версия Service Fabric Mesh могла бы подойти лучше.для вашего варианта использования, если вы ищете Azure для управления всеми этими ресурсами для вас (а не для управления узлами Service Fabric самостоятельно), но в настоящее время мы не поддерживаем это в Terraform.Если вы ищете Terraform для поддержки этого, пожалуйста, откройте Запрос о возможностях для этого - но так как этот вопрос, кажется, решен, я собираюсь закрыть этот вопрос на данный момент.

https://github.com/terraform-providers/terraform-provider-azurerm/issues/2360#issuecomment-446695918

@ iharrington это также возможно с помощью Terraform с использованием набора масштабов виртуальных машин с установленным расширением виртуальной машины Service Fabric (которое является ключевым компонентом здесь) - поэтому шаблон ARM должен быть переносимым на Terraform.:)

Вы можете использовать указанный ниже ресурс Terraform для развертывания кластера Service Fabric с использованием шаблона ARM:

https://www.terraform.io/docs/providers/azurerm/r/template_deployment.html

Шаблон ARM: https://github.com/Azure/azure-quickstart-templates/blob/master/service-fabric-secure-cluster-5-node-1-nodetype/azuredeploy.json

...