제품 여행

Scouter를 통한 CUBRID 모니터링

by hwanyseo posted Jan 10, 2022

Scouter를 통한 CUBRID 모니터링

Scouter 확장을 통해 CUBRID에 항목을 모니터링할 수 있습니다.

CUBRID 11.0 버전을 기준으로 개발되었으며, CUBRID 10.2.1 버전부터는 전체 기능을 사용할 수 있습니다.

Scouter(Server, Client)는 2.15.0 버전부터 기능 사용이 가능하며,

추후에도 Scouter Github에 참여하여 버그 수정 및 기능이 추가됩니다.

현재(2022-01-10) 2.15.0 버전이 최신 버전이며, Multi Agent 지원 및 버그 수정 내용이 PR 되어 있는 상태입니다.

 

1. Scouter 란?

Scouter는 Open Source APM(Application Performance Management) 이며,

어플리케이션 및 OS 자원등에 대한 모니터링 기능을 제공합니다.

 

  •  Scouter 기본 구성

Scouter 구성(정만영).PNG

 

  • Scouter 제공 정보

​- WAS 기본 정보

 각 요청의 응답속도 / 프로파일링 정보,  서버 요청 수 / 응답 수,  처리 중인 요청 수,  응답속도의 평균,  JVM 메모리 사용량 / GC 시간 ,  CPU 사용량

- 프로파일링 정보

 서버 간 요청의 흐름,  각 SQL 쿼리의 수행 시간 / 통계,  API 호출 수행 시간,  request header 정보,  메소드 호출 시 수행 시간

 

  •  대표적인 Agent 목록

- Tomcat Agent (Java Agent) : JVM 과 Tomcat WAS 성능 수집

- Host Agent (OS Agent) : Linux, Windows 및 OSX 성능

- MariaDB Plugin : MariaDB 를 모니터링을 위한 Plugin (MariaDB에 embedded된 형태로 진행됨)

- Telegraf Agent : Redis, nginX, apache httpd, haproxy, Kafka, MySQL, MongoDB, RabbitMQ, ElasticSearch, Kube, Mesos ...

 

2. CUBRID와 Scouter 연동

  • 구성

큐브리드연동 구성.PNG

 

CUBRID에 정보는 CMS를 통해 HTTPS로 CUBRID Agent에 전달되고,

CUBRID Agent에서 항목별로 분리하여 계속 전송되는 항목은 UDP, 요청에 의한 항목은 TCP로 Scouter Server(Collector) 전송합니다.

Server(Collector)에서 자체 DataBase에 해당 데이터를 보관하고 보관된 데이터는 설정(용량, 기간)에 의해 자동 삭제됩니다.

Client는 Server(Collector)에 수집된 데이터를 TCP로 요청하여 Eclipse RCP를 이용하여 화면에 표시합니다.

 

녹색 원형으로 표시된 부분이 CUBRID를 Scouter에서 모니터링하기 위해 수정한 부분입니다.

 

  • 지원 목록

하기 표는 현재 Scouter를 통해 모니터링이 가능한 항목입니다.

추후 CMS(CUBRID Manager Server), Scouter Server, Client, Agent 확장을 통해 

모니터링이 가능한 항목을 추가할 예정입니다.

 

Monitoring_List.png

 

  • Client UI

하기 그림은 Client에 초기 화면입니다.

설치 및 Client UI 설명서는 Scouter Agent GitHub에 Readme 문서 등을 통해 확인할 수 있습니다. (URL - 3. 참고 URL에서 확인)

 

UI.png

 

3. 참고 URL