Membuat cluster Slurm yang dioptimalkan untuk AI

Dokumen ini menguraikan langkah-langkah untuk mengonfigurasi dan men-deploy cluster Slurm yang menggunakan jenis mesin A4X, A4, A3 Ultra, A3 Mega, atau A3 High. Untuk mempelajari lebih lanjut jenis mesin yang dioptimalkan untuk akselerator ini, lihat Jenis mesin GPU.

Untuk metode lain dalam membuat cluster Slurm yang dioptimalkan untuk AI di Google Cloud, lihat berikut ini:

Batasan

Bergantung pada seri mesin yang digunakan VM di cluster Slurm Anda, batasan berikut berlaku:

A4X

  • Anda tidak menerima diskon untuk penggunaan berkelanjutan atau diskon abonemen fleksibel untuk instance yang menggunakan jenis mesin ini. Selain itu, jenis mesin A4X Max tidak mendukung diskon abonemen berbasis resource.
  • Anda hanya dapat membuat instance di region dan zona tertentu.
  • Anda tidak dapat menggunakan Persistent Disk (regional atau zonal). Anda hanya dapat menggunakan Google Cloud Hyperdisk.
  • Jenis mesin ini hanya tersedia di platform NVIDIA Grace.
  • Perubahan jenis mesin tidak didukung untuk A4X Max atau A4X. Untuk beralih ke atau dari salah satu jenis mesin ini, Anda harus membuat instance A4X Max atau A4X baru.
  • Anda tidak dapat menjalankan sistem operasi Windows pada jenis mesin ini.
  • Untuk instance A4X, saat Anda menggunakan ethtool -S untuk memantau jaringan GPU, penghitung port fisik yang berakhiran _phy tidak diperbarui. Ini adalah perilaku yang diharapkan untuk instance yang menggunakan arsitektur Fungsi Virtual (VF) MRDMA. Untuk mengetahui informasi selengkapnya, lihat Fungsi MRDMA dan alat pemantauan jaringan.
  • Instance A4X Max dan A4X tidak mendukung hal berikut:
  • Anda tidak dapat melampirkan disk Hyperdisk ML yang dibuat sebelum 4 Februari 2026 ke jenis mesin A4X.

A4

  • Anda tidak menerima diskon untuk penggunaan berkelanjutan dan diskon penggunaan berkelanjutan fleksibel untuk instance yang menggunakan jenis mesin A4.
  • Anda hanya dapat menggunakan jenis mesin A4 di region dan zona tertentu.
  • Anda tidak dapat menggunakan Persistent Disk (regional atau zonal). Anda hanya dapat menggunakan Google Cloud Hyperdisk.
  • Jenis mesin A4 hanya tersedia di platform CPU Emerald Rapids.
  • Anda tidak dapat mengubah jenis mesin instance ke atau dari jenis mesin A4. Anda harus membuat instance baru dengan jenis mesin ini.
  • Jenis mesin A4 tidak mendukung tenancy tunggal.
  • Anda tidak dapat menjalankan sistem operasi Windows pada jenis mesin A4.
  • Untuk instance A4, saat Anda menggunakan ethtool -S untuk memantau jaringan GPU, penghitung port fisik yang berakhiran _phy tidak diperbarui. Ini adalah perilaku yang diharapkan untuk instance yang menggunakan arsitektur Fungsi Virtual (VF) MRDMA. Untuk mengetahui informasi selengkapnya, lihat Fungsi MRDMA dan alat pemantauan jaringan.
  • Anda tidak dapat melampirkan disk Hyperdisk ML yang dibuat sebelum 4 Februari 2026 ke jenis mesin A4.

A3 Ultra

  • Anda tidak menerima diskon untuk penggunaan berkelanjutan dan diskon abonemen fleksibel untuk instance yang menggunakan jenis mesin A3 Ultra.
  • Anda hanya dapat menggunakan jenis mesin A3 Ultra di region dan zona tertentu.
  • Anda tidak dapat menggunakan Persistent Disk (regional atau zonal). Anda hanya dapat menggunakan Google Cloud Hyperdisk.
  • Jenis mesin A3 Ultra hanya tersedia di platform CPU Emerald Rapids.
  • Perubahan jenis mesin tidak didukung untuk jenis mesin A3 Ultra. Untuk beralih ke atau dari jenis mesin ini, Anda harus membuat instance baru.
  • Anda tidak dapat menjalankan sistem operasi Windows pada jenis mesin A3 Ultra.
  • Jenis mesin A3 Ultra tidak mendukung sole-tenancy.
  • Untuk instance A3 Ultra, saat Anda menggunakan ethtool -S untuk memantau jaringan GPU, penghitung port fisik yang berakhiran _phy tidak diperbarui. Ini adalah perilaku yang diharapkan untuk instance yang menggunakan arsitektur Fungsi Virtual (VF) MRDMA. Untuk mengetahui informasi selengkapnya, lihat Fungsi MRDMA dan alat pemantauan jaringan.

