새소식

반응형
Development

[DevOps] SonarQube란(코드 정적 분석 도구)

  • -
반응형

sonarqube는 프로그램 코드 정적 분석 도구이다

 

프로그램 코드 정적 분석 도구란

  • 프로그램을 실행하지 않은 상태에서 소스 코드나 컴파일된 코드를 이용해 프로그램을 분석하는 방법
  • 메모리 누수 또는 버퍼 오버플로우 일반적으로 알려진 오류 취약점 파악 표준 코딩 적용에 관한 내용 분석
  • 변경된 코드에 관한 피드백 

sonarqube 특징

  • github, jenkins와 같은 플랫폼과 연동하여 코드 관련 액션을 수행할 때
    지속적인 코드 정적 분석을 위한 환경 제공
  • 코드 정적 분석 내용 중앙화 관리 및 visuality 제공
  • 사용자가 원하는 품질 요구사항 설정 가능
  • 다양한 plugin을 제공하여 확장성 제공

sonarqube 구성 요소

  • sonarqube server
  • database
  • scanner

출처 : https://docs.sonarsource.com/sonarqube/latest/setup-and-upgrade/install-the-server/introduction/

 

Scanner(CI/CD)

  • 하나 이상의 Scanner가 빌드 과정이나 CI server에서 프로젝트의 코드를 분석한다
    • jenkins plugin, gradle plugin.. 

SonarQube Server

  • 3가지 구성 요소로 이루어져 있음
  • Web Server
    • sonarqube UI 제공
  • Search Server
    • elastic-search를 기본으로 제공
  • Compute Engine
    • 코드 분석 리포트를 작성하고 DB에 데이터를 저장

Database Server

  • 코드 스캔 중에 생성된 코드 품질 및 보안에 대한 지표를 저장
  • sonarqube 설정값 저장

 

 

 

 

 

반응형
Contents

포스팅 주소를 복사했습니다

이 글이 도움이 되었다면 공감 부탁드립니다.