CTIP 환경 구축 - 8. SonarQube 설치

홍예주·2021년 4월 26일
0

소프트웨어 V&V - CTIP

목록 보기
10/12

개요. 호환 문제 발생

원래 7.2.1 버전으로 설치했는데 pmd, checkstyle, findbugs와 버전이 호환이 안되는 것을 확인했다.
또한 sonarqube를 설치하면서 같이 설치한 mysql과 remine 설치하면서 같이 설치한 mysql이 충돌을 일으켰다.

따라서

  • sonarqube 7.2.1 -> soarqube 8.3.1
  • mysql -> postresql

로 다시 설치해보았다.

1. MySQL 삭제

(참고 : https://newly0513.tistory.com/162)

  1. mysql 설치 확인

yum list installed | grep mysql

  1. mysql package 삭제

yum remove -y mysql-community-*

  1. mysql 폴더 삭제

rm -rf /var/lib/mysql

  1. RPM 설치 확인

rpm -qa | grep mysql

  1. RPM 설치 삭제

rpm -e mysql50-community-release

rmp -e mysql까지 작성한 후 탭을 누르면 자동완성 된다.

2. JDK 설치 & 버전 변경

(참고 : https://joobly.tistory.com/4
https://carfediem-is.tistory.com/6)

  1. 업데이트 & 필요한 패키지 설치

sudo yum update -y
sudo yum install wget unzip -y

  1. Java 11 설치 (EC2 버전)

sudo amazon-linux-extras install java-openjdk11
sudo yum install java-11-openjdk-devel -y

  1. 버전 변경 변경

    • 버전 확인

      java -version

    • java 링크 걸린 거 확인

      ls -l /usr/bin/java

    • 기존 링크 끊기

      unlink /usr/bin/java

    • 새로 설치한 java 위치로 재연결

      ln -s /usr/lib/jvm/java-11-openjdk-11.0.9.11-0.amzn2.0.1.x86_64/bin/java /usr/bin/java

    • 다시 버전 확인

      java -version

3. postresql 설치 - sonarqube용 데이터베이스 설정

(참고 : https://joobly.tistory.com/4)

  1. PostgreSQL 10 설치 및 초기화

amazon-linux-extras install postgresql10 vim epel -y
yum install -y postgresql-server postgresql-devel
/usr/bin/postgresql-setup --initdb
systemctl enable postgresql
systemctl start postgresql

이전에 설치한 적이 있다면

/usr/bin/postgresql-setup --initdb

에서 폴더가 비지 않아 실행할 수 없다는 오류가 발생한다.
오류에서 명시해준 폴더를 비워주면 해결된다.

  1. SonarQube의 Database와 사용자 생성

su - postgres
psql
create user sonar with password 'sonar';
create database sonar owner sonar;
\q
exit

  1. postgresql 설정 파일 수정

sudo vi /var/lib/pgsql/10/data/pg_hba.conf

#TYPE DATABASE USER ADDRESS METHOD
# "local" is for Unix domain socket connections only
local all all trust
# IPv4 local connections:
host all all 127.0.0.1/32 md5
# IPv6 local connections:
host all all ::1/128 md5

  1. postgresql 시작

sudo systemctl start postgresql
sudo systemctl enable postgresql

4. sonarqube 설치

  1. zip파일 설치

sudo wget https://binaries.sonarsource.com/Distribution/sonarqube/sonarqube-8.3.1.34397.zip

  1. unzip 후 opt 폴더로 이동

sudo unzip sonarqube-8.3.1.34397.zip
sudo mv sonarqube-8.3.1.34397 /opt
sudo mv sonarqube-8.3.1.34397 sonarqube

이름을 sonarqube로 바꿔준다

  1. sonar.properties에 Database 연결 정보를 입력한다.

sudo vi /opt/sonarqube/conf/sonar.properties

주석을 풀고 수정한다.

sonar.jdbc.username=sonar
sonar.jdbc.password=sonar
sonar.jdbc.url=jdbc:postgresql://localhost/sonar

이부분은 주석을 풀어준다.

sonar.web.javaOpts=-Xmx512m -Xms128m -XX:+HeapDumpOnOutOfMemoryError
sonar.web.host=0.0.0.0
sonar.web.port=9000

  1. sonarqube를 실행할 수 있는 사용자 생성하고, 권한 부여
    sudo useradd sonar
    sudo chown -R sonar:sonar /opt/sonarqube
profile
기록용.

0개의 댓글