A3 Mega

  • Anda tidak menerima diskon untuk penggunaan berkelanjutan dan diskon abonemen fleksibel untuk instance yang menggunakan jenis mesin A3 Mega.
  • Anda hanya dapat menggunakan jenis mesin A3 Mega di region dan zona tertentu.
  • Anda tidak dapat menggunakan Persistent Disk regional pada instance yang menggunakan jenis mesin A3 Mega.
  • Jenis mesin A3 Mega hanya tersedia di platform CPU Sapphire Rapids.
  • Perubahan jenis mesin tidak didukung untuk jenis mesin A3 Mega. Untuk beralih ke atau dari jenis mesin ini, Anda harus membuat instance baru.
  • Anda tidak dapat menjalankan sistem operasi Windows pada jenis mesin A3 Mega.

A3 Tinggi

Sebelum memulai

Sebelum membuat cluster Slurm, jika Anda belum melakukannya, selesaikan langkah-langkah berikut:

  1. Pilih opsi pemakaian: pilihan opsi pemakaian menentukan cara Anda mendapatkan dan menggunakan resource GPU.

    Untuk mempelajari lebih lanjut, lihat Memilih opsi pemakaian.

  2. Mendapatkan kapasitas: proses untuk mendapatkan kapasitas berbeda untuk setiap opsi penggunaan.

    Untuk mempelajari proses mendapatkan kapasitas untuk opsi pemakaian yang Anda pilih, lihat Ringkasan kapasitas.

  3. Pastikan Anda memiliki kuota kapasitas Filestore yang cukup: Anda harus memiliki kuota Filestore yang cukup di region target sebelum men-deploy. Kapasitas minimum yang diperlukan bergantung pada jenis mesin di cluster Anda:
    • A4, A4X, A3 Ultra, dan A3 Mega: memerlukan kapasitas HIGH_SCALE_SSD (zonal) minimal 10 TiB (10.240 GiB).
    • A3 Tinggi: memerlukan kapasitas BASIC_SSD (standar) minimal 2,5 TiB (2.560 GiB).

    Untuk memeriksa kuota atau meminta penambahan kuota, lihat artikel berikut:

  4. Instal Cluster Toolkit: untuk menyediakan cluster Slurm, Anda harus menggunakan Cluster Toolkit versi v1.62.0 atau yang lebih baru.

    Untuk menginstal Cluster Toolkit, lihat Menyiapkan Cluster Toolkit.

In the Google Cloud console, activate Cloud Shell.

Activate Cloud Shell

At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.

Peran yang diperlukan

Untuk memastikan bahwa akun layanan default Compute Engine memiliki izin yang diperlukan untuk men-deploy cluster Slurm, minta administrator Anda untuk memberikan peran IAM berikut kepada akun layanan default Compute Engine:

Untuk mengetahui informasi selengkapnya tentang pemberian peran, lihat Mengelola akses ke project, folder, dan organisasi.

Administrator Anda mungkin juga dapat memberikan izin yang diperlukan kepada akun layanan default Compute Engine melalui peran khusus atau peran bawaan lainnya.

Menyiapkan bucket penyimpanan

Blueprint cluster menggunakan modul Terraform untuk menyediakan infrastruktur Cloud. Praktik terbaik saat bekerja dengan Terraform adalah menyimpan status dari jarak jauh dalam file yang mendukung versi. Di Google Cloud, Anda dapat membuat bucket Cloud Storage yang mengaktifkan pengelolaan versi.

Untuk membuat bucket ini dan mengaktifkan pembuatan versi dari CLI, jalankan perintah berikut:

gcloud storage buckets create gs://BUCKET_NAME \
    --project=PROJECT_ID \
    --default-storage-class=STANDARD --location=BUCKET_REGION \
    --uniform-bucket-level-access
gcloud storage buckets update gs://BUCKET_NAME --versioning

