🔥 와우 회원 전용
일일 초특가 편성 품목
실시간 한정 수량 및
추가 카드 할인율 확인
쿠팡 일일 초특가 바로가기
닫기 ×

1. 계층별 API 그룹 (API Groups)

쿠버네티스는 기능을 체계적으로 관리하기 위해 API를 여러 그룹으로 쪼개 놓았습니다. 

구분API 그룹 명칭주요 역할 및 리소스

2. 목적에 따른 API의 3가지 얼굴

우리가 API를 접하는 방식에 따라 아래 3가지로 구분할 수도 있습니다.

① 리소스 API (Resource API)

가장 흔히 사용하는 API입니다.
YAML 파일을 통해 "이런 상태를 만들어줘"라고 요청하는 대상입니다. (예: Deployment API, Pod API)

② 메트릭 API (Metrics API)

클러스터의 '상태 정보'를 제공하는 특수 API입니다.

  • 역할: "현재 GPU 사용량이 얼마지?", "메모리가 부족한 노드는 어디지?" 같은 실시간 데이터를 제공합니다.
  • 활용: 모니터링 도구(Prometheus 등)나 오토스케일러가 이 API를 호출해 의사결정을 내립니다.

③ 집합 API (Aggregation API)

사용자가 직접 만든 기능을 쿠버네티스 순정 기능처럼 추가하고 싶을 때 사용합니다.

  • Custom Resource Definition (CRD): 쿠버네티스가 기본적으로 제공하지 않는 리소스를 정의할 때 사용합니다. API Server는 이 CRD를 통해 사용자의 커스텀 요청도 인식할 수 있게 됩니다.

3. API 성숙도

API 이름 뒤에 붙는 버전은 해당 기능이 얼마나 믿을만한지를 나타냅니다.

  • Alpha (v1alpha1): 개발 초기 단계. 언제든 설정법이 바뀔 수 있고 버그가 있을 수 있음.
  • Beta (v1beta1): 충분히 테스트됨. 큰 변화는 없겠지만 약간의 수정 가능성 있음.
  • Stable (v1): 정식 버전. 운영 환경에서 안심하고 사용 가능. (예: node.k8s.io/v1)

💡 한눈에 정리하는 역할 관계도

  1. 사용자/시스템: API Server에 특정 **API 그룹(apps/v1)**의 양식으로 요청을 보냅니다.
  2. API Server: 요청을 승인하고 저장합니다.
  3. 컨트롤러(Controller): 해당 API 그룹을 담당하는 감시자가 "오, 나한테 할 일이 들어왔네?" 하고 실제 작업(컨테이너 띄우기 등)을 수행합니다.