Menskalakan cluster Ray di Gemini Enterprise Agent Platform

Cluster Ray di Platform Agen Gemini Enterprise menawarkan dua opsi penskalaan: penskalaan otomatis dan penskalaan manual. Penskalaan otomatis memungkinkan cluster menyesuaikan jumlah node pekerja secara otomatis berdasarkan resource yang diperlukan tugas dan aktor Ray. Jika Anda menjalankan workload berat dan tidak yakin dengan resource yang diperlukan, penskalaan otomatis direkomendasikan. Penskalaan manual memberi pengguna kontrol yang lebih terperinci atas node.

Penskalaan otomatis dapat mengurangi biaya workload, tetapi menambah overhead peluncuran node dan mungkin sulit dikonfigurasi. Jika Anda baru menggunakan Ray, mulailah dengan cluster non-penskalaan otomatis, dan gunakan fitur penskalaan manual.

Penskalaan otomatis

Aktifkan fitur penskalaan otomatis cluster Ray dengan menentukan jumlah replika minimum (min_replica_count) dan jumlah replika maksimum (max_replica_count) dari kumpulan pekerja.

Perhatikan hal berikut:

Menetapkan spesifikasi penskalaan otomatis kumpulan pekerja

Gunakan konsol Google Cloud atau Agent Platform SDK untuk Python guna mengaktifkan fitur penskalaan otomatis cluster Ray.

Ray on Agent Platform SDK

from google.cloud import aiplatform
import vertex_ray
from vertex_ray import AutoscalingSpec

autoscaling_spec = AutoscalingSpec(
 min_replica_count=1,
 max_replica_count=3,
)

head_node_type = Resources(
 machine_type="n1-standard-16",
 node_count=1,
)

worker_node_types = [Resources(
 machine_type="n1-standard-16",
 accelerator_type="NVIDIA_TESLA_T4",
 accelerator_count=1,
 autoscaling_spec=autoscaling_spec,
)]

# Create the Ray cluster on Gemini Enterprise Agent Platform
CLUSTER_RESOURCE_NAME = vertex_ray.create_ray_cluster(
head_node_type=head_node_type,
worker_node_types=worker_node_types,
...
)

Konsol

Sesuai dengan rekomendasi praktik terbaik OSS Ray, penetapan jumlah CPU logis ke 0 pada node head Ray diterapkan untuk menghindari menjalankan beban kerja apa pun pada node head.

  1. Di konsol Google Cloud , buka halaman Ray on Agent Platform.

    Buka halaman Ray on Agent Platform

  2. Klik Create cluster untuk membuka panel Create cluster.

  3. Untuk setiap langkah di panel Create cluster, tinjau atau ganti informasi cluster default. Klik Continue untuk menyelesaikan setiap langkah:

    1. Untuk Name and region, tentukan Name, lalu pilih lokasi untuk cluster Anda.
    2. Untuk Compute settings, tentukan konfigurasi cluster Ray di node head, termasuk jenis mesin, jenis dan jumlah akselerator, jenis dan ukuran disk, serta jumlah replika. Jika perlu, tambahkan URI image kustom untuk menentukan image container kustom guna menambahkan dependensi Python yang tidak disediakan oleh image container default. Lihat Gambar kustom.

      Di bagian Opsi lanjutan, Anda dapat:

      • Tentukan kunci enkripsi Anda sendiri.
      • Tentukan akun layanan khusus
      • Jika Anda tidak perlu memantau statistik resource workload selama pelatihan, nonaktifkan pengumpulan metrik.
    3. Untuk membuat cluster dengan kumpulan pekerja penskalaan otomatis, berikan nilai untuk jumlah replika maksimum kumpulan pekerja. Setelan komputasi untuk penskalaan otomatis

  4. Klik Create.

Penskalaan manual

Saat workload Anda meningkat atau menurun di cluster Ray pada Gemini Enterprise Agent Platform, sesuaikan jumlah replika secara manual agar sesuai dengan permintaan. Misalnya, jika Anda memiliki kapasitas berlebih, perkecil skala kumpulan pekerja untuk menghemat biaya.

Batasan Peering VPC

Saat menskalakan cluster, Anda hanya dapat mengubah jumlah replika di kumpulan worker yang ada. Misalnya, Anda tidak dapat menambahkan atau menghapus kumpulan worker dari cluster atau mengubah jenis mesin kumpulan worker. Selain itu, jumlah replika untuk kumpulan worker tidak boleh kurang dari satu.

Jika Anda menggunakan koneksi peering VPC untuk terhubung ke cluster, ada batasan pada jumlah maksimum node. Jumlah maksimum node bergantung pada jumlah node yang dimiliki cluster saat Anda membuat cluster. Untuk informasi selengkapnya, lihat Penghitungan jumlah maksimum node. Jumlah maksimum ini tidak hanya mencakup worker pool, tetapi juga node head. Jika Anda menggunakan konfigurasi jaringan default, jumlah node tidak boleh melebihi batas atas seperti yang dijelaskan dalam dokumentasi membuat cluster.

Praktik terbaik alokasi subnet

Saat men-deploy Ray di Gemini Enterprise Agent Platform menggunakan akses layanan pribadi (PSA), Anda harus memastikan bahwa rentang alamat IP yang dialokasikan cukup besar dan berdekatan untuk mengakomodasi jumlah maksimum node yang mungkin diskalakan oleh cluster Anda. Kehabisan IP dapat terjadi jika rentang IP yang dicadangkan untuk koneksi PSA terlalu kecil atau terfragmentasi, sehingga menyebabkan kegagalan deployment.

