본문 바로가기
IT Tech/Cloud

[YAML] POD생성

by _><- 2021. 8. 22.
반응형

nginx로 static web을 만드는 YAML

apiVersion: v1
kind: Pod
metadata:
  name: static-web
  labels:
    role: myrole
spec:
  containers:
    - name: web
      image: nginx
      ports:
        - name: web
          containerPort: 80
          protocol: TCP

pod에 볼륨구성, 컨테이너가 종료되거나 재시작되도 pod가 유지되는 동안 지속되는 emptyDir유형의 볼륨 구성

apiVersion: v1
kind: Pod
metadata:
  name: redis
spec:
  containers:
  - name: redis
    image: redis
    volumeMounts:
    - name: redis-storage
      mountPath: /data/redis
  volumes:
  - name: redis-storage
    emptyDir: {}

스토리지로 퍼시스턴트볼륨(PersistentVolume)을 사용하도록 파드 설정

- pod는 PVC는 지정하지만 PV를 지정하지는 않는다. pod입장에서는 PVC가 볼륨이다.

apiVersion: v1
kind: Pod
metadata:
  name: task-pv-pod
spec:
  volumes:
    - name: task-pv-storage
      persistentVolumeClaim:
        claimName: task-pv-claim
  containers:
    - name: task-pv-container
      image: nginx
      ports:
        - containerPort: 80
          name: "http-server"
      volumeMounts:
        - mountPath: "/usr/share/nginx/html"
          name: task-pv-storage

노드 affinity를 사용해서 pod 스케줄

- affinity : 한번연결된 것을 다음에도 유지

- 파드가 disktype=ssd 레이블이 있는 노드에만 스케줄

apiVersion: v1
kind: Pod
metadata:
  name: nginx
spec:
  affinity:
    nodeAffinity:
      requiredDuringSchedulingIgnoredDuringExecution:
        nodeSelectorTerms:
        - matchExpressions:
          - key: disktype
            operator: In
            values:
            - ssd            
  containers:
  - name: nginx
    image: nginx
    imagePullPolicy: IfNotPresent

 

참고 : https://kubernetes.io/ko/docs/tasks/configure-pod-container/configure-volume-storage/

반응형

'IT Tech > Cloud' 카테고리의 다른 글

[YAML] PV, PVC 만들기  (0) 2021.08.22
[YAML] Service 만들기  (0) 2021.08.22
[k8s] Helm  (0) 2021.08.20
[k8s] 튜토리얼, 학습사이트  (0) 2021.08.18
[k8s] Kubernetes Architecture and Concepts  (0) 2021.08.18