- the configuration of the SonarQube instance (security, plugins settings, etc.)
- the quality snapshots of projects, views, etc.
- One for users to browse quality snapshots and configure the SonarQube instance
- One or more to analyze projects
- The SonarQube platform cannot have more than a single web server and a single database.
- For optimal performance, each each component (Database, Web Server, ClientsAnalyzers) should be installed on a dedicated machine. However However, the the Server and the Database can be installed on the same machine.
- Clients Analyzers will scale by adding machines.
- The Database and the Clients must Analyzers must be located in the same network.
- The Database and the Clients must Analyzers must not be installed on the same machine.
- All the machines must be time synchronized.
- Running SonarQube as a Service on Windows or Linux
- Running SonarQube behind a Proxy
- Running SonarQube over HTTPS
Multiple analysis clients are analyzers are available:
- SonarQube Runner: recommended for all non-Maven projects
- Maven: recommended for all projects built with Maven
- SonarQube Ant Task: to integrate with projects built with Ant
- Gradle: to integrate with projects built with Gradle
- CI Engine: see Jenkins plugin or Hudson plugin or Bamboo plugin or AnthillPro plugin. Note that other CI engines can be used even if there is no SonarQube plugin available.