Melaporkan host yang rusak

Jika Anda melihat masalah pada instance A4X Max, A4X, A4, A3 Ultra, A3 Mega, dan A3 High (8 GPU) yang tidak dapat Anda selesaikan sendiri, Anda dapat melaporkan host-nya sebagai rusak. Contoh masalah tersebut dapat berupa performa yang lebih lambat dalam cluster, atau suhu GPU yang selalu tinggi.

Saat Anda melaporkan host sebagai rusak, Compute Engine akan otomatis memperbaiki instance komputasi dengan menjalankan pemeliharaan host.

  • Untuk instance A4 dan A3 Ultra, Compute Engine mencoba memigrasikan instance ke host lain saat pemeliharaan dimulai, jika Anda memiliki kapasitas cadangan yang tidak digunakan atau kapasitas tersedia di zona instance. Melaporkan host sebagai rusak membantu Anda meminimalkan periode nonaktif untuk workload Anda.
  • Untuk instance A3 Mega dan A3 High, Compute Engine akan menghentikan instance, melakukan perbaikan host yang diperlukan, lalu memulai ulang instance di host yang sama.

Dokumen ini menjelaskan cara melaporkan dan memperbaiki instance host yang rusak yang merupakan bagian dari cluster Slurm atau cluster berbasis instance komputasi lainnya. Untuk melaporkan host yang rusak di cluster Google Kubernetes Engine (GKE), lihat Melaporkan host yang rusak melalui GKE.

Batasan

Saat Anda melaporkan host yang rusak, batasan berikut berlaku:

  • Anda hanya dapat melaporkan host yang rusak jika instance komputasi yang berjalan di host memenuhi semua kondisi berikut:

    • Instance komputasi sedang berjalan.

    • Instance komputasi menggunakan jenis mesin A4X Max, A4X, A4, A3 Ultra, A3 Mega, dan A3 High (8 GPU).

    • Instance komputasi menggunakan model penyediaan yang terikat dengan reservasi.

  • Jika Anda menghapus instance komputasi saat operasi reportHostAsFaulty sedang berlangsung, operasi reportHostAsFaulty akan gagal.

  • Google Cloud berupaya sebaik mungkin untuk memenuhi semua permintaan host yang melaporkan kesalahan. Namun, karena batasan kapasitas atau batas frekuensi, permintaan mungkin tidak selalu dipenuhi.

Sebelum memulai

Pilih tab untuk melihat bagaimana Anda berencana menggunakan contoh di halaman ini:

Konsol

Saat menggunakan konsol Google Cloud untuk mengakses layanan Google Cloud dan API, Anda tidak perlu menyiapkan autentikasi.

gcloud

Di konsol Google Cloud , aktifkan Cloud Shell.

Aktifkan Cloud Shell

Di bagian bawah konsol Google Cloud , sesi Cloud Shell akan dimulai dan menampilkan perintah command line. Cloud Shell adalah lingkungan shell dengan Google Cloud CLI yang sudah terinstal, dan dengan nilai yang sudah ditetapkan untuk project Anda saat ini. Diperlukan waktu beberapa detik untuk melakukan inisialisasi pada sesi.

REST

Untuk menggunakan contoh REST API di halaman ini dalam lingkungan pengembangan lokal, gunakan kredensial yang Anda berikan ke gcloud CLI.

    Instal Google Cloud CLI.

    Jika Anda menggunakan penyedia identitas (IdP) eksternal, Anda harus login ke gcloud CLI dengan identitas gabungan Anda terlebih dahulu.

Untuk mengetahui informasi selengkapnya, lihat Melakukan autentikasi untuk menggunakan REST dalam dokumentasi autentikasi Google Cloud .

Peran yang diperlukan

Untuk mendapatkan izin yang Anda perlukan untuk melaporkan host yang rusak, minta administrator untuk memberi Anda peran IAM berikut:

  • Compute Instance Admin (v1) (roles/compute.instanceAdmin.v1) pada instance compute atau project
  • Untuk melihat status operasi laporan host yang rusak menggunakan Cloud Logging: Logs Viewer (roles/logging.viewer) di project

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

Peran bawaan ini berisi izin yang diperlukan untuk melaporkan host yang rusak. Untuk melihat izin yang benar-benar diperlukan, perluas bagian Izin yang diperlukan:

Izin yang diperlukan