Ganti kode berikut:

Buka direktori Cluster Toolkit

Untuk menggunakan Slurm dengan Google Cloud, Anda harus menginstal Cluster Toolkit. Setelah menginstal toolkit, pastikan Anda berada di direktori Cluster Toolkit dengan menjalankan perintah berikut:

cd cluster-toolkit

Deployment cluster ini memerlukan Cluster Toolkit v1.62.0 atau yang lebih baru. Untuk memeriksa versi Anda, Anda dapat menjalankan perintah berikut:

./gcluster --version

Membuat file deployment

Buat file deployment yang dapat Anda gunakan untuk menentukan bucket Cloud Storage, menetapkan nama untuk jaringan dan subnetwork, serta menetapkan variabel deployment seperti project ID, region, dan zona.

Untuk membuat file deployment, ikuti langkah-langkah untuk jenis mesin dan opsi penggunaan yang Anda perlukan.

A4X

Untuk membuat file deployment, gunakan editor teks untuk membuat file YAML bernama a4xhigh-slurm-deployment.yaml dan tambahkan konten berikut.


terraform_backend_defaults:
  type: gcs
  configuration:
    bucket: BUCKET_NAME

vars:
  deployment_name: DEPLOYMENT_NAME
  project_id: PROJECT_ID
  region: REGION
  zone: ZONE
  a4x_cluster_size: NUMBER_OF_VMS
  a4x_reservation_name: RESERVATION_NAME

Ganti kode berikut:

  • BUCKET_NAME: nama bucket Cloud Storage Anda, yang Anda buat di bagian sebelumnya.
  • DEPLOYMENT_NAME: nama untuk deployment Anda. Jika membuat beberapa cluster, pastikan Anda memilih nama unik untuk setiap cluster.
  • PROJECT_ID: project ID Anda.
  • REGION: region yang memiliki mesin yang dipesan.
  • ZONE: zona tempat Anda ingin menyediakan cluster. Jika Anda menggunakan opsi konsumsi berbasis reservasi, informasi region dan zona diberikan oleh tim akun Anda saat kapasitas dikirimkan.
  • NUMBER_OF_VMS: jumlah VM A4X di cluster Anda. Anda dapat menentukan jumlah VM berapa pun. Namun, VM A4X saling terhubung secara fisik oleh sistem NVLink multi-node dalam grup yang terdiri dari 18 VM (72 GPU) untuk membentuk domain NVLink.

    Untuk performa jaringan yang optimal, sebaiknya tentukan nilai yang merupakan kelipatan 18 VM (misalnya, 18, 36, atau 54). Saat Anda membuat cluster A4X, blueprint A4X akan otomatis membuat dan menerapkan kebijakan penempatan rapat dengan topologi GPU 1x72 untuk setiap grup yang terdiri dari 18 VM. Untuk mengetahui informasi selengkapnya tentang topologi A4X, lihat Dasar-dasar A4X.

  • RESERVATION_NAME: nama pemesanan Anda.

A4

Parameter yang perlu Anda tambahkan ke file deployment bergantung pada opsi penggunaan yang Anda gunakan untuk deployment. Pilih tab yang sesuai dengan model penyediaan opsi pemakaian Anda.

Terikat dengan reservasi

Untuk membuat file deployment, gunakan editor teks untuk membuat file YAML bernama a4high-slurm-deployment.yaml dan tambahkan konten berikut.


terraform_backend_defaults:
  type: gcs
  configuration:
    bucket: BUCKET_NAME

vars:
  deployment_name: DEPLOYMENT_NAME
  project_id: PROJECT_ID
  region: REGION
  zone: ZONE
  a4h_cluster_size: NUMBER_OF_VMS
  a4h_reservation_name: RESERVATION_NAME

Ganti kode berikut:

  • BUCKET_NAME: nama bucket Cloud Storage Anda, yang Anda buat di bagian sebelumnya.
  • DEPLOYMENT_NAME: nama untuk deployment Anda. Jika membuat beberapa cluster, pastikan Anda memilih nama unik untuk setiap cluster.
  • PROJECT_ID: project ID Anda.
  • REGION: region yang memiliki mesin yang dipesan.
  • ZONE: zona tempat Anda ingin menyediakan cluster. Jika Anda menggunakan opsi konsumsi berbasis reservasi, informasi region dan zona diberikan oleh tim akun Anda saat kapasitas dikirimkan.
  • NUMBER_OF_VMS: jumlah VM yang Anda inginkan untuk cluster.
  • RESERVATION_NAME: nama pemesanan Anda.

