как использовать удаленное состояние terraform при использовании ресурса, который еще не создан terraform

У меня здесь ситуация с курицей и яйцом.

Я хочу сохранить состояние терраформирования в хранилище лазурных BLOB-объектов, но сначала хочу использовать терраформ для создания хранилища ключей.

Я не могу указать ключ доступа, если хранилище ключей не существует.

Я прибегал к использованию bash, чтобы сначала создать хранилище ключей, но это далеко не идеально.

Это можно обойти?

Могу ли я использовать команду обновления terraform после создания внутреннего хранилища?


person dagda1    schedule 08.02.2020    source источник


Ответы (1)


Я думаю, это проблема возможности, а не проблема курицы и яйца.

Во-первых, если вы хотите сохранить файл состояния в хранилище BLOB-объектов Azure, вам нужно сначала создать хранилище. При создании хранилища ключ доступа уже существует.

Во-вторых, когда вы храните ключ доступа к хранилищу в хранилище ключей, вам необходимо заранее получить ключ доступа. Думаю, вот в чем проблема, о которой вы думаете. Но ключ доступа необходим перед созданием файлов Terraform, хотя вы храните ключ в хранилище ключей. Вы можете увидеть шаги в Сохранить состояние Terraform в хранилище Azure. Независимо от того, храните ли вы ключ доступа в хранилище ключей или нет, получение ключа доступа находится в самом начале всех шагов.

Так что вы думаете это невозможно. Если вы хотите использовать хранилище Azure для хранения состояния, правильная последовательность:

  1. создать учетную запись хранения Azure и контейнер
  2. получить ключ доступа и установить его как переменную среды
  3. создавать файлы терраформ и использовать учетную запись хранения для хранения состояния
person Charles Xu    schedule 10.02.2020
comment
Думаю, вы правы, я думал, что команда обновления терраформы может волшебным образом изменить место хранения состояния - person dagda1; 10.02.2020