Mengelola cluster

Jika Anda tertarik dengan cluster pelatihan Vertex AI, hubungi perwakilan penjualan Anda untuk mendapatkan akses.

Setelah cluster di-deploy, Anda dapat mengelola siklus prosesnya secara penuh menggunakan endpoint REST API berikut.

  • List: Melihat semua cluster aktif di project Anda.
  • Get: Mengambil informasi mendetail untuk cluster tertentu.
  • Update: Mengubah konfigurasi cluster yang ada.
  • Delete: Menghapus cluster dan sumber dayanya secara permanen.

Autentikasi

alias gcurl='curl -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json"'

Mencantumkan cluster:

    gcurl -X GET https://REGION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/REGION/modelDevelopmentClusters
    

Metode daftar mendukung parameter kueri opsional berikut untuk mengontrol penomoran halaman.

  • pageSize (integer, opsional): Jumlah maksimum cluster yang akan ditampilkan dalam respons. Layanan mungkin menampilkan lebih sedikit dari nilai ini, meskipun ada lebih banyak item. Jika tidak ditentukan, ukuran halaman default akan digunakan.
  • pageToken (string, optional): Token yang diterima dari panggilan daftar sebelumnya. Berikan token ini untuk mengambil halaman hasil berikutnya.
Contoh berikut meminta halaman hasil pertama dengan maksimum 5 cluster per halaman.

    gcurl "https://REGION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/REGION/modelDevelopmentClusters?pageSize=5"
    

Respons yang berhasil berisi array cluster dengan hingga lima resource cluster dan juga dapat menyertakan string nextPageToken.

Mendapatkan cluster:

    gcurl -X GET https://REGION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/REGION/modelDevelopmentClusters/CLUSTER_ID
    

Memperbarui cluster:

UPDATE_PAYLOAD menentukan jalur lokal ke file JSON yang menentukan ModelDevelopmentCluster lengkap yang ingin Anda update.

Misalnya, untuk mengupdate jumlah node di pool cluster khusus CPU, gunakan payload JSON berikut:

{
  "display_name": "DISPLAY_NAME",
  "network": {
    "network": "projects/PROJECT_ID/global/networks/NETWORK",
    "subnetwork": "projects/PROJECT_ID/regions/REGION/subnetworks/SUBNETWORK"
  },
  "node_pools": [
    {
      "id": "cpu",
      "machine_spec": {
        "machine_type": "n2-standard-8"
      },
      "scaling_spec": {
        "min_node_count": UPDATED_MIN_NODE_COUNT,
        "max_node_count": UPDATED_MAX_NODE_COUNT
      },
      "zone": "ZONE",
      "enable_public_ips": true,
      "boot_disk": {
        "boot_disk_type": "pd-standard",
        "boot_disk_size_gb": 120
      }
    },
    {
      "id": "login",
      "machine_spec": {
        "machine_type": "n2-standard-8",
      },
      "scaling_spec": {
        "min_node_count": 1,
        "max_node_count": 1
      },
         "zone": "ZONE",
         "enable_public_ips": true,
      "boot_disk": {
        "boot_disk_type": "pd-standard",
        "boot_disk_size_gb": 120
      }
    },
  ],
  "orchestrator_spec": {
      "slurm_spec": {
      "home_directory_storage": "projects/PROJECT_ID/locations/ZONE/instances/FILESTORE",
      "partitions": [
         {
          "id": "cpu",
          "node_pool_ids": [
            "cpu"
          ]
        }
      ],
      "login_node_pool_id": "login"
    }
  }
}

gcurl -X PATCH -d @UPDATE_PAYLOAD https://REGION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/REGION/modelDevelopmentClusters/CLUSTER_ID
Parameter Kueri
  • updateMask (string, opsional): FieldMask yang menentukan kolom resource cluster Pengembangan Model yang akan diperbarui. Hanya kolom yang tercantum dalam updateMask yang diubah.

    Kolom berikut dalam resource ModelDevelopmentCluster dapat ditentukan dalam updateMask:

    • node_pools
    • orchestrator_spec.slurm_spec.partitions
    • orchestrator_spec.slurm_spec.login_node_pool_id
    • orchestrator_spec.slurm_spec.prolog_bash_scripts
    • orchestrator_spec.slurm_spec.epilog_bash_scripts

Perintah di bawah ini memperbarui konfigurasi node pool dan partisi Slurm.

gcurl -X PATCH -d @update-payload.json
'https://REGION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/REGION/modelDevelopmentClusters/CLUSTER_ID?updateMask=orchestrator_spec.slurm_spec.partitions,node_pools'
Catatan penting tentang kolom berulang

Untuk kolom berulang, seperti node_pools, prolog_bash_scripts, dan epilog_bash_scripts, API hanya mendukung operasi penggantian penuh. Pengguna harus memberikan seluruh daftar item yang diharapkan dalam payload permintaan untuk mengganti daftar yang ada sepenuhnya.

Perilaku setelah update dan status cluster

Permintaan yang berhasil akan menampilkan Operasi Berjalan Lama (LRO). Kemudian, Anda dapat memantau status operasi ini menggunakan perintah berikut:

gcurl https://REGION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/REGION/operations/OPERATION_ID
Setelah operasi update berhasil diselesaikan, sebagian besar modifikasi akan segera diterapkan (atau dalam waktu sinkronisasi Slurm 15 detik) dan tidak memerlukan tindakan lebih lanjut. Hanya perubahan pada infrastruktur komputasi cluster yang mendasarinya—termasuk modifikasi pada sumber penyimpanan dan skrip startup—yang mengharuskan resource dibuat ulang.

Menghapus cluster:

  gcurl -X DELETE https://REGION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/REGION/modelDevelopmentClusters/CLUSTER_ID
  

Perintah ini menampilkan Operasi yang Berjalan Lama jika berhasil, yang kemudian dapat Anda pantau menggunakan perintah operations describe.

gcurl https://REGION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/REGION/operations/OPERATION_ID

Langkah berikutnya

Mengelola cluster pelatihan Vertex AI memungkinkan Anda mengoptimalkan penggunaannya, mengintegrasikannya ke dalam alur kerja otomatis, dan menyiapkan model terlatih untuk deployment.

  • Mengatur pelatihan dengan Vertex AI Pipelines: Otomatiskan seluruh siklus proses tugas pelatihan, mulai dari penyiapan data hingga pendaftaran model, menggunakan pipeline yang menargetkan cluster terkelola Anda.
  • Memantau dan men-debug tugas pelatihan: Melacak progres dan penggunaan resource, serta mengidentifikasi masalah pada tugas pelatihan terdistribusi yang berjalan di cluster.
  • Men-deploy model untuk inferensi: Setelah model dilatih dan didaftarkan, deploy model ke endpoint Vertex AI untuk menyajikan permintaan inferensi online dalam skala besar.
  • Mengoptimalkan biaya: Tinjau pemanfaatan cluster Anda secara rutin dan hapus cluster jika tidak digunakan secara aktif untuk meminimalkan penagihan hardware yang dicadangkan.