Elasticsearch adalah server pencarian open source tingkat perusahaan berdasarkan Apache Lucene, menawarkan pencarian dan analitik terdistribusi real-time dengan antarmuka web RESTful dan dokumen JSON bebas skema. Elasticsearch dikembangkan di java dan dirilis di bawah Lisensi Apache. Saat ini, berada di peringkat kedua di mesin pencari perusahaan paling populer, di belakang Apache Solr.
Panduan ini akan membantu Anda menginstal Elasticsearch di CentOS 7 / Ubuntu 16.04 / Linux Mint 18 .
Prasyarat
Seperti yang dikatakan sebelumnya, Elasticsearch dikembangkan di Jawa. Pastikan Anda telah menginstal JDK terbaru di sistem Anda. Ikuti tutorial di bawah ini untuk menginstal Oracle JDK di Linux.
BACA :Cara menginstal Java JDK 8 di Ubuntu 16.04 / Linux Mint 18
BACA :Cara menginstal Java SDK 1.8 di RHEL 7 / CentOS 7
Verifikasi versi JDK yang diinstal pada sistem.
java -versi
Keluaran:
openjdk versi "1.8.0_131"OpenJDK Runtime Environment (build 1.8.0_131-8u131-b11-2ubuntu1.16.04.3-b11)OpenJDK 64-Bit Server VM (build 25.131-b11, mode campuran)
Instal Elasticsearch
Elasticsearch dapat diunduh langsung dari situs resminya, lebih dari itu ia menawarkan paket biner yang sudah dibuat sebelumnya untuk turunan RHEL dan Debian.
Unduh dan pasang kunci penandatanganan publik.
### Debian 9 / Ubuntu 16.04 &Linux Mint 18 ### $ wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo apt-key add -### RHEL 7 / CentOS 7 ### # rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch
Tambahkan dan aktifkan repositori Elasticsearch.
### Debian 9 / Ubuntu 16.04 &Linux Mint 18 ### $ echo "deb https://artifacts.elastic.co/packages/5.x/apt stable main" | sudo tee -a /etc/apt/sources.list.d/elk.list### RHEL 7 / CentOS 7 ### # cat <> /etc/yum.repos.d/elasticsearch.repo[elasticsearch-5.x]name=Elasticsearch repositori untuk 5.x packagesbaseurl=https://artifacts.elastic.co/packages/5. x/yumgpgcheck=1gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearchenabled=1autorefresh=1type=rpm-mdEOF
Instal Elasticsearch dengan menggunakan perintah berikut.
### Debian 9 / Ubuntu 16.04 &Linux Mint 18 ### $ sudo apt-get update $ sudo apt-get install -y elasticsearch### RHEL 7 / CentOS 7 ### # yum -y install elasticsearch
Konfigurasikan Elasticsearch untuk memulai secara otomatis selama startup sistem.
### Debian 9 / Ubuntu 16.04 &Linux Mint 18 ### $ sudo systemctl aktifkan elasticsearch$ sudo systemctl start elasticsearch### RHEL 7 / CentOS 7 ### # systemctl daemon-reload# systemctl aktifkan elasticsearch# systemctl start elasticsearch
Konfigurasi Elasticsearch
File konfigurasi Elasticsearch dapat ditemukan di direktori /etc/elasticsearch/; Anda hanya dapat melihat dua file di dalamnya, elasticsearch.yml dan logging.yml.
logging.yml mengelola pencatatan elasticsearch, dan file log disimpan di direktori /var/log/elasticsearch.
elasticsearch.yml adalah file konfigurasi utama elasticsearch, berisi pengaturan default untuk menjalankan cluster produksi.
Elasticsearch, secara default, mengikat semua kartu jaringan (0.0.0.0), dan mendengarkan pada port no 9200 – 9300 untuk lalu lintas HTTP dan pada 9300 – 9400 untuk komunikasi node ke node internal, rentang berarti bahwa jika port sibuk, itu akan otomatis mencoba port berikutnya.
Edit file elasticsearch.yml.
# vi /etc/elasticsearch/elasticsearch.yml
Untuk membuat Elasticsearch mendengarkan pada ip tertentu, tempatkan alamat ip pada sintaks berikut. Untuk melindungi elasticsearch dari akses publik, Anda dapat menyetelnya untuk mendengarkan di localhost.
### Mendengarkan pada IPv4 tertentu ### network.bind_host:192.168.0.1### Menonaktifkan akses publik ### network.bind_host:127.0.0.1
Mulai ulang layanan Elasticsearch.
# layanan elasticsearch dimulai ulang
Setelah Anda memulai ulang, tunggu setidaknya satu menit untuk memulai Elasticsearch sepenuhnya. Jika tidak, pengujian akan gagal. Elastisearch seharusnya sekarang mendengarkan pada 9200 untuk memproses permintaan HTTP; kami akan menggunakan CURL untuk mendapatkan tanggapan.
# curl -X DAPATKAN 'http://localhost:9200'
Anda harus mendapatkan respons seperti di bawah ini.
{ "name" :"gf5QYAn", "cluster_name" :"elasticsearch", "cluster_uuid" :"S6gZNkMERpSr-MGXqEFUJw", "version" :{ "number" :"5.5.2", "build_hash" :" b2f0c09", "build_date" :"2017-08-14T12:33:14.154Z", "build_snapshot" :false, "lucene_version" :"6.6.0" }, "tagline" :"Kamu Tahu, untuk Pencarian"}Atau, Anda dapat menggunakan browser untuk menanyakan Elasticsearch. Anda akan melihat hal yang sama seperti yang Anda lihat menggunakan curl.
Kluster pencarian elastis
Nama Cluster
Setelan cluster.name digunakan untuk menemukan dan bergabung secara otomatis dengan node lain, Jika sekelompok server Elasticsearch di jaringan yang sama memiliki nama cluster yang sama, mereka akan saling menemukan. Pastikan Anda mengubah nama cluster default server Elasticsearch, untuk menghindari auto-join dari server lain di jaringan yang sama yang tidak berada di bawah kendali Anda.
Jika Anda menjalankan beberapa cluster Elasticsearch di jaringan yang sama, pastikan Anda menggunakan nama cluster yang unik.
cluster.name:Nama Node
Nama node seperti nama host untuk server Elasticsearch, yang dibuat secara dinamis selama startup layanan. Anda dapat mengaturnya dengan nama Anda sendiri dengan mengatur sintaks berikut.
node.name:"" Jangan lupa untuk memulai kembali layanan Elasticsearch.
# layanan elasticsearch dimulai ulangMenggunakan Elasticsearch
Mari tambahkan beberapa data ke Elasticsearch. Kita dapat menggunakan curl untuk berbicara dengan Elasticsearch melalui port 9200 menggunakan RESTful API. Dengan curl, kita dapat membaca, menambah, menghapus, dan memperbarui data menggunakan API. Dokumen disimpan dalam format berikut
Elasticsearch Indeks Jenis Dokumen Bidang
Indeks =Jamak dari indeks, tempat data Elasticsearch disimpan.
Jenis =Berisi banyak dokumen, seperti tipe data.
Dokumen =Ini berisi bidang data.
Bidang =Data detail aktual.
Tambahkan
Gunakan perintah curl berikut untuk menambahkan data ke Elasticsearch kami.
# curl -X POST 'http://localhost:9200/itzgeek/howtos/1' -d '{"Title" :"Installing Elasticsearch","Date" : "Maret 2015","Tag" : " Ubuntu,CentOS,LinuxMint"}'Anda harus mendapatkan tanggapan berikut.
{"_index":"itzgeek","_type":"howtos","_id":"1","_version":1,"created":true}Dimana
“itzgeek” adalah indeks dari cluster Elasticsearch.
“bagaimana caranya” adalah jenis dokumen
“1” adalah id entri di bawah indeks howtos dan itzgeek.
Baca
Anda dapat menggunakan perintah berikut untuk mengkueri data di Elasticsearch.
# curl -X DAPATKAN 'http://localhost:9200/itzgeek/howtos/1'Tambahkan ?pretty=true untuk mendapatkan keluaran terformat.
# curl -X DAPATKAN 'http://localhost:9200/itzgeek/howtos/1?pretty=true'Outputnya akan terlihat seperti di bawah ini.
{"_index" :"itzgeek","_type" :"howtos","_id" :"1","_version" :1,"found" :true,"_source":{"Title" :" Memasang Elasticsearch","Date" : "Maret 2015","Tag" : "Ubuntu,CentOS,LinuxMint"}}Perbarui
Untuk memperbarui dokumen lengkap, gunakan perintah POST berikut. Tidak akan ada perubahan dalam Indeks, jenis, dan dokumen; bidang akan memiliki data yang dimodifikasi.
# curl -X POST 'http://localhost:9200/itzgeek/howtos/1' -d '{"Title" :"Installing LogStash","Date" : "Maret 2015","Tag" : " Ubuntu,CentOS,LinuxMint"}'Responsnya akan terlihat seperti di bawah ini, harus berisi version:2 dan dibuat:salah; berarti dokumen telah diperbarui.
{"_index":"itzgeek","_type":"howtos","_id":"1","_version":2,"created":false}Hapus
Gunakan perintah berikut untuk menghapus dokumen.
# curl -X DELETE 'http://localhost:9200/itzgeek/howtos/1'Responsnya akan terlihat seperti di bawah ini. Jika dokumen ditemukan, Anda akan mendapatkan found:true dan versi yang ditingkatkan .
{"found":true,"_index":"itzgeek","_type":"howtos","_id":"1","_version":3}Jika dokumen tidak ditemukan, Anda akan mendapatkan found:false dan versi yang ditingkatkan .
{"found":false,"_index":"itzgeek","_type":"howtos","_id":"1","_version":4}That's All!, Anda telah berhasil menginstal dan mengkonfigurasi Elasticsearch di Ubuntu 14.10 / RHEL 7 / Linux Mint 17.
Tautan:
Elasticsearch =elastissearch.org
SetupGuide =Panduan
Cara install Graylog2 di CentOS 7 / RHEL 7 – Menggunakan Sumber Cara Menginstal Apache Hadoop di CentOS 7, Ubuntu 18.04 &Debian 9Cent OS