Flex-start

Untuk membuat file deployment, gunakan editor teks untuk membuat file YAML bernama a4high-slurm-deployment.yaml dan tambahkan konten berikut.


terraform_backend_defaults:
  type: gcs
  configuration:
    bucket: BUCKET_NAME

vars:
  deployment_name: DEPLOYMENT_NAME
  project_id: PROJECT_ID
  region: REGION
  zone: ZONE
  a4h_cluster_size: NUMBER_OF_VMS
  a4h_dws_flex_enabled: true

Ganti kode berikut:

  • BUCKET_NAME: nama bucket Cloud Storage Anda, yang Anda buat di bagian sebelumnya.
  • DEPLOYMENT_NAME: nama untuk deployment Anda. Jika membuat beberapa cluster, pastikan Anda memilih nama unik untuk setiap cluster.
  • PROJECT_ID: project ID Anda.
  • REGION: region tempat Anda ingin menyediakan cluster.
  • ZONE: zona tempat Anda ingin menyediakan cluster.
  • NUMBER_OF_VMS: jumlah VM yang Anda inginkan untuk cluster.

Deployment ini menyediakan node komputasi statis, yang berarti cluster memiliki sejumlah node tetap setiap saat. Jika Anda ingin mengaktifkan penskalaan otomatis cluster, gunakan file examples/machine-learning/a4-highgpu-8g/a4high-slurm-blueprint.yaml dan edit nilai node_count_static dan node_count_dynamic_max agar sesuai dengan nilai berikut:

      node_count_static: 0
      node_count_dynamic_max: $(vars.a4h_cluster_size)

Spot

Untuk membuat file deployment, gunakan editor teks untuk membuat file YAML bernama a4high-slurm-deployment.yaml dan tambahkan konten berikut.


terraform_backend_defaults:
  type: gcs
  configuration:
    bucket: BUCKET_NAME

vars:
  deployment_name: DEPLOYMENT_NAME
  project_id: PROJECT_ID
  region: REGION
  zone: ZONE
  a4h_cluster_size: NUMBER_OF_VMS
  a4h_enable_spot_vm: true

Ganti kode berikut:

  • BUCKET_NAME: nama bucket Cloud Storage Anda, yang Anda buat di bagian sebelumnya.
  • DEPLOYMENT_NAME: nama untuk deployment Anda. Jika membuat beberapa cluster, pastikan Anda memilih nama unik untuk setiap cluster.
  • PROJECT_ID: project ID Anda.
  • REGION: region tempat Anda ingin menyediakan cluster.
  • ZONE: zona tempat Anda ingin menyediakan cluster.
  • NUMBER_OF_VMS: jumlah VM yang Anda inginkan untuk cluster.

A3 Ultra

Parameter yang perlu Anda tambahkan ke file deployment bergantung pada opsi penggunaan yang Anda gunakan untuk deployment. Pilih tab yang sesuai dengan model penyediaan opsi pemakaian Anda.

Terikat dengan reservasi

Untuk membuat file deployment, gunakan editor teks untuk membuat file YAML bernama a3ultra-slurm-deployment.yaml dan tambahkan konten berikut.


terraform_backend_defaults:
  type: gcs
  configuration:
    bucket: BUCKET_NAME

vars:
  deployment_name: DEPLOYMENT_NAME
  project_id: PROJECT_ID
  region: REGION
  zone: ZONE
  a3u_cluster_size: NUMBER_OF_VMS
  a3u_reservation_name: RESERVATION_NAME

Ganti kode berikut:

  • BUCKET_NAME: nama bucket Cloud Storage Anda, yang Anda buat di bagian sebelumnya.
  • DEPLOYMENT_NAME: nama untuk deployment Anda. Jika membuat beberapa cluster, pastikan Anda memilih nama unik untuk setiap cluster.
  • PROJECT_ID: project ID Anda.
  • REGION: region yang memiliki mesin yang dipesan.
  • ZONE: zona tempat Anda ingin menyediakan cluster. Jika Anda menggunakan opsi konsumsi berbasis reservasi, informasi region dan zona diberikan oleh tim akun Anda saat kapasitas dikirimkan.
  • NUMBER_OF_VMS: jumlah VM yang Anda inginkan untuk cluster.
  • RESERVATION_NAME: nama pemesanan Anda.