Izin berikut diperlukan untuk melaporkan host yang rusak:

  • Untuk membuat laporan host yang bermasalah: compute.instances.update di instance komputasi
  • Untuk melihat daftar operasi menggunakan Logging: logging.operations.list di project
  • Untuk melihat detail operasi menggunakan Logging: logging.operations.get pada project
  • Untuk melihat daftar operasi di Compute Engine: compute.zoneOperations.list pada project
  • Untuk melihat detail operasi di Compute Engine: compute.zoneOperations.describe di project

Anda mungkin juga bisa mendapatkan izin ini dengan peran khusus atau peran bawaan lainnya.

Memahami proses laporan host yang bermasalah

Setelah Anda melaporkan host yang rusak untuk instance komputasi, waktu saat instance komputasi dimulai ulang bervariasi berdasarkan mode operasional reservasi yang ditentukan dalam reservasi yang digunakan instance komputasi. Untuk memverifikasi mode operasional pemesanan, lihat kolom reservationOperationalMode di pemesanan. Tabel berikut merangkum proses host yang bermasalah untuk dua mode operasional reservasi yang tersedia: mode semua kapasitas dan mode terkelola.
Semua mode kapasitas (ALL_CAPACITY) Mode terkelola (HIGHLY_AVAILABLE_CAPACITY)
Jenis mesin yang didukung A4X Max dan A4X A4, A3 Ultra, A3 Mega, dan A3 High
Pembatasan kapasitas API laporan host yang bermasalah Tidak ada batas kapasitas yang berlaku. Panggilan ke API mungkin dibatasi kecepatan panggilannya.
Proses pelaporan host yang bermasalah

Saat Anda melaporkan host yang rusak untuk instance komputasi yang berjalan dalam mode semua kapasitas, hal berikut akan terjadi:

  1. Laporkan host yang bermasalah: Instance tetap dalam status RUNNING selama operasi pelaporan host yang bermasalah, yang biasanya memerlukan waktu 10-12 menit untuk selesai. Untuk meninjau status operasi, lihat Meninjau operasi host yang bermasalah dalam laporan dalam dokumen ini.
  2. Perbaiki host: Setelah operasi melaporkan host yang rusak selesai, operasi perbaikan host dimulai dalam waktu satu menit.

    Saat operasi host perbaikan dimulai, instance akan berhenti dan statusnya berubah bergantung pada setelan mulai ulang otomatis (automaticRestart) yang ditentukan untuk instance:

    • Jika mulai ulang otomatis diaktifkan untuk instance, status instance akan berubah menjadi REPAIRING. Instance akan otomatis dimulai ulang saat host-nya berfungsi normal, kecuali jika Anda menghentikan instance sebelum itu.
    • Jika mulai ulang otomatis dinonaktifkan untuk instance, status instance akan berubah menjadi TERMINATED. Anda harus memulai ulang instance secara manual setelah host-nya berfungsi dengan baik.

    Perbaikan host yang rusak dapat memakan waktu 3-14 hari, atau bahkan lebih lama pada waktu tertentu.

  3. Mulai ulang instance: Setelah operasi perbaikan host selesai (biasanya 3-14 hari), salah satu hal berikut akan terjadi:

    • Jika instance berada dalam status REPAIRING dan resource tersedia saat perbaikan selesai, Compute Engine akan otomatis memulai ulang instance di host yang diperbaiki.
    • Jika tidak, jika instance dalam status TERMINATED atau jika resource tidak tersedia saat perbaikan selesai, maka status instance tetap atau berubah menjadi TERMINATED. Anda harus memulai ulang instance secara manual saat Anda ingin instance berjalan. Namun, memulai ulang instance mungkin gagal jika resource tidak tersedia saat Anda memulai ulang instance; misalnya, hal ini dapat terjadi jika instance lain sudah menggunakan host yang diperbaiki.

