Configuration
Environment Variables
Section titled “Environment Variables”Set variables before provisioning with azd env set:
# Requiredazd env set AZURE_LOCATION eastus2azd env set AZURE_CONTACT_EMAIL you@example.com
# Optional: disable Grafana to save costsazd env set ENABLE_GRAFANA_WORKSPACE false
# Optional: add more data partitionsazd env set TF_VAR_data_partitions '["opendes","another-partition"]'Azure Resources per Environment
Section titled “Azure Resources per Environment”| Resource | Purpose | Per-Partition |
|---|---|---|
| AKS Automatic | Kubernetes cluster (K8s 1.33, Istio, Cilium) | No |
| CosmosDB (Gremlin) | Entitlements graph | No |
| CosmosDB (SQL) | OSDU operational data (24 containers) | Yes |
| Service Bus | Event-driven messaging (14 topics) | Yes |
| Storage Account (common) | System data, Airflow DAGs, CRS | No |
| Storage Account (partition) | Legal configs, file areas, WKS mappings | Yes |
| Key Vault | Connection strings, keys, credentials | No |
| Container Registry | Container images | No |
| Application Insights | Service telemetry | No |
| Log Analytics | Container Insights | No |
| Azure Monitor Workspace | Managed Prometheus metrics | No |
Multi-Partition Support
Section titled “Multi-Partition Support”Resources marked “Per-Partition” are created for each data partition via Terraform for_each. The default partition is opendes. Add more partitions via:
azd env set TF_VAR_data_partitions '["opendes","second-partition"]'Multi-Stack Support
Section titled “Multi-Stack Support”Deploy multiple isolated OSDU instances on the same cluster:
# Deploy the default stackazd deploy
# Deploy a second stack with a different nameazd env set STACK_NAME blueazd deployEach stack gets its own namespaces (platform-{name}, osdu-{name}) and independent Terraform state, while sharing the foundation layer.
Feature Flags
Section titled “Feature Flags”Individual OSDU services can be toggled via Terraform variables:
azd env set TF_VAR_enable_partition trueazd env set TF_VAR_enable_search trueazd env set TF_VAR_enable_storage trueThis allows incremental deployment — start with core services and enable additional ones as needed.