- tocdepth
2
Работа с источниками данных (Data Sources)
Источники данных в Terraform позволяют получать информацию о ресурсах, которые уже существуют в облачной инфраструктуре. С помощью Data Sources можно получать данные из конфигурационных файлов, определенных за пределами Terraform, или из другой отдельной Terraform-конфигурации и использовать их в процессе создания новых ресурсов и управления инфраструктурой.
Определение и реализация источников данных находится в зоне ответственности разработчика Terraform-провайдера.
Примечание
Источники данных работают только в режиме чтения.
Пример использования: получение списка всех доступных флейворов виртуальных машин, которые соответствуют требованиям по количеству vCPU и RAM. Чтобы получить такой список:
Добавьте в конфигурационный файл блок кода, в котором заданы атрибуты для поиска всех доступных флейворов с 2 vCPU и 4 GB RAM в зоне доступности AZ1:
data "sbercloud_compute_flavors" "flavors" { availability_zone = "ru-moscow-1a" cpu_core_count = 2 memory_size = 4 }
Сохраните изменения в конфигурационном файле Terraform.
Посмотреть список флейворов, которые соответствуют указанной конфигурации, можно через консоль Terraform. Чтобы ее запустить, введите команду:
terraform console
Чтобы вывести список на экран, в консоли Terraform введите команду:
data.sbercloud_compute_flavors.flavors
В выводе вы получите список всех флейворов, которые соответствуют требованиям:
"availability_zone" = "ru-moscow-1a" "cpu_core_count" = 2 "ids" = tolist([ "c3.large.2", "c6.large.2", "c6nl.large.2", "s6.large.2", "s7n.large.2", ]) "memory_size" = 4 "performance_type" = tostring(null) "region" = "ru-moscow-1"
Также источники данных можно применять для автоматического выбора подходящей конфигурации или параметров. Например, с их помощью можно настроить автоматический выбор зоны доступности или спецификации для создаваемых ресурсов.
для Dev & Test