全部产品
Search
文档中心

Elasticsearch:Kesalahan restart atau pembaruan kluster

更新时间:Jul 02, 2025

Topik ini menjelaskan detail, penyebab potensial, dan solusi untuk kesalahan yang terjadi saat melakukan restart atau pembaruan kluster.

Deskripsi masalah

Saat melakukan restart atau pembaruan kluster Elasticsearch, sistem melaporkan pesan kesalahan berikut:

Operasi tidak dapat dilakukan karena kluster tidak sehat atau terdapat indeks dalam keadaan tertutup. Disarankan untuk mencoba operasi kembali setelah kluster kembali sehat atau indeks diaktifkan.

Penyebab dan solusi

Sistem melaporkan pesan kesalahan tersebut jika kluster memenuhi satu atau lebih kondisi berikut:
  • Kluster berisi indeks dalam keadaan tertutup.

    Anda dapat menjalankan perintah GET /_cat/indices?v untuk memeriksa status indeks. Jika indeks dalam keadaan tertutup, jalankan perintah POST /<index_name>/_open untuk membuka indeks.

  • Kluster dalam status warna merah atau kuning.
    Anda dapat menjalankan perintah GET /_cat/health?v untuk memeriksa status kluster. Tabel berikut menjelaskan penyebab umum dan solusinya.
    PenyebabSolusi
    Shard dialokasikan secara otomatis, dan jumlah maksimum percobaan ulang telah tercapai (maksimal 5 kali).Disarankan menjalankan perintah POST /_cluster/reroute?retry_failed=true untuk mengalokasikan ulang shard.
    Shard utama dan replika dari indeks dialokasikan ke node yang sama, ditunjukkan oleh pesan kesalahan: shard tidak dapat dialokasikan ke node tempat salinan shard sudah ada.Disarankan mengatur jumlah shard replika menjadi 0 dan mengembalikannya menjadi 1 setelah kluster normal.
    Jumlah maksimum shard yang dapat dialokasikan secara bersamaan telah tercapai.Tunggu hingga shard dialokasikan. Jika shard belum dialokasikan setelah beberapa waktu, jalankan perintah GET _cluster/allocation/explain untuk mengetahui alasan shard tidak dialokasikan.
    Satu atau lebih node dalam kluster terputus.Jalankan perintah GET _cat/nodes?v untuk memeriksa apakah ada node yang terputus. Disarankan me-restart node tersebut.
    Penggunaan disk pada node dalam kluster tinggi.Setelah penggunaan disk turun di bawah 85%, disarankan me-restart node untuk menormalkan hasil diagnostik.
    Penggunaan memori heap kluster tinggi, menyebabkan operasi ditangguhkan.Disarankan melakukan throttling dan mengatur status indeks historis menjadi tertutup untuk mengurangi konsumsi memori.
    Penyebab lainnyaJika kluster berisi shard yang belum dialokasikan, Anda dapat memeriksa utilisasi CPU dan penggunaan memori heap kluster serta menjalankan perintah GET _cluster/allocation/explain untuk mengetahui alasan shard tidak dialokasikan.
  • Kluster dalam keadaan normal tetapi beban berat.
    Tabel berikut menjelaskan metode pemecahan masalah, penyebab, dan solusi.
    Metode Pemecahan MasalahPenyebabSolusi
    • Lihat data pemantauan untuk penggunaan disk.
    • Jalankan perintah GET _cat/allocation.
    • Jalankan perintah GET _cluster/allocation/explain.
    • Lihat log.
    Penggunaan disk mencapai 85%.Jika penggunaan disk mencapai 85%, pembuatan shard mungkin terpengaruh. Disarankan melakukan satu atau lebih operasi berikut untuk menyelesaikan masalah ini. Setelah itu, periksa data pemantauan untuk memastikan penggunaan disk turun di bawah 85%.
    • Hapus indeks historis.
    • Perluas disk.
    • Atur jumlah shard replika menjadi 0.
    Lihat data pemantauan untuk utilisasi CPU dan informasi tentang hot thread.Utilisasi CPU mencapai 85%.Jika utilisasi CPU mencapai 85%, stabilitas kluster mungkin terpengaruh. Periksa data pemantauan untuk read QPS dan write QPS, lalu kurangi lalu lintas, tambah kapasitas kluster, atau tingkatkan konfigurasi kluster.
    Lihat data pemantauan untuk penggunaan memori heap, log, serta metrik old gc collection count dan old gc collecting.ms.Penggunaan memori heap lebih besar dari atau sama dengan 75%.Jika penggunaan memori heap terlalu tinggi, stabilitas kluster mungkin terganggu. Disarankan melakukan satu atau lebih operasi berikut:
    • Kurangi lalu lintas baca dan tulis.
    • Tingkatkan konfigurasi kluster.
    • Atur status indeks historis menjadi tertutup untuk mengurangi konsumsi memori.
    Lihat data pemantauan untuk metrik NodeLoad_1m(value).Nilai metrik NodeLoad_1m(value) untuk sebuah node lebih besar dari jumlah vCPU untuk node tersebut.Jika nilai metrik NodeLoad_1m(value) untuk sebuah node lebih besar dari jumlah vCPU, node tersebut memiliki beban berat. Periksa data pemantauan untuk read QPS, write QPS, dan throughput disk, lalu kurangi lalu lintas baca/tulis, tambah kapasitas kluster, atau tingkatkan konfigurasi kluster sesegera mungkin.
    Catatan