Vertex AI에 Ray 클러스터 만들기

콘솔을 사용하거나 Python용 Vertex AI SDK를 사용하여 Vertex AI에 Ray 클러스터를 만들 수 있습니다.

시작하기 전에 Vertex AI의 Ray 개요를 읽고 필요한 모든 기본 요건 도구를 설정해야 합니다.

콘솔

  1. Google Cloud 콘솔에서 Vertex AI의 Ray 페이지로 이동합니다.

    Vertex AI의 Ray 페이지로 이동

  2. 클러스터 만들기를 클릭하여 클러스터 만들기 패널을 엽니다.

  3. 클러스터 만들기 패널의 각 단계에서 기본 클러스터 정보를 검토하거나 바꿉니다. 계속을 클릭하여 각 단계를 완료합니다.

    1. 이름 및 리전에서 이름을 지정하고 클러스터의 리전을 선택합니다.

    2. 컴퓨팅 설정에서 머신 유형, 가속기 유형 및 수, 디스크 유형 및 크기, 복제본 수를 포함하여 Vertex AI의 헤드 노드에서 Ray 클러스터 구성을 지정합니다. 고급 옵션에서 암호화 키를 지정할 수 있습니다.

    3. 네트워킹에서 Vertex AI의 Ray와 함께 사용할 VPC 피어링 네트워크를 지정합니다.

      아직 VPC 네트워크에 비공개 서비스 액세스 연결을 설정하지 않았으면 연결 설정을 클릭합니다. 비공개 서비스 액세스 연결 만들기 패널에서 다음 단계를 완료하고 계속을 클릭합니다.

      1. Service Networking API를 사용 설정합니다.

      2. IP 범위 할당에서 IP 범위를 선택 또는 만들거나 Google에서 자동으로 할당하도록 허용할 수 있습니다.

      3. 연결 만들기에서 네트워크할당된 IP 범위 정보를 검토합니다.

      4. 연결 만들기를 클릭합니다.

  4. 만들기를 클릭합니다.

Vertex AI SDK의 Ray

VPC 네트워크 내 대화형 Python 환경에서 다음을 사용하여 Vertex AI에 Ray 클러스터를 만듭니다.

import ray
import vertex_ray
from google.cloud import aiplatform
from vertex_ray import Resources

# Define a default CPU cluster, machine_type is n1-standard-8, 1 head node and 1 worker node
head_node_type = Resources()
worker_node_types = [Resources()]

# Or define a GPU cluster.
head_node_type = Resources(
  machine_type="n1-standard-8",
  node_count=1,
)

worker_node_types = [Resources(
  machine_type="n1-standard-8",
  node_count=2,  # Can be > 1
  accelerator_type="NVIDIA_TESLA_K80",
  accelerator_count=1,
)]

aiplatform.init()
# Initialize Vertex AI to retrieve projects for downstream operations.
# Create the Ray cluster on Vertex AI
CLUSTER_RESOURCE_NAME = vertex_ray.create_ray_cluster(
  head_node_type=head_node_type,
  network=NETWORK,
  worker_node_types=worker_node_types,
  python_version="3.10",  # Optional
  ray_version="2.9",  # Optional
  cluster_name = CLUSTER_NAME
)

각 항목의 의미는 다음과 같습니다.

  • CLUSTER_NAME: 프로젝트 전체에서 고유해야 하는 Vertex AI의 Ray 클러스터 이름입니다.

  • NETWORK는 피어링된 VPC 네트워크의 전체 이름이며 projects/PROJECT_NUMBER/global/networks/VPC_NAME 형식입니다.

  • PROJECT_NUMBER: Google Cloud 프로젝트 번호입니다.

상태가 RUNNING으로 변경될 때까지 다음 출력이 표시되어야 합니다.

[Ray on Vertex AI]: Cluster State = State.PROVISIONING
Waiting for cluster provisioning; attempt 1; sleeping for 0:02:30 seconds
...
[Ray on Vertex AI]: Cluster State = State.RUNNING

다음에 유의하세요.

  • 첫 번째 노드는 헤드 노드로 사용됩니다.

  • TPU 머신 유형은 지원되지 않습니다.

다음 단계