본문으로 건너뛰기

서버 관리

서버설정

좌측 메뉴의 ‘설정’ ‘서버 관리’ ‘서버 설정’ 을 선택하면 다음과 같이 OPENMARU APM의 서버 설정을 관리할 수 있다.

서버설정 > 시스템

  • Metric 자동 제외 시간 : 에이전트 중지 후 해당 시간이 지나면 화면에서 제외
    • 서버 중지 또는 Pod 재배포로 인해 Pod가 **STOPPED** 상태가 된 에이전트를 화면에서 제외하는 데 걸리는 시간이다.
    • 내부적으로 20분마다 체크하며, 중지 상태로 설정 시간만큼 지난 에이전트는 화면에서 제외된다.
    • 중지된 에이전트는 설정 → 애플리케이션 그룹관리에서 다시 활성화할 수 있다.
    • ex) 1d로 설정하면 제외 스케줄러가 20분마다 중지 상태가 된 지 하루가 지난 에이전트를 제외한다.

서버설정 > 이벤트

이벤트는 Default, Slack, 이메일, SMS, Synology Chat, MS Teams 6가지 항목을 연동하여 알림을 받을 수 있다.

Default, 이메일, Slack, SMS, Synology Chat, MS Teams 이벤트 설정 방법은 링크 문서 참조

서버설정 > 공지

  • ① name : 임의의 값 등록
  • ② Scheduled cron
    • SpringFramework cron expression
    • second | minute | hour | day | month | week | year(optional)
    • ex) 0 0 01 * * *
  • ③ Application Group : 알림 받을 애플리케이션 그룹 지정
  • ④ Metric : 알림 받을 메트릭 정보
    • TPS
    • Active User (액티브 유저)
    • Error Rate (에러율)
    • AVG RT (평균 응답시간)
  • ⑤ Alerts via
  • ⑥ Alerts to : 공지 발송 대상 설정
  • ⑦ Alerts to(Group) : 공지 발송 대상 그룹 설정
  • ⑧ UI Alerts Enabled

서버설정 > 트랜잭션

URL 트랜잭션 에 대한 표시 메시지를 지정한다.

정의된 URL 트랜잭션 표시 메시지를 Request URL 정보 옆에 표시한다.

서버설정 > OpenShift(K8S)


  • ① Server Name : 표시할 이름
  • ② Server URL : OpenShift API URL
    • ex) OCP : oc whoami --show-server K8S : kubectl config view
  • ③ Username : 계정
  • ④ Password : 비밀번호
  • ⑤ Oauth Token : Username/Password 대신 토큰 사용 시
  • ⑥ Kube Config file
  • ⑦ Prometheus URL : Prometheus API URL
    • ex) oc get route prometheus-k8s -n openshift-monitoring --template='{{ .spec.host }}'
  • ⑧ Prometheus Token : Prometheus 인증 토큰
    • ex) oc -n openshift-monitoring sa get-token prometheus-k8s
    • 4.11 이상 : oc create token prometheus-k8s -n openshift-monitoring
    • 또는 별도 생성
oc apply -f - <<EOF
apiVersion: v1
kind: Secret
metadata:
name: prometheus-robot-secret
namespace: openshift-monitoring
annotations:
kubernetes.io/service-account.name: prometheus-k8s
type: kubernetes.io/service-account-token
EOF

oc -n openshift-monitoring extract secret/prometheus-robot-secret --to=- --keys=token
  • ⑨ Kinds : 이벤트 종류
    • All : 모든 이벤트
    • Pod : POD 관련 이벤트
    • HorizontalPodAutoscaler : 오토 스케일링 관련 이벤트
  • ⑩ Reasons : 이벤트 상세 이유 (Kinds 에 해당하는 정보)
    • ALL : 모든 이벤트
    • Started : POD 시작
    • Killing : POD 종료
  • ⑪ Exclude NameSpace
  • ⑫ Volume Limit : PVC 사용량 임계 설정
  • ⑬ Channels : 이벤트 발송 목록
  • ⑭ Alters to/Group : 이벤트 발송 대상
  • ⑮ Prometheus Monitoring : 프로메테우스 모니터링 여부
  • Enabled : 활성화 여부

프로메테우스 모니터링 활성화 시 컨테이너 디스크 모니터링 가능시스템 -> [HOSTNMAE] -> Container -> 디스크

서버설정 > Azure CDN

  • ① Server Name : 서버 이름 등록
  • ② Azure Client Id : Azure Client(Application) Id 등록
  • ③ Azure Tenant Id : Azure Tenant(Directory) Id 등록
  • ④ Azure Client Secret : Azure Client Secret 등록 - Azure Certificates & Secret 확인
  • ⑤ Enabled : Enable, Disable 설정
  • ⑥ Status : 상태 확인
  • ⑦ Created : 등록 일자 확인

서버상태

서버 상태를 표시하며, 문제가 생길 시 로그를 표시한다. DB 와 메시지 큐(rabbitMQ)의 동작 상태를 확인하고 Config 설정을 지원한다.

  • Mongo DB : 데이터 import/export 를 지원한다. 항목은 아래와 같다.
    • Users, User Group, Custom Groups, Alert Policy, Settings, 공지, Azure CDN, OpenShift(k8s)
  • Influx DB : 오토힐링 기능여부, 서비스 식별자 설정을 할 수 있다.
  • Message Queue : 메시지 큐 임계값 설정, maximum 설정을 할 수 있다.

만약 서버에 문제가 발생 시 빨간색 아이콘으로 바뀌며 에러로그를 표시한다.

메타데이터

데이터베이스 내 컬렉션과 필드의 상세한 상태 정보를 보여줍니다. 이를 통해 데이터베이스의 저장 구조, 성능 지표, 인덱스 상태를 종합적으로 분석할 수 있습니다.

  • Compressor : 압축방식

    Compressor설명
    snappy빠른 압축/해제, 중간 압축률
    zlib높은 압축률, 상대적으로 느린 처리
    zstd높은 압축률과 빠른 처리 속도
    none압축 없음
  • Row Count : 해당 컬렉션에 저장된 문서(행)의 총 개수

  • Data Size : 컬렉션 내 실제 데이터가 차지하는 메모리 크기 (압축되지 않은 원본 데이터의 크기)

  • Total Size : 컬렉션의 전체 크기 (데이터 + 인덱스 + 메타데이터)

  • Storage Size : 디스크에 실제로 할당된 저장 공간

  • Total Index Size : 컬렉션의 모든 인덱스가 차지하는 총 메모리 크기

  • Index : 인덱스의 유효성 상태를 나타내는 지표

    index설명
    valid인덱스가 정상적으로 작동 중
    unknown인덱스 상태를 확인할 수 없음
    invalid인덱스에 문제가 있음
    building인덱스 생성 중
    dropping인덱스 삭제 중
  • First Data Time : 컬렉션에 첫 번째 데이터가 저장된 시간