Управление инфраструктурой через Terraform
Terraform — это программное обеспечение для управления внешней инфраструктурой. С помощью Terraform вы можете управлять ресурсами VMmanager — виртуальными машинами (ВМ), сетями и т.д.
В Terraform используется подход Infrastructure as code — все команды и настройки для ресурсов передаются через конфигурационные файлы. В конфигурационных файлах используется декларативный язык HCL (HashiCorp Configuration Language). Подробнее о Terraform см. в официальной документации.
Terraform взаимодействует с объектами инфраструктуры с помощью специального набора инструкций — провайдера. Документация к провайдеру для VMmanager доступна на ресурсах registry.terraform.io и github.com.
Установка Terraform
Стандартный способ
AlmaLinux
- Выполните команды: CODECODECODE
Создайте отдельную директорию для Terraform:
CODE
Debian, Ubuntu
Выполните команды:
CODECODECODECODEСоздайте отдельную директорию для Terraform:
CODE
macOS
Если в системе не установлен менеджер пакетов Homebrew, установите его:
CODEВыполните команды:
CODECODECODECODEСоздайте отдельную директорию для Terraform:
CODE
Windows
- Скачайте версию Terraform для Windows.
- Распакуйте содержимое архива в отдельную директорию. Например, C:\Apps\Terraform\.
- Добавьте путь к директории с Terraform в системную переменную PATH. Порядок добавления зависит от версии ОС.
Альтернативный способ
Если репозиторий Terraform недоступен, вы можете скачать дистрибутив ПО из зеркала репозитория. После загрузки:
- Распакуйте содержимое архива в отдельную директорию.
Добавьте путь к директории в системную переменную PATH:
Команда для Linux
CODE
Подготовка конфигурации
Чтобы подготовить конфигурацию, создайте в директории с Terraform файл main.tf.
Создание ресурсов
Инициализируйте проект конфигурации:
CODEЕсли ресурс с провайдером недоступен, ответ будет содержать ошибку вида
CODEВ этом случае вы можете установить провайдер локально:
Обратите внимание!
Локальная установка провайдера возможна только на ПК с ОС семейства Linux.
Выполните команды:
CODECODECODECODEВ файле main.tf замените строку
CODEна
CODEИнициализируйте проект конфигурации:
CODE
Проверьте синтаксис конфигурационного файла:
CODEЕсли конфигурация является допустимой, ответ будет содержать сообщение:
CODEПроверьте, что ресурсы будут созданы с нужной конфигурацией:
CODEВывод команды будет содержать список создаваемых ресурсов и их свойства. При необходимости вы можете исправить файл конфигурации и повторить выполнение команды.
Запустите создание ресурсов:
CODEЧтобы подтвердить создание ресурсов, введите yes и нажмите Enter.
Изменение ресурсов
Чтобы изменить созданные ресурсы:
- Измените настройки ресурсов в файле main.tf.
Выполните команду:
CODEЧтобы подтвердить изменение ресурсов, введите yes и нажмите Enter.
Если часть ресурсов уже была создана, Terraform не будет пересоздавать их.
Удаление ресурсов
Чтобы удалить созданные ресурсы, выполните команду:
После выполнения команды в терминале будет выведен список удаляемых ресурсов. Чтобы подтвердить удаление, введите yes и нажмите Enter.
Обратите внимание!
После выполнения этой команды восстановление ресурсов невозможно.