Nano Hash - криптовалюты, майнинг, программирование

Terraform / alicloud: создание экземпляра ECS с несколькими дисками данных

Я пытаюсь создать несколько экземпляров ecs, используя terraform. Фактически, я хочу, чтобы для каждого экземпляра ecs было несколько дисков с данными. Итак, один диск для ОС и 2 других диска с данными.

Фрагмент кода должен выглядеть так:

resource "alicloud_instance" "node" {
  image_id                      = data.alicloud_images.nodes.id
  instance_type                 = var.instance_type_controller
  internet_max_bandwidth_out    = 100
  security_groups               = alicloud_security_group.cluster.id

  key_name = var.key_pair
  count    = 1

  system_disk_size              = 80

  data_disks                    = [
    {
      name                  = "/dev/xvdb"
      size                  = 200
      delete_with_instance  = true
    },
    {
      name                  = "/dev/xvdc"
      size                  = 100
      delete_with_instance  = true
    }
  ]
}

Единственная проблема в том, что у меня появляется сообщение об ошибке, в котором говорится, что

An argument named "data_disks" is not expected here. Did you mean to define a
block of type "data_disks"?

Я просмотрел документацию, и я почти уверен, что data_disks относится к типу list(map(string)), поэтому то, что я написал, должно работать, но оно работает только тогда, когда я устанавливаю его как

data_disks {
      name                  = "/dev/xvdb"
      size                  = 200
      delete_with_instance  = true
}

Но мне нужно несколько дисков с данными, подключенных к моему экземпляру ECS ... Я что-то упускаю?

Я использую следующие версии terraform / provider:

Terraform v0.13.0
+ provider registry.terraform.io/hashicorp/alicloud v1.94.0
+ provider registry.terraform.io/hashicorp/random v2.3.0
+ provider registry.terraform.io/hashicorp/template v2.1.2

  • Блок нужно повторить несколько раз. 26.08.2020
  • Великолепно, это сработало как шарм, спасибо @ydaetskcoR 26.08.2020

Ответы:


1

Как прокомментировал @ydaetskcoR. Решение состоит в том, чтобы иметь несколько блоков data_disks. Так что-то вроде этого:

resource "alicloud_instance" "node" {
  image_id                      = data.alicloud_images.nodes.id
  instance_type                 = var.instance_type_controller
  internet_max_bandwidth_out    = 100
  security_groups               = alicloud_security_group.cluster.id

  key_name = var.key_pair
  count    = 1

  system_disk_size              = 80
   
  data_disks {
      name                  = "/dev/xvdb"
      size                  = 200
      delete_with_instance  = true
  }

  data_disks {
      name                  = "/dev/xvdc"
      size                  = 100
      delete_with_instance  = true
  }
 
}
26.08.2020
Новые материалы

Кластеризация: более глубокий взгляд
Кластеризация — это метод обучения без учителя, в котором мы пытаемся найти группы в наборе данных на основе некоторых известных или неизвестных свойств, которые могут существовать. Независимо от..

Как написать эффективное резюме
Предложения по дизайну и макету, чтобы представить себя профессионально Вам не позвонили на собеседование после того, как вы несколько раз подали заявку на работу своей мечты? У вас может..

Частный метод Python: улучшение инкапсуляции и безопасности
Введение Python — универсальный и мощный язык программирования, известный своей простотой и удобством использования. Одной из ключевых особенностей, отличающих Python от других языков, является..

Как я автоматизирую тестирование с помощью Jest
Шутка для победы, когда дело касается автоматизации тестирования Одной очень важной частью разработки программного обеспечения является автоматизация тестирования, поскольку она создает..

Работа с векторными символическими архитектурами, часть 4 (искусственный интеллект)
Hyperseed: неконтролируемое обучение с векторными символическими архитектурами (arXiv) Автор: Евгений Осипов , Сачин Кахавала , Диланта Хапутантри , Тимал Кемпития , Дасвин Де Сильва ,..

Понимание расстояния Вассерштейна: мощная метрика в машинном обучении
В обширной области машинного обучения часто возникает необходимость сравнивать и измерять различия между распределениями вероятностей. Традиционные метрики расстояния, такие как евклидово..

Обеспечение масштабируемости LLM: облачный анализ с помощью AWS Fargate и Copilot
В динамичной области искусственного интеллекта все большее распространение получают модели больших языков (LLM). Они жизненно важны для различных приложений, таких как интеллектуальные..