Skip to main content

우선순위 클래스

COP 콘솔의 우선순위 클래스 메뉴에서는 파드(Pod)의 중요도에 따라 스케줄링 및 축출(eviction) 우선순위를 정의하는 PriorityClass 리소스를 관리할 수 있습니다.
리소스가 부족한 상황에서 어떤 파드를 먼저 유지하거나 제거할지를 결정하는 데 사용됩니다.


1. 구성 설명

리소스 목록 테이블

현재 클러스터에 정의된 PriorityClass 목록을 표시합니다. 각 항목은 다음과 같은 주요 정보를 포함합니다.

  • 이름(Name): PriorityClass 리소스 이름

  • 값(Value): 우선순위를 나타내는 정수값 (숫자가 높을수록 우선순위 높음)

  • 전역 기본값(Global Default): 해당 PriorityClass가 기본으로 적용되는지 여부

  • 경과 시간: 리소스가 생성된 이후 시간

  • 검색 및 정렬 기능

    • 검색창: 이름 기준으로 리소스 필터링 가능
    • 정렬 버튼: 열 제목 클릭 시 오름차순/내림차순 정렬
  • 동작 메뉴: 각 항목 우측의 세 점(⁝) 메뉴 클릭 시 아래 기능 제공

    • 편집: GUI 기반 편집기에서 값 변경
    • YAML 보기: YAML 정의 확인 (읽기 전용)
    • 삭제: PriorityClass 리소스를 클러스터에서 제거

2. PriorityClass란?

PriorityClass는 쿠버네티스에서 파드의 스케줄링 및 축출 우선순위를 정의하는 리소스입니다.
리소스 부족 시 낮은 우선순위를 가진 파드가 먼저 제거되고, 높은 우선순위를 가진 파드는 우선적으로 스케줄됩니다.

예시 YAML

apiVersion: scheduling.k8s.io/v1
kind: PriorityClass
metadata:
name: high-priority
value: 1000000
globalDefault: false
description: 'This priority class is for high-priority workloads.'

3. 우선순위 클래스 요약

  • 우선순위 클래스는 클러스터 내 파드의 중요도를 제어하는 핵심 리소스입니다.
  • 높은 값일수록 중요도가 높으며, 리소스 부족 시 유지 우선순위가 높습니다.
  • 시스템 관련 우선순위(system-cluster-critical, system-node-critical)는 기본으로 제공되며, 삭제나 수정 시 주의가 필요합니다.

4. 우선순위 클래스 상세

COP 콘솔에서는 커스텀 리소스(CRD) 인스턴스의 상세 정보를 GUI를 통해 확인할 수 있습니다. 아래는 system-cluster-critical PriorityClass 리소스 인스턴스의 상세 화면 예시입니다.


주요 구성 요소

  • 이름 (Name): PriorityClass 인스턴스의 고유 이름입니다.
  • 생성 시간 (Creation Timestamp): 해당 리소스가 클러스터에 생성된 일시입니다.
  • 값(Value): 파드 우선순위를 결정하는 정수값(값이 높을수록 중요도가 높음)
  • 전역 기본값(Global Default): False 해당 PriorityClass가 클러스터의 기본 우선순위로 사용되는지 여부
  • 선점 정책(Preemption Policy): PreemptLowerPriority 더 낮은 우선순위 파드를 선점(축출)할 수 있음
  • 설명(Description): 시스템에 반드시 필요한 파드에 적용되는 우선순위임을 안내

이벤트

화면 하단의 이벤트 섹션에서는 우선순위 클래스와 관련된 이벤트 로그를 확인할 수 있습니다.