Logstash menggunakan pipeline untuk mengumpulkan dan memproses data. Konfigurasi pipeline mencakup plugin input, output, dan filter opsional. Plugin input dan output mengonfigurasi sumber dan tujuan data, sedangkan plugin filter memproses atau menyaring data. Alibaba Cloud Logstash mendukung hingga 20 pipeline yang berjalan secara paralel. Topik ini menjelaskan cara mengelola pipeline menggunakan file konfigurasi, termasuk membuat, mengubah, menyalin, dan menghapus pipeline.
Prasyarat
Instans Alibaba Cloud Elasticsearch telah dibuat.
Untuk informasi selengkapnya, lihat Buat instans Alibaba Cloud Elasticsearch.
Fitur pembuatan indeks otomatis diaktifkan untuk instans Alibaba Cloud Elasticsearch target, atau indeks dan pemetaan telah dibuat terlebih dahulu di instans tersebut. Topik ini mengasumsikan Anda telah mengaktifkan pembuatan indeks otomatis.
Untuk mempelajari cara mengaktifkan pembuatan indeks otomatis, lihat Konfigurasi parameter YML. Untuk mempelajari cara membuat indeks dan pemetaan, lihat Panduan pemula: Dari pembuatan instans hingga pengambilan data.
CatatanUntuk memastikan keamanan data, Alibaba Cloud Elasticsearch secara default mengatur fitur Auto Indexing ke Not allowed. Saat Alibaba Cloud Logstash mengirim data, indeks dibuat melalui pengiriman data tersebut, bukan dengan menggunakan create index API. Oleh karena itu, sebelum menggunakan Alibaba Cloud Logstash untuk mengunggah data, Anda harus mengatur fitur Auto Indexing kluster Anda ke Permitted atau membuat indeks dan pemetaan terlebih dahulu.
Instans Alibaba Cloud Logstash telah dibuat.
Untuk informasi selengkapnya, lihat Buat instans Alibaba Cloud Logstash.
Batasan
Maksimal 20 pipeline dapat berjalan secara paralel.
Jika output adalah instans Alibaba Cloud Elasticsearch, Anda harus mengaktifkan pembuatan indeks otomatis atau membuat indeks dan pemetaan terlebih dahulu.
Layanan Alibaba Cloud harus berada dalam VPC yang sama. Jika tidak, Anda harus mengonfigurasi pengaturan jaringan dan keamanan. Untuk informasi selengkapnya, lihat Konfigurasi transfer data jaringan publik NAT.
Jika Anda menggunakan parameter file_extend di bagian output, Anda harus terlebih dahulu menginstal plugin logstash-output-file_extend. Untuk informasi selengkapnya, lihat Instal atau uninstal plugin.
Buat pipeline
Buka halaman Logstash Clusters.
Navigasi ke kluster target.
Di bilah navigasi atas, pilih wilayah tempat kluster berada.
Di halaman Logstash Clusters, temukan kluster tersebut lalu klik ID-nya.
Di panel navigasi kiri, klik Pipelines.
Klik Create Pipeline.
Masukkan Pipeline ID dan Config Settings.
Kode berikut merupakan contoh konfigurasi.
input { beats { port => 8000 } } filter { } output { elasticsearch { hosts => ["http://es-cn-o40xxxxxxxxxx****.elasticsearch.aliyuncs.com:9200"] index => "logstash_test_1" password => "es_password" user => "elastic" } file_extend { path => "/ssd/1/ls-cn-v0h1kzca****/logstash/logs/debug/test" } }Parameter
Deskripsi
input
Menentukan sumber data masukan. Untuk daftar jenis sumber data yang didukung, lihat input plugins.
CatatanSaat plugin input perlu mendengarkan pada port node tempat proses Logstash berjalan, gunakan port dalam rentang 8000 hingga 9000.
Jika Anda perlu mendefinisikan plugin, driver, atau file lain di bagian input, klik Show Third-party Libraries. Di kotak dialog Third-party Libraries, klik Upload dan ikuti petunjuk untuk mengunggah file. Untuk informasi selengkapnya, lihat konfigurasi extended files.
filter
Menentukan plugin untuk menyaring data masukan. Untuk daftar jenis plugin yang didukung, lihat filter plugins.
output
Menentukan jenis sumber data tujuan. Untuk daftar jenis sumber data yang didukung, lihat output plugins.
file_extend: Opsional. Parameter ini mengaktifkan logging debug dan mengonfigurasi jalur output untuk log debug menggunakan parameter path. Kami menyarankan Anda mengonfigurasi parameter ini agar dapat langsung melihat output di Konsol. Jika parameter ini tidak dikonfigurasi, Anda harus memverifikasi output di tujuan lalu kembali ke Konsol untuk melakukan perubahan, yang memakan waktu. Untuk informasi selengkapnya, lihat Gunakan fitur debugging konfigurasi pipeline Logstash.
PentingSebelum menggunakan parameter file_extend, Anda harus menginstal plugin logstash-output-file_extend. Untuk informasi selengkapnya, lihat Instal atau uninstal plugin. Parameter path secara default menggunakan jalur yang ditentukan sistem yang tidak boleh Anda ubah. Anda juga dapat memperoleh path dengan mengklik Start Configuration Debug.
Untuk informasi selengkapnya tentang struktur file konfigurasi dan tipe data yang didukung—yang dapat berbeda tergantung versi—lihat Structure of a Config File.
PentingUntuk alasan keamanan, saat menggunakan driver JDBC dan mengonfigurasi pipeline, Anda harus menambahkan
allowLoadLocalInfile=false&autoDeserialize=falseke parameter jdbc_connection_string. Jika tidak, sistem penjadwalan akan melaporkan kegagalan validasi saat Anda menambahkan file konfigurasi Logstash. Contoh:jdbc_connection_string => "jdbc:mysql://xxx.drds.aliyuncs.com:3306/<database_name>?allowLoadLocalInfile=false&autoDeserialize=false".Saat file konfigurasi Anda berisi parameter seperti last_run_metadata_path, layanan Alibaba Cloud Logstash harus menyediakan jalur file. Jalur /ssd/1/<Logstash_instance_ID>/logstash/data/ tersedia untuk pengujian, dan data dalam direktori ini tidak dihapus. Pastikan Anda memiliki ruang disk yang cukup. Setelah menentukan jalur parameter, Logstash akan secara otomatis menghasilkan file di jalur tersebut, tetapi Anda tidak dapat melihat isi file tersebut.
Karena instans Alibaba Cloud Logstash dibuat dalam VPC, kami menyarankan Anda menggunakan instans dalam VPC yang sama saat mengonfigurasi layanan Alibaba Cloud. Jika Anda mengakses Alibaba Cloud Logstash dari internet, Anda harus mengonfigurasi pengaturan jaringan dan keamanan. Untuk informasi selengkapnya, lihat Konfigurasi transfer data jaringan publik NAT.
Kami menyarankan Anda menggunakan plugin file_extend untuk mencetak log saat pengujian, bukan menggunakan stdout.
Klik Next step dan konfigurasikan parameter pipeline.
Parameter
Deskripsi
Pipeline Workers
Jumlah thread pekerja untuk menjalankan tahap filter dan output pipeline secara paralel. Jika Anda memiliki backlog event atau CPU belum dimanfaatkan secara optimal, pertimbangkan untuk menambah nilai ini guna meningkatkan performa. Nilai default: jumlah core CPU pada instans.
Pipeline Batch Size
Jumlah maksimum event yang dikumpulkan oleh thread pekerja dari input sebelum mengeksekusi filter dan output. Ukuran batch yang lebih besar dapat menyebabkan overhead memori yang lebih tinggi. Untuk menggunakan ukuran batch yang lebih besar secara efektif, Anda mungkin perlu menambah ukuran heap JVM dengan mengatur variabel LS_HEAP_SIZE. Nilai default: 125.
Pipeline Batch Delay
Durasi dalam milidetik untuk menunggu setiap event sebelum mengirimkan batch kecil ke thread pekerja pipeline. Nilai default: 50 ms.
Queue Type
Model antrian internal untuk buffering event. Nilai yang valid:
MEMORY: Nilai default. Menentukan antrian tradisional berbasis memori.
PERSISTED: Antrian persisten berbasis disk.
Queue Max Bytes
Jumlah maksimum data yang dapat disimpan oleh antrian, dalam
MB. Nilainya harus berupa bilangan bulat dari1hingga2<sup>53</sup>-1. Nilai default:1024.CatatanPastikan nilai ini lebih kecil dari kapasitas disk total Anda.
Queue Checkpoint Writes
Saat antrian persisten diaktifkan, ini adalah jumlah maksimum event yang dapat ditulis sebelum checkpoint dipaksa. Nilai 0 menunjukkan tidak ada batas. Nilai default: 1024.
PeringatanSetelah dikonfigurasi, Anda harus menyimpan dan menerapkan pengaturan agar berlaku. Tindakan ini memicu restart instans. Lanjutkan hanya jika restart tersebut tidak akan berdampak pada bisnis Anda.
Klik Save atau Save and Deploy.
Save: Menyimpan konfigurasi pipeline tetapi tidak menerapkannya. Setelah disimpan, Anda akan dikembalikan ke halaman Pipelines. Di bagian Pipelines, Anda dapat mengklik Deploy Now di kolom Actions untuk me-restart instans dan menerapkan konfigurasi.
Save and Deploy: Menyimpan dan menerapkan konfigurasi, me-restart instans untuk menerapkan perubahan.
Di pesan sukses, klik OK. Anda dapat melihat pipeline yang baru dibuat di Pipelines.
Tugas pipeline dibuat setelah instans selesai me-restart.
Ubah pipeline
Mengubah dan menerapkan pipeline akan me-restart instans. Lakukan operasi ini hanya jika tidak akan berdampak pada bisnis Anda.
Di bagian Pipelines, temukan pipeline target lalu klik Modify di kolom Actions.
Di halaman Modify, ubah Config Settings dan Pipeline Parameters. Pipeline ID tidak dapat diubah.
Klik Save atau Save and Deploy. Pipeline diubah setelah instans selesai me-restart.
Salin pipeline
Menyalin dan menerapkan pipeline akan me-restart instans. Lakukan operasi ini hanya jika tidak akan berdampak pada bisnis Anda.
Di bagian Pipelines, temukan pipeline target lalu di kolom Actions, klik .
Di halaman Copy, ubah Pipeline ID. Pengaturan lain tetap tidak berubah.
Klik Save atau Save and Deploy. Pipeline disalin setelah instans selesai me-restart.
Hapus pipeline
Pipeline yang dihapus tidak dapat dipulihkan, dan tindakan ini menginterupsi tugas pipeline yang sedang berjalan. Lakukan dengan hati-hati.
Menghapus pipeline memicu perubahan instans. Lakukan operasi ini hanya jika tidak akan berdampak pada bisnis Anda.
Di bagian Pipelines, temukan pipeline target lalu di kolom Actions, klik .
Di kotak dialog Delete, tinjau peringatan risiko.
Klik Continue. Pipeline dihapus setelah perubahan instans selesai.
Dokumen terkait
Dokumentasi API untuk membuat pipeline: CreatePipelines
Dokumen praktik terbaik untuk migrasi data menggunakan Logstash: Migrasi data dari kluster Elasticsearch mandiri ke kluster Alibaba Cloud Elasticsearch menggunakan Alibaba Cloud Logstash
Dokumen praktik terbaik untuk sinkronisasi data MySQL menggunakan Logstash: Sinkronisasi data dari database ApsaraDB RDS for MySQL ke kluster Elasticsearch menggunakan Logstash
Dokumen untuk sinkronisasi data log menggunakan Logstash: Panduan pengguna plugin logstash-input-sls
> Copy