All Products
Search
Document Center

Elasticsearch:Gunakan kluster Logstash yang dikelola sendiri untuk migrasi data ke kluster Alibaba Cloud Elasticsearch

Last Updated:Apr 23, 2026

Logstash adalah mesin pengumpulan data open source yang dapat menyaring dan mentransmisikan data secara real time. Jika Anda tidak memiliki persyaratan tinggi terhadap kinerja real-time dalam migrasi data, Anda dapat menggunakan Logstash untuk migrasi tersebut. Topik ini menjelaskan cara menggunakan Elastic Compute Service (ECS) Alibaba Cloud untuk men-deploy kluster Logstash yang dikelola sendiri serta cara memanfaatkan kluster tersebut guna memigrasikan data dari file log ke kluster Alibaba Cloud Elasticsearch.

Prasyarat

  • Kluster Alibaba Cloud Elasticsearch telah dibuat, dan fitur Auto Indexing diaktifkan untuk kluster tersebut.

    Catatan
  • Instance ECS telah dibuat. Instance ECS tersebut dapat terhubung ke kluster Elasticsearch dan kluster Logstash yang dikelola sendiri. Untuk informasi lebih lanjut, lihat Buat instance menggunakan wizard.

    Catatan

    Disarankan agar Anda membuat instance ECS yang berada di wilayah, zona, dan virtual private cloud (VPC) yang sama dengan kluster Elasticsearch.

  • JDK telah diinstal pada instance ECS. Untuk informasi lebih lanjut, lihat Instal JDK.

    Catatan

    JDK harus versi Temurin 17 atau lebih baru. Untuk informasi lebih lanjut mengenai kompatibilitas antara versi Java JDK dan versi Logstash, lihat Kompatibilitas antara Logstash dan JVM.

  • Data yang akan dimigrasikan telah disiapkan. Dalam contoh ini, digunakan data log ECS.

Prosedur

Langkah 1: (Opsional) Buat role dan user

Instance Logstash yang dikelola sendiri memerlukan akun Elasticsearch untuk mengakses kluster Elasticsearch Anda dan melihat data pemantauan Logstash di Konsol Kibana. Anda dapat menggunakan user bawaan elastic atau user kustom.

Catatan

Dalam skenario produksi, disarankan agar Anda menggunakan user kustom. Sebelum menggunakan user kustom, Anda harus menetapkan role dengan izin yang diperlukan kepada user tersebut. Penggunaan user elastic dalam skenario produksi dapat mengompromikan keamanan sistem.

Buat role

Bagian ini menjelaskan cara membuat role dengan hak akses baca dan tulis untuk indeks yang sesuai dengan pola logstash-*.

  1. Login ke Konsol Kibana kluster Elasticsearch.

    Untuk informasi lebih lanjut, lihat Login ke Konsol Kibana.

  2. Klik ikon image di pojok kiri atas halaman yang muncul, lalu pilih Management > Stack Management.

  3. Di panel navigasi kiri, pilih Security > Role.

  4. Pada halaman Role, klik Create role dan konfigurasikan parameter role tersebut.

    Tabel berikut menjelaskan beberapa parameter yang ditampilkan.

    Parameter

    Deskripsi

    Role Name

    Nama role tersebut. Masukkan nama kustom.

    Index

    Indeks yang ingin Anda kelola. Pilih logstash-*.

    Permission

    Izin yang ingin Anda berikan kepada role tersebut. Pilih read, write, create, delete, dan create_index.

  5. Klik Create role.

Buat user

Dalam contoh ini, dibuat user untuk pemantauan Logstash. Anda dapat menggunakan salah satu metode berikut untuk membuat user.

Penting

