Running Langfuse self-hosted on Azure Container Apps with ClickHouse Cloud: viable in Production? Anything to be aware of? #15511
Describe your questionWe're planning a self-hosted deployment and would appreciate a sanity check on the architecture before we build. Context: We run a multi-customer SaaS on Azure with an AU data-residency requirement, so we're self-hosting. We are a small team, and we'd prefer not to run an AKS cluster for this, as everything else we operate is on Azure Container Apps. Planned architecture:
We're asking because the self-hosting docs recommend Kubernetes (Helm) for production and don't list anything like Container Apps, so we want to understand whether that's a hard dependency or simply the documented path. Questions:
Thanks in advance for your help, Langfuse Cloud or Self-Hosted?Self-Hosted If Self-HostedIf Langfuse CloudSDK and integration versionsNo response Pre-Submission Checklist
|
Replies: 2 comments 1 reply
|
Your proposed architecture is reasonable for production. Kubernetes is the documented path, but it's not a hard requirement—Langfuse runs as standard containers (web and worker) that connect to external dependencies, so any container orchestrator capable of running Docker containers with the correct environment variables should work. (1) Your planned stack looks solid:
Key configuration for Azure Blob Storage: s3:
deploy: false
storageProvider: "azure"
bucket: "langfuse" # Container name
accessKeyId:
value: "yourstorageaccount" # Azure Storage Account name
secretAccessKey:
value: "your-storage-account-key" # Azure Storage Account key
endpoint: "https://yourstorageaccount.blob.core.windows.net"Key configuration for ClickHouse Cloud: Things to be aware of:
The main reason Kubernetes is documented is that it's the most common production orchestrator and the Helm chart bundles all dependencies conveniently. Since you're using all external managed services (PostgreSQL, Redis, ClickHouse Cloud, Blob Storage), you're essentially just running the stateless Langfuse containers—Container Apps should handle that fine. 📚 Sources: Have another question? Just tag @inkeep. |
|
Container Apps is a sane target for this, the Helm docs describe the tested path rather than a runtime requirement, and the earlier reply covers that part. The two things I would pin down before building are both at the edges of your diagram. The langfuse-worker is a queue consumer with no inbound HTTP, and ACA defaults to scale to zero, so give it minReplicas 1 or ingestion stalls silently while the web containers look perfectly healthy. And your AU residency requirement travels with the traces, not just the app, so confirm ClickHouse Cloud can pin an Australian region reachable from your ACA environment before you commit, otherwise the observability layer ships customer prompts offshore while everything else stays compliant. Which region were you planning to run ClickHouse Cloud in? |
Container Apps is a sane target for this, the Helm docs describe the tested path rather than a runtime requirement, and the earlier reply covers that part. The two things I would pin down before building are both at the edges of your diagram. The langfuse-worker is a queue consumer with no inbound HTTP, and ACA defaults to scale to zero, so give it minReplicas 1 or ingestion stalls silently while the web containers look perfectly healthy. And your AU residency requirement travels with the traces, not just the app, so confirm ClickHouse Cloud can pin an Australian region reachable from your ACA environment before you commit, otherwise the observability layer ships customer prompts offshore…