Saat Anda melaporkan host yang rusak untuk instance komputasi yang berjalan dalam mode terkelola, hal berikut akan terjadi:

  1. Laporkan host yang bermasalah: Instance tetap dalam status RUNNING selama operasi melaporkan host yang bermasalah, yang biasanya memerlukan waktu 10-12 menit untuk selesai. Untuk meninjau status operasi, lihat Meninjau operasi host yang bermasalah dalam laporan dalam dokumen ini.
  2. Mulai memperbaiki host: Setelah operasi melaporkan host yang rusak selesai, operasi perbaikan host dimulai dalam waktu satu menit.

    Saat operasi host perbaikan dimulai, instance akan berhenti dan statusnya berubah bergantung pada setelan mulai ulang otomatis (automaticRestart) yang ditentukan untuk instance:

    • Jika mulai ulang otomatis diaktifkan untuk instance, status instance akan berubah menjadi REPAIRING. Instance akan otomatis dimulai ulang saat host-nya berfungsi normal, kecuali jika Anda menghentikan instance sebelum itu.
    • Jika mulai ulang otomatis dinonaktifkan untuk instance, status instance akan berubah menjadi TERMINATED. Anda harus memulai ulang instance secara manual setelah host-nya berfungsi dengan baik.

    Memperbaiki host yang rusak dapat memerlukan waktu 3-14 hari, atau bahkan lebih lama terkadang.

  3. Memigrasikan dan memulai ulang instance: Setelah operasi perbaikan host dimulai (biasanya 10-12 menit), Compute Engine akan mencoba mencadangkan satu host lagi untuk menggantikan host yang dilaporkan rusak dalam kapasitas yang dicadangkan. Jika Compute Engine menemukan host yang responsif—jika berhasil mengganti host yang rusak atau menemukan host responsif yang cocok dalam kapasitas yang dipesan—Compute Engine akan memigrasikan instance ke host tersebut. Kemudian, instance dimulai ulang melalui salah satu hal berikut:

    • Jika instance dalam status REPAIRING dan resource tersedia sebelum atau saat perbaikan selesai, Compute Engine akan otomatis memulai ulang instance di host yang responsif.
    • Jika tidak, jika instance berada dalam status TERMINATED atau jika resource tidak tersedia sebelum atau saat perbaikan selesai, maka status instance tetap atau berubah menjadi TERMINATED. Anda harus memulai ulang instance secara manual saat Anda ingin instance berjalan. Namun, memulai ulang instance mungkin gagal jika resource tidak tersedia saat Anda memulai ulang instance; misalnya, hal ini dapat terjadi jika instance lain sudah menggunakan host yang diperbaiki.

Memecahkan masalah sebelum Anda melaporkan host yang tidak berfungsi

Sebelum melaporkan host yang rusak, sebaiknya pecahkan masalahnya untuk mengonfirmasi apakah itu masalah hardware, bukan masalah pada konfigurasi workload atau cluster Anda. Pendekatan ini membantu mencegah periode nonaktif yang tidak perlu untuk workload Anda.

Menjalankan pengujian pemindai kesehatan cluster

Gunakan alat pemindai kesehatan cluster (CHS) untuk menjalankan pemeriksaan kesehatan proaktif dan mendiagnosis masalah dalam cluster GPU Anda. Secara khusus, jalankan pengujian berikut:

  • Pemeriksaan GPU: memeriksa kondisi setiap GPU menggunakan Data Center GPU Manager (DCGM) NVIDIA.
  • Pemeriksaan NCCL: memvalidasi komunikasi jaringan antar-GPU.

Memeriksa masalah performa GPU dan proses yang lambat

Jika Anda melihat performa yang lambat, gunakan layanan deteksi VM lambat untuk mengidentifikasi VM yang mungkin memiliki performa lebih lambat daripada VM lain dalam cluster.

Memantau suhu GPU dan pelanggaran termal

Jika Anda melihat peringatan pelanggaran termal di log Anda atau dilaporkan oleh DCGM, tinjau panduan berikut:

  • Peringatan vs. Error Kritis: Diagnostik DCGM saat ini mungkin melaporkan pelanggaran termal sebagai peringatan dengan tingkat keparahan monitor. Artinya, GPU masih siap menjalankan workload, tetapi harus dipantau.
  • Positif Palsu: NVIDIA sedang menyelidiki peningkatan frekuensi laporan pelanggaran termal pada GPU yang tidak menunjukkan tanda-tanda masalah termal yang sebenarnya.
  • Rekomendasi: Sebelum melaporkan host sebagai rusak karena peringatan termal, periksa apakah suhu GPU sebenarnya melebihi batas aman dan apakah performa beban kerja Anda terpengaruh. Jika suhu tetap stabil dan performa normal, sebaiknya pantau GPU, bukan melaporkannya sebagai rusak.

Untuk mengetahui informasi selengkapnya tentang pemecahan masalah GPU, lihat Memecahkan masalah VM GPU di dokumentasi Compute Engine.

Melaporkan host yang rusak

