Declarative approach

  • Define the final state of your infrastructure.
  • It lets the provider handle the rest.
  • Managed through simple config maps.
vm:
  config: ...
vpc:
  config: ...
db:
  config: ...
...

Advantages:

  • No matter how many times you run provisioning you end up with the same infrastructure. Example: run it later to ensure the infrastructure hasn't changed