全部产品
Search
文档中心

Elasticsearch:Gunakan perintah curl dan operasi API untuk mengelola kluster Elasticsearch Alibaba Cloud

更新时间:Jul 06, 2025

Elasticsearch sumber terbuka menyediakan serangkaian operasi API RESTful yang dapat Anda panggil dengan menjalankan perintah curl atau menggunakan Konsol Kibana. Topik ini menjelaskan cara menggunakan perintah curl dan memanggil operasi API untuk mengakses kluster Elasticsearch Alibaba Cloud, menanyakan informasi kluster, membuat indeks dan dokumen, serta mencari dokumen.

Informasi latar belakang

Anda dapat merujuk pada topik ini untuk memanggil operasi API dengan menjalankan perintah curl. Untuk informasi lebih lanjut tentang cara memanggil operasi API menggunakan Konsol Kibana, lihat Masuk ke Konsol Kibana.

Prasyarat

Sebuah instance Elastic Compute Service (ECS) yang menjalankan sistem operasi Linux dibuat di dalam virtual private cloud (VPC) tempat kluster Elasticsearch Alibaba Cloud Anda berada. Untuk informasi lebih lanjut, lihat Buat Instance di Tab Peluncuran Kustom.
Penting Anda juga dapat menggunakan instance ECS yang sudah ada yang berada di VPC yang sama dengan kluster Elasticsearch Anda.

Akses kluster Elasticsearch

  1. Hubungkan ke instance ECS.
    Untuk informasi lebih lanjut, lihat Langkah 3: Hubungkan ke Instance ECS.
    Catatan Dalam contoh ini, pengguna biasa digunakan.
  2. Jalankan perintah berikut untuk mengakses kluster Elasticsearch Anda.
    Catatan Jika sistem menampilkan curl command not found, Anda harus menjalankan perintah sudo yum install curl untuk menginstal cURL pada instance ECS.
    curl -u <user>:<password> http://<host>:<port>
    VariabelDeskripsi
    <user>Nama pengguna yang digunakan untuk mengakses kluster Elasticsearch Anda. Kami merekomendasikan agar Anda menggunakan nama pengguna selain elastic.
    Penting
    • Jika Anda menggunakan akun elastic untuk mengakses kluster Elasticsearch Anda dan kemudian mengatur ulang kata sandi akun tersebut, mungkin diperlukan waktu bagi kata sandi baru untuk berlaku. Selama periode ini, Anda tidak dapat menggunakan akun elastic untuk mengakses kluster. Oleh karena itu, kami merekomendasikan agar Anda tidak menggunakan akun elastic untuk mengakses kluster Elasticsearch. Anda dapat masuk ke Konsol Kibana, membuat pengguna dengan peran yang diperlukan, dan mengakses kluster Elasticsearch sebagai pengguna tersebut. Untuk informasi lebih lanjut, lihat Gunakan mekanisme RBAC yang disediakan oleh Elasticsearch X-Pack untuk mengimplementasikan kontrol akses.
    • Jika versi kluster Elasticsearch Anda mencakup with_X-Pack, Anda harus menentukan nama pengguna dan kata sandi untuk mengakses kluster Elasticsearch.
    <password>Kata sandi yang digunakan untuk mengakses kluster Elasticsearch Anda. Kata sandi akun elastic ditentukan saat Anda membuat kluster Elasticsearch. Jika Anda lupa kata sandi, Anda dapat mengatur ulang. Untuk informasi lebih lanjut tentang prosedur dan tindakan pencegahan untuk mengatur ulang kata sandi, lihat Atur ulang kata sandi akses untuk kluster Elasticsearch.
    <host>internal endpointTitik akhir internal kluster Elasticsearch Anda. Anda dapat memperoleh titik akhir internal dari halaman Informasi Dasar kluster Elasticsearch.
    <port>Nomor port yang digunakan untuk mengakses kluster Elasticsearch Anda. Nomor port default adalah 9200. Anda dapat memperoleh nomor port dari halaman Informasi Dasar kluster Elasticsearch.
    Contoh perintah:
    curl -u <user>:<password> http://es-cn-vxxxxx****.elasticsearch.aliyuncs.com:9200
    Jika perintah berhasil dijalankan, hasil seperti yang ditunjukkan pada gambar berikut dikembalikan.Successful response

