GKE 볼륨 포퓰레이터는 핵심 Kubernetes 볼륨 포퓰레이터 개념을 활용합니다. GKE 볼륨 포퓰레이터를 사용하면 빈 볼륨을 프로비저닝하는 대신 PVC가 GCPDataSource 커스텀 리소스를 참조할 수 있습니다. 이 커스텀 리소스는 소스 Cloud Storage 버킷과 필요한 사용자 인증 정보를 지정합니다.
GCPDataSource 리소스를 가리키는 dataSourceRef를 사용하여 PVC를 만들면 GKE 볼륨 포퓰레이터가 데이터 전송을 시작합니다. 지정된 Cloud Storage 버킷 URI에서 기본 영구 스토리지 볼륨으로 데이터를 복사한 후 볼륨을 포드에서 사용할 수 있도록 합니다.
이 프로세스를 통해 수동 데이터 전송 스크립트나 CLI 명령어를 사용할 필요가 줄어들고 대규모 데이터 세트가 영구 볼륨으로 자동 전송됩니다. GKE 볼륨 포퓰레이터는 다음 소스 및 대상 유형 간의 데이터 전송을 지원합니다.
AI/ML 워크로드 가속화: 대규모 데이터 세트, 모델, 가중치를 고성능 스토리지에 직접 빠르게 사전 로드하여 학습 및 추론 작업을 가속화합니다.
GKE 볼륨 포퓰레이터 사용 사례
GKE 볼륨 포퓰레이터를 사용하여 AI/ML용 대규모 학습 데이터 세트를 로드할 수 있습니다. Cloud Storage 버킷에 저장된 대규모 언어 모델 (LLM) 학습용 멀티 테라바이트 데이터 세트가 있다고 가정해 보겠습니다. 학습 작업이 GKE에서 실행되며 높은 I/O 성능이 필요합니다. 데이터를 수동으로 복사하는 대신 GKE 볼륨 포퓰레이터를 사용하여 Parallelstore 또는 Hyperdisk ML 볼륨을 자동으로 프로비저닝하고 PVC가 생성될 때 Cloud Storage의 데이터 세트로 채울 수 있습니다. 이 자동화된 프로세스를 통해 학습 포드가 데이터에 즉시 고속으로 액세스할 수 있습니다.
GKE 볼륨 포퓰레이터를 사용할 수 있는 몇 가지 추가 예시는 다음과 같습니다.
추론 서빙을 위한 모델 로드 시간을 가속화하기 위해 Cloud Storage의 AI/ML 모델 가중치 및 애셋을 Hyperdisk ML 볼륨에 사전 캐싱합니다.
성능이 우수한 디스크 액세스가 필요한 상태 저장 애플리케이션을 위해 Cloud Storage에서 영구 볼륨으로 데이터를 이전합니다.
[[["이해하기 쉬움","easyToUnderstand","thumb-up"],["문제가 해결됨","solvedMyProblem","thumb-up"],["기타","otherUp","thumb-up"]],[["이해하기 어려움","hardToUnderstand","thumb-down"],["잘못된 정보 또는 샘플 코드","incorrectInformationOrSampleCode","thumb-down"],["필요한 정보/샘플이 없음","missingTheInformationSamplesINeed","thumb-down"],["번역 문제","translationIssue","thumb-down"],["기타","otherDown","thumb-down"]],["최종 업데이트: 2025-09-04(UTC)"],[],[],null,["# About GKE Volume Populator\n\n[Autopilot](/kubernetes-engine/docs/concepts/autopilot-overview) [Standard](/kubernetes-engine/docs/concepts/choose-cluster-mode)\n\n*** ** * ** ***\n\nThe Google Kubernetes Engine (GKE) Volume Populator can help you automate and streamline the process of preloading data from [Cloud Storage buckets](/storage/docs/buckets) to destination [PersistentVolumeClaims (PVCs)](/kubernetes-engine/docs/concepts/persistent-volumes#persistentvolumeclaims) during [dynamic provisioning](/kubernetes-engine/docs/concepts/persistent-volumes#dynamic_provisioning).\n\n\u003cbr /\u003e\n\nHow GKE Volume Populator works\n------------------------------\n\nGKE Volume Populator leverages the core [Kubernetes Volume Populator](https://kubernetes.io/blog/2022/05/16/volume-populators-beta/) concept. Instead of provisioning an empty volume, the GKE Volume Populator allows a PVC to reference a [`GCPDataSource`](/kubernetes-engine/docs/reference/crds/gcpdatasource) custom resource. This custom resource specifies the source Cloud Storage bucket and the necessary credentials.\n\nWhen you create a PVC with a `dataSourceRef` pointing to a `GCPDataSource` resource, the GKE Volume Populator initiates the data transfer. It copies data from the specified Cloud Storage bucket URI into the underlying persistent storage volume before making the volume available to your Pods.\n\nThis process reduces your need to use manual data transfer scripts or CLI commands, and automates the transfer of large datasets to persistent volumes. GKE Volume Populator supports data transfers between the following source and destination types:\n\n- Cloud Storage to [Parallelstore](/kubernetes-engine/docs/concepts/parallelstore-for-gke)\n- Cloud Storage to [Hyperdisk ML](/kubernetes-engine/docs/concepts/hyperdisk#hyperdisk-ml)\n\nGKE Volume Populator is a GKE managed component that's enabled by default on both Autopilot and Standard clusters. You primarily interact with GKE Volume Populator through the [gcloud CLI](/sdk/gcloud) and [kubectl](https://kubernetes.io/docs/reference/kubectl/) CLI.\n\n### Architecture\n\nThe following diagram shows how data flows from the source storage to the destination\nstorage, and how the [PersistentVolume](/kubernetes-engine/docs/concepts/persistent-volumes) for the destination storage is created by using GKE Volume Populator.\n\n1. You create a PVC that references a [`GCPDataSource`](/kubernetes-engine/docs/reference/crds/gcpdatasource) custom resource.\n2. The GKE Volume Populator detects the PVC and initiates a data transfer Job.\n3. The transfer Job runs on an existing node pool, or a new one is created if node auto-provisioning is enabled.\n4. The transfer Job copies data from the Cloud Storage bucket specified in the `GCPDataSource` resource to the destination storage volume.\n5. After the transfer is complete, the PVC is bound to the destination storage volume, making the data available to the workload Pod.\n\nKey benefits\n------------\n\nThe GKE Volume Populator offers several benefits:\n\n- **Automated data population**: automatically populate volumes with data from Cloud Storage during provisioning, which helps reduce operational overhead.\n- **Seamless data portability**: move data from object storage to high-performance file (Parallelstore) or block storage (Hyperdisk) systems to help optimize for price or performance based on your workload needs.\n- **Simplified workflows**: reduce the need for separate data loading Jobs, or manual intervention to prepare persistent volumes.\n- **Integration with [Identity and Access Management (IAM)](/iam/docs/overview)** : use IAM-based authentication through [Workload Identity Federation for GKE](/kubernetes-engine/docs/concepts/workload-identity) to help ensure secure data transfer with fine-grained access control.\n- **Accelerated AI/ML workloads**: quickly preload large datasets, models, and weights directly into high-performance storage to help speed up training and inference tasks.\n\nUse cases for GKE Volume Populator\n----------------------------------\n\nYou can use GKE Volume Populator to load large training datasets for AI/ML. Imagine you have a multi-terabyte dataset for training a large language model (LLM) stored in a Cloud Storage bucket. Your training Job runs on GKE and requires high I/O performance. Instead of manually copying the data, you can use the GKE Volume Populator to automatically provision a [Parallelstore](/kubernetes-engine/docs/how-to/persistent-volumes/volume-populator) or [Hyperdisk ML](/kubernetes-engine/docs/how-to/persistent-volumes/volume-populator-hdml) volume, and populate it with the dataset from Cloud Storage when the PVC is created. This automated process helps ensure that your training Pods start with immediate, high-speed access to the data.\n\nHere are some more examples where you can use the GKE Volume Populator:\n\n- Pre-caching AI/ML model weights and assets from Cloud Storage into Hyperdisk ML volumes to accelerate model loading times for inference serving.\n- Migrating data from Cloud Storage to persistent volumes for stateful applications requiring performant disk access.\n\nWhat's next\n-----------\n\n- [Automate data transfer to Parallelstore by using GKE Volume Populator](/kubernetes-engine/docs/how-to/persistent-volumes/volume-populator).\n- [Automate data transfer to Hyperdisk ML by using GKE Volume Populator](/kubernetes-engine/docs/how-to/persistent-volumes/volume-populator-hdml).\n- [Troubleshooting GKE Volume Populator data transfer issues](/kubernetes-engine/docs/troubleshooting/troubleshooting-gke-volume-populator)."]]