@VITYA-XY1

Какой подход использовать применяя модули terraform?

К примеру:

Нужно создать VPC приатачить к ней ec2, rds и elasticache.
К ec2 нужно приатачить elb, а к elb, route53
Есть готовые модули:
https://github.com/terraform-aws-modules

Исходя из задачи вопрос:

1) Как все это подружить между собой, те как терраформ будет знать порядок что зачем создавать или нужно как-то указивать зависимости?
2) Стоит использовать свои или готовые модули, как при выборе чужих модулей избежать факапов, нужно перечитывать все over9000 строк или прсто тестировать сначала qa и надеятся, что на проде ситуация будет та же ?
3) как ролбечить на терраформе: допустим ранер запущен с локалки(или с другого клауд провайдера) обрывается связь и терраформ не успевает задеплоить все изменения, при том часть их задеплоена, как быть в таком случае?

Нубские вопросы которые можно накопать гугля, но тем не менее каждый их решает по своему, вот эта инфа меня и интересует.
  • Вопрос задан
  • 58 просмотров
Решения вопроса 1
@mureevms
1. Напишите первый стейт, чтобы создать инстансы с доступом в интернет. Если вы это делаете впервые, то будет не тривиально. Вот мой код для этого, возьмите для старта. Затем усложняйте прикручиванием новых штуковин
2. Я бы не советовал, но есть и другое мнение, и советовал бы делать самостоятельно. По крайней мере, чтобы понять как оно работает. Как придет понимание, можно посмотреть в сторону чужих модулей.
3. При последующем запуске Терраформ сам смотрит что уже есть и доделывает то, что не успел перед потерей связи. Так же, он при каждом запуске выводит изменения. которые будет делать. Напишите и примените первый стейт, поймете.

В качестве совета. Используйте не локальный бэкенд. Раз речь об AWS, то лучше юзать S3 бэкенд. Это немного усложнит первую настройку, но облегчит жизнь впоследствии и спасет нервы.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы