Skip to content

지원할 기능 목록 정리 #7

@namsic

Description

@namsic

🔍 Description

  • arcus 클러스터 운영에 필요한 기능을 정리합니다.

⏰ Implementation Idea

기존 도구들을 참고합니다.

제공하는 기능

주키퍼 앙상블 관리

웹 브라우저 상에서 간단하게 주키퍼 앙상블 운영 가능
주키퍼 앙상블의 현재 상태 조회
주키퍼 앙상블의 생성, 제거, 확장, 축소 기능
주키퍼 서버의 설치, 구동, 정지 기능
캐시 클러스터(서비스 코드) 관리

웹 브라우저 상에서 간단하게 캐시 클러스터 운영 가능
캐시 클러스터의 현재 상태 조회
캐시 클러스터의 생성, 제거, 확장, 축소 기능
캐시 노드의 설치, 구동, 정지 기능
클러스터에 연동된 Client 목록 조회 기능
스위치 오버 기능
ARCUS 복제 클러스터에서 마스터 노드와 슬레이드 노드의 역할을 서로 바꾸는 기능이다. 스위치오버 요청은 반드시 마스터 노드에 보내야 한다.
캐시 대상 관리

ARCUS 메타 정보 저장소인 ARCUS ZooKeeper 앙상블에 캐시 대상 API 목록과 캐시 적용 속성을 보관해 두고, ARCUS 운영 도구를 통해 언제라도 변경 가능
/cache_target_list/{service_code} 하위의 znode에 캐시 대상 API 정보를 key로, 캐시 적용 속성 정보를 JSON 포맷으로 변환한 것을 value로 저장
캐시 대상 API 정보를 저장하는 znode의 키는 각 캐시 대상 API를 구분하기 위하여 “패키지명.클래스명.메소드명” 형식
명령 라인 인터페이스(CLI)

ARCUS 캐시 서버에 ASCII 명령을 주고받을 수 있는 CLI
명령 자동 완성 기능 제공
명령 속성(attribute)을 알려주는 도움말 기능 제공
key 정보가 주어진 명령어는 해시링에 따른 캐시 노드로 전달 가능
캐시 아이템 관리

prefix 별 관리
Prefix 목록 조회
Prefix별 통계 조회
Prefix를 가진 캐시 아이템들의 일괄 삭제
item 조회 및 관리
특정 키 문자열 패턴을 만족하는 아이템 스캔
스캔된 아이템의 속성(type, exptime, count, …) 조회 및 수정
캐시 진단 관리

ARCUS 캐시의 아이템들을 기반으로 오프라인 분석하거나 특정 이슈의 원인을 확인하여 상황을 진단하기 위한 기능 제공
아이템 덤프
저장된 전체 아이템 또는 특정 Prefix를 가지는 아이템의 키와 속성 정보를 별도 파일로 저장
커맨드 로깅
ARCUS 서버에 입력되는 모든 연산 명령을 기록해 파일로 저장
ARCUS 서버의 커맨드 로그 파일을 선택하여 로그 내용을 조회
롱 쿼리 검출
롱 쿼리: 수행 시간이 오래 걸린 ASCII 명령으로, 설정 값 이상으로 많은 elements에 접근하는 명령어를 롱 쿼리로 판단한다.
ARCUS 서버에서 롱 쿼리를 식별하여 기록해 두고, 롱 쿼리 결과를 사용자에게 보여주는 기능
로그 조회

Arcus Zookeeper 서버 및 Memcached 서버의 로그 조회 기능
사용자 계정/권한 관리

admin 계정과 user 계정의 분리로 사용 가능한 기능을 제한
user 계정의 경우 서비스 코드 별로 권한 부여 가능
모니터링 도구 알람 설정

Arcus Hubble V3과 연동 시 알람 조건 설정 가능

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions