Data Center Edition, Clustering, High Availability, and Scale: Configuration, Design Patterns, and Trade-Offs
Choose between single-node Server and Data Center Edition, application versus search scaling, VM versus Kubernetes deployment, and availability versus disaster recovery using explicit evidence and capacity limits.
Learning objectives
- Decide when single-node Server is sufficient and when DCE’s licensed failure isolation is justified.
- Choose application-node versus search-node scaling from measured bottlenecks.
- Design load-balancer health checks without inventing sticky-session requirements.
- Compare VM/physical/Docker and Kubernetes DCE deployment models without confusing orchestration with clustering semantics.
- Separate availability from disaster recovery and upgrade/migration constraints.
- Use a worked decision table that records edition, topology, evidence, rollback, and capacity assumptions.
1. Single-node Server versus Data Center Edition
Data Center Edition is not the “large server” switch. It is a licensed distributed architecture intended for resilience and scale. A well-sized Enterprise single-node installation can still be operationally simpler and may be the right answer when node-level HA is not required. DCE becomes compelling when the service objective explicitly requires application/search node fault tolerance or when measured compute scale justifies horizontal application-node capacity.
| Need | Single-node Server | Data Center Edition |
|---|---|---|
| Simple operational model | Strong advantage | More moving parts and network invariants |
| Survive one application-node loss | No | Yes, with minimum/default topology healthy |
| Survive one search-node loss | No independent search tier | Yes, with three-node search cluster and remaining health |
| Horizontal CE/Web compute | Vertical scaling | Add application nodes, up to current documented limit |
| Operational cost | Lower | Higher: LB, 5+ nodes, DB HA, monitoring, networking, licensing |
2. Application scaling versus search scaling
Current DCE scaling documentation explicitly supports adding application nodes—up to ten total—to increase computing capabilities. That does not mean ten app nodes are always useful. Horizontal application growth helps when Web or Compute Engine is the proven bottleneck and the database/search tiers can sustain the added concurrency.
Search scaling is constrained by Elasticsearch cluster design,
storage latency, heap/GC, index size, and quorum/availability
semantics. Search nodes are generally sized with more CPU/RAM than
application nodes, and Sonar recommends SSDs. Do not add search
nodes merely because scanner throughput increased; first observe
es.log, search health, disk, JVM metrics, and
indexing/query latency.
3. Load-balancer design: health and forwarded traffic, not session tricks
The load balancer must distribute HTTP requests across application nodes, terminate HTTPS correctly if that is its role, and remove unhealthy backends from routing. Current SonarSource DCE requirements explicitly state that sticky sessions are not required because the built-in JWT mechanism handles session behavior.
Required LB contract
- backends: every healthy application node only
- health: application status endpoint that identifies routable nodes
- HTTPS: preserve correct reverse-proxy headers/base URL semantics
- capacity: backend connection/request limits sized from evidence
- no public route to 9001/9002/9003 cluster ports
- no assumption that LB health proves CE/search/database health
4. Physical/VM/Docker versus Kubernetes DCE
Traditional nodes
Explicit hosts, cluster properties, private networks, and external load balancer. Easier to see every role directly; more host-level operations.
Docker
Separate DCE application/search images and containers. Sonar recommends different Docker hosts for production roles; a single Docker host is a test pattern, not HA.
Kubernetes / Helm
Official DCE chart separates applicationNodes and
searchNodes. Scheduling/topology spread can
distribute pods, but the same DCE role, database, license,
version, and search semantics remain.
Orchestration does not eliminate the shared database requirement or transform a single failure domain into true HA. If every pod, database, ingress, and persistent dependency sits on one physical host or one failure zone, the YAML may look distributed while the service is not resilient.
5. Current Kubernetes considerations
The current DCE Helm chart exposes separate image tags for
applicationNodes and searchNodes, with
topology-spread examples for availability zones. Current chart
guidance also emphasizes memory requests/limits that reflect JVM
heap requirements. Treat these as starting points; Chapter 31 will
turn workload evidence into sizing decisions.
# Illustrative fragment — not a full install manifest.
applicationNodes:
replicaCount: 2
image:
tag: 2026.4.1-datacenter-app
searchNodes:
replicaCount: 3
image:
tag: 2026.4.1-datacenter-search
# external database and real secret references omitted intentionally
Pin chart/image versions and verify the exact current chart schema before use. Do not copy this fragment into production as a complete values file.
6. Availability versus disaster recovery
DCE reduces outage from certain node failures. It does not solve database corruption, destructive configuration changes, lost credentials, region loss, or a bad schema migration. Those are DR/backup/change-management problems. A production design therefore needs both:
- HA objective: what node/AZ failures must the live cluster absorb?
- DR objective: what RPO/RTO applies when the durable database or whole cluster must be restored?
- Rollback boundary: what can be reversed in place and what requires database restore?
7. DCE upgrades are coordinated cluster changes
Do not infer that a distributed deployment supports unconstrained
rolling upgrades. Current guidance requires coordinated upgrade
behavior, including database migration through
/setup when required. For Helm DCE upgrades, search
pods become ready first and only one application replica is brought
up while the database migration is pending. Plugin
installation/update also requires cluster downtime across
application nodes. Chapter 29’s supported-path and backup discipline
remains the governing model.
8. Worked decision table
| Scenario | Choice | Prerequisite | Observable evidence |
|---|---|---|---|
| 50-person team, low CE queue, four-hour maintenance window acceptable | Stay single-node unless HA SLO says otherwise | Correct sizing + tested DR | Low resource/queue pressure; SLO does not require node failover |
| CE queue saturates during global workday; DB/search healthy | DCE + scale application nodes | DCE license and default topology | CE queue/CPU prove app-tier bottleneck |
| Search heap/disk latency high; CE CPU moderate | Repair/resize search tier first | Search health/storage evidence | es.log, heap/GC, disk latency |
| Region-loss RTO required | Add DR architecture; DCE alone is insufficient | Backups, externalized config/secrets, restore rehearsal | Recovery test IDs and measured RTO/RPO |
| Kubernetes chosen for operations standardization | Official DCE Helm deployment | DCE license, supported K8s/chart, external DB | Role replicas, topology spread, readiness, DB/search health |
Knowledge check
When should you add application nodes?
When Web/Compute Engine capacity is proven to be the limiting layer and downstream database/search can support the concurrency.
Does Kubernetes make an undersized search tier disappear?
No. Orchestration changes deployment mechanics, not workload physics or DCE role semantics.
Why can sticky sessions be omitted?
Current DCE uses a shared JWT mechanism; the load balancer should focus on health and request distribution.
Can a DCE cluster replace backup/restore drills?
No. HA and DR protect different failure domains.
Can you upgrade application nodes one at a time while leaving mixed versions running indefinitely?
No. Treat DCE upgrades as coordinated, supported cluster/database migrations with exact version consistency.
Official references and version notes
- DCE topology — current role model and minimum/default 2 application + 3 search topology.
- DCE installation requirements — node identity, search-node placement, hardware guidance, Docker/network/load-balancer requirements.
- DCE-specific system properties — current cluster roles, host lists and default application-cluster port.
- DCE network rules — default 9000/9001/9002/9003 trust paths.
- DCE scaling — application-node scaling, currently up to ten application nodes.
- Installing the database — current supported database engines/versions including PostgreSQL 14–18.
- Official SonarQube DCE Helm chart — current DCE chart/image structure and application/search node configuration.
- Performing an update — coordinated DCE Helm/database migration behavior and post-update reanalysis.
Baseline: Community Build 26.9.0.129388; SonarScanner CLI 8.1.0.6389. Evidence continuity preserves ceTaskId as the Compute Engine task identity. Rechecked 2026-09-08. Mandatory executable examples remain Community Build 26.9.0.129388 with SonarScanner CLI 8.1.0.6389. DCE examples model the current SonarQube Server 2026 Release 4.1 / 2026.4.1 commercial architecture and require a valid Data Center Edition license for real execution. Current minimum/default DCE topology is two application plus three search nodes; one application and one search node may be lost without user impact when remaining dependencies are healthy. Application nodes can currently scale up to ten. Default private network paths are LB→app 9000, app→search 9001, search→search 9002 and app→app/Hazelcast 9003. Current supported PostgreSQL versions are 14–18. Recheck the exact target release, DCE license, Java/database matrix, Helm/chart version, plugin matrix, Kubernetes/OpenShift matrix, network properties, and update notes immediately before any real deployment.
Keep the academy open
Support free, practical DevOps education.
Every lesson is designed to remain readable in a browser, downloadable from GitHub, and usable without a paid learning platform. Contributions help expand and maintain the curriculum.
0x716c4Ab160C4B66F31a28AE2448BfF68fc3a2ef0Send only Ethereum/ERC-20 compatible assets to this
address.