본문으로 건너뛰기

3.2. Clusters (클러스터 관리)

개요

Clusters 페이지는 MCM 컨트롤 플레인에 등록된 모든 멤버 클러스터를 관리하는 페이지입니다. 클러스터의 상태, 리소스 사용량, 노드 정보 등을 확인하고, 새로운 클러스터를 추가하거나 기존 클러스터를 편집/삭제할 수 있습니다.

주요 목적:

  • 멤버 클러스터 등록 및 관리
  • 클러스터별 상태 및 리소스 사용량 모니터링
  • 클러스터 노드 정보 확인
  • 클러스터 콘솔로 빠른 이동

화면 구성

클러스터 관리 페이지는 그리드 뷰와 테이블 뷰 두 가지 형태로 제공됩니다.

1. 그리드 뷰 (카드 형태)

기본 표시 형태로, 각 클러스터를 카드로 표시합니다.

클러스터 그리드 뷰

페이지 상단 요소

요소설명
뷰 전환 버튼그리드 뷰 / 테이블 뷰 전환
새로고침 버튼클러스터 목록 갱신
클러스터 추가 버튼새 클러스터 등록 다이얼로그 열기
검색창클러스터 이름으로 검색

클러스터 카드 구성

각 클러스터 카드에는 다음 정보가 표시됩니다:

요소설명
클러스터 이름등록된 클러스터 식별 이름
상태 배지정상(녹색) / 비정상(빨간색)
클러스터 콘솔 버튼해당 클러스터의 관리 콘솔로 이동
동기화 모드Push / Pull 모드 표시
쿠버네티스 버전클러스터의 K8s 버전
GPU 배지GPU 노드가 있는 경우 GPU 수 표시
노드 상태정상/전체 노드 수
CPU 사용량사용 중 / 요청 / 할당 가능 Cores (사용률% / 요청률%)
메모리 사용량사용 중 / 요청 / 할당 가능 GB (사용률% / 요청률%)
파드 수현재 파드 + 멀티클러스터 파드 / 최대 파드 (사용률%)
레이블클러스터에 적용된 레이블 (복사 가능)
편집 버튼클러스터 설정 편집

2. 테이블 뷰

테이블 형태로 클러스터 목록을 표시하여 한눈에 비교할 수 있습니다.

클러스터 테이블 뷰

테이블 컬럼

컬럼설명정렬
클러스터 이름클러스터 식별 이름
상태정상/비정상 상태
클러스터 콘솔콘솔 바로가기 버튼-
동기화 모드Push/Pull 모드
쿠버네티스 버전K8s 버전
노드정상/전체 노드 수
CPU사용 중/요청/할당 가능-
메모리사용 중/요청/할당 가능-
파드현재+Karmada/최대-
GPUGPU 수
작업보기/편집 버튼-

테이블 기능

  • 정렬: 컬럼 헤더 클릭으로 오름차순/내림차순 정렬
  • 필터: 필터 버튼으로 조건 필터링
  • 열 숨기기: 표시할 컬럼 선택

클러스터 상세 정보

클러스터 카드 또는 테이블 행을 클릭하면 상세 정보 패널이 열립니다.

클러스터 상세 정보

상세 패널 헤더

요소설명
클러스터 이름선택한 클러스터 이름
상태 배지정상/비정상 상태
동기화 모드Push/Pull 표시
클러스터 콘솔 버튼해당 클러스터 콘솔로 이동

액션 버튼

버튼기능
새로고침클러스터 정보 갱신
편집YAML 편집 모드
클러스터 편집클러스터 설정 편집 다이얼로그
삭제클러스터 등록 해제

탭 메뉴

개요 탭

클러스터의 기본 정보와 리소스 요약을 표시합니다.

기본 정보:

항목설명
클러스터 이름등록된 클러스터 이름
상태현재 클러스터 상태
클러스터 콘솔콘솔 URL 및 바로가기
동기화 모드Push 또는 Pull
쿠버네티스 버전클러스터 K8s 버전
API 엔드포인트클러스터 API 서버 주소
생성일클러스터 등록 일시

노드 요약:

  • 비정상 노드 수
  • 정상 노드 수
  • 전체 노드 수

리소스 요약:

  • CPU: 사용 중 / 요청 / 할당 가능 (사용률% / 요청률%)
  • 메모리: 사용 중 / 요청 / 할당 가능 (사용률% / 요청률%)
  • 파드: 현재 + Karmada 파드 / 최대 (사용률%)
  • GPU: GPU 수

레이블 탭

클러스터에 적용된 Kubernetes 레이블 목록을 표시합니다.

어노테이션 탭

클러스터에 적용된 어노테이션 목록을 표시합니다.

