쿠버네티스의 심장이라 할 수 있는 API 서버 접근(Accessing API)에 대해 알아보자. 클러스터의 모든 자원 관리와 제어는 결국 이 API 서버를 통하는 통로를 어떻게 설계하고 보안을 유지하느냐에 달려 있다.
1. API 서버의 역할과 기본 접근법

- 중앙 통제실: 마스터 노드에 위치한 API 서버는 쿠버네티스 자원을 생성하거나 조회할 수 있는 유일한 경로다.
- kubectl 활용: 우리가 흔히 사용하는 CLI 도구인 kubectl 또한 이 API 서버에 접근하여 정보를 가져오는 방식이다.
- 보안 접근 (HTTPS): 기본적으로 인증서를 가진 사용자만 HTTPS를 통해 보안 접근이 가능하다.
- 프록시 접근 (HTTP): 관리자가 kubectl proxy 명령을 실행해 준 경우, 인증서 없이 HTTP로 간편하게 접근할 수 있다.
2. 접근 주체에 따른 계정 구분

쿠버네티스는 보안 사고를 방지하기 위해 '누가' 접근하느냐에 따라 계정을 엄격히 분리한다.
- 유저 어카운트 (User Account): 실제 사용자(사람)가 API 서버에 접근할 때 사용하는 계정이다.
- kubeconfig 설정을 통해 외부 PC에서도 클러스터 하나도 아닌 여러개의 클러스터를 관리할 수 있다.
- 서비스 어카운트 (Service Account): 파드(Pod) 내부의 프로세스가 API 서버에 접근할 때 사용하는 계정이다.
- 모든 파드가 무분별하게 클러스터 정보를 뒤지는 것을 막기 위한 필수 장치이다.
- 필요시 외부에서도 사용 가능하다.
3. API 요청 처리의 3단계 (보안 레이어)
하나의 API 요청이 성공하기 위해서는 다음의 관문을 모두 통과해야 한다.
- Authentication (인증): "당신은 누구인가?"를 확인하는 단계다. 유저 또는 서비스 어카운트를 식별한다.
- Authorization (권한 부여): "당신이 이 작업을 할 자격이 있는가?"를 확인한다. 예를 들어 B 네임스페이스의 파드가 A 네임스페이스의 자원을 조회해도 되는지 등의 작업 자격을 확인/결정한다.
- Admission Control (어드미션 컨트롤): "요청한 내용이 정책에 맞는가?"를 체크한다. 관리자가 PV 용량을 1GB로 제한했다면, 그 이상의 요청이 들어왔을 때 이를 거부하고 수정하는 역할을 한다.
위 학습용 정리 내용 및 사진 자료는 "인프런_대세는 쿠버네티스(https://inf.run/Lv5RV)" 강의를 소스로 작성하였습니다
'Cloud Native > Kubernetes' 카테고리의 다른 글
| 3-2. Authorization - RBAC, Role, RoleBinding (0) | 2026.01.28 |
|---|---|
| 3-1. Authentication - X509 Certs, kubectl, ServiceAccount (0) | 2026.01.27 |
| 2. Volume - Dynamic Provisioning, StorageClass, Status, ReclaimPolicy (0) | 2026.01.27 |
| 1. Service - Headless, Endpoint, ExternalName (0) | 2026.01.27 |
| 4. Pod - Node Scheduling [중요] (0) | 2026.01.25 |