쿠버네티스(Kubernetes)는 컨테이너화된 애플리케이션을 자동으로 배포, 스케일링, 운영해주는 오픈소스 플랫폼입니다. 처음 접하면 용어와 개념이 낯설 수 있지만, 기초부터 차근차근 익히면 효율적으로 활용할 수 있습니다. 이번 글에서는 초보자를 위한 쿠버네티스의 핵심 개념 7가지를 소개합니다.
쿠버네티스 환경 실습및 학습을 위해 GCP 90일 무료 크레딧을 통해 진행할 수 있다.

1. kubectl – 쿠버네티스와 대화하는 터미널 도구
kubectl은 쿠버네티스를 조작할 수 있는 커맨드라인 도구입니다. 마치 서버 관리자와 대화하는 창구 역할
kubectl get pods
kubectl apply -f deployment.yaml
kubectl describe node <노드이름>
쿠버네티스 클러스터에 명령을 보내 리소스를 생성하거나 상태를 조회할 수 있다.
2. Label – 리소스를 구분짓는 이름표
label은 쿠버네티스의 리소스(Pod, Node 등)에 붙이는 키-값 쌍입니다. 이걸 이용하면 리소스를 그룹화하거나 특정 기준으로 검색할 수 있다.
-- yaml 설정중 label 예시
labels:
app: myapp
env: production
이렇게 라벨을 붙여두면 원하는 Pod를 효율적으로 찾아서 작업이 가능
3. Selector – 라벨로 리소스를 찾는 방법
selector는 위에서 설명한 label을 기준으로 리소스를 선택하는 방법입니다. 대표적으로 ReplicaSet이나 Service가 Selector를 통해 연결 대상을 찾는다.
selector:
matchLabels:
app: myapp
즉, app=myapp 라벨이 붙은 Pod를 대상으로 동작
4. Node – 쿠버네티스 클러스터의 일꾼
Node는 실제 애플리케이션이 실행되는 서버이다. 쿠버네티스 클러스터는 하나 이상의 Node로 구성되어 있으며, 각 Node는 여러 Pod를 실행할 수 있다.
kubectl get nodes
명령어로 클러스터에 어떤 Node가 있는지 확인가능
5. nodeSelector – 특정 노드에 Pod 배치하기
기본적으로 쿠버네티스는 적절한 Node를 자동으로 선택하지만, 특정 Node에 Pod를 배치하고 싶을 때는 nodeSelector를 사용
spec:
nodeSelector:
disktype: ssd
이 설정을 통해 disktype=ssd 라벨이 붙은 Node에만 Pod가 배치
6. Replica – 애플리케이션의 복제 개수
애플리케이션의 안정성과 확장성을 위해 같은 Pod를 여러 개 복제할 수 있습니다. 이 개수를 설정하는 것이 바로 replicas
spec:
replicas: 3
위와 같이 설정하면 동일한 Pod가 3개 실행되며, 하나가 죽어도 나머지가 서비스를 유지
7.YAML – 쿠버네티스 리소스 정의 파일
쿠버네티스에서 리소스는 주로 YAML 파일로 정의됩니다. 사람이 읽기 쉬운 구조이며, 선언형 방식으로 리소스의 상태를 명시한다.
apiVersion: v1
kind: Pod
metadata:
name: mypod
spec:
containers:
- name: mycontainer
image: nginx
YAML은 리소스를 생성할 때 매우 중요한 포맷
쿠버네티스라는것을 사용할때 기본적으로 속성으로 알고 가면 좋을것들을 정리해 봤는데 두서 없이 정리하다보니 아쉽지만 보통 구축된 곳을가면 가장 신경?을 많이써서 보는곳이 replica 관련 속성이다. 이와 관련 된 부분을 잘 보면 좋을것 같다.
'코드 > dev' 카테고리의 다른 글
| 쿠버네티스 실습(minikube) (0) | 2026.02.22 |
|---|---|
| Jaeger와 Kibana로 로그통합 (1) | 2025.09.24 |
| 확장성을 고려한 CI/CD 구축 방법 -3 (0) | 2025.09.22 |
| 확장성을 고려한 CI/CD 구축 방법 -2 (0) | 2025.09.17 |
| 확장성을 고려한 CI/CD 구축 방법 -1 (0) | 2025.09.12 |