Tutorial FreeBSD Elasticsearch dan Logstash - Instalasi dan Konfigurasi
· 2 min read · Label UnixBSDDi era sekarang, kemampuan sebuah situs web untuk mencari file, menganalisis, dan memvisualisasikan data dalam jumlah kecil maupun besar sangatlah penting. Hal ini tentu akan sangat bermanfaat bagi perkembangan organisasi dan bisnis yang membutuhkan kecepatan dalam mencari data atau file di sebuah situs web. Ada banyak sekali mesin pencari yang digunakan oleh para pengembang web. Elasticsearch merupakan salah satu dari sekian banyak mesin pencari dan analisis data yang cepat, canggih, dan populer. Elasticsearch telah meraih popularitas yang luar biasa selama bertahun-tahun.
Sejak awal kemunculannya hingga saat ini, Elasticsearch telah berkembang menjadi sesuatu yang jauh lebih besar dibandingkan saat pertama kali diperkenalkan. Elasticsearch bukan hanya sekadar mesin pencari biasa, tetapi lebih dari itu, ia telah menjadi sebuah ekosistem utuh yang dikenal sebagai “Elastic Stack.” Benda ini telah menjadi superstar, yang mampu menangani segala macam tugas, mulai dari pencarian situs web dasar dan analisis data log hingga pemrosesan data yang kompleks.
Elasticsearch adalah aplikasi sumber terbuka yang dibangun di atas Apache Lucene. Aplikasi ini, yang ditulis dalam Java, digunakan sebagai mesin pencarian dan analisis RESTful yang terdistribusi dan mampu menangani banyak kasus penggunaan. Elasticsearch pertama kali diperkenalkan oleh Elasticsearch N.V. pada tahun 2010, dan sekarang menjadi bagian dari Elastic Stack.
Elasticsearch dibuat dengan mempertimbangkan skalabilitas yang sangat tinggi, sehingga mampu menangani tantangan penskalaan indeks secara horizontal dan dapat menangani data dalam jumlah besar seperti seorang profesional.
Elasticsearch menawarkan banyak fitur unggulan, salah satunya adalah kemampuan pencarian dan analisisnya yang sangat cepat. Elasticsearch mampu melakukan pencarian secara real-time, yakni dalam waktu satu detik. Oleh karena itu, wajar saja jika banyak orang menggunakannya untuk menangani data dalam jumlah besar dengan mudah, efisien, dan sederhana.
Hostname: ns3
IP address: 192.168.5.2
Logstash version: logstash8-8.11.3
Elasticsearch version: elasticsearch8-8.11.3
Web server: Apache24
Dependencies: jna bash wazuh-server
Java version:
a. openjdk version "17.0.9" 2023-10-17
b. OpenJDK Runtime Environment (build 17.0.9+9-1)
c. OpenJDK 64-Bit Server VM (build 17.0.9+9-1, mixed mode, sharing)
1. Persyaratan sistem
OS: FreeBSD 13.2Hostname: ns3
IP address: 192.168.5.2
Logstash version: logstash8-8.11.3
Elasticsearch version: elasticsearch8-8.11.3
Web server: Apache24
Dependencies: jna bash wazuh-server
Java version:
a. openjdk version "17.0.9" 2023-10-17
b. OpenJDK Runtime Environment (build 17.0.9+9-1)
c. OpenJDK 64-Bit Server VM (build 17.0.9+9-1, mixed mode, sharing)
2. Menginstall Elasticsearch dengan sistem Ports
Sebelum memulai instalasi elasticsearch, pastikan aplikasi Java dan Apache berjalan di FreeBSD. Anda dapat menggunakan versi Java dan Apache dengan mengikuti petunjuk di atas. Oke, mari kita mulai menginstal dependensi elasticsearch.Install dependencies
root@ns3:~ # pkg install jna bash wazuh-server
/usr/ports/textproc/elasticsearch8
root@ns3:~ # cd /usr/ports/textproc/elasticsearch8
root@ns3:/usr/ports/textproc/elasticsearch8 # make install clean
/etc/rc.conf
root@ns3:~ # ee /etc/rc.conf
elasticsearch_enable="YES"
elasticsearch_user="elasticsearch"
elasticsearch_group="elasticsearch"
elasticsearch_config="/usr/local/etc/elasticsearch"
elasticsearch_login_class="root"
elasticsearch_java_home="/usr/local/openjdk17"
3. Cara Konfigurasi Elasticsearch
Setelah Anda menyelesaikan instalasi, lanjutkan dengan menyiapkan elasticsearch. File utama yang harus Anda konfigurasikan adalah elasticsearch.yml. Buka file elasticsearch.yml dan ubah hanya beberapa skrip, seperti contoh di bawah ini./usr/local/etc/elasticsearch/elasticsearch.yml
root@ns3:~ # ee /usr/local/etc/elasticsearch/elasticsearch.yml
cluster.name: nextcloud2
node.name: node-1
path.data: /var/db/elasticsearch
path.logs: /var/run/elasticsearch
bootstrap.memory_lock: true
network.host: 192.168.5.2
http.port: 9200
discovery.seed_hosts: ["127.0.0.1", "[::1]"]
discovery.type: single-node
xpack.ml.enabled: false
xpack.security.enabled: false
xpack.security.enrollment.enabled: false
Meskipun Elasticsearch memiliki fitur-fitur bawaan, Anda dapat memperluas fungsinya dengan menambahkan plugin untuk menyediakan analisis lanjutan dan memproses berbagai jenis data. Anda dapat memasang setiap plugin pada kluster Elasticsearch yang kompatibel, sama seperti plugin Elasticsearch lainnya.
Dalam artikel ini, kami akan mencoba memasang plugin Elasticsearch dan berinteraksi dengannya menggunakan Elasticsearch API. Jalankan perintah di bawah ini untuk memasang plugin yang umum digunakan.
Perintah di atas, menginstal plugin Elasticsearch untuk mengindeks dan mencari dokumen berkode base64 dalam format seperti RTF, PDF, dan PPT. Anda juga dapat menginstal plugin "analysis-phonetic" untuk mengidentifikasi hasil pencarian yang dilakukan oleh elasticsearch.
Plugin lain yang dapat Anda instal adalah “ingest-user-agent”. Plugin ini digunakan untuk mengurai header User Agent dari permintaan HTTP guna memberikan informasi pengenal tentang klien yang mengirim setiap permintaan.
Jalankan perintah kepemilikan pada file db dan log.
Langkah berikutnya adalah menjalankan elasticsearch.
Setelah itu, Anda menguji apakah Elasticsearch merespons pertanyaan.
Install plugin ingest-attachment
root@ns3:~ # /usr/local/lib/elasticsearch/bin/elasticsearch-plugin install ingest-attachment
Install plugin analysis-phonetic
root@ns3:~ # /usr/local/lib/elasticsearch/bin/elasticsearch-plugin install analysis-phonetic
Install plugin ingest-user-agent
root@ns3:~ # /usr/local/lib/elasticsearch/bin/elasticsearch-plugin install ingest-user-agent
Install plugin ingest-user-agent
root@ns3:~ # chown -R elasticsearch:elasticsearch /var/db/elasticsearch
root@ns3:~ # chown -R elasticsearch:elasticsearch /var/run/elasticsearch
Run elasticsearch
root@ns3:~ # service elasticsearch restart
Test elasticsearch
root@ns3:~ # curl -X GET "192.168.5.2:9200"
{
"name" : "node-1",
"cluster_name" : "nextcloud2",
"cluster_uuid" : "6oYpEqMpTPanRtTSe61E_w",
"version" : {
"number" : "8.11.3",
"build_flavor" : "default",
"build_type" : "tar",
"build_hash" : "64cf052f3b56b1fd4449f5454cb88aca7e739d9a",
"build_date" : "2023-12-08T11:33:53.634979452Z",
"build_snapshot" : false,
"lucene_version" : "9.8.0",
"minimum_wire_compatibility_version" : "7.17.0",
"minimum_index_compatibility_version" : "7.0.0"
},
"tagline" : "You Know, for Search"
}
4. Cara Instal Logstash8
Logstash adalah mesin pemrosesan peristiwa waktu nyata untuk mengelola peristiwa dan log. Anda dapat menggunakannya untuk mengumpulkan log, mengurainya, dan menyimpannya untuk digunakan nanti. Biasanya Logstash dipasangkan dengan elasticsearch. Di bagian ini kami akan menjelaskan cara menginstal Logstash di FreeBSD. Setelah menginstal dan mengonfigurasi Logstash, kami akan menghubungkannya ke elasticsearch, sehingga dapat digunakan secara bersamaan.Untuk menginstal Logstash, Anda dapat menggunakan paket PKG, seperti pada contoh di bawah ini.
Tambahkan skrip di bawah ini ke file rc.conf.
Edit file logstash.conf, sehingga dapat terhubung ke elasticsearch.
Jalankan Logstash dengan perintah layanan.
Setelah semuanya terkonfigurasi, Anda dapat melihat hasilnya dengan memeriksa elasticsearch, apakah berjalan normal atau ada skrip yang salah. Buka peramban web Google Chrome, ketik "http://192.168.5.2:9200/". Hasilnya akan terlihat seperti gambar di bawah ini.
Secara keseluruhan, Elasticsearch adalah mesin pencarian dan analisis data yang canggih, bekerja secara real time, cepat, dan memiliki kinerja tinggi. Kemampuannya untuk menangani kueri yang rumit dan memberikan hasil pencarian yang cepat menjadikannya aset yang berharga bagi organisasi dan perusahaan yang menangani data dalam jumlah besar.
Install logstash8
root@ns3:~ # pkg install logstash8
/etc/rc.conf
root@ns3:~ # ee /etc/rc.conf
logstash_enable="YES"
logstash_user="logstash"
logstash_group="logstash"
logstash_home="/usr/local/logstash"
logstash_config="/usr/local/etc/logstash"
logstash_log="YES"
logstash_java_home="/usr/local/openjdk17"
logstash_java_opts=""
logstash_opts=""
/etc/rc.conf
root@ns3:~ # ee /usr/local/etc/logstash/logstash.conf
input {
beats {
port => 5044
}
}
output {
elasticsearch {
hosts => ["http://192.168.5.2:9200"]
index => "%{[@metadata][beat]}-%{[@metadata][version]}-%{+YYYY.MM.dd}"
#user => "elastic"
#password => "changeme"
}
}
Run Logstash
root@ns3:~ # service logstash restart
Stopping logstash.
Waiting for PIDS: 906, 906.
Starting logstash.
Secara keseluruhan, Elasticsearch adalah mesin pencarian dan analisis data yang canggih, bekerja secara real time, cepat, dan memiliki kinerja tinggi. Kemampuannya untuk menangani kueri yang rumit dan memberikan hasil pencarian yang cepat menjadikannya aset yang berharga bagi organisasi dan perusahaan yang menangani data dalam jumlah besar.
Silahkan Berkomentar, Kakak...! Bunda...!
Posting Komentar