Manual provisioning is slow, error-prone and difficult to scale.
Reduced agility from ticketing queues, manual workflows using Point-and-Click GUIs & APIs
Increased cost with “cloud waste” or over provisioning
Increased risk with more chances for human error. Best practices are followed on a “best effort” basis using tribal knowledge
Automate provisioning using Terraform infrastructure as code.
Increased agility with reduced time to provision from weeks to minutes with automated workflow
Control costs systematically as users and applications scale
Reduce risk and discover errors before they happen with code reviews and embed provisioning guardrails
Use HashiCorp Configuration Language (HCL), a simple human-readable configuration language, to define a desired topology of infrastructure resources. Configuration can also be defined in JSON for programmatic generation and application integration.
Write, version, review, and collaborate on Terraform code using your preferred version control system.
Integrate with Terraform Cloud and Enterprise to automatically validate configuration changes and trigger Terraform. Link changes made with Terraform to the associated changes in version control.
Workspaces decompose monolithic infrastructure into smaller components, or "micro-infrastructures". These workspaces can be aligned to teams for role based access control.
View all workspaces across cloud providers, teams, and environments through one pane of glass. Secure and audit all workspace changes.
Granular variables allow easy reuse of code and enable dynamic changes to scale resources and deploying new versions.
All variables are encrypted, protected by access controls, and retrieved as needed during the provisioning process.
Terraform uses two-phased provisioning a plan (dry run) & apply (execution). Plans can be inspected prior to execution to ensure expected behavior and safety.
Terraform runs can be applied from the GUI, using the API, or from the CLI to preserve the same workflow used with OSS. A policy check step is applied to a plan.
The state file is a record of currently provisioned resources. State files enable a versioned history of the infrastructure and are encrypted at rest. Versions can be inspected to see incremental changes.
Remote state storage and management enables teams to share state, prevent more than one change at a time, and view a versioned history of all infrastructure changes by a team.
Sentinel is a policy as code framework to automate multi-cloud governance.
Require every provisioning run to enforce security, compliance, and operational best practices. Avoid manual code review which reduces agility and is error prone.
BETA
Clustering allows for all API requests, background processes, and Terraform runs to be distributed across the cluster, supporting any number of concurrent end-users and runs. Modules consistently a provision a cluster across availability zones by default with Terraform Enterprise across three or more nodes for zero downtime for common failure events.