9.5. 용어
기본 개념
| 용어 | 뜻 |
|---|---|
| 클러스터 | 여러 서버를 묶어 하나처럼 쓰는 단위 |
| 노드 | 클러스터를 이루는 서버 한 대 |
| 관리 노드(control-plane) | 클러스터를 제어하는 구성요소가 도는 노드 |
| 작업 노드(worker) | 애플리케이션 파드가 도는 노드 |
| 네임스페이스 | 자원을 나누는 논리적 구획. 팀·환경별로 씁니다 |
| API 서버 | 클러스터의 모든 조작이 거치는 관문 |
| 선언형 | "이런 상태여야 한다" 를 적으면 시스템이 그 상태를 유지하는 방식 |
| 컨트롤러 | 원하는 상태와 실제 상태를 계속 맞추는 프로그램 |
| 레이블(label) | 자원에 붙이는 이름표. app=web 처럼 키와 값의 쌍 |
| 선택 조건(selector) | 레이블로 대상을 고르는 조건 |
| 주석(annotation) | 자원에 붙이는 부가 정보. 선택 조건으로는 쓰지 않습니다 |
워크로드 관련
| 용어 | 뜻 |
|---|---|
| 컨테이너 | 격리된 환경에서 도는 프로세스 |
| 파드(Pod) | 컨테이너를 담는 최소 배포 단위. 여럿을 묶을 수 있습니다 |
| Deployment | 파드를 원하는 개수만큼 유지하고 무중단 교체를 하는 컨트롤러 |
| ReplicaSet | 정해진 개수의 파드를 유지하는 컨트롤러. Deployment 가 만듭니다 |
| StatefulSet | 파드마다 고유 이름과 저장 공간이 필요할 때 쓰는 컨트롤러 |
| DaemonSet | 모든 노드에 파드를 하나씩 띄우는 컨트롤러 |
| Job | 한 번 실행하고 끝나는 작업 |
| CronJob | 정해진 시각에 Job 을 되풀이해 만드는 것 |
| 복제본(replica) | 같은 파드를 몇 개 띄울지 |
| 리비전(revision) | 배포할 때마다 올라가는 순번. 되돌릴 때 씁니다 |
| 롤링 업데이트 | 새 파드를 하나씩 띄우고 옛 파드를 하나씩 내리는 교체 방식 |
| Blue-Green 배포 | 새 버전을 따로 다 띄운 뒤 트래픽을 한 번에 옮기는 방식 |
| 롤백 | 이전 리비전으로 되돌리는 것 |
| ConfigMap | 감출 필요 없는 설정값 모음 |
| Secret | 비밀번호·인증서 등 감춰야 하는 값 모음 |
| HPA | 사용률을 보고 파드 수를 자동으로 조절하는 기능 |
| CronHPA | 정해진 시각에 파드 수를 조절하는 기능 |
| PodDisruptionBudget | 점검 중에 동시에 내려도 되는 파드 수의 한도 |
| QoS 클래스 | 자원이 모자랄 때 밀려나는 순서를 정하는 등급 |
| 테인트(taint) | 특정 파드만 받아들이도록 노드에 붙이는 표시 |
| 허용오차(toleration) | 테인트가 있는 노드에도 배치될 수 있게 하는 파드 설정 |
| 상태 검사(probe) | 애플리케이션에 직접 물어 상태를 확인하는 검사 |
| 준비 상태 검사(readiness probe) | 요청을 받을 수 있는지 확인. 실패하면 트래픽을 보내지 않습니다 |
| 활성 검사(liveness probe) | 살아 있는지 확인. 실패하면 컨테이너를 다시 시작합니다 |
| 시작 검사(startup probe) | 기동이 끝났는지 확인. 끝나기 전까지 다른 검사를 미룹니다 |
네트워크 관련
| 용어 | 뜻 |
|---|---|
| Service | 파드 묶음에 고정된 이름과 주소를 주는 자원 |
| ClusterIP | 클러스터 안에서만 쓰는 Service 주소 |
| Endpoint | Service 가 실제로 트래픽을 보내는 파드 주소 목록 |
| Ingress | 외부 HTTP 요청을 내부 Service 로 연결하는 규칙 |
| Ingress 컨트롤러 | Ingress 규칙을 실제로 처리하는 프로그램. COP 는 HAProxy 를 쓰며 클래스 이름은 default 입니다 |
| 네트워크 정책 | 파드 사이 통신을 제한하는 규칙 |
| 포트 포워드 | 로컬 PC 의 포트를 클러스터 안 파드로 연결하는 기능 |
스토리지 관련
| 용어 | 뜻 |
|---|---|
| 볼륨 | 컨테이너에 붙이는 저장 공간 |
| 마운트 | 볼륨을 컨테이너의 특정 경로에 붙이는 것 |
| PV (PersistentVolume) | 실제 저장 공간 |
| PVC (PersistentVolumeClaim) | 저장 공간 요청. 얼마나 필요한지만 적습니다 |
| 스토리지 클래스 | 저장 공간을 어떤 방식으로 만들지 정한 설정 |
| 동적 프로비저닝 | PVC 를 만들면 PV 가 자동으로 만들어지는 방식 |
| 접근 모드 | 몇 개의 노드에서 읽기·쓰기가 되는지 |
| 회수 정책 | PVC 를 지울 때 데이터를 지울지 남길지 |
빌 드·배포 관련
| 용어 | 뜻 |
|---|---|
| 컨테이너 이미지 | 애플리케이션과 실행 환경을 묶은 파일 |
| 레지스트리 | 컨테이너 이미지를 보관하는 저장소. COP 는 Harbor 를 씁니다 |
| 태그 | 이미지의 버전 표시. app:1.0.3 의 1.0.3 부분 |
| S2I | 소스 코드에서 컨테이너 이미지를 바로 만드는 방식 |
| 빌더 이미지 | S2I 빌드에서 컴파일을 담당하는 이미지 |
| 빌드 설정(BuildConfig) | 무엇을 어떻게 빌드할지 정해 둔 재사용 템플릿 |
| 빌드(Build) | 빌드 설정으로 한 번 실행한 것 |
| Helm | 여러 자원을 하나로 묶어 설치·삭제하는 도구 |
| 차트(Chart) | Helm 의 배포 정의 꾸러미 |
| 릴리즈(Release) | 차트를 설치한 결과 하나 |
| 개정(Revision) | 릴리즈를 고칠 때마다 올라가는 번호 |
| GitOps | Git 저장소의 정의를 기준으로 클러스터 상태를 맞추는 방식 |
보안 관련
| 용어 | 뜻 |
|---|---|
| SSO | 한 번 로그인으로 여러 시스템을 쓰는 통합 인증 |
| RBAC | 역할을 기준으로 접근 권한을 관리하는 방식 |
| 서비스 어카운트 | 파드가 클러스터 API 를 부를 때 쓰는 계정 |
| 롤(Role) | 할 수 있는 일을 모아 둔 것. 한 네임스페이스 안에서만 |
| ClusterRole | 클러스터 전체에 적용되는 롤 |
| 롤 바인딩 | 롤을 사용자·그룹·서비스 어카운트에 연결하는 것 |
| cert-manager | 인증서를 자동으로 발급하고 갱신하는 구성요소 |
| ACME | 인증서를 사람 손을 거치지 않고 발급받기 위한 통신 규약. 도메인 소유를 자동으로 확인합니다. 외부 통신이 필요해 폐쇄망에서는 쓸 수 없습니다 |
| Let's Encrypt | ACME 로 인증서를 무료 발급하는 공인 인증 기관 |
| Issuer · ClusterIssuer | 인증서를 어디서 발급받을지 정하는 설정 |
| CIS 벤치마크 | 안전한 설정 기준과 그에 따른 점검 |
| 웹훅 | 자원을 만들거나 고칠 때 중간에서 검사하거나 값을 바꾸는 장치 |
상태 표기
목록과 상세 화면에서 자주 보이는 상태입니다.
| 표기 | 어디에 나오나 | 뜻 |
|---|---|---|
| Running | 파드 | 정상 실행 중 |
| Pending | 파드, PVC, 빌드 | 준비를 기다리는 중 |
| Succeeded | 파드 | 작업을 마치고 정상 종료 |
| Failed | 파드, 빌드 | 실패 |
| CrashLoopBackOff | 파드 | 시작과 종료를 반복 |
| ImagePullBackOff | 파드 | 이미지를 가져오지 못함 |
| OOMKilled | 컨테이너 | 메모리 상한을 넘어 강제 종료됨 |
| Evicted | 파드 | 노드 자원 부족으로 밀려남 |
| Bound | PVC | 저장 공간에 연결됨 |
| Released | PV | 요청은 지워졌으나 공간이 정리되지 않음 |
| Ready / NotReady | 노드 | 파드를 배치할 수 있는지 |
| deployed | Helm 릴리즈 | 정상 설치됨 |
| superseded | Helm 릴리즈 | 더 새 개정으로 대체됨 |
| PASS / FAIL / WARN | CIS 벤치마크 | 기준 만족 / 불만족 / 판단 불가 |