Untuk melaporkan host yang rusak, selesaikan langkah-langkah berikut:

  1. Tinjau host tempat instance komputasi Anda berjalan.

    Untuk mengetahui petunjuknya, lihat Melihat topologi instance komputasi.

  2. Opsional: Cadangkan data SSD Lokal. Saat instance berhenti, Compute Engine akan otomatis menghapus data dari semua disk SSD Lokal yang terpasang ke instance. Anda tidak dapat memulihkan data SSD Lokal setelah Compute Engine menghapusnya.

    Untuk mengetahui petunjuk tentang cara menyimpan data SSD Lokal, lihat Pencadangan data SSD Lokal.

  3. Laporkan host yang bermasalah. Untuk melaporkan host yang rusak, pilih salah satu opsi berikut. Operasi perbaikan host dimulai segera, dalam waktu satu menit setelah operasi melaporkan host yang rusak selesai. Jika instance menjadi tidak responsif setelah Anda memulai operasi laporan host yang rusak, maka, setelah Anda menunggu setidaknya 15 menit, sebaiknya Anda memulai ulang instance komputasi.

    gcloud

    Untuk melaporkan host yang rusak, gunakan perintah gcloud compute instances report-host-as-faulty berikut:

    gcloud compute instances report-host-as-faulty INSTANCE_NAME \
        --async \
        --disruption-schedule=IMMEDIATE \
        --fault-reasons=behavior=FAULT_REASON,description=DESCRIPTION \
        --zone=ZONE
    

    Ganti kode berikut:

    • INSTANCE_NAME: nama instance Compute.

    • FAULT_REASON: daftar masalah host yang dialami instance komputasi Anda, yang dipisahkan dengan koma—misalnya, ISSUE_1,ISSUE_2. Anda dapat menentukan nilai berikut:

      • PERFORMANCE: bahwa GPU yang terpasang ke instance komputasi memiliki masalah performa dibandingkan dengan GPU lain di cluster, Anda tidak melihat error XID dalam log, dan Compute Engine tidak mendeteksi pola kegagalan biasa lainnya, seperti kerusakan data tanpa pemberitahuan.

      • SILENT_DATA_CORRUPTION: Anda melihat kerusakan data di instance komputasi, tetapi instance komputasi tetap berjalan. Kerusakan data senyap dapat disebabkan oleh masalah seperti kerusakan vCPU, bug software, atau masalah kernel.

      • UNRECOVERABLE_GPU_ERROR: Anda mengidentifikasi error GPU yang tidak dapat dipulihkan dengan XID.

      • BEHAVIOR_UNSPECIFIED: Anda tidak yakin apa masalah yang terjadi pada instance komputasi Anda.

    • DESCRIPTION: deskripsi masalah yang memengaruhi instance komputasi Anda, seperti informasi XID atau masalah performa yang dicurigai.

    • ZONE: zona tempat instance komputasi berada.

    REST

    Untuk melaporkan host yang rusak, buat permintaan POST berikut ke metode instances.reportHostAsFaulty.

    Saat melaporkan host yang rusak, Anda dapat menentukan beberapa alasan kerusakan sekaligus. Misalnya, untuk menentukan dua alasan kesalahan, buat permintaan sebagai berikut:

    POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME/reportHostAsFaulty
    
    {
      "disruptionSchedule": "IMMEDIATE",
      "faultReasons": [
        {
          "behavior": "FAULT_REASON_1",
          "description": "DESCRIPTION_1"
        },
        {
          "behavior": "FAULT_REASON_2",
          "description": "DESCRIPTION_2"
        }
      ]
    }
    

    Ganti kode berikut:

    • PROJECT_ID: ID project tempat instance compute berada.

    • ZONE: zona tempat instance komputasi berada.

    • INSTANCE_NAME: nama instance Compute.

    • FAULT_REASON_1 dan FAULT_REASON_2: setiap masalah host yang dialami instance komputasi Anda. Anda dapat menentukan nilai berikut:

      • PERFORMANCE: bahwa GPU yang terpasang ke instance komputasi memiliki masalah performa dibandingkan dengan GPU lain di cluster, Anda tidak melihat error XID dalam log, dan Compute Engine tidak mendeteksi pola kegagalan biasa lainnya, seperti kerusakan data tanpa pemberitahuan.

      • SILENT_DATA_CORRUPTION: Anda melihat kerusakan data di instance komputasi, tetapi instance komputasi tetap berjalan. Kerusakan data senyap dapat disebabkan oleh masalah seperti kerusakan vCPU, bug software, atau masalah kernel.

      • UNRECOVERABLE_GPU_ERROR: Anda mengidentifikasi error GPU yang tidak dapat dipulihkan dengan XID.

      • BEHAVIOR_UNSPECIFIED: Anda tidak yakin apa masalah yang terjadi pada instance komputasi Anda.

    • DESCRIPTION_1 dan DESCRIPTION_2: deskripsi untuk setiap masalah host yang Anda tentukan, seperti informasi XID atau masalah performa yang dicurigai.

