全部产品
Search
文档中心

Elasticsearch:Gunakan Curator

更新时间:Jul 02, 2025

Curator adalah alat manajemen indeks yang disediakan oleh Elasticsearch sumber terbuka. Alat ini memungkinkan Anda membuat, menghapus, menonaktifkan indeks, serta menggabungkan segmen indeks. Topik ini menjelaskan cara menginstal Curator dan fitur-fiturnya. Anda dapat menggunakan Curator untuk menjalankan antarmuka baris perintah (CLI) singleton, menjadwalkan tugas menggunakan crontab, memisahkan data panas dan dingin, serta memigrasikan indeks dari node panas ke node hangat.

Instal Curator

Prasyarat

  • Sebuah kluster Alibaba Cloud Elasticsearch telah dibuat.

    Untuk informasi lebih lanjut, lihat Buat kluster Alibaba Cloud Elasticsearch.

  • Sebuah Instance ECS Alibaba Cloud telah dibuat, dan lingkungan Python telah dipersiapkan.

    Dalam contoh ini, instance ECS yang menjalankan CentOS 7.3 64-bit digunakan. Instance ECS yang dibuat harus berada di wilayah, zona, dan virtual private cloud (VPC) yang sama dengan kluster Elasticsearch. Untuk informasi lebih lanjut, lihat Buat instance di tab Peluncuran Kustom.

Prosedur

  1. Hubungkan ke instance ECS. Untuk informasi lebih lanjut, lihat Hubungkan ke instance Linux menggunakan kata sandi atau kunci.

    Catatan

    Dalam contoh ini, pengguna biasa digunakan.

  2. Jalankan perintah berikut untuk menginstal Curator:

    sudo pip install elasticsearch-curator
    Catatan
    • Kami merekomendasikan agar Anda menginstal Curator 5.6.0. Versi ini mendukung kluster Alibaba Cloud Elasticsearch V5.5.3 dan V6.3.2. Untuk informasi tentang kompatibilitas antara versi Curator dan versi Alibaba Cloud Elasticsearch, lihat Kompatibilitas Versi.

    • Untuk informasi lebih lanjut tentang Curator, lihat Curator.

  3. Setelah Curator diinstal, jalankan perintah berikut untuk memeriksa versinya:

    sudo curator --version

    Jika perintah berhasil dijalankan, hasil berikut akan dikembalikan:

    curator, version 5.6.0

Gunakan CLI Singleton

Anda dapat menjalankan perintah curator_cli untuk melakukan operasi tunggal. Untuk informasi lebih lanjut, lihat Antarmuka Baris Perintah Singleton.

Catatan
  • Perintah curator_cli memungkinkan Anda melakukan hanya satu operasi pada satu waktu.

  • Beberapa operasi seperti Alias dan Restore tidak dapat dilakukan menggunakan CLI singleton.

Jadwalkan tugas menggunakan crontab

Anda dapat menggunakan crontab dan perintah curator untuk menjadwalkan operasi suatu tugas.

Kode berikut memberikan contoh perintah curator:

curator [OPTIONS] ACTION_FILE
Options:
  --config PATH  Path to configuration file. Default: ~/.curator/curator.yml
  --dry-run      Do not perform any changes.
  --version      Show the version and exit.
  --help         Show this message and exit.

Sebelum menjalankan perintah curator, Anda harus menentukan file config.yml dan action.yml.

Pisahkan data panas dan dingin

Untuk informasi lebih lanjut, lihat Arsitektur "Hot-Warm" di Elasticsearch 5.x.

Migrasikan indeks dari node panas ke node hangat

  1. Buat file config.yml di direktori /usr/curator/. Anda dapat merujuk kode berikut untuk mengonfigurasi file tersebut:

    client:
      hosts:
        - http://es-cn-0pxxxxxxxxxxxx234.elasticsearch.aliyuncs.com
      port: 9200
      url_prefix:
      use_ssl: False
      certificate:
      client_cert:
      client_key:
      ssl_no_validate: False
      http_auth: user:password
      timeout: 30
      master_only: False
    logging:
      loglevel: INFO
      logfile:
      logformat: default
      blacklist: ['elasticsearch', 'urllib3']
    • hosts: Atur nilai ke endpoint internal atau publik dari kluster Elasticsearch. Endpoint internal digunakan dalam contoh ini.

    • http_auth: Atur nilai ke nama pengguna dan kata sandi yang digunakan untuk mengakses kluster Elasticsearch.

  2. Buat file action.yml di direktori /usr/curator/. Anda dapat merujuk kode berikut untuk mengonfigurasi file tersebut:

    actions:
      1:
        action: allocation
        description: "Apply shard allocation filtering rules to the specified indices"
        options:
          key: box_type
          value: warm
          allocation_type: require
          wait_for_completion: true
          timeout_override:
          continue_if_exception: false
          disable_action: false
        filters:
        - filtertype: pattern
          kind: prefix
          value: logstash-
        - filtertype: age
          source: creation_date
          direction: older
          timestring: '%Y-%m-%dT%H:%M:%S'
          unit: minutes
          unit_count: 30

    Dalam contoh ini, indeks yang dibuat pada node hot 30 menit lalu dan namanya dimulai dengan logstash- dimigrasikan ke node warm. Anda juga dapat mengonfigurasi file action.yml sesuai dengan kebutuhan bisnis Anda.

  3. Jalankan perintah berikut untuk memeriksa apakah perintah curator berjalan normal:

    sudo curator --config /usr/curator/config.yml /usr/curator/action.yml

    Jika perintah curator berjalan normal, informasi serupa dengan kode berikut akan dikembalikan:

    2019-02-12 20:11:30,607 INFO      Preparing Action ID: 1, "allocation"
    2019-02-12 20:11:30,612 INFO      Trying Action ID: 1, "allocation": Apply shard allocation filtering rules to the specified indices
    2019-02-12 20:11:30,693 INFO      Updating index setting {'index.routing.allocation.require.box_type': 'warm'}
    2019-02-12 20:12:57,925 INFO      Health Check for all provided keys passed.
    2019-02-12 20:12:57,925 INFO      Action ID: 1, "allocation" completed.
    2019-02-12 20:12:57,925 INFO      Job completed.
  4. Jalankan perintah berikut untuk mengaktifkan perintah curator agar berjalan setiap interval 15 menit:

    crontab -e
    */15 * * * * curator --config /usr/curator/config.yml /usr/curator/action.yml