Chapter 02Lesson 01~105 minutes

SonarQube Product Model, Editions, Components, and Architecture: Core Concepts and Mental Model

Learn which Sonar component owns analysis, asynchronous processing, persistence, search, governance, IDE feedback, and external delivery signals—and why product/edition identity is part of every reproducible result.

ArchitectureEditionsCompute EngineDatabase/SearchIDE

Learning objectives

  • Trace source revision → scanner → report upload → Compute Engine → database/search-backed project result → UI/API/CI signal.
  • Separate Community Build, commercial Server editions, SonarQube Cloud, and SonarQube for IDE.
  • Distinguish scanner success, report upload, server task success, gate outcome, CI status, and PR decoration.
  • Explain Web Server, Compute Engine, relational database, and search responsibilities.
  • Collect a read-only architecture inventory before changing state.

1. Current product snapshot

Chapter 01 established a governance chain around revision, rules, findings, New Code, and quality gates. Chapter 02 adds the systems model that tells you where each fact is produced and who owns it. On 2026-09-07 the free self-managed baseline is Community Build 26.9.0.129388. Commercial SonarQube Server is offered as Developer, Enterprise, and Data Center editions on 2026 Release 4.1; 2026.1.5 is the active LTA patch line. These are dated assumptions, not permanent constants.

Edition boundary: do not infer that a feature shown in a Server screenshot exists in Community Build, and do not treat SonarQube Cloud as a Server edition that can be enabled with a property or license key.

2. Mental model: analysis is a chain of ownership

Source to governed result
flowchart TD
A[Workspace / build / revision] --> B[Scanner]
B --> C[Index + analyzers + report]
C --> D[Report upload]
D --> E[Web/API acceptance]
E --> F[Compute Engine task]
F --> G[(Relational database)]
F --> H[(Search state)]
G --> I[Issues / measures / gate]
H --> I
I --> J[UI / Web API]
I --> K[CI / PR decoration]
L[SonarQube for IDE] -. developer feedback .-> A
L -. not the CI server task .-> I

The scanner executes in the developer/CI runtime and produces an analysis report. Upload acceptance is not final analysis. Server-side processing is asynchronous: the Compute Engine consumes a background task and creates durable project results. The database and search subsystem support persistent/queryable application state. The UI, Web API, and DevOps integrations consume that result. SonarQube for IDE is a separate developer-time feedback surface, which may synchronize configuration through connected mode but does not become the authoritative CI task simply because its findings look similar.

3. State stores you must not blur together

State Owner Examples Key question
Source/revision SCM + workspace Git SHA, generated files Was the intended revision analyzed?
Scanner/runtime Scanner/build process scanner version, JRE, cache, working directory Did client-side analysis/report creation succeed?
Parameters Scanner/config sources project key, sources, exclusions, report paths Which effective value won?
Server task Web/Compute Engine task ID, queue, CE status/log Was the submitted report processed?
Persistent result Database/search-backed app issues, measures, history, gate What analysis now exists durably?
Policy Project/server profile, New Code, gate Which policy evaluated the result?
Provider/CI External system job/check/decoration Did the external integration consume the result?
IDE Developer workstation local findings, connected settings What feedback exists before CI?

4. Product boundaries

Community Build is the free/open-source self-managed path and the mandatory lab baseline. SonarQube Server is self-managed commercial software with Developer, Enterprise, and Data Center editions. SonarQube Cloud is a hosted product whose service infrastructure is operated by Sonar; it is not a package you install beside Server. SonarQube for IDE runs in the developer environment and provides fast local feedback.

Product/edition Who runs platform infrastructure? Primary role This chapter
Community Build You Free self-managed analysis Executable baseline
Server Developer You Commercial team/developer capabilities Edition-aware comparison
Server Enterprise You Enterprise governance/reporting/integration Optional/simulated
Server Data Center You, clustered HA/scalability/redundancy Topology model only
SonarQube Cloud Sonar Hosted code-quality service Distinct product boundary
SonarQube for IDE Developer workstation Local feedback Separate from CI/server authority

5. Web, Compute Engine, database, and search

The Web side serves UI/API traffic and accepts scanner reports. The Compute Engine processes queued analysis reports asynchronously. A relational database stores supported durable SonarQube application data. SonarQube also operates search state for fast query/navigation behavior. These responsibilities remain distinct even when a single-node deployment places them on one machine. Data Center Edition changes availability/scaling topology by introducing redundant application/search capacity; it does not change the meaning of a quality gate.

Do not treat the database or search index as application APIs. Supported administration happens through SonarQube configuration, UI/API, backups, and documented recovery procedures—not direct row/index edits.

6. Read-only architecture inventory

Before analysis, record: product and exact version; release or LTA stream; deployment package/image; scanner family/version/runtime; project key; endpoint; database choice as reported by supported system information; plugin inventory; configured DevOps integrations; and whether SonarQube for IDE is connected. Use fake/local values and authorized read-only views.

Architecture card
product=Community Build; version=26.9.0.129388; endpoint=http://127.0.0.1:9000; project=sq-arch-lab; revision=<sha>; scanner=<recorded>; runtime=<recorded>; task=<ceTaskId>; gate=<status>; integrations=none

7. Common architecture mistakes

  • Scanner = server: false; the scanner is a client-side analysis/report process.
  • Upload = completed analysis: false; wait for the server-side background task.
  • IDE = release gate: false; IDE feedback is not the authoritative CI/server analysis record.
  • Cloud = hosted Server binary: too simplistic; Cloud is a separate managed product with different operational ownership.
  • Search = editable external database: unsafe and unsupported as an application-level repair pattern.

8. Why this matters in DevOps

A release control is trustworthy only when the exact revision, effective scanner inputs, report/task identity, server result, policy context, and external delivery signal can be independently correlated. Architecture knowledge tells you where evidence lives and where a correction belongs.

Knowledge check

A scanner exits successfully after upload. Can you conclude the quality gate passed?

Which subsystem owns asynchronous server-side report processing?

Is SonarQube Cloud a commercial Server edition?

Why is IDE feedback not automatically the release record?

Should you repair search issues by editing the search index directly?

Next lesson

Trace one real analysis end to end

Lesson 2 turns the component model into a local Community Build evidence chain.

Official references and version notes

Version and edition note

Rechecked 2026-09-07. The mandatory lab path uses Community Build 26.9.0.129388. SonarQube Server Developer, Enterprise, and Data Center editions are on 2026 Release 4.1, while 2026.1.5 is the active LTA patch line. Scanner/JRE provisioning, language support, APIs, plugins, and edition capabilities evolve independently; re-check current primary documentation before applying this snapshot.

Version and compatibility note

SonarQube product names, editions, release trains, scanner runtimes, APIs, authentication options, and platform prerequisites can change independently. Re-check the linked SonarSource primary documentation for the exact target release before applying version-sensitive commands or operational guidance outside the disposable course environment.

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.

Ethereum / ERC-20
0x716c4Ab160C4B66F31a28AE2448BfF68fc3a2ef0Send only Ethereum/ERC-20 compatible assets to this address.