클라우드,가상화/K8S

k8s - Pod

aiemag 2023. 7. 2. 16:13
반응형

 

 

Pod?

워크로드 리소스의 최소 단위.

한 개 이상의 컨테이너로 구성.

같은 파드에 포함된 컨테이너끼리는 네트워크적으로 격리되어 있지 않고 IP 주소를 공유.

컨테이너가 두 개 들어 있는 파드를 생성한 경우 같은 IP 주소를 가짐.

 

 

Pod Design Pattern

크게 Sidecar, ambassador, adapter 가 있음.

 

Sidecar Pattern

메인 컨테이너 외에 보조적인 기능을 추가하는 서브 컨테이너를 포함하는 패턴.

대부분 데이터와 설정에 관련된 패턴.

 

사용 예

1. 특정 변경 사항을 감지하여 동적으로 설정을 변경하는 컨테이너

2. 깃 저장소와 로컬 스토리지를 동기화하는 컨테이너

3. 애플리케이션의 로그 파일을 오브젝트 스토리지로 전송하는 컨테이너

 

Ambassador Pattern

메인 컨테이너가 외부 시스템과 접속할 때 대리로 중계해주는 서브 컨테이너를 포함한 패턴.

엠베서더 컨테이너를 사용함으로써 메인 컨테이너에서는 항상 localhost를 지정하여 엠베서더 컨테이너로만 접속하고 엠베서더 컨테이너가 여러 목적지에 중계하여 연결하도록 구성하면 느슨한 결합을 유지할 수 있다.

 

 

Adapter Pattern

서로 다른 데이터 형식을 변환해주는 어댑터 컨테이너를 포함하는 패턴.

외부 요청에 맞게 데이터 형식으로 변환하고 데이터를 반환해 줌.

어댑터 패턴의 경우도 메인 컨테이너와 어댑터 컨테이너 간에 localhost를 통해 접속 가능.

 

Pod Generation

manifest 작성

apiVersion: v1
kind: Pod
metadata:
  name: sample-pod
spec:
  containers:
    - name: nginx
      image: nginx:1.16

 

pod 생성 및 정보 조회

[root@k8s-master pod]# k apply -f sample-pod.yaml
pod/sample-pod created

[root@k8s-master pod]# k get pods
NAME         READY   STATUS              RESTARTS   AGE
sample-pod   0/1     ContainerCreating   0          4s

[root@k8s-master pod]# k get pods --output wide
NAME         READY   STATUS    RESTARTS   AGE   IP               NODE          NOMINATED NODE   READINESS GATES
sample-pod   1/1     Running   0          33s   192.168.194.88   k8s-worker1   <none>           <none>

 

반응형

'클라우드,가상화 > K8S' 카테고리의 다른 글

k8s - Deployment  (0) 2023.07.02
k8s - ReplicaSet  (0) 2023.07.02
k8s - Overview  (0) 2023.07.02
Minikube 설치  (0) 2023.05.20
Kubernetes Install  (0) 2023.04.27