Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.akua.dev/llms.txt

Use this file to discover all available pages before exploring further.

When you create a managed cluster, you need to run your applications. Akua can provision and manage these machines for you. Create a machine from the dashboard, and Akua handles the rest: server creation, Kubernetes setup, cluster joining, and lifecycle management.
You can also add your own workers manually by running a bootstrap command on any Linux server. Akua-managed machines are an alternative that removes the need for a separate cloud provider account.

Machine lifecycle

Provisioning

When Akua provisions a machine for your cluster:
  1. Akua creates a cloud server using the resolved compute config for your cluster’s region.
  2. The server bootstraps automatically and joins your cluster.
  3. The machine appears in your dashboard with real-time status updates.
  4. Akua monitors the machine and handles its full lifecycle.
You can track each machine’s progress through four stages: Provisioned (server created), Bootstrapped (Kubernetes installed), Joined (connected to cluster), and Ready (accepting workloads). If your cluster is suspended when a machine is requested, Akua resumes the cluster automatically before provisioning begins. This adds approximately 15–25 seconds while the control plane starts up.

Auto-scaling

Akua automatically matches capacity to your workload requirements. When your cluster needs more resources, new machines are provisioned. When demand decreases, idle machines are removed to reduce costs. Concurrency limit: To prevent runaway provisioning loops, Akua limits how many machines can be launching at once per cluster: 1 on the free plan and 3 on Pro. If your cluster requests more machines than this limit, they are queued and provisioned as earlier machines complete. If provisioning repeatedly fails (for example, due to a provider capacity issue), Akua backs off to avoid unnecessary retries. See quotas for details. Auto-scaling controls: You can pause and resume auto-scaling from the Machines tab. When paused, no new machines are created regardless of pending workloads. The current machine count and limit are shown in the header.
When you pause auto-scaling, existing workloads continue running on current machines. New pods that require additional capacity will remain pending until auto-scaling is resumed.

Deletion

When a machine is deleted (not suspended), the data is permanently removed:
  1. Running workloads are gracefully drained off the machine (up to 2 minutes).
  2. The cloud server is deleted and billing stops immediately.
  3. Cluster resources are cleaned up.
If your workloads still need resources after deletion, auto-scaling may provision a new machine to replace it, unless you have paused auto-scaling or your quota is at its limit.
If the cluster is unreachable (for example, during cluster deletion), Akua skips the drain step and deletes the cloud server directly to stop billing immediately.

Free tier machine lifetime

Akua-managed machines on the free tier are automatically deleted after 7 days. You receive email and dashboard notifications at 5 days, 2 days, and 24 hours before deletion. BYOM machines are not subject to the 7-day lifetime. They run as long as you leave them running, because you pay the cloud provider directly. To keep managed machines running longer, add your own cloud key or upgrade to Pro. See plans and pricing for details.

Suspend and resume

Suspend a machine to stop paying for compute while preserving its data. For the full details (cost comparison, what’s preserved, auto-suspend on subscription downgrade, and public IP behavior across providers), see Suspend and resume.

Provider resource identity

The machine’s provider_resource object exposes how the underlying cloud resource behaves across suspend and resume:
FieldValuesMeaning
provider_resource.identity_kindrecyclableThe cloud server is deleted on suspend and replaced on resume. The public IP changes on every resume. Applies to Hetzner, DigitalOcean, Vultr, Linode, OVH.
provider_resource.identity_kindpersistentThe cloud instance is stopped, not replaced. The public IP is stable across stop and start. Applies to AWS, GCP, Azure.
provider_resource.public_ipstringThe machine’s current public IP. Refreshes after each resume on recyclable providers.
provider_resource.floating_ipobject (optional)A stable IP that survives the suspend and resume cycle. Not yet implemented.
Use the identity_kind field to show an appropriate warning before a user suspends a recyclable machine that has no floating_ip attached.

Supported providers

ProviderRegionsStatus
Hetzner CloudEU (Falkenstein, Nuremberg, Helsinki), US (Ashburn, Hillsboro)Available
More providers are coming. You can also bring your own cloud key to use any supported provider with your own account.

Notifications

Akua sends notifications for machine lifecycle events such as upcoming expiry. Notifications appear both via email and in the notification center in your dashboard header. See notifications for details.

API

Manage machines programmatically.

Machines API reference

Create, list, get, update, delete, suspend, and resume machines.

Compute configs API reference

Manage BYOM compute configurations.

Suspend and resume

Pause machines to save costs while preserving data.

Hetzner Cloud

Regions, instance types, and Hetzner-specific behavior.

Add workers manually

Attach your own servers without Akua-managed provisioning.

Plans and pricing

Compare plans and understand machine limits.