Meninjau laporan operasi host yang salah

Setelah Anda melaporkan host yang rusak, Compute Engine akan memulai serangkaian operasi untuk menandai host sebagai rusak dan menyiapkan host untuk perbaikan. Secara khusus, selama operasi melaporkan host yang rusak, proses berikut terjadi:

  1. Tandai host sebagai rusak. Compute Engine membuat laporan operasi host yang salah. Operasi melaporkan host yang rusak kemudian membuat urutan sub-operasi. Sub-operasi ini menandai host yang mendasarinya sebagai rusak.

  2. Siapkan host untuk reparasi. Setelah semua sub-operasi selesai, operasi laporkan host yang bermasalah akan dimulai. Compute Engine menghentikan instance komputasi dan memulai operasi perbaikan host yang rusak. Berdasarkan mode operasional reservasi yang ditentukan dalam reservasi yang digunakan instance komputasi, dan jika host yang sehat tersedia, Compute Engine akan menghentikan instance komputasi atau mencoba memigrasikan dan memulai ulang instance komputasi secara otomatis.

  3. Laporkan penyelesaian dan perbaiki host. Compute Engine menyelesaikan operasi melaporkan host yang rusak, dan operasi perbaikan host berjalan.

Untuk melacak status operasi host rusak laporan (compute.instances.reportHostAsFaulty) di project Anda, pilih salah satu opsi berikut. Untuk mengetahui informasi selengkapnya tentang operasi lain yang dapat Anda gunakan untuk melacak perbaikan, migrasi, dan mulai ulang otomatis, lihat Perilaku pemeliharaan dan mulai ulang dan Memantau dan merencanakan peristiwa pemeliharaan host dalam dokumentasi Compute Engine.

Konsol (Operasi instance)

  1. Di konsol Google Cloud , buka halaman Operasi.

    Buka Operasi

  2. Pada tabel yang muncul, cari instance komputasi yang Anda laporkan.

  3. Di baris yang berisi instance komputasi, di kolom Status, Anda dapat melihat status operasi laporkan host bermasalah. Setelah operasi selesai, nilainya adalah Selesai.

  4. Opsional: Untuk memverifikasi apakah Compute Engine telah memulai ulang instance komputasi, lihat detail instance.

Konsol (Log instance Compute)

  1. Di konsol Google Cloud , buka halaman Logs Explorer.

    Buka Logs Explorer

  2. Verifikasi bahwa tombol Show query diaktifkan.

  3. Di editor kueri, masukkan kueri berikut:

    resource.type="gce_instance" AND protoPayload.methodName=~"compute\.instances\.reportHostAsFaulty"
    
  4. Klik Run query. Panel Query results menampilkan hasil kueri.

gcloud

  1. Untuk melihat status operasi melaporkan host yang rusak di project Anda, gunakan perintah gcloud compute operations list dengan flag --filter yang ditetapkan ke operationType:reportHostAsFaulty:

    gcloud compute operations list --filter="operationType:reportHostAsFaulty"
    
  2. Jika Anda ingin melihat detail operasi host yang salah tertentu, gunakan perintah gcloud compute operations describe:

    gcloud compute operations describe OPERATION_NAME \
        --zone="ZONE"
    

    Ganti kode berikut:

    • OPERATION_NAME: nama operasi.

    • ZONE: zona tempat operasi berada.

REST

Untuk melihat status operasi melaporkan host yang rusak di project Anda, buat permintaan GET ke metode zoneOperations.list. Di URL permintaan, sertakan parameter kueri filter yang ditetapkan ke items.operationType:reportHostAsFaulty.

GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/operations&filter=items.operationType:reportHostAsFaulty

Ganti kode berikut:

  • PROJECT_ID: nama operasi.

  • ZONE: zona tempat operasi berada.

Apa langkah selanjutnya?