SonarQube 是一個用于代碼質量管理的開源平臺,用于管理源代碼的質量。 通過插件形式,可以支持包括 java, C#, C/C++, PL/SQL, Cobol, JavaScrip, Groovy 等等二十幾種編程語言的代碼質量管理與檢測。
成都創新互聯公司是專業的東臺網站建設公司,東臺接單;提供做網站、成都網站建設,網頁設計,網站設計,建網站,PHP網站建設等專業做網站服務;采用PHP框架,可快速的進行東臺網站開發網頁制作和功能擴展;專業做搜索引擎喜愛的網站,專業的做網站團隊,希望更多企業前來合作!
SonarQube平臺由4個組件組成:
一臺SonarQube Server啟動3個主要過程:
Web服務器,供開發人員,管理人員瀏覽高質量的快照并配置SonarQube實例
基于Elasticsearch的Search Server從UI進行后退搜索
Compute Engine服務器,負責處理代碼分析報告并將其保存在SonarQube數據庫中
一個SonarQube數據庫要存儲:
SonarQube實例的配置(安全性,插件設置等)
項目,視圖等的質量快照。
服務器上安裝了多個SonarQube插件,可能包括語言,SCM,集成,身份驗證和管理插件
在構建/持續集成服務器上運行一個或多個SonarScanner,以分析項目
以下架構顯示了SonarQube如何與其他ALM工具集成以及使用SonarQube的各種組件的位置。
開發人員在其IDE中進行編碼,并使用SonarLint運行本地分析。
開發人員將他們的代碼放入他們最喜歡的SCM中:git,SVN,TFVC等。
Continuous Integration Server會觸發自動生成,并執行運行SonarQube分析所需的SonarScanner。
分析報告將發送到SonarQube服務器進行處理。
SonarQube Server處理分析報告結果并將其存儲在SonarQube數據庫中,并在UI中顯示結果。
開發人員通過SonarQube UI審查,評論,挑戰他們的問題,以管理和減少技術債務。
經理從分析中接收報告。Ops使用API自動執行配置并從SonarQube提取數據。運維人員使用JMX監視SonarQube Server。
SonarQube平臺不能具有多個SonarQube服務器(盡管該服務器可以作為集群安裝)和一個SonarQube數據庫。
為了獲得最佳性能,應將每個組件(服務器,數據庫,掃描儀)安裝在單獨的計算機上,并且服務器計算機應專用。
SonarScanners通過添加機器進行擴展。
所有機器必須時間同步。
SonarQube服務器和SonarQube數據庫必須位于同一網絡中
SonarScanners不需要與SonarQube Server位于同一網絡上。
有沒有溝通之間SonarScanners和SonarQube數據庫。
前提環境需要k8s集群和helm
helm pull stable/sonarqube
tar xvf sonarqube-3.2.7.tgz
vim sonarqube/values.yam
設置用戶和密碼
helm install sonarqube ./sonarqube #報錯原因是我的集群是1.16版本了 Error: unable to build kubernetes objects from release manifest: unable to recognize "": no matches for kind "Deployment" in version "extensions/v1beta1"
grep -irl "extensions/v1beta1" sonarqube | grep deployment
grep -irl "extensions/v1beta1" sonarqube | grep deploy | xargs sed -i 's#extensions/v1beta1#apps/v1#g'
再次執行安裝
helm install sonarqube ./sonarqube Error: unable to build kubernetes objects from release manifest: error validating "": error validating data: ValidationError(Deployment.spec): missing required field "selector" in io.k8s.api.apps.v1.DeploymentSpec
grep -irl "apps/v1" sonarqube | grep deployment
依次修改以上文件。
vim sonarqube/templates/deployment.yaml
vim sonarqube/charts/postgresql/templates/deployment.yaml
vim sonarqube/charts/MySQL/templates/deployment.yaml
再次執行安裝
pod需要請求pv,這里使用hostpath
cat pv/pv1.yaml apiVersion: v1 kind: PersistentVolume metadata: name: sonarqube-pv1 spec: capacity: storage: 10Gi volumeMode: Filesystem accessModes: - ReadWriteOnce persistentVolumeReclaimPolicy: Retain hostPath: path: /helm/sonarqube/pv1
稍等會兒就能看到pod狀態
完美結束!
分享文章:Kubernetes安裝sonarqube的教程
路徑分享:http://m.newbst.com/article18/pgcidp.html
成都網站建設公司_創新互聯,為您提供網站維護、動態網站、標簽優化、網站收錄、移動網站建設、企業網站制作
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