Skip to main content

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 three 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.

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.

info

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.

See Run a deprecated Astro Runtime version.

Prerequisites

Create a Deployment

  1. In the Astro UI, go to Deployments.

  2. Click + Deployment.

    Deployment creation button

  3. Enter a Name for the Deployment.

  4. (Optional) Configure other details for your Deployment, including 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.

    tip

    Astronomer 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.

  5. 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.

Next steps

Was this page helpful?