Certified Kubernetes Administration - 10
2024-06-20
- Kubernetes
- Cloud
쿠버네티스 파드(Kubernetes Pods) 강의 개요
이 강의에서는 쿠버네티스 파드에 대해 다룹니다. 파드를 이해하기 전에 다음과 같은 전제 조건이 충족되었다고 가정합니다:
-
애플리케이션이 이미 개발되어 Docker 이미지로 빌드되고 Docker Hub와 같은 Docker 저장소에 업로드됨.
-
쿠버네티스 클러스터가 이미 설정되어 있고 작동 중임.
파드의 개념
-
쿠버네티스에서는 애플리케이션을 컨테이너 형태로 클러스터의 워커 노드에 배포하는 것이 목표입니다.
-
쿠버네티스는 컨테이너를 직접적으로 워커 노드에 배포하지 않고, 파드라는 객체로 캡슐화합니다.
-
파드는 애플리케이션의 단일 인스턴스입니다.
-
파드는 쿠버네티스에서 생성할 수 있는 가장 작은 객체입니다.
파드의 확장(Scaling)
-
사용자 수가 증가하면 애플리케이션을 확장해야 합니다.
-
같은 파드 내에 새로운 컨테이너 인스턴스를 생성하지 않고, 새로운 파드를 생성합니다.
-
새로운 노드가 필요하면 클러스터에 추가하여 물리적 용량을 확장할 수 있습니다.
-
확장하려면 새로운 파드를 생성하고, 축소하려면 기존 파드를 삭제합니다.
파드와 컨테이너의 관계
-
일반적으로 파드는 단일 애플리케이션 컨테이너와 일대일 관계를 가집니다.
-
하지만, 동일한 종류가 아닌 여러 컨테이너를 포함할 수 있습니다.
-
예를 들어, 웹 애플리케이션을 보조하는 헬퍼 컨테이너가 같은 파드 내에 있을 수 있습니다.
-
이러한 헬퍼 컨테이너는 웹 애플리케이션 컨테이너와 함께 생성되고 함께 종료됩니다.
-
파드의 장점
-
컨테이너는 같은 네트워크 네임스페이스를 공유하므로 로컬 호스트로 서로 통신할 수 있습니다.
-
동일한 스토리지를 쉽게 공유할 수 있습니다.
Docker 컨테이너와 파드의 비교
-
Docker 컨테이너를 직접 사용하는 경우, 네트워크 연결 및 공유 스토리지 설정을 직접 관리해야 합니다.
-
파드를 사용하면 쿠버네티스가 자동으로 이 모든 작업을 처리합니다.
-
파드는 컨테이너가 함께 생성되고 함께 종료되도록 보장합니다.
파드 배포 방법
-
kubectl run nginx --image nginx
명령어를 사용하여 파드를 배포합니다.-
이 명령어는 Docker 컨테이너를 배포하기 위해 자동으로 파드를 생성합니다.
-
이미지 이름을
--image
파라미터로 지정해야 합니다.
-
-
Docker Hub 또는 조직 내의 프라이빗 저장소에서 이미지를 가져올 수 있습니다.
-
kubectl get pods
명령어로 클러스터 내의 파드 목록을 확인할 수 있습니다.
네트워킹 및 서비스
-
외부 사용자가 NGINX 웹 서버에 접근할 수 있도록 하는 방법은 이후 강의에서 다룹니다.
-
현재는 파드를 배포하는 방법만 배우고, 이후에 네트워킹 및 서비스에 대해 학습할 예정입니다.
요약
-
파드는 쿠버네티스에서 애플리케이션을 배포하는 기본 단위입니다.
-
파드를 확장하려면 새로운 파드를 생성하고, 축소하려면 기존 파드를 삭제합니다.
-
여러 컨테이너를 포함할 수 있지만, 일반적으로 단일 애플리케이션 컨테이너와 일대일 관계를 가집니다.
-
kubectl run
명령어를 사용하여 파드를 배포하고,kubectl get pods
명령어로 파드 상태를 확인합니다.
다음 강의에서 뵙겠습니다.
Certified ...
Certified ...