Kodo-X 분할¶
주의
이 문서를 주의 깊게 읽고, 구현 과정에서 백업 조치를 철저히 수행하며 롤백 계획을 수립하여 시스템의 안전과 안정성을 보장하시기 바랍니다.
개요¶
대량의 쓰기 요청을 처리할 때 kodo-x의 리소스 소비가 특정 유형의 처리 작업, 특히 metric 데이터 처리에 집중되어 다른 데이터를 적시에 소비하지 못해 데이터 적체 문제가 발생할 수 있습니다.
해결 방안:
- metric 데이터 전용 처리를 위한 별도의 kodo-x 인스턴스를 생성하여 기존 인스턴스의 리소스 점유를 줄입니다.
- 기존 kodo-x 인스턴스를 수정하여 더 이상 metric 데이터를 처리하지 않고 다른 작업에 집중하도록 합니다.
아키텍처 다이어그램¶
분할 전:
분할 후:
전제 조건¶
- Guance 클러스터 운영 권한 보유
- kodo-x 및 분할할 kodo-x-metric의 스케줄링 리소스 사전 계획
구현 계획¶
1. 서비스 백업¶
2. kodo-x-metric 서비스 생성¶
2.1 kodo-x-metric ConfigMap 생성¶
다음 정보를 수정합니다:
name을 kodo-x-metric으로 변경resourceVersion및uid필드 삭제
2.2 kodo-x-metric Deployment 생성¶
다음 정보를 수정합니다:
- 「metadata」-「name」을 kodo-x-metric으로 변경
- 「metadata」의
resourceVersion및uid필드 삭제 - 「volumeMounts」 및 「volumes」의
name을 kodo-x-metric으로 변경
...
metadata:
name: kodo-x-metric ##### kodo-x-metric으로 변경
namespace: forethought-kodo
resourceVersion: "129925433" ##### 삭제
uid: e4f0c541-4d91-47d4-82c8-91eec2757cb2 ##### 삭제
...
volumeMounts:
- mountPath: /kodo/config/config.yaml
name: kodo-x-metric ##### kodo-x-metric으로 변경
subPath: config.yaml
volumes:
- configMap:
defaultMode: 420
name: kodo-x-metric ##### kodo-x-metric으로 변경
optional: false
name: kodo-x-metric ##### kodo-x-metric으로 변경
3. kodo-x-metric 서비스 생성¶
3.1 kodo-x-metric 매개변수 수정¶
설정 파일: kodo-x-metric.yaml (기타 설정은 기존 kodo-x.yaml과 동일)
global:
metric_workers: 32 # metric 데이터 처리 능력 향상
object_workers: 8
keyevent_workers: 8
workers: 0 # 기본 worker 비활성화
log_workers: 0 # 로그 처리 비활성화
backup_log_workers: 0 # 백업 로그 처리 비활성화
자세한 내용은 애플리케이션 서비스 설정 항목 설명서를 참조하세요.
서비스 재시작:
3.2 kodo-x 매개변수 수정¶
기존 kodo-x 인스턴스는 metric 유형이 아닌 다른 작업만 처리하여 리소스 할당을 더욱 최적화합니다.
설정 파일: kodo-x.yaml
global:
metric_workers: -1 # metric 데이터 처리 비활성화
object_workers: -1 # 객체 처리 비활성화
keyevent_workers: -1 # 주요 이벤트 처리 비활성화
서비스 재시작:
4. 확인¶
다음 명령어를 실행하여 설정이 적용되었는지 확인합니다:

