☸️ Как установить Sonarqube в Kubernetes

SonarQubeг нуждается в двух PersistentVolumeClaim, одно для SonarQube и одно для базы данных Postgres. PersistentVolume будет необходим для каждого. Поскольку все тестовый пример , для обоих вариантов создается PersistentVolume на основе hostPath.

mkdir -p /mnt/data/postgres && kubectl create -f pv-postgres.yaml

mkdir -p /mnt/data/sonarqube && kubectl create -f pv-sonarqube.yaml

pv-postgres.yaml:

kind: PersistentVolume apiVersion: v1 metadata: name: postgres-volume labels: type: local spec: storageClassName: manual capacity: storage: 10Gi accessModes: - ReadWriteOnce hostPath: path: "/mnt/data/postgres"

pv-sonarqube.yaml:

apiVersion: v1 metadata: name: sonarqube-volume labels: type: local spec: storageClassName: manual capacity: storage: 10Gi accessModes: - ReadWriteOnce hostPath: path: "/mnt/data/sonarqube

Установка

Мы будем использовать Helm.

Если у вас он еще не установлен, используйте наши руководства:

  • ☸️ Установка и использование Helm 3 в кластере Kubernetes
  • ☸️ Установка и использование Helm 2 в кластере Kubernetes
  • ☸️ Как установить приложения на Kubernetes с помощью Helm

Используя Helm, установите чарт SonarQube Helm с несколькими пользовательскими значениями.

helm install stable/sonarqube --name sonar --namespace sonarqube --values sonarqube-values.yaml

Я выбрал следующие:

image: tag: 7.9.1-community service: type: NodePort # Chart does not allow setting of actual nodePort number, so a # patch after installation is applied. # (https://github.com/helm/charts/blob/master/stable/sonarqube/templates/service.yaml) persistence: storageClass: manual enabled: false size: 10Gi accessMode: ReadWriteOnce postgresql: persistence: size: 10Gi storageClass: manual sonarProperties: sonar.forceAuthentication: false # https://docs.sonarqube.org/display/PLUG/Plugin+Version+Matrix plugins: install: - 'https://binaries.sonarsource.com/Distribution/sonar-java-plugin/sonar-java-plugin-5.13.0.18197.jar' - 'https://github.com/SonarQubeCommunity/sonar-pmd/releases/download/3.2.1/sonar-pmd-plugin-3.2.1.jar' - 'https://github.com/spotbugs/sonar-findbugs/releases/download/3.11.0/sonar-findbugs-plugin-3.11.0.j ar' - 'https://github.com/checkstyle/sonar-checkstyle/releases/download/4.20/checkstyle-sonar-plugin-4.20.jar' 
Этот чарт загружает экземпляр SonarQube вместе с базой данных PostgreSQL. SonarQube также загружает несколько плагинов, определенных в конфигурации чарта Helm. Чтобы получить полный статус доступности новой развертки, выполните эту проверку. kubectl patch service sonar-sonarqube -n sonarqube --type='json' --patch='[{"op": "replace", "path": "/spec/ports/0/nodePort", "value":31111}]'

Теперь вы можете войти на веб морду.

Вы можете войти как admin/admin и просмотреть предустановленные плагины.



См. также:

  • 🖴 Резервное копирование и восстановление контейнерных баз данных PostgreSQL | Kubernetes | SonarQube
  • 🦟 Как изменить статус проекта в SonarQube
  • 🦟 11 интересных инструментов для аудита и управления качеством кода

Отправка комментария

0 Комментарии