Secara default, Alibaba Cloud Elasticsearch menonaktifkan user bawaan logstash_system. Anda harus membuat user baru dan menetapkan role logstash_system kepadanya. Jangan beri nama user baru tersebut logstash_system.

  • Metode 1: Buat user di Konsol Kibana

    1. Login ke Konsol Kibana kluster Elasticsearch.

      Untuk informasi lebih lanjut, lihat Login ke Konsol Kibana.

    2. Klik ikon image di pojok kiri atas halaman yang muncul, lalu pilih Management > Stack Management.

    3. Di panel navigasi sisi kiri, pilih Security > Users.

    4. Pada halaman Users, klik Create user di pojok kanan atas.

    5. Pada halaman Create user, konfigurasikan parameter-parameter tersebut.

      Tabel berikut menjelaskan beberapa parameter yang ditampilkan.

      Parameter

      Deskripsi

      Username

      Nama user tersebut. Masukkan nama kustom. Contoh: logstash_system_monitor.

      Roles

      Role yang ditetapkan kepada user tersebut. Pilih logstash_system.

    6. Klik Create user.

  • Metode 2: Buat user menggunakan antarmuka baris perintah (CLI)

    Hubungkan ke instance ECS dan jalankan perintah berikut untuk membuat user:

    curl -u elastic:<es-password> -XPOST http://<instanceId>.elasticsearch.aliyuncs.com:9200/_xpack/security/user/logstash_system_monitor -d '{"password" : "<logstash-monitor-password>","roles" : ["logstash_system"],"full_name" : "<your full name>"}'

    Parameter

    Deskripsi

    es-password

    Password kluster Elasticsearch. Password ini juga digunakan untuk login ke Konsol Kibana kluster tersebut.

    <instanceId>

    ID kluster Elasticsearch. Anda dapat mengecek ID kluster tersebut di halaman Informasi Dasar kluster Elasticsearch.

    <logstash-monitor-password>

    Password untuk user logstash_system_monitor.

    <your full name>

    Nama lengkap user tersebut.

    Setelah user dibuat, hasil seperti pada gambar berikut akan dikembalikan.添加用户成功

Langkah 2: Instal Logstash pada instance ECS

  1. Hubungkan ke instance ECS.

    Untuk informasi lebih lanjut, lihat Metode koneksi.

  2. Unduh paket instalasi Logstash.

    Kunjungi situs web Elastic dan unduh paket instalasi Logstash yang memiliki versi yang sama dengan kluster Elasticsearch.

    wget https://artifacts.elastic.co/downloads/logstash/logstash-8.5.1-linux-x86_64.tar.gz
    Catatan

    Perintah untuk Logstash V7.4:

    wget https://artifacts.elastic.co/downloads/logstash/logstash-7.4.0.tar.gz
  3. Ekstrak paket instalasi Logstash.

    Dalam contoh ini, digunakan Logstash V8.5.1.

    tar -xzvf logstash-8.5.1-linux-x86_64.tar.gz

