Orchestrator concepts

The Orchestrator separates configuration, usually managed by platform engineers, from deployment, where developers use that configuration to provision resources.

The Orchestrator is designed around the Terraform /OpenTofu  (TF) module architecture. It supports other IaC tools only if they can be wrapped by Terraform/OpenTofu code.

Configure

  • Organizations are the top level grouping of all your Orchestrator objects, similar to “tenants” in other tools. Your real-world organization or company will usually have one Orchestrator organization.
  • Projects are the home for a project or application team of your organization. A project is a collection of one or more environments.
  • Environments are a sub-partitioning of projects. They are usually isolated instantiations of the same project representing a stage in its development lifecycle, e.g. from “development” through to “production”. Environments receive deployments.
  • Environment types are a classification of environments. They can be used in rules to identify the proper definition to use during a deployment.
  • Resource types define the formal structure for a kind of real-world resource such as an Amazon S3 bucket or PostgreSQL database.
  • Modules describe how to provision a real-world resource of a resource type by referencing a Terraform/OpenTofu module.
  • Module rules are attached to modules and define under which circumstances to use which module.
  • Providers are the reusable direct equivalent of Terraform/OpenTofu providers that may be injected into the TF code referenced in modules.
  • Runners are used by the Orchestrator to execute Terraform/OpenTofu modules securely inside your own infrastructure.
  • Runner rules are attached to runners and define under which circumstances to use which runner.

Deploy

  • Manifests allow developers to submit the description of the desired state for an environment. A manifest is the main input for performing a deployment.
  • Deployments drive the provisioning of infrastructure and applications within each environment. Deployments are executed within a runner.
  • Rollback deployments can be used to redeploy the manifest and resource graph from a previous deployment in an environment.
  • The resource graph shows the dependencies between all active resources in an environment.

Object landscape

Orchestrator object system landscape

Top