Tanyakan informasi kluster

  • Tanyakan status kesehatan kluster
    curl -u <user>:<password> -XGET 'http://es-cn-vxxxxx****.elasticsearch.aliyuncs.com:9200/_cat/health?v'
    Jika perintah berhasil dijalankan, hasil seperti yang ditunjukkan pada gambar berikut dikembalikan.Query the health status of the cluster
  • Tanyakan indeks dalam kluster
    curl -u <user>:<password> -XGET 'http://es-cn-vxxxxx****.elasticsearch.aliyuncs.com:9200/_cat/indices?v'
    Jika perintah berhasil dijalankan, hasil seperti yang ditunjukkan pada gambar berikut dikembalikan.Query indexes in the cluster

Buat indeks dan dokumen

  • Buat indeks
    curl -u <user>:<password> -XPUT 'http://es-cn-vxxxxx****.elasticsearch.aliyuncs.com:9200/product_info'

    Pada contoh sebelumnya, indeks bernama product_info dibuat.

    Jika perintah berhasil dijalankan, hasil seperti yang ditunjukkan pada gambar berikut dikembalikan.Create an index
  • Konfigurasikan pemetaan untuk indeks
    curl -u <user>:<password> -XPUT 'http://es-cn-vxxxxx****.elasticsearch.aliyuncs.com:9200/product_info/_doc/_mapping?include_type_name=true' -H 'Content-Type: application/json' -d '
    {
     "_doc":{
       "properties": {
            "productName": {"type": "text","analyzer": "ik_smart"},
            "annual_rate":{"type":"keyword"},
            "describe": {"type": "text","analyzer": "ik_smart"}
          }
      }
    }'
    Jika perintah berhasil dijalankan, hasil seperti yang ditunjukkan pada gambar berikut dikembalikan.Configure a mapping for an index

    Pada contoh sebelumnya, tipe indeks product_info diatur ke _doc. Indeks tersebut berisi bidang productName, annual_rate, dan describe. Jika Anda menggunakan kluster Elasticsearch versi V7.0 atau lebih baru, tipe indeks dalam kluster harus _doc. Contoh ini juga mendefinisikan pemisah kata untuk bidang-bidang tersebut.

  • Buat dokumen dan sisipkan data
    • Buat dokumen tunggal
      curl -u <user>:<password> -XPOST 'http://es-cn-vxxxxx****.elasticsearch.aliyuncs.com:9200/product_info/_doc/1?pretty' -H 'Content-Type: application/json' -d '
      {
      "productName":"testpro",
      "annual_rate":"3,22%",
      "describe":"testpro"
      }'
      Jika perintah berhasil dijalankan, hasil seperti yang ditunjukkan pada gambar berikut dikembalikan.Create documents and insert data

      Pada contoh sebelumnya, dokumen bernama 1 dibuat di indeks product_info dari tipe _doc, dan catatan data dimasukkan ke dalam dokumen tersebut.

    • Buat beberapa dokumen
      curl -u <user>:<password> -XPOST http://es-cn-vxxxxx****.elasticsearch.aliyuncs.com:9200/_bulk -H 'Content-Type: application/json' -d'
      { "index" : { "_index": "product_info", "_type" : "_doc", "_id" : "1" } }
      {"productName":"testpro","annual_rate":"3,22%","describe":"testpro"}
      { "index" : { "_index": "product_info", "_type" : "_doc", "_id" : "2" } }
      {"productName":"testpro1","annual_rate":"3,26%","describe":"testpro"}'
      Jika perintah berhasil dijalankan, hasil seperti yang ditunjukkan pada gambar berikut dikembalikan.Create multiple documents

      Pada contoh sebelumnya, dokumen bernama 1 dan 2 dibuat di indeks product_info dari tipe _doc, dan catatan data dimasukkan ke dalam masing-masing dokumen tersebut.

Cari dokumen

curl -u <user>:<password> -XGET 'http://es-cn-vxxxxx****.elasticsearch.aliyuncs.com:9200/product_info/_doc/1?pretty'
Jika perintah berhasil dijalankan, hasil seperti yang ditunjukkan pada gambar berikut dikembalikan.Search for a document

Pada contoh sebelumnya, dokumen bernama 1 dicari.

Hapus indeks

curl -u <user>:<password> -XDELETE 'http://es-cn-vxxxxx****.elasticsearch.aliyuncs.com:9200/product_info'
Jika perintah berhasil dijalankan, hasil seperti yang ditunjukkan pada gambar berikut dikembalikan.Delete an index

Pada contoh sebelumnya, indeks bernama product_info dihapus.

Catatan Untuk informasi tentang perintah lainnya, lihat dokumentasi Elasticsearch sumber terbuka.

FAQ

Bagaimana cara menginstal alat curl dan menggunakan perintah curl untuk mengakses kluster Elasticsearch jika saya ingin menggunakan klien Windows untuk terhubung ke kluster?