Panel | ||||
---|---|---|---|---|
| ||||
Table of Contents
|
설치 전 준비
SonarQube를 사용하기 위해서는 시스템에 JVM (Oracle JRE 8 이상 혹은 OpenJDK 8 이상)만 설치되어 있으면 충분합니다.
Mac OS X의 경우 Oracle JRE 대신 Oracle JDK 8(혹은 상위 버전)의 사용을 권장합니다. JRE는 Java 환경을 완벽하게 지원하지 않을 수 있습니다. 관련된 세부 내용은 포스트를 참조합니다.
하드웨어 요구사항
- SonarQube 서버를 효율적으로 운영하기 위해서는 최소 2GB의 RAM 및 운영 체제 실행을 위한 1GB의 여유 RAM 공간이 필요합니다.
- SonarQube 서버가 사용하는 저장 공간은 분석하는 코드 크기에 따라 다릅니다. 예를 들어, SonarQube에서 제공하는 퍼블릭 인스턴스인 인스턴스인 SonarCloud SonarQube.com에는 약 4년간 동안 분석한 3000 3,000만 라인의 코드가 저장되어 있습니다. SonarQube.com은 SonarCloud는 현재 Amazon EC2 m4.large 인스턴스에서 구동되며, 약 10GB의 저장 공간을 사용합니다. 이 인스턴스에는 800개 이상의 프로젝트 분석 결과와 약 300만 개의 미해결 이슈들이 저장되어 있습니다. 데이터베이스는 PostgresSQL 9.5를 사용하고 있으며 데이터 베이스 용량은 약 15GB입니다.
- SonarQube 서버는 읽기 및 쓰기 성능이 뛰어난 하드 드라이브에 설치되어야 합니다. 엘라스틱서치(Elasticsearch) 인덱스가 사용하는 "data" 폴더는 서버가 동작하는 동안 대량의 I/O를 처리해야 하기 때문에 이와 같은 기계적 성능이 매우 중요합니다. 하드 드라이브의 읽기 및 쓰기 성능은 SonarQube 서버의 전체적인 성능에 매우 큰 영향을 미칩니다.
지원하는 플랫폼
Java | ||||||||
---|---|---|---|---|---|---|---|---|
SonarQube Java analyzer는 Java 버전에 관계없이 모든 Java 소스 파일을 분석합니다. 다만 SonarQube analysis 및 SonarQube Server를 운영하기 위해서는 다음과 같은 특정 버전의 JVM을 사용해야 합니다. | ||||||||
Oracle JRE | 7 8 9 | |||||||
OpenJDK | 7 8 9 | |||||||
IBM JRE | ||||||||
GCJ | ||||||||
Oracle JRockit | ||||||||
Database | ||||||||
Microsoft SQL Server | 2012 (MSSQL Server | 1011.0) | 2014 (MSSQL Server | 1112.0) Microsoft JDBC 드라이버 번들. Express Edition 지원. | 2014 2016 (MSSQL Server | 1213.0) Microsoft JDBC 드라이버 번들. Express Edition 지원. Collation은 대소문자 구분(Case-Sensitive, CS), 악센트 구분(Accent-Sensitive, AS) (예: Latin1_General_CS_AS) Windows authentication (“Integrated Security”) 및 SQL Server authentication 동시 지원. 인증 설정 과 관련 세부 내용은 SonarQube 서버 설치하기페이지의 Microsoft SQL Server 섹션 참조. | ||
MySQL | 5.6 5.7 UTF8 문자셋만 지원, collation은 대소문자 구분(CS) InnoDB 스토리지 엔진만 지원, MyISAM 스토리지 엔진 미지원 내장된 mysql-connector-java jar만 지원 | |||||||
Oracle | 10G 11G, Oracle 11.2.x | 드라이버만11 | 드라이버만 지원 (Oracle 12.x 드라이버 미지원. 상세 내용은 https://groups.google.com/forum/#!msg/sonarqube/Ahqt1iarqJg/u0BVRJZnBQAJ](https://groups.google.com/forum/#!msg/sonarqube/Ahqt1iarqJg/u0BVRJZnBQAJ 참조) | 드라이버만 지원 XE Editions 지원 UTF8 문자셋(NLS_CHARACTERSET 참조) 및 BINARY sort만 지원 ojdbc14.jar 드라이버 미지원 Thin 모드만 지원, OCI 모드 미지원 | ||||
PostgreSQL | 8.x 9.x UTF8 문자셋만 지원 | |||||||
Web Browser | ||||||||
SonarQube가 제공하는 기능을 충분히 활용하기 위해서는 브라우저의 JavaScript를 활성화해야 합니다. | ||||||||
Microsoft Internet Explorer | IE 9 IE 10 IE 11 | |||||||
Microsoft Edge | 최신 버전 | |||||||
Mozilla Firefox | 최신 버전 | |||||||
Google Chrome | 최신 버전 | |||||||
Opera | (warning)확인되지 않음 | |||||||
Safari | (tick)최신 버전 |
플랫폼 별 노트
Linux
Linux에 SonarQube 서버를 설치하는 경우, 아래 조건을 충족하는지 확인하십시오:
vm.max_map_count
값은262144
이상이어야 합니다.fs.file-max
값은65536
이상이어야 합니다.- SonarQube를 실행하는 계정은 65536개 이상의 파일 디스크립터를 오픈할 수 있어야 합니다
다음 커맨드 라인 명령어로 위의 값들을 확인할 수 있습니다:
Code Block |
---|
sysctl vm.max_map_count
sysctl fs.file-max
ulimit -n |
root
계정으로 다음 명령어를 실행해, 현재 세션에서의 설정값을 변경할 수 있습니다:
Code Block |
---|
sysctl -w vm.max_map_count=262144
sysctl -w fs.file-max=65536
ulimit -n 65536 |
위 설정값들을 영구적으로 변경하고자 하는 경우에는 /etc/sysctl.d/99-sonarqube.conf
(혹은 /etc/sysctl.conf
)도 함께 업데이트 해야 합니다.
SonarQube(이 예제의 경우 sonarqube)를 실행하는 계정이 65536개 이상의 파일 디스크립터 오픈 권한이 없는 경우, 다음 명령어를 /etc/sysctl.d/99-sonarqube.conf
(혹은 /etc/sysctl.conf
)에 추가해야 합니다:
Code Block |
---|
sonarqube - nofile 65536 |
더 자세한 내용은 Elasticsearch documentation(영문)를 확인하십시오.