Azure Blob Storage
Use Azure Blob Storage as storage backend for Parseable
Configure Azure Blob Storage as the storage backend for Parseable.
Overview
Using Azure Blob Storage with Parseable provides:
- Scalable Storage - Virtually unlimited capacity
- Cost Effective - Multiple storage tiers
- Durability - Geo-redundant storage options
- Azure Integration - Native Azure ecosystem support
Prerequisites
- Azure subscription
- Storage account created
- Container for Parseable data
- Access credentials or managed identity
Parseable Configuration
Environment Variables
# Azure Blob Storage Configuration
P_BLOB_URL=https://youraccount.blob.core.windows.net
P_BLOB_CONTAINER=parseable-data
P_BLOB_ACCOUNT=yourstorageaccount
P_BLOB_ACCESS_KEY=your-access-key
# Or use connection string
P_BLOB_CONNECTION_STRING=DefaultEndpointsProtocol=https;AccountName=...Docker Compose
version: '3.8'
services:
parseable:
image: parseable/parseable:latest
ports:
- "8000:8000"
environment:
- P_BLOB_URL=https://youraccount.blob.core.windows.net
- P_BLOB_CONTAINER=parseable-data
- P_BLOB_ACCOUNT=${AZURE_STORAGE_ACCOUNT}
- P_BLOB_ACCESS_KEY=${AZURE_STORAGE_KEY}
- P_USERNAME=admin
- P_PASSWORD=admin
command: ["parseable", "blob-store"]Kubernetes with Managed Identity
apiVersion: v1
kind: ServiceAccount
metadata:
name: parseable
annotations:
azure.workload.identity/client-id: your-client-id
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: parseable
spec:
template:
metadata:
labels:
azure.workload.identity/use: "true"
spec:
serviceAccountName: parseable
containers:
- name: parseable
image: parseable/parseable:latest
env:
- name: P_BLOB_URL
value: "https://youraccount.blob.core.windows.net"
- name: P_BLOB_CONTAINER
value: "parseable-data"
args: ["parseable", "blob-store"]Storage Account Setup
Create Storage Account
# Create resource group
az group create --name parseable-rg --location eastus
# Create storage account
az storage account create \
--name parseablestorage \
--resource-group parseable-rg \
--location eastus \
--sku Standard_LRS \
--kind StorageV2
# Create container
az storage container create \
--name parseable-data \
--account-name parseablestorageAccess Control
Grant access using RBAC:
# Assign Storage Blob Data Contributor role
az role assignment create \
--role "Storage Blob Data Contributor" \
--assignee your-principal-id \
--scope /subscriptions/.../resourceGroups/parseable-rg/providers/Microsoft.Storage/storageAccounts/parseablestorageStorage Tiers
Configure lifecycle management for cost optimization:
{
"rules": [
{
"name": "MoveToCool",
"type": "Lifecycle",
"definition": {
"filters": {
"blobTypes": ["blockBlob"],
"prefixMatch": ["parseable-data/"]
},
"actions": {
"baseBlob": {
"tierToCool": { "daysAfterModificationGreaterThan": 30 },
"tierToArchive": { "daysAfterModificationGreaterThan": 90 }
}
}
}
}
]
}Configuration Options
| Parameter | Description |
|---|---|
P_BLOB_URL | Blob storage endpoint URL |
P_BLOB_CONTAINER | Container name |
P_BLOB_ACCOUNT | Storage account name |
P_BLOB_ACCESS_KEY | Storage account access key |
P_BLOB_CONNECTION_STRING | Full connection string |
Best Practices
- Use Managed Identity - Avoid storing credentials
- Enable Soft Delete - Protect against accidental deletion
- Configure Lifecycle - Optimize storage costs
- Use Private Endpoints - Secure network access
- Enable Versioning - Track changes
Troubleshooting
Access Denied
- Verify credentials are correct
- Check RBAC permissions
- Verify container exists
- Check network rules
Performance Issues
- Use Premium storage for high throughput
- Enable hierarchical namespace
- Check network latency
Next Steps
- Configure Azure Event Hubs for streaming
- Set up alerts for storage metrics
- Create dashboards for monitoring
Was this page helpful?