Create a Deployment
An Astro Deployment is an Airflow environment that is powered by Astro Runtime. It runs all core Airflow components, including the Airflow webserver, scheduler, and workers, plus additional tooling for reliability and observability.
There are multiple ways to create a Deployment:
- Manually, using the Astro UI. This is the most basic way to create a Deployment and is the focus of this document.
- Programmatically, using
astro deployment create
. - Programmatically, using a Deployment template file. See Manage Deployments as code.
- Programmatically, using Astro Terraform Provider.
At this time, Airflow 3 Deployments can only be created through the UI. CLI and API support will be added in a future update.
Execution mode
To create a Deployment, you must specify Hosted or Remote execution mode for the Deployment. Read below for a summary of the two modes and see Execution mode for more information.
Hosted execution
Hosted execution mode is Astronomer-Hosted execution and orchestration for hands-off infrastructure management. Hosted is the default execution that offers a convenient, secure, and stable way to run Airflow workloads without having to manage workers in your environment.
Remote Execution
Remote Execution mode is available on dedicated clusters to run tasks in your hardware or private clouds with only outbound connections to Astro’s Orchestration Plane. Sensitive data stays local, ideal for regulated or multi-regional deployments. Choose this option if:
- You need to run Airflow tasks in on-prem, hybrid, or edge environments without exposing inbound connections.
- Data locality and sovereignty are critical, ensuring sensitive or compliance-bound data stays in your environment.
- You want to avoid inbound firewall changes, simplifying network security by using only outbound connections.
- Your workloads require runtime flexibility, allowing execution on Kubernetes, bare metal, or other infrastructure.
- Strong isolation of secrets, data, and logs is a priority.
- You need scalability for high-throughput workflows, large-memory tasks, or GPU-accelerated AI workloads.
Cluster type
To create a Deployment, you must choose a cluster type to host the Deployment:
-
A standard cluster is the default cluster type and the quickest way to get an Airflow environment up and running on Astro. A standard cluster is a multi-tenant cluster managed by Astronomer where each Deployment exists in its own dedicated Kubernetes namespace. To run a Deployment in a standard cluster, you select a cloud provider and region when you create the Deployment. Then, Astro automatically creates your Deployment in an existing standard cluster based on your configuration.
-
A dedicated cluster is a single-tenant Kubernetes cluster that's used exclusively by your team. Choose this option if:
- You need private networking support between Astro and your cloud or on-premise data services.
- You want to use a specific cloud provider or region that is not supported on standard clusters.
- You need to run Airflow environments in separate clusters for business or security reasons.
Note that due to expanded resource usage, dedicated clusters cost more than standard clusters. If no dedicated clusters are available to select, see Create a Dedicated cluster to create a new one.
After you create a Deployment, you can deploy DAGs to it using the Astro CLI on your local machine or a continuous integration/continuous delivery (CI/CD) tool. All DAGs and tasks on Astro are executed within a Deployment.
Every Deployment is hosted on an Astro cluster with its own dedicated resources that you can customize to fine-tune your resource usage. To restrict communication between Deployments, resources for each Deployment are isolated within a corresponding Kubernetes namespace. See Deployment network isolation.
If you're migrating to Astro from OSS Airflow or another Astronomer product, and you currently use an older version of Airflow, you can still create Deployments with the corresponding version of Astro Runtime even if it is deprecated according to the Astro Runtime maintenance policy. This allows you to migrate your DAGs to Astro without needing to make any code changes and then immediately upgrade to a new version of Airflow. Note that after you migrate your DAGs, Astronomer recommends upgrading to a supported version of Astro Runtime as soon as you can.
Prerequisites
Create a Deployment
-
In the Astro UI, go to Deployments.
-
Click + Deployment.
-
Enter a Name for the Deployment.
-
(Optional) Configure other details for your Deployment, including execution mode, cluster, executor, and worker resources. If you have no specific resource requirements for running Airflow, the default configurations should work in most cases. For all available Deployment options, see Deployment resources.
infoThe Astro executor is only available for Airflow 3.x.
tipAstronomer strongly recommends configuring a Contact Email in the Advanced section of your Deployment configuration. This allows Astronomer support to notify you in case there's an infrastructure issue with your Deployment. See Configure Deployment contact emails.
-
Click Create Deployment.
A confirmation message appears indicating that the Deployment is in progress. The Deployment status is Creating until all underlying components in your Astro cluster are healthy, including the Airflow webserver and scheduler. During this time, the Airflow UI is unavailable and you can't deploy code or modify Deployment settings. When the Deployment is ready, the status changes to Healthy.
You can continue to access your other Deployments by selecting the Deployments link.
For more information about possible Deployment health statuses, see Deployment health.