Flex-start

Untuk membuat file deployment, gunakan editor teks untuk membuat file YAML bernama a3ultra-slurm-deployment.yaml dan tambahkan konten berikut.


terraform_backend_defaults:
  type: gcs
  configuration:
    bucket: BUCKET_NAME

vars:
  deployment_name: DEPLOYMENT_NAME
  project_id: PROJECT_ID
  region: REGION
  zone: ZONE
  a3u_cluster_size: NUMBER_OF_VMS
  a3u_dws_flex_enabled: true

Ganti kode berikut:

  • BUCKET_NAME: nama bucket Cloud Storage Anda, yang Anda buat di bagian sebelumnya.
  • DEPLOYMENT_NAME: nama untuk deployment Anda. Jika membuat beberapa cluster, pastikan Anda memilih nama unik untuk setiap cluster.
  • PROJECT_ID: project ID Anda.
  • REGION: region tempat Anda ingin menyediakan cluster.
  • ZONE: zona tempat Anda ingin menyediakan cluster.
  • NUMBER_OF_VMS: jumlah VM yang Anda inginkan untuk cluster.

Deployment ini menyediakan node komputasi statis, yang berarti cluster memiliki sejumlah node tetap setiap saat. Jika Anda ingin mengaktifkan penskalaan otomatis cluster, gunakan file examples/machine-learning/a3-ultragpu-8g/a3ultra-slurm-blueprint.yaml dan edit nilai node_count_static dan node_count_dynamic_max agar sesuai dengan nilai berikut:

      node_count_static: 0
      node_count_dynamic_max: $(vars.a3u_cluster_size)

Spot

Untuk membuat file deployment, gunakan editor teks untuk membuat file YAML bernama a3ultra-slurm-deployment.yaml dan tambahkan konten berikut.


terraform_backend_defaults:
  type: gcs
  configuration:
    bucket: BUCKET_NAME

vars:
  deployment_name: DEPLOYMENT_NAME
  project_id: PROJECT_ID
  region: REGION
  zone: ZONE
  a3u_cluster_size: NUMBER_OF_VMS
  a3u_enable_spot_vm: true

Ganti kode berikut:

  • BUCKET_NAME: nama bucket Cloud Storage Anda, yang Anda buat di bagian sebelumnya.
  • DEPLOYMENT_NAME: nama untuk deployment Anda. Jika membuat beberapa cluster, pastikan Anda memilih nama unik untuk setiap cluster.
  • PROJECT_ID: project ID Anda.
  • REGION: region tempat Anda ingin menyediakan cluster.
  • ZONE: zona tempat Anda ingin menyediakan cluster.
  • NUMBER_OF_VMS: jumlah VM yang Anda inginkan untuk cluster.

A3 Mega

Parameter yang perlu Anda tambahkan ke file deployment bergantung pada opsi penggunaan yang Anda gunakan untuk deployment. Pilih tab yang sesuai dengan model penyediaan opsi pemakaian Anda.

Terikat dengan reservasi

Untuk membuat file deployment, buat file YAML bernama a3mega-slurm-deployment.yaml dan tambahkan konten berikut.


terraform_backend_defaults:
  type: gcs
  configuration:
    bucket: BUCKET_NAME

vars:
  deployment_name: DEPLOYMENT_NAME
  project_id: PROJECT_ID
  region: REGION
  zone: ZONE
  a3m_cluster_size: NUMBER_OF_VMS
  a3m_reservation_name: RESERVATION_NAME

Ganti kode berikut:

  • BUCKET_NAME: nama bucket Cloud Storage Anda, yang Anda buat di bagian sebelumnya.
  • DEPLOYMENT_NAME: nama untuk deployment Anda. Jika membuat beberapa cluster, pastikan Anda memilih nama unik untuk setiap cluster.
  • PROJECT_ID: project ID Anda.
  • REGION: region yang memiliki mesin yang dipesan.
  • ZONE: zona tempat Anda ingin menyediakan cluster. Jika Anda menggunakan opsi konsumsi berbasis reservasi, informasi region dan zona diberikan oleh tim akun Anda saat kapasitas dikirimkan.
  • NUMBER_OF_VMS: jumlah VM yang Anda inginkan untuk cluster.
  • RESERVATION_NAME: nama pemesanan Anda.

Flex-start

Untuk membuat file deployment, buat file YAML bernama a3mega-slurm-deployment.yaml dan tambahkan konten berikut.