테인트 탭

클러스터에 설정된 테인트(Taint) 정보를 표시합니다.

상태 탭

클러스터의 상태 조건(Conditions)을 표시합니다.

노드 탭

클러스터에 속한 모든 노드의 상세 정보를 테이블로 표시합니다.

노드 탭
컬럼설명
이름노드 이름
상태정상/비정상
역할master, worker, etcd, control-plane 등
테인트노드에 설정된 테인트 수
내부 IP노드 내부 IP 주소
CPUCPU 사용량 (프로그레스 바 포함)
메모리메모리 사용량 (프로그레스 바 포함)
파드현재/최대 파드 수
GPUGPU 정보 (있는 경우)
경과시간노드 생성 후 경과 시간

네임스페이스 탭

클러스터 내 네임스페이스 목록을 표시합니다.

이벤트 탭

클러스터 관련 Kubernetes 이벤트를 표시합니다.

클러스터 추가

새로운 멤버 클러스터를 MCM 컨트롤 플레인에 등록합니다.

클러스터 추가 다이얼로그

필수 입력 항목

항목설명
클러스터 이름고유한 클러스터 식별 이름 (소문자, 숫자, '-', '.' 사용 가능)
동기화 모드Push 또는 Pull 선택
인증 방식Kubeconfig 또는 서비스 어카운트 토큰
Kubeconfig클러스터 접속을 위한 kubeconfig 내용

동기화 모드

모드설명
PushMCM가 멤버 클러스터에 직접 리소스를 푸시 (권장)
Pull멤버 클러스터의 에이전트가 MCM에서 리소스를 풀

인증 방식

방식설명
Kubeconfig클러스터의 kubeconfig 파일 내용 사용
서비스 어카운트 토큰ServiceAccount 토큰으로 인증

추가 옵션

옵션설명
TLS 인증서 검증 건너뛰기자체 서명 인증서 사용 시 체크
고급 설정추가 클러스터 설정 옵션

클러스터 편집

등록된 클러스터의 설정을 수정합니다.

YAML 편집

"편집" 버튼을 클릭하면 클러스터 리소스의 YAML을 직접 편집할 수 있습니다.

클러스터 편집 다이얼로그

"클러스터 편집" 버튼을 클릭하면 다이얼로그에서 주요 설정을 수정할 수 있습니다:

  • 클러스터 콘솔 URL
  • 레이블
  • 어노테이션
  • 테인트

클러스터 삭제

⚠️ 주의: 클러스터를 삭제하면 MCM 컨트롤 플레인에서 클러스터 등록이 해제됩니다. 해당 클러스터에 배포된 워크로드는 삭제 정책에 따라 처리됩니다.

  1. 삭제할 클러스터 선택
  2. 상세 패널에서 "삭제" 버튼 클릭
  3. 확인 다이얼로그에서 클러스터 이름 입력
  4. "삭제" 버튼 클릭

사용 예시

시나리오 1: 새 클러스터 등록

  1. "클러스터 추가" 버튼 클릭
  2. 클러스터 이름 입력 (예: production-cluster)
  3. 동기화 모드 선택 (일반적으로 Push 권장)
  4. kubeconfig 내용 붙여넣기
  5. 필요시 "TLS 인증서 검증 건너뛰기" 체크
  6. "확인" 버튼 클릭

시나리오 2: 클러스터 상태 확인

  1. 클러스터 목록에서 상태 배지 확인
  2. 비정상 클러스터 카드 클릭
  3. 상태 탭에서 상세 조건 확인
  4. 이벤트 탭에서 관련 이벤트 확인

시나리오 3: 노드 문제 진단

  1. 클러스터 카드에서 "비정상 노드" 수 확인
  2. 클러스터 클릭하여 상세 패널 열기
  3. 노드 탭 클릭
  4. 비정상 상태의 노드 확인
  5. 해당 노드의 CPU/메모리 사용량 및 테인트 확인

시나리오 4: 리소스 사용량 모니터링

  1. 그리드 뷰에서 각 클러스터의 CPU/메모리/파드 사용률 확인
  2. 사용률이 높은 클러스터 식별
  3. 필요시 클러스터 확장 또는 워크로드 재분배 검토

관련 개념

동기화 모드 상세 설명

Push 모드:

  • MCM 컨트롤 플레인이 멤버 클러스터에 직접 연결
  • 실시간 리소스 동기화
  • 네트워크 접근이 필요

Pull 모드:

  • 멤버 클러스터에 Karmada 에이전트 설치 필요
  • 에이전트가 주기적으로 컨트롤 플레인에서 변경사항 확인
  • 방화벽 뒤의 클러스터에 적합

다음 단계