Running Elementary OSS in production means to include the dbt package in your production dbt project, and setting up an automated manner to run the Elementary CLI. This step is optional, but it will help you automate, control and scale Elementary OSS.
You can choose any system that allows you to orchestrate a CLI execution, as long as it can meet the following requirements:
profiles.yml
file with elementary
profile name.--env
flagWhen you run Elementary in production use the --env prod
flag (By default, it is set to dev
).
This will show the environment as prod
in the report and alerts.
Your deployment of Elementary has two parts:
Part 1 - Elementary package in your production dbt project
In your dbt jobs, after you deploy the Elementary dbt package:
Part 2 - Elementary CLI
On an orchestration system of your choice, run the CLI to:
edr monitor --env prod
command and Slack integration.edr report --env prod
or edr send-report --env prod
that has built in support for sending the report to Slack / GCS / S3.The CLI needs to have permissions to access the profiles.yml
file with the relevant profile,
and network access to the data warehouse.
Also, in the elementary
profile, the credentials should have permissions to:
On your dbt project, make sure that Elementary dbt package can:
For sending alerts or generating a report, there are two options:
dbt test
/ dbt build
/ dbt run
).If your organization is using dbt-core, it would probably be a good choice to orchestrate Elementary using the same system that orchestrates dbt.
Any automation server / orchestration tool supports running a CLI tool like Elementary.
Some options include:
If you want to consult on production deployment, we would love to help!
Please reach out to us on Slack, we could talk there or schedule a deployment video call.