terraform_backend_defaults:
  type: gcs
  configuration:
    bucket: BUCKET_NAME

vars:
  deployment_name: DEPLOYMENT_NAME
  project_id: PROJECT_ID
  region: REGION
  zone: ZONE
  a3m_cluster_size: NUMBER_OF_VMS
  a3m_dws_flex_enabled: true

Ganti kode berikut:

  • BUCKET_NAME: nama bucket Cloud Storage Anda, yang Anda buat di bagian sebelumnya.
  • DEPLOYMENT_NAME: nama untuk deployment Anda. Jika membuat beberapa cluster, pastikan Anda memilih nama unik untuk setiap cluster.
  • PROJECT_ID: project ID Anda.
  • REGION: region tempat Anda ingin menyediakan cluster.
  • ZONE: zona tempat Anda ingin menyediakan cluster.
  • NUMBER_OF_VMS: jumlah VM yang Anda inginkan untuk cluster.

Deployment ini menyediakan node komputasi statis, yang berarti cluster memiliki sejumlah node tetap setiap saat. Jika Anda ingin mengaktifkan penskalaan otomatis cluster, gunakan file examples/machine-learning/a3-megagpu-8g/a3mega-slurm-blueprint.yaml dan edit nilai node_count_static dan node_count_dynamic_max agar sesuai dengan nilai berikut:

      node_count_static: 0
      node_count_dynamic_max: $(vars.a3m_cluster_size)

Spot

Untuk membuat file deployment, buat file YAML bernama a3mega-slurm-deployment.yaml dan tambahkan konten berikut.


terraform_backend_defaults:
  type: gcs
  configuration:
    bucket: BUCKET_NAME

vars:
  deployment_name: DEPLOYMENT_NAME
  project_id: PROJECT_ID
  region: REGION
  zone: ZONE
  a3m_cluster_size: NUMBER_OF_VMS
  a3m_enable_spot_vm: true

Ganti kode berikut:

  • BUCKET_NAME: nama bucket Cloud Storage Anda, yang Anda buat di bagian sebelumnya.
  • DEPLOYMENT_NAME: nama untuk deployment Anda. Jika membuat beberapa cluster, pastikan Anda memilih nama unik untuk setiap cluster.
  • PROJECT_ID: project ID Anda.
  • REGION: region tempat Anda ingin menyediakan cluster.
  • ZONE: zona tempat Anda ingin menyediakan cluster.
  • NUMBER_OF_VMS: jumlah VM yang Anda inginkan untuk cluster.

A3 Tinggi

Parameter yang perlu Anda tambahkan ke file deployment bergantung pada opsi penggunaan yang Anda gunakan untuk deployment. Pilih tab yang sesuai dengan model penyediaan opsi pemakaian Anda.

Terikat dengan reservasi

Untuk membuat file deployment, buat file YAML bernama a3high-slurm-deployment.yaml dan tambahkan konten berikut.


terraform_backend_defaults:
  type: gcs
  configuration:
    bucket: BUCKET_NAME

vars:
  deployment_name: DEPLOYMENT_NAME
  project_id: PROJECT_ID
  region: REGION
  zone: ZONE
  a3h_cluster_size: NUMBER_OF_VMS
  a3h_reservation_name: RESERVATION_NAME

Ganti kode berikut:

  • BUCKET_NAME: nama bucket Cloud Storage Anda, yang Anda buat di bagian sebelumnya.
  • DEPLOYMENT_NAME: nama untuk deployment Anda. Jika membuat beberapa cluster, pastikan Anda memilih nama unik untuk setiap cluster.
  • PROJECT_ID: project ID Anda.
  • REGION: region yang memiliki mesin yang dipesan.
  • ZONE: zona tempat Anda ingin menyediakan cluster. Jika Anda menggunakan opsi konsumsi berbasis reservasi, informasi region dan zona diberikan oleh tim akun Anda saat kapasitas dikirimkan.
  • NUMBER_OF_VMS: jumlah VM yang Anda inginkan untuk cluster.
  • RESERVATION_NAME: nama pemesanan Anda.

Flex-start

Untuk membuat file deployment, buat file YAML bernama a3high-slurm-deployment.yaml dan tambahkan konten berikut.


terraform_backend_defaults:
  type: gcs
  configuration:
    bucket: BUCKET_NAME

