더북(TheBook)

예제 5-2 nginx-with-hostPath.yaml, 호스트경로 볼륨의 사용 예

spec:                                    # 파드 정의 중 일부 발췌
  containers:                            # 전체 정의에는 컨피그맵 볼륨의 마운트가 포함됨
    - image: nginx:1.17-alpine
      name: nginx
      ports:
        - containerPort: 80
      volumeMounts:
        - name: cache-volume
          mountPath: /data/nginx/cache   # 프록시의 캐시 저장 경로
  volumes:
    - name: cache-volume
      hostPath:                          # 노드의 디렉터리를 사용함
        path: /volumes/nginx/cache       # 사용할 노드의 디렉터리
        type: DirectoryOrCreate          # 디렉터리가 없으면 생성할 것

이 방법을 사용하면 파드가 항상 같은 노드에서 동작하는 한 볼륨의 생애 주기가 노드의 디스크와 같아진다. 노드가 하나뿐인 실습 환경에서는 이 점이 보장된다. 새로 생성된 대체 파드는 시작할 때 호스트경로 볼륨을 읽어 들인다. 그리고 볼륨에서 캐시된 데이터를 발견하면 곧바로 이 데이터를 프록시에서 제공한다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.