# Migration Guides

Source: https://docs.quake.ai/docs/automation/migration
Markdown: https://docs.quake.ai/docs/automation/migration.md

---

# Migration guides

Step-by-step guides for moving your infrastructure to Quake AI from other providers and tools. Each guide maps source resources to their Quake AI equivalents and walks through a full migration workflow using OpenTofu.


The [Migration Explorer](/resources/migration) maps every Quake AI service to its AWS, GCP, Azure, DigitalOcean, and Hetzner equivalents, with specific divergences documented so you know what differs before you start rewriting configurations.


## Guides

<UseCaseGrid>
<UseCaseCard
  title="Migrate from Hetzner Cloud"
  description="Swap the hcloud provider for OpenStack, remap server types to Quake AI flavors, and translate firewalls to security groups."
  href="/docs/automation/migration/from-hetzner"
  difficulty="intermediate"
  estimatedTime="15 min"
  services={["Automation", "Compute", "Network"]}
/>
<UseCaseCard
  title="Migrate from AWS CloudFormation"
  description="Convert CloudFormation stacks to OpenTofu configurations targeting the Quake AI OpenStack provider."
  href="/docs/automation/migration/from-aws-cloudformation"
  difficulty="advanced"
  estimatedTime="20 min"
  services={["Automation", "Compute", "Network", "Storage"]}
/>
<UseCaseCard
  title="Migrate from Docker Compose"
  description="Move single-host Docker Compose setups to cloud-native infrastructure managed by OpenTofu on Quake AI."
  href="/docs/automation/migration/from-docker-compose"
  difficulty="intermediate"
  estimatedTime="15 min"
  services={["Automation", "Compute"]}
/>
<UseCaseCard
  title="Migrate from Linode (Akamai)"
  description="Swap the linode/linode provider for openstack, remap Linode plans to Quake AI flavors, translate Cloud Firewalls to security groups, and replace NodeBalancers with a self-managed edge proxy."
  href="/docs/automation/migration/from-linode"
  difficulty="intermediate"
  estimatedTime="20 min"
  services={["Automation", "Compute", "Network"]}
/>
<UseCaseCard
  title="Migrate from Vultr"
  description="Swap the vultr/vultr provider for openstack, remap Vultr plans to Quake AI flavors, translate Firewall Groups to security groups, and replace Vultr Load Balancers with a self-managed edge proxy."
  href="/docs/automation/migration/from-vultr"
  difficulty="intermediate"
  estimatedTime="20 min"
  services={["Automation", "Compute", "Network"]}
/>
</UseCaseGrid>

## General migration workflow

All IaC migrations follow the same pattern:

1. **Audit existing resources.** Document servers, networks, storage, and firewall rules in your current environment.
2. **Map to Quake AI equivalents.** Use the conceptual mapping tables in each guide to find corresponding OpenStack resources.
3. **Rewrite infrastructure code.** Replace provider-specific resources with `openstack_*` equivalents using the OpenStack Terraform provider.
4. **Migrate data.** Use `rsync`, `scp`, or `rclone` (for S3-compatible storage) to transfer data between environments.
5. **Validate and deploy.** Run `tofu plan` to verify, then `tofu apply` to provision on Quake AI.

## See also

- [Migration Explorer](/resources/migration): interactive service comparison across cloud providers
- [IaC on Quake AI](/docs/automation/concepts/iac-comparison)
- [Introduction to Terraform on Quake AI](/docs/automation/concepts/terraform)
- [Infrastructure Templates](/resources/iac-templates)
- [Automation service overview](/docs/automation)