vars:
  deployment_name: DEPLOYMENT_NAME
  project_id: PROJECT_ID
  region: REGION
  zone: ZONE
  a3h_cluster_size: NUMBER_OF_VMS
  a3h_dws_flex_enabled: true

Ganti kode berikut:

  • BUCKET_NAME: nama bucket Cloud Storage Anda, yang Anda buat di bagian sebelumnya.
  • DEPLOYMENT_NAME: nama untuk deployment Anda. Jika membuat beberapa cluster, pastikan Anda memilih nama unik untuk setiap cluster.
  • PROJECT_ID: project ID Anda.
  • REGION: region tempat Anda ingin menyediakan cluster.
  • ZONE: zona tempat Anda ingin menyediakan cluster.
  • NUMBER_OF_VMS: jumlah VM yang Anda inginkan untuk cluster.

Deployment ini menyediakan node komputasi statis, yang berarti cluster memiliki sejumlah node tetap setiap saat. Jika Anda ingin mengaktifkan penskalaan otomatis cluster, gunakan file examples/machine-learning/a3-highgpu-8g/a3high-slurm-blueprint.yaml dan edit nilai node_count_static dan node_count_dynamic_max agar sesuai dengan nilai berikut:

      node_count_static: 0
      node_count_dynamic_max: $(vars.a3h_cluster_size)

Spot

Untuk membuat file deployment, buat file YAML bernama a3high-slurm-deployment.yaml dan tambahkan konten berikut.


terraform_backend_defaults:
  type: gcs
  configuration:
    bucket: BUCKET_NAME

vars:
  deployment_name: DEPLOYMENT_NAME
  project_id: PROJECT_ID
  region: REGION
  zone: ZONE
  a3h_cluster_size: NUMBER_OF_VMS
  a3h_enable_spot_vm: true

Ganti kode berikut:

  • BUCKET_NAME: nama bucket Cloud Storage Anda, yang Anda buat di bagian sebelumnya.
  • DEPLOYMENT_NAME: nama untuk deployment Anda. Jika membuat beberapa cluster, pastikan Anda memilih nama unik untuk setiap cluster.
  • PROJECT_ID: project ID Anda.
  • REGION: region tempat Anda ingin menyediakan cluster.
  • ZONE: zona tempat Anda ingin menyediakan cluster.
  • NUMBER_OF_VMS: jumlah VM yang Anda inginkan untuk cluster.

Menyediakan cluster Slurm

Cluster Toolkit menyediakan cluster berdasarkan file deployment yang Anda buat pada langkah sebelumnya dan blueprint cluster default. Untuk mengetahui informasi selengkapnya tentang software yang diinstal oleh blueprint, termasuk driver NVIDIA dan CUDA, pelajari lebih lanjut image kustom Slurm.

Untuk menyediakan cluster, jalankan perintah untuk jenis mesin Anda dari direktori Cluster Toolkit. Langkah ini memerlukan waktu sekitar 20-30 menit.

A4X

./gcluster deploy -d a4xhigh-slurm-deployment.yaml examples/machine-learning/a4x-highgpu-4g/a4xhigh-slurm-blueprint.yaml --auto-approve

A4

./gcluster deploy -d a4high-slurm-deployment.yaml examples/machine-learning/a4-highgpu-8g/a4high-slurm-blueprint.yaml --auto-approve

A3 Ultra

./gcluster deploy -d a3ultra-slurm-deployment.yaml examples/machine-learning/a3-ultragpu-8g/a3ultra-slurm-blueprint.yaml --auto-approve

A3 Mega

./gcluster deploy -d a3mega-slurm-deployment.yaml examples/machine-learning/a3-megagpu-8g/a3mega-slurm-blueprint.yaml --auto-approve

A3 Tinggi

./gcluster deploy -d a3high-slurm-deployment.yaml examples/machine-learning/a3-highgpu-8g/a3high-slurm-blueprint.yaml --auto-approve

Hubungkan ke cluster Slurm

Untuk mengakses cluster, Anda harus login ke node login Slurm. Untuk login, Anda dapat menggunakan konsol Google Cloud atau Google Cloud CLI.

Konsol

  1. Buka halaman Compute Engine > VM instances.

    Buka halaman Instance VM

  2. Cari node login. File tersebut harus memiliki nama dengan pola DEPLOYMENT_NAME +login-001.

  3. Dari kolom Connect node login, klik SSH.

gcloud

