With SonarQube 8.7, we now support provide Docker images all SonarQube commercial editions.
On top of that, we have frequent requests to support running SonarQube on Kubernetes. It's especially the case in the US where companies have already adopted it as a common way to operate their IT. We are aware that some customers already operate SonarQube in a Kubernetes environment.
These requests do not specifically relate to the DCE but all commercial editions. Many users want to run SonarQube in Kubernetes, not for scalability reasons but for the sake of consistency, because this is the way they are operating their other systems.
We want SonarQube to adapt to the environment used by our users to operate their build chain. Kubernetes is becoming mainstream for our users, and we want to help them operate SonarQube in this environment.
We now want to help our users run SonarQube commercial editions on Kubernetes.
Our users did not wait for our official support to use SonarQube in Kubernetes-based environments and the community maintain helm charts we can get inspired of.
We expect to make it document that our users can run SonarQube in Kubernetes under certain conditions, without any official support for a specific distribution.
- As a commercial user of SonarQube, I want to be able to operate SonarQube on Kubernetes.
- I want to know that this is possible.
- I want to get recommendations on the way to do it and be aware of the limitations if any.
- I want to rely on a "package" provided by SonarSource.
- Kubernetes is documented as a way to deploy and run SonarQube
- Documentation provides recommendations to install, upgrade and operate SonarQube in a Kubernetes environment
- Known limitations are clearly documented
- SonarSource provides an Helm chart, if possible an official one in https://artifacthub.io/, as an easy way to find, deploy, configure and use SonarQube in Kubernetes environment.
In practice, our users are able to install the SonarQube Helm Chart through:
- a dedicated GitHub repository
- a Helm registry (will come later)
- We want to focus on operating SonarQube on Kubernetes for the commercial editions.
The support for free of the Community Edition is not expected and would be considered as a bonus.
- Ideally, we'd like also help our DataCenter Edition users. But this will probably require more investigation. Also, a special care should be taken to the DataCenter Edition to provide guidance on how to install, upgrade and operate a SonarQube cluster.
In a first step, we want at least to help users of Developer and Enterprise Editions.
To feel comfortable in running SonarQube in Kubernetes, we could:
- validate that the features delivered by our SonarQube editions are working properly in Kubernetes environment by dogfooding it on our own production instance
- take into account the experience from the community and the feedback from our Services team
Out of the scope for the LTS (=> it will be worked on later):
- Providing the support for a specific Kubernetes Cloud solution
Many Kubertenes services exist and the most popular ones among our users seem to be Azure Kubernetes Service (AKS) followed by Amazon Elastic Kubernetes Service (EKS). Still, at that stage, it seems too early to officially support one of them.
- Adding extra clustering capabilities
- Adding new monitoring tools