Dalam artikel ini, kita akan membahas cara menggunakan Elasticsearch dan Kibana menyebarkan Docker Compose. Ini adalah dua komponen utama dari ELK Stack( Elasticsearch, Logstash, Kibana), yang membantu Anda mencari, menganalisis, dan memvisualisasikan data secara efektif. Berikut adalah konfigurasi terperinci dan cara kerja setiap komponen.
1. Elasticsearch
a. Konfigurasi Dasar
Elasticsearch dikonfigurasi untuk berjalan dalam kontainer Docker dengan parameter berikut:
Gambar: Gambar resmi Elasticsearch, versi
8.17.2
, digunakan.Mode simpul tunggal: Diaktifkan melalui variabel lingkungan
discovery.type=single-node
.Keamanan: Keamanan X-Pack diaktifkan(
xpack.security.enabled=true
), dan kata sandi untukelastic
pengguna ditetapkan keYVG6PKplG6ugGOw
.Jaringan: Elasticsearch mendengarkan semua antarmuka jaringan(
network.host=0.0.0.0
).Memori JVM: Dikonfigurasi dengan
-Xms1g
(memori awal) dan-Xmx1g
(memori maksimum).
b. Ports dan Volumes
Ports: Port
9200
(HTTP) dan9300
(komunikasi internal) dipetakan dari kontainer ke host.Volumes: Data Elasticsearch disimpan dalam
elasticsearch-data
volume.
c. Pemeriksaan kesehatan
Pemeriksaan kesehatan disiapkan untuk memantau Elasticsearch status dengan memanggil /_cluster/health
API bersama elastic
pengguna. Jika API gagal merespons, kontainer akan dimulai ulang.
2. Kibana
a. Konfigurasi Dasar
Kibana dikonfigurasi untuk terhubung Elasticsearch dan berjalan dalam kontainer Docker dengan parameter berikut:
Gambar: Gambar resmi Kibana, versi
8.17.2
, digunakan.Elasticsearch Koneksi: Alamat Elasticsearch diatur ke
http://elasticsearch:9200
.Otentikasi: Kibana menggunakan
kibana_user
kata sandiYVG6PKplG6ugGOw
untuk terhubung Elasticsearch.
b. Ports dan Jaringan
Ports: Port
5601
dipetakan dari kontainer ke host untuk mengakses Kibana antarmuka.Jaringan: Kibana terhubung ke
elk-network
.
c. Ketergantungan pada Elasticsearch
Kibana hanya dimulai setelah Elasticsearch siap, memastikan koneksi yang sukses antara kedua layanan.
3. Volume dan Jaringan
a. Volume
elasticsearch-data: Volume ini digunakan untuk menyimpan Elasticsearch data, memastikan persistensi data bahkan jika wadahnya dihapus.
b. Jaringan
elk-network: Jaringan
bridge
dibuat untuk menghubungkan Elasticsearch dan Kibana layanan.
4. Cara Penggunaan
a. Memulai Layanan
Untuk memulai Elasticsearch dan Kibana, jalankan perintah berikut:
b. Membuat Kibana Pengguna(Jika Diperlukan)
Jika Anda ingin menggunakan pengguna khusus untuk Kibana, Anda dapat membuatnya dengan perintah berikut:
Untuk menggunakan a token sebagai ganti kata sandi, Anda dapat membuatnya dengan perintah berikut:
5. Pemecahan Masalah
Jika Anda mengalami kesalahan, Anda dapat memeriksa log kontainer menggunakan:
Untuk memulai ulang Kibana:
Isi Lengkap Docker Compose File
Berikut ini adalah isi lengkap berkasnya docker-compose-els.yml
:
Kesimpulan
Dengan Docker Compose konfigurasi ini, Anda dapat dengan mudah menerapkan Elasticsearch dan Kibana memenuhi kebutuhan pencarian, analisis, dan visualisasi data Anda. Sesuaikan dan perluas konfigurasi ini agar sesuai dengan persyaratan khusus proyek Anda!