Untuk terhubung ke node login, selesaikan langkah-langkah berikut:

  1. Identifikasi node login menggunakan perintah gcloud compute instances list.

    gcloud compute instances list \
      --zones=ZONE \
      --filter="name ~ login" --format "value(name)"
    

    Jika output mencantumkan beberapa cluster Slurm, Anda dapat mengidentifikasi node login berdasarkan DEPLOYMENT_NAME yang Anda tentukan.

  2. Gunakan perintah gcloud compute ssh untuk terhubung ke node login.

    gcloud compute ssh LOGIN_NODE \
      --zone=ZONE --tunnel-through-iap
    

    Ganti kode berikut:

    • ZONE: zona tempat VM untuk cluster Anda berada.
    • LOGIN_NODE: nama node login, yang Anda identifikasi pada langkah sebelumnya.

Menguji performa jaringan di cluster Slurm

Sebaiknya Anda memvalidasi fungsi cluster yang disediakan. Untuk melakukannya, gunakan NCCL tests, yaitu NVIDIA Collective Communications Library (NCCL) tests yang dioptimalkan untuk lingkungan Google.

Men-deploy ulang cluster Slurm

Jika perlu menambah jumlah node komputasi atau menambahkan partisi baru ke cluster, Anda mungkin perlu memperbarui konfigurasi untuk cluster Slurm dengan men-deploy ulang. Penerapan ulang dapat dipercepat dengan menggunakan image yang ada dari penerapan sebelumnya. Untuk menghindari pembuatan image baru selama deployment ulang, tentukan flag --only.

Untuk men-deploy ulang cluster menggunakan image yang ada, lakukan langkah-langkah berikut:

  1. Hubungkan ke cluster

  2. Jalankan perintah untuk jenis mesin yang Anda perlukan:

    A4X

    ./gcluster deploy -d a4xhigh-slurm-deployment.yaml examples/machine-learning/a4x-highgpu-4g/a4xhigh-slurm-blueprint.yaml --only cluster-env,cluster -w --auto-approve

    A4

    ./gcluster deploy -d a4high-slurm-deployment.yaml examples/machine-learning/a4-highgpu-8g/a4high-slurm-blueprint.yaml --only cluster-env,cluster -w --auto-approve

    A3 Ultra

    ./gcluster deploy -d a3ultra-slurm-deployment.yaml examples/machine-learning/a3-ultragpu-8g/a3ultra-slurm-blueprint.yaml --only cluster-env,cluster -w --auto-approve

    A3 Mega

    ./gcluster deploy -d a3mega-slurm-deployment.yaml examples/machine-learning/a3-megagpu-8g/a3mega-slurm-blueprint.yaml --only cluster-env,cluster -w --auto-approve

    A3 Tinggi

    ./gcluster deploy -d a3high-slurm-deployment.yaml examples/machine-learning/a3-highgpu-8g/a3high-slurm-blueprint.yaml --only cluster-env,cluster -w --auto-approve

    Perintah ini hanya untuk deployment ulang jika image sudah ada, perintah ini hanya men-deploy ulang cluster dan infrastrukturnya.

Hancurkan cluster Slurm

Secara default, blueprint A4X, A4, dan A3 Ultra mengaktifkan perlindungan penghapusan pada instance Filestore. Untuk menghapus instance Filestore saat Anda menghancurkan cluster Slurm, nonaktifkan perlindungan penghapusan sebelum menjalankan perintah destroy. Untuk mengetahui petunjuknya, lihat menyetel atau menghapus perlindungan penghapusan pada instance yang ada.

  1. Putuskan koneksi dari cluster jika Anda belum melakukannya.

  2. Sebelum menjalankan perintah destroy, buka root direktori Cluster Toolkit. Secara default, DEPLOYMENT_FOLDER terletak di root direktori Cluster Toolkit.

  3. Untuk menghancurkan cluster, jalankan:

./gcluster destroy DEPLOYMENT_FOLDER --auto-approve

Ganti kode berikut:

  • DEPLOYMENT_FOLDER: nama folder deployment. Biasanya sama dengan DEPLOYMENT_NAME.

Setelah penghancuran selesai, Anda akan melihat pesan yang mirip dengan berikut ini:

  Destroy complete! Resources: xx destroyed.
  

Untuk mempelajari cara menghancurkan infrastruktur dengan benar dan petunjuk deployment manual lanjutan, lihat folder deployment yang berada di root direktori Cluster Toolkit: DEPLOYMENT_FOLDER/instructions.txt

Langkah berikutnya