- Pod란 무엇인가 ?
Pod란 쿠버네티스에서 최소 배포 단위로 하나 이상의 컨테이너를 포함한다.
Docker를 사용해본 사용자라면 알듯 Docker에서는 최소의 배포 단위가 컨테이너이다.
하지만 쿠버네티스는 하나의 컨테이너가 아닌 컨테이너 및 네트워크, 스토리지가 포함된 Pod로 배포한다.
기본적으로 하나의 Pod에는 1개의 컨테이너를 올리지만 두 개의 컨테이너가 밀접한 관계를 가지고 있을 때에는
하나의 Pod에 하나 이상의 컨테이너를 배포하기도 한다.
아래는 간단한 Pod 배포 yaml 파일이다.
- Test-pod.yaml
apiVersion: v1
kind: Pod
metadata:
name: Test-Pod
spec:
containers:
- name: nginx
image: nginx:latest
ports:
- containerPort: 8080
- apiversion
이 스크립트를 실행하기 위한 API 버전으로 다양한 API 버전이 있다.
나중에 API 버전에 따른 가능을 정리하여 올릴 예정
- kind
리소스의 종류를 정의한다.
우리는 Pod를 정의하기 때문에 Pod라고 작성하였고 외에 Service, Deployment, ReplicaSet등이 있다.
- metadata
생성할 리소스의 다양한 메타데이터를 작성한다.
리소스의 이름, 라벨등이 포함된다.
※ 쿠버네티스에서 라벨은 중요한 역할을 한다.
- spec
생성할 리소스에 대한 상세 스펙을 설정한다.
container에 사용할 이미지, 오픈할 컨테이너 포트등 상세 스펙을 정의한다.
추가적으로 쿠버네티스에서 yaml 파일을 작성하여 적용하는 명령어 전체 작성
1. vi Test-pod.yaml //vi 명령어를 사용하여 생성할 yaml파일 생성 및 작성
2. 위의 yaml파일 작성
apiVersion: v1
kind: Pod
metadata:
name: Test-Pod
spec:
containers:
- name: nginx
image: nginx:latest
ports:
- containerPort: 8080
3. kubectl create -f Test-pod.yaml
위의 3 과정을 통해 yaml파일을 작성 및 적용한다. 이후에 yaml 파일을 수정한 뒤 적용할 때에는
kubectl apply -f Test-pod.yaml 명령어를 사용하여 변경사항을 적용한다.
'OS > Kubernetes' 카테고리의 다른 글
🟢 [Kubernetes] YAML로 Nginx 배포 및 파드 확장하기 (0) | 2025.06.30 |
---|---|
🟢 [Kubernetes] kubectl로 Nginx 배포하기 – 실습 정리 (0) | 2025.06.30 |
🟢 [Kubernetes] Minikube 설치 및 클러스터 시작하기 (0) | 2025.06.30 |
📦 Kubernetes & Minikube 개념 정리 (0) | 2025.06.28 |
[Kubernetes] 명령어 모음 (0) | 2021.04.02 |