Sebagai alternatif, sebaiknya deploy Ray di Agent Platform dengan Antarmuka Private Service Connect, yang mengurangi konsumsi IP ke subnet /28.

Pemantauan Akses Layanan Pribadi

Sebagai praktik terbaik, gunakan Penganalisis Jaringan alat diagnostik dalam Network Intelligence Center Google Cloud yang secara otomatis memantau konfigurasi jaringan Virtual Private Cloud (VPC) Anda untuk mendeteksi kesalahan konfigurasi dan setelan yang kurang optimal. Penganalisis Jaringan beroperasi secara berkelanjutan, yang secara proaktif menjalankan pengujian dan menghasilkan insight untuk membantu Anda mengidentifikasi, mendiagnosis, dan menyelesaikan masalah jaringan sebelum memengaruhi ketersediaan layanan.

Network Analyzer memiliki kemampuan untuk memantau subnet yang digunakan untuk Private Service Access (PSA) dan memberikan insight spesifik yang terkait dengannya. Ini adalah fungsi penting untuk mengelola layanan seperti Cloud SQL, Memorystore, dan Agent Platform, yang menggunakan PSA.

Cara utama Network Analyzer memantau subnet PSA adalah dengan memberikan insight pemanfaatan alamat IP untuk rentang yang dialokasikan.

  • Penggunaan Rentang PSA: Network Analyzer secara aktif melacak persentase alokasi alamat IP dalam blok CIDR khusus yang telah Anda alokasikan untuk PSA. Hal ini penting karena saat Anda membuat layanan terkelola (seperti Agent Platform), Google akan membuat VPC produsen layanan dan subnet di dalamnya, dengan mengambil rentang IP dari blok yang dialokasikan.

  • Peringatan Proaktif: Jika penggunaan alamat IP untuk rentang yang dialokasikan PSA melebihi batas tertentu (misalnya, 75%), Network Analyzer akan membuat insight peringatan. Hal ini secara proaktif akan memberi tahu Anda tentang potensi masalah kapasitas, sehingga memberi Anda waktu untuk memperluas rentang IP yang dialokasikan sebelum Anda kehabisan alamat yang tersedia untuk resource layanan baru.

Pembaruan subnet Akses Layanan Pribadi

Untuk deployment Ray di Agent Platform, Google merekomendasikan pengalokasian blok CIDR /16 atau /17 untuk koneksi PSA Anda. Hal ini memberikan blok alamat IP yang berdekatan dan cukup besar untuk mendukung penskalaan yang signifikan, yang mengakomodasi hingga 65.536 atau 32.768 alamat IP unik. Hal ini membantu mencegah kehabisan IP meskipun dengan cluster Ray yang besar.

Jika ruang alamat IP yang dialokasikan habis, Google Cloud akan menampilkan error ini:

Gagal membuat subnetwork. Tidak dapat menemukan blok gratis dalam rentang IP yang dialokasikan.

Sebaiknya Anda memperluas rentang subnet saat ini atau mengalokasikan rentang yang mengakomodasi pertumbuhan di masa mendatang.

Perhitungan jumlah node maksimum

Jika Anda menggunakan akses layanan pribadi (peering VPC) untuk terhubung ke node, gunakan formula berikut untuk memastikan Anda tidak melebihi jumlah maksimum node (M), dengan asumsi f(x) = min(29, (32 - ceiling(log2(x))):

  • f(2 * M) = f(2 * N)
  • f(64 * M) = f(64 * N)
  • f(max(32, 16 + M)) = f(max(32, 16 + N))

Jumlah total maksimum node dalam cluster Ray on Agent Platform yang dapat Anda lakukan peningkatan skala (M) bergantung pada jumlah total awal node yang Anda siapkan (N). Setelah membuat cluster Ray on Agent Platform, Anda dapat menskalakan jumlah total node ke jumlah apa pun antara P dan M inklusif, dengan P adalah jumlah pool di cluster Anda.

Jumlah total awal node dalam cluster dan jumlah target penskalaan harus berada dalam blok warna yang sama.

Diagram yang menunjukkan hubungan antara jumlah node awal dan yang diskalakan

Perbarui jumlah replika

Gunakan konsol Google Cloud atau Agent Platform SDK untuk Python guna memperbarui jumlah replika pool worker Anda. Jika cluster Anda menyertakan beberapa worker pool, Anda dapat mengubah jumlah replika masing-masing secara terpisah dalam satu permintaan.

Ray on Agent Platform SDK

import vertexai
import vertex_ray

vertexai.init()
cluster = vertex_ray.get_ray_cluster("CLUSTER_NAME")

# Get the resource name.
cluster_resource_name = cluster.cluster_resource_name

# Create the new worker pools
new_worker_node_types = []
for worker_node_type in cluster.worker_node_types:
 worker_node_type.node_count = REPLICA_COUNT # new worker pool size
 new_worker_node_types.append(worker_node_type)

# Make update call
updated_cluster_resource_name = vertex_ray.update_ray_cluster(
 cluster_resource_name=cluster_resource_name,
 worker_node_types=new_worker_node_types,
)

Konsol

  1. Di konsol Google Cloud , buka halaman Ray on Agent Platform.

    Buka halaman Ray on Agent Platform

  2. Dari daftar cluster, klik cluster yang akan diubah.

  3. Di halaman Cluster details, klik Edit cluster.

  4. Di panel Edit cluster, pilih worker pool yang akan diupdate, lalu ubah jumlah replika.

  5. Klik Update.

    Tunggu beberapa menit hingga cluster Anda diperbarui. Setelah update selesai, Anda dapat melihat jumlah replika yang diperbarui di halaman Detail cluster.

  6. Klik Create.