이 페이지에서는 터미널에서 VESSL Cloud를 사용할 때 자주 마주치는 세 가지 실전 시나리오를 안내해요. 각 시나리오는 vesslctl이 이미 설치되어 있고 로그인이 완료된 상태를 전제로 해요.
GPU Workspace 실행하기
인터랙티브 GPU Workspace를 실행하고, SSH로 접속한 다음, 작업이 끝나면 일시정지해요.
Workspace 생성
vesslctl workspace create \
--name my-dev-box \
--cluster <cluster-name> \
--resource-spec <spec-name> \
--image pytorch/pytorch:2.3.0-cuda12.1-cudnn8-devel
<cluster-name>과 <spec-name>은 vesslctl cluster list와 vesslctl resource-spec list에서 확인할 수 있어요. 생성 후 vesslctl workspace list에서 Workspace slug(예: my-dev-box-abc123)를 복사해 다음 단계에서 사용해요.Workspace 상태 확인
vesslctl workspace show <workspace-slug>
상태가 running으로 표시될 때까지 기다려 주세요.SSH로 접속
vesslctl workspace ssh <workspace-slug>
비용 절약을 위해 일시정지
하루 작업이 끝나면 Workspace를 일시정지하세요. 파일과 환경은 그대로 보존되면서 비용은 절감돼요.vesslctl workspace pause <workspace-slug>
나중에 다시 시작
중단했던 곳에서 바로 이어서 작업할 수 있어요:vesslctl workspace start <workspace-slug>
데이터셋 업로드하기
Volume을 만들고, CLI로 데이터를 업로드한 다음, 내용을 확인해요.
Volume 생성
vesslctl volume create \
--name training-data \
--storage <storage-name> \
--teams <team-name> \
--description "ImageNet subset for fine-tuning"
<storage-name>은 vesslctl storage list, <team-name>은 vesslctl team list에서 확인할 수 있어요. --name, --storage, --teams는 모두 필수예요. 생성 후 vesslctl volume list에서 Volume slug(예: training-data-abc123)를 복사해 다음 단계에서 사용해요.데이터셋 업로드
vesslctl volume upload <volume-slug> ./dataset/
단일 파일이나 전체 디렉토리를 한 줄로 올릴 수 있어요. 특정 경로 아래에 두고 싶으면 --remote-prefix datasets/v1/, 제외할 패턴이 있으면 --exclude "*.pyc" 플래그를 사용해요.업로드 확인
vesslctl volume ls <volume-slug> --prefix /
DVC, aws s3 cp, 커스텀 파이프라인 등 S3 호환 도구와 연동이 필요하면 vesslctl volume token <volume-slug>로 임시 S3 자격 증명과 엔드포인트 URL을 받아서 쓰면 돼요.
배치 잡 제출하기
배치 잡을 제출하고, 진행 상황을 확인하고, 로그를 가져와요.
Job 제출
vesslctl job create \
--name nightly-train \
--resource-spec <spec-name> \
--image pytorch/pytorch:2.3.0-cuda12.1-cudnn8-devel \
--cmd "python train.py --epochs 10 --lr 3e-4"
로그 스트리밍
vesslctl job logs <job-slug> --follow
vesslctl job list에서 Job slug(예: nightly-train-abc123)를 복사해서 넣어 주세요. --follow 플래그를 사용하면 Job이 완료될 때까지 실시간으로 로그를 스트리밍해요.