Terraform modules inside outИнфраструктура как код

Доклад отозван
Антон Бабенко

Антон Бабенко много лет работает программистом и техлидом и проводит большую часть своего времени, управляя различными проектами, связанными с Terraform, AWS, terraform-aws-modules, modules.tf и другими. Один из наиболее успешных его проектов — тот, где он управляет коллекцией проверенных Terraform-модулей для AWS, которые были скачаны более миллиона раз. Он также является организатором встреч пользовательских групп по темам AWS, DevOps, HashiCorp в Норвегии.


Terraform module is the smallest reusable component of an infrastructure. Getting started to use modules is easy, but keep them in a good shape and make them really powerful is harder.

Your infrastructure almost always starts simply: few resources managed by few developers. As time goes it grows in all possible directions. You found your ways around grouping resources into Terraform modules, so what can possibly go wrong? (famous last words)

During the talk, I will explain several unknown, hard to find and rather green-field solutions related to Terraform modules. More specifically:
- Types of modules (resource and infrastructure modules, compositions)
- How to specify dependencies between modules
- Workflow for various types of modules

More advanced topics like:
- Refactoring, upgrades, rollbacks (without recreation of the resources)
- Poor-man modules manager
- What are the limitations of the current implementation of Terraform modules and workarounds (eg, jsonnet, cookiecutter, terrapin)

I will demonstrate and run the code which handles advanced problems based terraform-aws-modules from the Terraform Registry and explain why hundreds of developers are using those modules already (btw, they were downloaded 1 million of times already).

Другие доклады секции Инфраструктура как код