볼륨 만들기


이 페이지에서는 클러스터에서 볼륨 리소스를 만드는 방법을 설명합니다. 자세한 내용은 볼륨에 대한 Kubernetes 문서를 참조하세요.

배포에 볼륨 사용

각 포드에 볼륨이 하나 이상 포함되는 포드의 배포를 만들 수 있습니다. 다음 배포 매니페스트에서는 각각 emptyDir 볼륨이 포함된 3개의 Pod로 구성된 배포를 설명합니다.

예를 들면 다음과 같습니다.

  • metadata: name 필드는 volumes-example-deployment라는 배포를 지정합니다.
  • 포드 템플릿 사양에는 cache-volume이라는 emptyDir 볼륨을 설명하는 volumes 필드가 포함되어 있습니다.
  • 컨테이너 사양에는 cache-volume이라는 볼륨이 파일 경로 /cache에 마운트되도록 지정하는 volumeMounts: 필드가 포함됩니다.
  • 매니페스트 파일의 이름은 volumes-demo.yaml입니다.
apiVersion: apps/v1
kind: Deployment
metadata:
  name: volumes-example-deployment
spec:
  replicas: 3
  selector:
    matchLabels:
      app: demo
  template:
    metadata:
      labels:
        app: demo
    spec:
      containers:
      - name: test-container
        image: us-docker.pkg.dev/google-samples/containers/gke/hello-app:1.0
        volumeMounts:
        - mountPath: /cache
          name: cache-volume
      volumes:
        - name: cache-volume
          emptyDir: {}

이 매니페스트 파일에서 배포를 만들려면 다음 명령어를 실행하세요.

kubectl apply -f volumes-demo.yaml

다음 명령어로 배포가 올바르게 실행 중이고 예상되는 볼륨이 포함되었는지 확인합니다.

kubectl describe pods volumes-example-deployment

그러면 배포에 포함된 3개의 포드 각각에 대한 정보가 출력됩니다. 각 포드에 컨테이너, 테스트 컨테이너가 /cache 마운트로 포함된 것으로 출력에 표시됩니다.

Mounts:
  /cache from cache-volume (rw)

또한 각 포드에 cache-volume이라는 볼륨이 포함된 것으로 출력에 표시됩니다.

Volumes:
  cache-volume:
    Type:    EmptyDir (a temporary directory that shares a pod's lifetime)

배포 만들기에 대한 자세한 내용은 배포 만들기를 참조하세요.

다음 단계