Workspace와 Job의 컨테이너는 일회성이에요. 데이터셋, 모델 체크포인트, 큰 설정 파일을 학습 스크립트가 사용할 수 있게 하려면 영구 볼륨에 올리고 그 볼륨을 워크로드에 마운트해야 해요. 이 가이드에서는 데이터를 볼륨에 올리는 실용적인 방법들을 안내해요.Documentation Index
Fetch the complete documentation index at: https://docs.cloud.vessl.ai/llms.txt
Use this file to discover all available pages before exploring further.
데이터를 Job 명령어에 직접 인코딩해서 넣지 마세요. gzip+base64 블롭, 긴 heredoc, 그 외 큰 페이로드를
--cmd에 붙여 넣는 방식은 API 단에서 거절돼요. 명령어 본문이 256 KiB를 넘거나, 환경변수 값이 8 KiB를 넘거나, 환경변수 쌍이 128개를 초과하면 4xx 오류로 응답해요. 아래 패턴 중 하나를 사용하세요.한눈에 보기
어떤 종류의 볼륨인지에 따라 접근 방식이 달라요.| 볼륨 종류 | 데이터 적재 방법 |
|---|---|
| Object storage | 내 컴퓨터에서 vesslctl volume upload로 직접 업로드하거나, vesslctl volume token으로 발급받은 자격증명을 쓰는 S3 호환 클라이언트로 업로드해요. |
| Cluster storage | 볼륨을 Workspace에 마운트한 뒤, 그 Workspace 안에서 마운트 경로로 데이터를 가져와요. |
Object storage: 내 컴퓨터에서 업로드
vesslctl volume upload가 기본 경로예요. 파일이 내 컴퓨터에서 S3로 바로 전송되기 때문에, 전송 크기는 네트워크 대역폭과 스토리지 할당량으로만 제한돼요.
Object storage 볼륨 선택 또는 생성
로컬 파일 업로드
--dry-run은 실제 전송 없이 파일 목록을 미리 보여줘요. --overwrite는 기존 원격 키를 덮어쓰고, 기본값은 동일 키를 건너뛰어요. 전체 플래그는 vesslctl volume upload를 참고하세요.확인하고 마운트
--object-volume <volume-slug>:/shared로 전달하세요.Cluster storage: Workspace를 거쳐서 적재
vesslctl volume upload는 Cluster storage 볼륨을 지원하지 않아요. 대신 Cluster storage 볼륨을 Workspace에 마운트한 뒤, 그 Workspace 안에서 마운트 경로로 데이터를 가져오세요.
볼륨을 마운트한 Workspace 만들기
Persistent volume에서 Cluster storage 볼륨을 명확한 경로(예: 필요한 도구(
/data)에 마운트하세요:curl, wget, aws, huggingface-cli, git-lfs 등)가 들어 있는 어떤 컨테이너 이미지든 괜찮아요. 데이터를 옮기는 동안의 시간당 비용을 최소화하려면 vesslctl resource-spec list에서 CPU only 스펙을 골라요.Workspace에 접속
Workspace가
running 상태가 될 때까지 기다린 뒤 SSH 또는 JupyterLab으로 접속하세요. Workspace에 접속하기를 참고하세요.접속한 뒤 cd /data(또는 지정한 마운트 경로)로 이동하세요. 이 경로 아래에 쓰는 모든 데이터는 Cluster storage 볼륨에 저장되고, Workspace를 일시정지하거나 terminate해도 유지돼요.패턴 A: 인터넷에서 직접 다운로드
가장 단순하고 흔한 경우예요. 데이터가 이미 공개 URL(또는 토큰 인증 URL)에 있을 때 쓰세요.aria2c -x 16이 HTTP 다운로드를 병렬화해 주고, rclone copy는 클라우드 스토리지 제공자별 retry/검증을 자동으로 처리해요.
패턴 B: 내 컴퓨터에서 SSH로 푸시
데이터가 내 컴퓨터에만 있고 인터넷을 한 번 거치는 게 번거로울 때, SSH로 마운트 경로에 직접 복사하세요.rsync가 더 안전해요. 연결이 끊겨도 이어서 진행할 수 있고(--partial), 다시 실행하면 변경된 파일만 보내요.
패턴 C: Object storage를 중간 단계로 거치기
내 컴퓨터의 데이터를 다른 클러스터의 Cluster storage(또는 한 클러스터에서 다른 클러스터)로 일회성 복사할 때, Object storage를 휴대 가능한 중간 저장소로 활용해요. Object storage는 모든 클러스터에서 접근 가능하니까요.패턴 D: Custom HTTP 포트 열기
브라우저로 끌어다 놓는 업로드 UI, 동기화 서버, 외부 서비스의 webhook 같은 게 필요할 때 쓰세요. Workspace 생성 시 custom HTTP 또는 TCP 포트를 열고(Workspace 만들기 → Advanced settings → 포트 참고) 마운트 경로에서 직접 서비스하면 돼요.안티패턴: --cmd에 데이터를 박지 마세요
특히 LLM 코딩 에이전트가 빠지기 쉬운 함정이 있어요. 데이터셋을 gzip+base64로 인코딩해 셸 한 줄로 --cmd에 통째로 넣는 방식이에요:
Job.command는 256 KiB, 환경변수 값은 각 8 KiB, 환경변수 쌍의 총 개수는 128개로 제한되고, 이 한도를 넘으면 4xx로 응답해요.
언제든 데이터는 볼륨에 올린 뒤(이 페이지) 마운트해서 사용하세요.
다음으로
- 스토리지 이해하기: Cluster storage와 Object storage의 특성과 가격을 비교해요.
- 볼륨 만들기: 콘솔에서 새 Object storage 볼륨을 만들어요.
- Workspace 만들기: Workspace 생성 시 볼륨을 마운트해요.
vesslctl volume: upload, download, token, 관리 명령의 전체 CLI 레퍼런스.
