Предложения по структуре терраформ шаблона и папки - PullRequest
0 голосов
/ 24 октября 2018

Мы ищем возможность создавать виртуальные машины (и связанные с ними ресурсы) в различных облачных провайдерах.

Таким образом, мы получим разные шаблоны для разных облачных провайдеров.Текущая структура

|_terraform
    |_azure
    |     |_vm
    |        |_module
    |        |_testazurevm1
    |        |    |_.terraform
    |        |         |_plugins
    |        |         |_modules
    |        |_testazurevm2
    |        |    |_.terraform
    |        |         |_plugins
    |        |         |_modules
    |        |_...
    |            |_.terraform
    |                 |_plugins
    |                 |_modules
    |___aws
    |     |_vm
    |        |_module
    |        |_testawsvm1
    |        |    |_.terraform
    |        |         |_plugins
    |        |         |_modules
    |        |_testawsvm2
    |        |    |_.terraform
    |        |         |_plugins
    |        |         |_modules
    |        |_...
    |            |_.terraform
    |                 |_plugins
    |                 |_modules
    |____....

Это своего рода работа, но каждый раз, когда мы выполняем инициацию / применение terraform в одной из подпапок, она всегда создает новую подпапку .terraform, которая содержит двоичный исполняемый файл провайдеров и ссылкуссылка на модули.

Когда у нас будут сотни / тысячи виртуальных машин, у нас будут эти исполняемые файлы в каждой папке VM / .terraform / plugins.

Есть ли способ сказать,terraform для повторного использования существующих плагинов в указанной папке?

1 Ответ

0 голосов
/ 26 октября 2018

После некоторых исследований я обнаружил, что у terraform init есть ключ -plugin-dir, который позволяет нам указать папку, в которую можно предварительно загрузить плагины.

Так что нам не нужно проверятьв исполняемых исполняемых файлах плагинов для управления исходным кодом.

Это упоминается в: https://www.terraform.io/guides/running-terraform-in-automation.html

terraform init -input=false -plugin-dir=/usr/lib/custom-terraform-plugins

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...