Skip to content

Cloud Automation and Orchestration

Explanation · Updated Jun 2026

Coming from another cloud?

▸AWS·Stacks

Stackshigh

  • Quake AI offers Heat (legacy OpenStack orchestration) and recommends OpenTofu for new IaC work; EKS uses declarative console/CLI.
  • EKS Auto Mode automates data plane; Quake AI uses OpenTofu modules for infrastructure provisioning.
  • CloudFormation stacks are managed via AWS-specific REST API (e.g., cloudformation.us-east-1.amazonaws.com) requiring AWS SigV4 auth, while Heat (legacy) uses OpenStack Identity API v3 (keystoneauth) and OpenTofu uses the OpenStack provider with application credentials. Migrators notice different endpoint discovery and auth flows.
  • Stacks support StackSets for cross-region/account deployment; Heat has no equivalent. OpenTofu workspaces offer a different multi-environment pattern.
AWS docs ↗
▸Azure·Resource Manager deployment (deployment)

Azure Resource Manager deployment (deployment)high

  • Authoring format differs: ARM templates are JSON documents for Azure Resource Manager deployments, whereas Quake AI offers Heat (legacy, HOT/YAML format) and recommends OpenTofu (HCL) for new infrastructure automation.
  • Deployment target/scope differs: ARM templates can deploy at multiple scopes (resource group, subscription, management group, tenant) via Azure Resource Manager's management layer, while Heat orchestrates within a single OpenStack project/tenant. OpenTofu can target multiple projects via provider configuration.
  • Change-preview behavior differs: ARM supports a built-in “what-if” style preview of changes via Resource Manager deployments, while OpenTofu provides `tofu plan` for change previews. Heat relies on stack update events (legacy workflow).
  • Resource coverage lifecycle differs: ARM templates support Azure resource types exposed by Azure resource providers; OpenTofu covers OpenStack resource types via the OpenStack provider, and Heat (legacy) supports a narrower set via built-in resource plugins.
Azure docs ↗
▸Google Cloud·Deployment Manager

Deployment Managerhigh

  • Uses YAML configurations with optional Jinja2/Python templates expanded server-side; Quake AI offers Heat (legacy, HOT/YAML) and recommends OpenTofu (HCL) for new work.
  • Resource types named as service.v1.resource (e.g., compute.v1.instance) tied to GCP APIs, vs OpenStack prefixed types like OS::Nova::Server.
  • Single integrated GCP service (no separate API/engine processes); Heat has a multi-service architecture (heat-api, heat-engine) but is legacy. OpenTofu runs client-side with no server component.
  • No additional service fee; bills only for deployed GCP resources, same as OpenStack resources billing via provider.
Google Cloud docs ↗

Cloud automation and orchestration

Cloud automation replaces manual, click-through provisioning with code that describes your infrastructure. Instead of logging into a dashboard to create a VM, a network, and a security group one at a time, you write a configuration file that declares all three and their relationships. A tool reads that file and creates everything in the correct order, every time.

This approach is called Infrastructure as Code (IaC), and it is the foundation of repeatable, auditable cloud operations.

Why infrastructure as code matters#

Manual provisioning works for a single server. It breaks down when you need to reproduce an environment, hand it to a teammate, roll back a change, or run the same stack in staging and production. IaC solves these problems:

  • Repeatability. The same configuration file produces the same infrastructure. No undocumented dashboard clicks.
  • Version control. Infrastructure definitions live in Git alongside application code. You can review changes in a pull request, revert a bad deploy, and trace who changed what.
  • Collaboration. A shared configuration file is a single source of truth. Team members work from the same definition rather than a wiki page with screenshots.
  • Automation. CI/CD pipelines can provision and tear down environments without human intervention.

IaC on Quake AI#

Quake AI supports three IaC tools for provisioning, plus Ansible for configuration management above the provisioning layer. OpenTofu is the default for Day 0 provisioning on new projects; Quake AI templates and how-to guides use OpenTofu. Ansible handles Day 1 and Day 2 host configuration after OpenTofu provisions the infrastructure.

The split is sometimes called Day 0 / Day 1 / Day 2:

  • Day 0 (provision): create VMs, networks, security groups, floating IPs. OpenTofu owns this layer.
  • Day 1 (configure): install packages, harden SSH, deploy your application onto a freshly provisioned host. Ansible owns this layer.
  • Day 2 (operate): patch hosts, rotate credentials, run drift correction. Ansible runs against the existing inventory.

OpenTofu (default for provisioning)#

OpenTofu is an open-source infrastructure tool hosted by the Linux Foundation. It uses HCL (HashiCorp Configuration Language) to declare resources and manages state in a local or remote state file.

On Quake AI, OpenTofu uses the OpenStack provider to manage compute instances, networks, security groups, block storage, and floating IPs. For S3-compatible object storage, it uses the AWS provider with a custom endpoint.

Key strengths for Quake AI users:

  • Plan before apply. tofu plan shows exactly what will change before any resource is created, modified, or destroyed.
  • Multi-provider support. Manage Quake AI resources and external services (DNS, monitoring, S3 storage) in a single configuration.
  • Module ecosystem. Reuse community modules from the Terraform Registry. OpenTofu is fully compatible with Terraform providers and modules.
  • Open-source license. MPL-2.0 with no usage restrictions.

Terraform (supported)#

Terraform and OpenTofu share the same HCL syntax, provider ecosystem, and state format. Quake AI OpenTofu templates run with terraform instead of tofu without modification. If your team already has Terraform workflows, they work on Quake AI as-is.

Heat (legacy)#

OpenStack Heat is the built-in orchestration service on Quake AI. It uses HOT (Heat Orchestration Template) YAML files and manages state server-side. Heat can only orchestrate OpenStack-native resources; it cannot manage external services, and it has no equivalent of plan or a module registry.

Heat remains supported for existing stacks. New projects and templates use OpenTofu.

Ansible (configuration management above OpenTofu)#

Ansible is an agentless configuration-management tool from Red Hat. It runs YAML playbooks against an inventory of hosts to install packages, edit files, manage services, and deploy applications. Ansible does not replace OpenTofu; it sits one layer above it. OpenTofu provisions the VM, then Ansible logs in over SSH and configures it.

The openstack.cloud Ansible collection can also drive Quake AI's API directly, for cases where a small amount of provisioning lives alongside configuration. The combined pattern is documented in How to use Ansible with OpenTofu on Quake AI.

For a deeper walkthrough of when to reach for Ansible, read Ansible on Quake AI.

Choosing the right tool#

SituationRecommendation
New project, no existing IaCOpenTofu for Day 0 provisioning, Ansible for Day 1 configuration
Existing Terraform workflowsKeep Terraform for provisioning; add Ansible for configuration
Existing Heat stacks in productionKeep Heat for those stacks; use OpenTofu for new resources
Multi-cloud (Quake AI + AWS/GCP)OpenTofu or Terraform; Ansible runs against any of them
Need to install software, deploy apps, or harden OS on existing VMsAnsible

For a detailed feature comparison, see IaC on Quake AI.

Getting started#

The fastest path from zero to a running resource:

  1. Install OpenTofu and deploy your first instance: a step-by-step guide covering installation, authentication, and your first tofu apply.
  2. Browse the infrastructure template library for common deployment patterns you can deploy or adapt. Each reference page lists when to choose that pattern and links to shared customize how-tos.
  3. Set up remote state management when you are ready to collaborate with a team.

See also#

Related content

Pages

deployment

Was this page helpful?