databricks

Azure Databricks Security Best Practices

Production-ready, modular Terraform templates for secure Azure Databricks deployments.

πŸ“š Complete Documentation β†’ πŸ”‘ Authentication Setup Guide β†’ - New to Terraform? Start here!


πŸš€ Modular Terraform Structure

This repository provides production-ready, modular Terraform templates for Azure Databricks deployments with comprehensive documentation, UML diagrams, and troubleshooting guides.

πŸ“ Repository Structure

adb4u/
β”œβ”€β”€ docs/                      # πŸ“š All documentation centralized here
β”‚   β”œβ”€β”€ README.md              # Documentation index
β”‚   β”œβ”€β”€ 01-QUICKSTART.md       # Quick start guide
β”‚   β”œβ”€β”€ 02-DEPLOYMENT-CHECKLIST.md # Pre-flight checklist
β”‚   β”œβ”€β”€ 03-TRAFFIC-FLOWS.md    # Network traffic patterns
β”‚   β”œβ”€β”€ 04-TROUBLESHOOTING.md  # ⚠️ Common issues & solutions
β”‚   β”œβ”€β”€ guides/                # Additional guides
β”‚   β”‚   └── 01-SERVERLESS-SETUP.md
β”‚   β”œβ”€β”€ modules/               # Module documentation
β”‚   β”‚   β”œβ”€β”€ 01-NETWORKING.md
β”‚   β”‚   β”œβ”€β”€ 02-WORKSPACE.md
β”‚   β”‚   β”œβ”€β”€ 03-UNITY-CATALOG.md
β”‚   β”‚   β”œβ”€β”€ 04-NCC.md
β”‚   β”‚   β”œβ”€β”€ 05-CMK.md
β”‚   β”‚   └── 06-SEP.md
β”‚   └── patterns/              # Pattern-specific guides
β”‚       β”œβ”€β”€ 01-NON-PL.md
β”‚       └── 02-FULL-PRIVATE.md
β”‚
β”œβ”€β”€ deployments/               # Pre-built deployment patterns
β”‚   β”œβ”€β”€ non-pl/                # βœ… Non-Private Link (Ready)
β”‚   β”œβ”€β”€ full-private/          # βœ… Full Private (Ready)
β”‚   β”œβ”€β”€ byor/                  # βœ… Bring Your Own Resources (Ready)
β”‚   └── hub-spoke/             # 🚧 Hub-Spoke (Future)
β”‚
β”œβ”€β”€ modules/                   # Reusable Terraform modules
β”‚   β”œβ”€β”€ networking/            # VNet, subnets, NSG, NAT
β”‚   β”œβ”€β”€ workspace/             # Databricks workspace
β”‚   β”œβ”€β”€ unity-catalog/         # Metastore, storage, credentials
β”‚   β”œβ”€β”€ ncc/                   # Network Connectivity Config (serverless)
β”‚   β”œβ”€β”€ key-vault/             # Azure Key Vault integration
β”‚   β”œβ”€β”€ private-endpoints/     # Private Link endpoints
β”‚   β”œβ”€β”€ service-endpoint-policy/ # Service Endpoint Policies
β”‚   β”œβ”€β”€ security/              # Security modules (CMK, IP access lists)
β”‚   └── monitoring/            # Monitoring and observability
β”‚
└── archive/                   # Legacy content and templates
    └── LEGACY-CONTENT.md      # Historical reference

🎯 Deployment Patterns

πŸ‘‰ Quick Start Guide β†’ πŸš€ Serverless Setup β†’ ⚠️ Troubleshooting Guide β†’ - Review before deploying!

2. Full Private (Air-gapped) βœ… Production Ready

πŸ‘‰ Pattern Documentation β†’ πŸš€ Serverless Setup β†’ ⚠️ Troubleshooting Guide β†’ - Common issues & solutions!

3. BYOR (Bring Your Own Resources) βœ… Production Ready

πŸ‘‰ BYOR Documentation β†’

4. Hub-Spoke with Firewall 🚧 Future

✨ Key Features

πŸš€ Quick Start

# Navigate to deployment
cd deployments/non-pl

# Configure
cp terraform.tfvars.example terraform.tfvars
# Edit terraform.tfvars with your values

# Deploy
export TF_VAR_databricks_account_id="<your-account-id>"
terraform init
terraform plan
terraform apply

Full guide: See docs/01-QUICKSTART.md

πŸš€ Serverless Compute

All deployments include Network Connectivity Configuration (NCC) for serverless SQL Warehouses and Serverless Notebooks.

Serverless Connectivity Options:

Pattern Classic Clusters Serverless Compute
Non-PL Service Endpoints (VNet) Service Endpoints or Private Link (via NCC)
Full Private Private Endpoints (VNet) Private Link (via NCC)
BYOR Flexible (based on existing setup) Configurable via NCC

Post-Deployment Setup:

Key Points:

πŸ“š Documentation

All documentation is centralized in the docs/ folder:

Getting Started:

Guides:

Pattern Documentation:

Module Documentation:


πŸ“¦ Legacy Content

Historical content and diagrams have been archived. See archive/LEGACY-CONTENT.md for reference.

For new deployments, use the modular structure documented above.


Repository Version: 2.0