Works with

Coral works with Terraform

Terraform keeps your cloud as code, and our modules add Coral’s cloud permissions to it. Coral then rebalances your workloads and nodes, without editing your workloads’ templates. Where Coral changes a node pool field that Terraform manages, you tell Terraform to ignore it.

Who does what

JobTerraformCoral
Coral’s cloud identity and permissions
Our modules create them as code, one cluster at a time.
Uses them to remove machines it has emptied.
Installing Coral’s agent
The module’s output goes into the Helm chart, which installs the agent.
Registers the cluster and starts reading it.
Node pools
Creates them and sets each pool’s minimum.
Empties spare nodes, and may reduce a minimum that alone keeps an empty machine.
Adding nodes
Can set up the autoscaler that does it.
Never adds nodes for demand.
Your workload specs
Applies them as you wrote them.
Never edits them.

How they work together

  1. You apply our module for AKS or EKS, which creates Coral’s identity and its permissions on one cluster.

  2. You install the agent with the Helm chart, with the module’s output in its values.

  3. Coral empties the nodes you don’t need, one at a time, and sizes pods to real use once you switch on “Automatically optimize”.

  4. Your autoscaler removes each emptied node, and Coral deletes a machine itself only in fixed-size pools that nothing else manages.

  5. If a pool’s minimum alone keeps an empty machine, Coral can reduce that minimum, and it records the old one in tags.

What stays yours

  • Your workload specs. Coral never edits Git or your workload’s template. It sets sizes on pods as they start, or resizes running pods in place.
  • Scale-up. Coral never adds nodes for demand. That stays with your Karpenter, AKS node auto provisioning (NAP) or Cluster Autoscaler.
  • Your Karpenter and NAP NodePools. Coral changes only the NodePools it creates for rebalancing, and those stay after the run.
  • Your pool minimums, if you choose. Our modules can leave out the permission to change a minimum. Otherwise Coral may reduce one, and a disconnect puts it back.
  • The rest of your cloud. Coral’s identity has no secret or key, and its changes are limited to one cluster.

Set up

  • Pick the module for AKS or EKS. Both are open source, on the Terraform Registry. They create the same identity, role and permissions as zoorikctl, with the same names, so zoorikctl sees them as done.
  • On AKS, turn on the cluster’s OIDC issuer and workload identity before you apply.
  • On EKS, choose Pod Identity or IRSA. With Pod Identity, apply the module before you install the agent, so the agent gets its credentials when it starts.
  • Install the agent with the Helm chart and the module’s output, as Install Coral with Terraform + Helm shows.
  • Ignore Coral’s fields in your own node pool code, as the Terraform install guide shows. Otherwise each apply undoes them.

Questions

What do Coral’s Terraform modules create?

On AKS, a managed identity with its federated credential, and an assignment of Coral’s custom role on that cluster only. One module call in each tenant also creates the role, and the calls for other clusters reuse it. On EKS, an IAM role with its policy, and a Pod Identity association unless you choose IRSA.

Will terraform apply undo what Coral changes?

It can, on node pools that Terraform manages. Coral may reduce a pool’s minimum and, on EKS, a group’s desired size, and it records the old minimum in tags. Tell Terraform to ignore those fields, as the Terraform guide shows.

Can I keep every pool minimum as I set it?

Yes. Our modules for AKS and EKS can leave out the permission to change a minimum. Coral then removes emptied machines but doesn’t reduce a minimum.

Do I need Terraform to use Coral?

No. zoorikctl creates the same identity and permissions when it connects a cluster, and asks before every cloud change. The modules are for teams that keep cloud permissions as code.

How do I revoke Coral’s cloud access?

Remove the role assignment or the policy. Node removal stops once your cloud applies the change. The Trust center lists what the identity may do.

Read more

Find your own number

One line in your cloud console. One PDF report with your estimated saving at list price.

Estimate your saving

Talk to the builders

Thirty minutes with the people who build Coral.

Book a demo (opens in a new tab)

Or write to founders@zoorik.com