단일 호스트 Cloud TPU 슬라이스로 MIG 만들기
이 문서에서는 여러 개의 독립적인 단일 호스트 TPU 슬라이스로 관리형 인스턴스 그룹 (MIG)을 만드는 방법을 설명합니다.
기본 요건
다음 기본 요건을 완료합니다.
- TPU용 프로젝트 설정에 설명된 대로 TPU용 프로젝트를 만듭니다.
- 리소스 계획에 설명된 대로 TPU 요구사항을 결정합니다.
여러 개의 단일 호스트 TPU 슬라이스로 MIG 만들기
MIG에서 여러 개의 독립적인 TPU VM을 만들려면 다음 단계를 따르세요.
- 인스턴스 템플릿을 만듭니다.
- MIG를 만듭니다.
인스턴스 템플릿 만들기
인스턴스 템플릿 구성은 사용한 소비 옵션(온디맨드, 스팟, 예약, Flex-start)에 따라 다릅니다. 소비 옵션에 대한 자세한 내용은 TPU 리소스 계획 을 참조하세요.
온디맨드 TPU VM의 인스턴스 템플릿 만들기
다음 명령어는 온디맨드 소비 옵션을 사용하는 인스턴스 템플릿을 만듭니다.
gcloud compute instance-templates create INSTANCE_TEMPLATE_NAME \
--machine-type=MACHINE_TYPE \
--maintenance-policy=TERMINATE \
--image-family=IMAGE_FAMILY \
--image-project=IMAGE_PROJECT
다음 자리표시자를 바꿉니다.
INSTANCE_TEMPLATE_NAME: 인스턴스 템플릿의 이름입니다.MACHINE_TYPE: TPU VM의 머신 유형입니다 (예:ct6e-standard-8t).IMAGE_FAMILY: TPU VM의 OS 이미지 계열 입니다. 특정 OS 버전을 설치하려면--image플래그를 사용합니다. OS 이미지에 대한 자세한 내용은 OS 이미지를 참조하세요.IMAGE_PROJECT: OS 이미지가 포함된 프로젝트입니다. TPU 이미지의 경우ubuntu-os-accelerator-images입니다.
TPU 스팟 VM의 인스턴스 템플릿 만들기
다음 명령어는 스팟 소비 옵션을 사용하는 인스턴스 템플릿을 만듭니다.
gcloud compute instance-templates create INSTANCE_TEMPLATE_NAME \
--machine-type=MACHINE_TYPE \
--maintenance-policy=TERMINATE \
--instance-termination-action=STOP \
--provisioning-model=SPOT \
--image-family=IMAGE_FAMILY \
--image-project=IMAGE_PROJECT
다음 자리표시자를 바꿉니다.
INSTANCE_TEMPLATE_NAME: 인스턴스 템플릿의 이름입니다.MACHINE_TYPE: TPU VM의 머신 유형입니다 (예:ct6e-standard-8t).IMAGE_FAMILY: TPU VM의 OS 이미지 계열 입니다. 특정 OS 버전을 설치하려면--image플래그를 사용합니다. OS 이미지에 대한 자세한 내용은 OS 이미지를 참조하세요.IMAGE_PROJECT: OS 이미지가 포함된 프로젝트입니다. TPU 이미지의 경우ubuntu-os-accelerator-images입니다.
TPU 예약 범위 VM의 인스턴스 템플릿 만들기
다음 명령어는 예약 범위 소비 옵션을 사용하는 인스턴스 템플릿을 만듭니다.
gcloud compute instance-templates create INSTANCE_TEMPLATE_NAME \
--machine-type=MACHINE_TYPE \
--maintenance-policy=TERMINATE \
--instance-termination-action=DELETE \
--reservation-affinity=specific \
--provisioning-model=reservation-bound \
--reservation=RESERVATION_NAME \
--image-family=IMAGE_FAMILY \
--image-project=IMAGE_PROJECT
다음 자리표시자를 바꿉니다.
INSTANCE_TEMPLATE_NAME: 인스턴스 템플릿의 이름입니다.MACHINE_TYPE: TPU VM의 머신 유형 입니다 (예:ct6e-standard-8t).RESERVATION_NAME: 사용하려는 특정 예약의 이름입니다.IMAGE_FAMILY: TPU VM의 OS 이미지 계열 입니다. 특정 OS 버전을 설치하려면--image플래그를 사용합니다. OS 이미지에 대한 자세한 내용은 OS 이미지를 참조하세요.IMAGE_PROJECT: OS 이미지가 포함된 프로젝트입니다. TPU 이미지의 경우ubuntu-os-accelerator-images입니다.
TPU Flex-start VM의 인스턴스 템플릿 만들기
다음 명령어는 Flex-start 소비 옵션을 사용하는 인스턴스 템플릿을 만듭니다.
gcloud compute instance-templates create INSTANCE_TEMPLATE_NAME \
--machine-type=MACHINE_TYPE \
--maintenance-policy=TERMINATE \
--instance-termination-action=DELETE \
--provisioning-model=FLEX_START \
--max-run-duration=DURATION \
--image-family=IMAGE_FAMILY \
--image-project=IMAGE_PROJECT
다음 자리표시자를 바꿉니다.
INSTANCE_TEMPLATE_NAME: 인스턴스 템플릿의 이름입니다.MACHINE_TYPE: TPU VM의 머신 유형 입니다 (예:ct6e-standard-8t).DURATION: TPU VM의 최대 실행 시간입니다(예:1h).IMAGE_FAMILY: TPU VM의 OS 이미지 계열 입니다. 특정 OS 버전을 설치하려면--image플래그를 사용합니다. OS 이미지에 대한 자세한 내용은 OS 이미지를 참조하세요.IMAGE_PROJECT: OS 이미지가 포함된 프로젝트입니다. TPU 이미지의 경우ubuntu-os-accelerator-images입니다.
MIG 만들기
다음과 같이
gcloud compute instance-groups managed create 명령어를 사용하여 영역 MIG 또는 리전 MIG를 만듭니다.
단일 호스트 TPU 슬라이스가 포함된 영역 MIG를 만들려면 다음 명령어를 사용합니다.
gcloud compute instance-groups managed create MIG_NAME \ --size=MIG_SIZE \ --template=INSTANCE_TEMPLATE_URL \ --zone=ZONE단일 호스트 TPU 슬라이스가 포함된 리전 MIG를 만들려면 다음 명령어를 사용합니다.
gcloud compute instance-groups managed create MIG_NAME \ --size=MIG_SIZE \ --template=INSTANCE_TEMPLATE_URL \ --region=REGION \ --target-distribution-shape=ANY_SINGLE_ZONE \ --instance-redistribution-type=none
다음 자리표시자를 바꿉니다.
MIG_NAME: MIG의 이름입니다.MIG_SIZE: MIG의 VM 수입니다.INSTANCE_TEMPLATE_URL: MIG에서 인스턴스를 만드는 데 사용할 인스턴스 템플릿의 URL입니다. URL에는 인스턴스 템플릿의 ID 또는 이름이 포함될 수 있습니다. 다음 값 중 하나를 지정합니다.- 리전 인스턴스 템플릿의 경우:
projects/PROJECT_ID/regions/REGION/instanceTemplates/INSTANCE_TEMPLATE_ID - 전역 인스턴스 템플릿의 경우:
INSTANCE_TEMPLATE_ID
- 리전 인스턴스 템플릿의 경우:
ZONE: MIG를 프로비저닝할 영역 입니다.REGION: MIG를 프로비저닝할 리전 입니다.
MIG에서 커스텀 이름으로 VM 만들기
각 VM에 커스텀 이름을 지정하여 MIG에서 VM을 만들 수 있습니다. 이는 디버깅에 유용하며 인스턴스가 특정 순서로 생성되도록 합니다.
gcloud
create-instance 명령어를 사용하여 커스텀 이름으로 VM을 만들고 --instance 플래그를 지정합니다.
여러 VM을 만들려면 각 VM에 대해 명령어를 반복합니다. 그렇지 않으면 REST API 메서드를 사용하여 단일 요청에서 여러 VM을 지정합니다.
영역 MIG의 경우 다음 명령어를 사용합니다.
gcloud compute instance-groups managed create-instance MIG_NAME \ --zone=ZONE \ --instance=INSTANCE_NAME리전 MIG의 경우 다음 명령어를 사용합니다.
gcloud compute instance-groups managed create-instance MIG_NAME \ --region=REGION \ --instance=INSTANCE_NAME
다음 자리표시자를 바꿉니다.
REST
다음 REST API 메서드 중 하나를 사용하여 커스텀 이름으로 VM을 만듭니다.
영역 MIG의 경우
instanceGroupManagers.createInstances를 사용합니다.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers/MIG_NAME/createInstances { "instances": [ { "name": "INSTANCE_NAME_1" }, { "name": "INSTANCE_NAME_2" }, ... ] }리전 MIG의 경우
regionInstanceGroupManagers.createInstances를 사용합니다.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers/MIG_NAME/createInstances { "instances": [ { "name": "INSTANCE_NAME_1" }, { "name": "INSTANCE_NAME_2" }, ... ] }
다음 자리표시자를 바꿉니다.
다음 단계
- TPU VM 및 MIG에 대해 알아봅니다.
- 멀티 호스트 Cloud TPU 슬라이스로 MIG를 만드는 방법을 알아봅니다.
- TPU VM을 관리하는 방법을 알아봅니다.
- GKE의 TPU에 대해 알아봅니다.
- TPU에서 ML 워크로드를 실행하는 방법(예: TPU에서 vLLM으로 Qwen2-72B-Instruct 서빙)을 알아봅니다.