Langkah 3: Konfigurasi dan jalankan pipeline Logstash

  1. Masuk ke direktori Logstash.

    cd logstash-8.5.1
  2. Buat file .conf.

    touch test.conf
  3. Konfigurasi file test.conf.

    Kode contoh berikut memberikan contoh konfigurasi:

    input {
        file {
            path => "/your/file/path/xxx"
            }
    }
    filter {
    }
    output {
      elasticsearch {
        hosts => "<http://<instanceId>.elasticsearch.aliyuncs.com:9200>"
      	index => "<index-name>"
        user => "<user-name>"
        password => "<logstash-password>"
      }
    }

    Parameter

    Deskripsi

    path

    Jalur file log. Dalam contoh ini, digunakan /var/log/messages.

    hosts

    Titik akhir kluster Alibaba Cloud Elasticsearch Anda. Ganti instanceId dengan ID instance Anda. Contoh: http://es-cn-45xxxxxxxxxxxxju.elasticsearch.aliyuncs.com:9200.

    index

    Nama indeks tempat data dalam file log ditulis. Anda dapat menentukan nama kustom.

    user

    Username yang digunakan untuk mengakses kluster Elasticsearch. Dalam contoh ini, digunakan elastic.

    Penting
    • Untuk memastikan keamanan sistem, kami menyarankan agar Anda menggunakan user kustom alih-alih user elastic dalam bisnis aktual.

    • Username harus diapit tanda kutip ganda ("). Hal ini menghindari potensi error yang disebabkan oleh karakter khusus dalam username saat Anda menjalankan pipeline Logstash.

    password

    Password yang digunakan untuk mengakses kluster Elasticsearch.

    Penting

    Password harus diapit tanda kutip ganda ("). Hal ini menghindari potensi error yang disebabkan oleh karakter khusus dalam password saat Anda menjalankan pipeline Logstash.

    Logstash menyediakan berbagai plugin input, filter, dan output. Anda hanya perlu mengonfigurasi plugin-plugin ini secara sederhana untuk transfer data. Untuk informasi lebih lanjut, lihat Struktur File Konfigurasi.

  4. Jalankan pipeline Logstash.

    bin/logstash -f test.conf

    Jika perintah berhasil dijalankan, Logstash secara otomatis mendeteksi perubahan pada file log dan menyinkronkan perubahan tersebut ke kluster Elasticsearch. Logstash secara otomatis menyinkronkan data ke kluster Elasticsearch setiap kali data ditambahkan ke file log yang dipantau.

Langkah 4: Lihat data yang dimigrasikan

  1. Login ke Konsol Kibana kluster Elasticsearch.

    Untuk informasi lebih lanjut, lihat Login ke Konsol Kibana.

  2. Klik ikon image di pojok kiri atas halaman yang muncul, lalu pilih Management > Dev Tools.

  3. Pada tab Console halaman yang muncul, jalankan perintah berikut:

    GET /logstash-*/_search

Langkah 5: (Opsional) Pantau node Logstash

  1. Masuk ke folder config di direktori Logstash.

    cd logstash-8.5.1/config
  2. Konfigurasi file logstash.yml.

    1. Buka file logstash.yml.

      vim logstash.yml
    2. Dalam file logstash.yml, hapus anotasi parameter yang tercantum dalam tabel berikut. Lalu, konfigurasikan parameter tersebut.

      xpack.monitoring.enabled:true
      xpack.monitoring.elasticsearch.username:"<user-name>"
      xpack.monitoring.elasticsearch.password:"<logstash-password>"
      xpack.monitoring.elasticsearch.hosts:["http://es-cn-nwy3fwjp8xxxxxxx.elasticsearch.aliyuncs.com:9200"]

      Parameter

      Deskripsi

      xpack.monitoring.enabled

      Atur parameter ini ke true. Nilai default-nya adalah false.

      xpack.monitoring.elasticsearch.username

      Nama user yang Anda buat untuk pemantauan Logstash. Dalam contoh ini, digunakan user elastic.

      Penting

      Untuk memastikan keamanan sistem, kami menyarankan agar Anda menggunakan user kustom alih-alih user elastic dalam bisnis aktual.

      xpack.monitoring.elasticsearch.password

      Password user yang Anda buat untuk pemantauan Logstash.

      xpack.monitoring.elasticsearch.hosts

      Titik akhir kluster Alibaba Cloud Elasticsearch Anda. Contoh: http://es-cn-45xxxxxxxxxxxxju.elasticsearch.aliyuncs.com:9200.

  3. Masuk ke direktori Logstash dan launch layanan Logstash.

    cd ../
    bin/logstash -f test.conf
  4. Login ke Konsol Kibana kluster Elasticsearch.

    Untuk informasi lebih lanjut, lihat Login ke Konsol Kibana.

  5. Klik ikon image di pojok kiri atas halaman yang muncul, lalu pilih Management > Stack Monitoring.

  6. (Opsional) Di kotak dialog Create rules, klik OK.

  7. Pada halaman Cluster overview, lihat data pemantauan Logstash.

Referensi