Your Data, Your Search, Elasticsearch
สารบัญ:
Elasticsearch เป็นโอเพ่นซอร์สแบบกระจายข้อความค้นหาและเครื่องมือวิเคราะห์ สนับสนุนการดำเนินการ RESTful และช่วยให้คุณจัดเก็บค้นหาและวิเคราะห์ข้อมูลปริมาณมากในเวลาจริง
Elasticsearch เป็นหนึ่งในเสิร์ชเอนจิ้นที่ได้รับความนิยมมากที่สุดที่เสริมประสิทธิภาพให้กับแอพพลิเคชั่นที่มีข้อกำหนดการค้นหาที่ซับซ้อนเช่นร้านค้าอีคอมเมิร์ซขนาดใหญ่
บทช่วยสอนนี้จะแนะนำคุณตลอดกระบวนการติดตั้ง Elasticsearch บน Debian 9
ข้อกำหนดเบื้องต้น
คุณจะต้องเข้าสู่ระบบในฐานะผู้ใช้ที่มีสิทธิ์ sudo เพื่อให้สามารถติดตั้งแพ็คเกจบนเซิร์ฟเวอร์ Debian ของคุณ
การติดตั้ง Elasticsearch
วิธีที่ง่ายที่สุดในการติดตั้ง Elasticsearch บน Debian คือผ่านคลังเก็บ Elasticsearch อย่างเป็นทางการ ในขณะที่เขียนบทความนี้ Elasticsearch รุ่นล่าสุดคือ
7.0.0
และต้องการให้ติดตั้ง Java 8 บนระบบ
เริ่มต้นด้วยการอัพเดตดัชนีแพ็กเกจและการติดตั้งแพ็กเกจ
apt-transport-https
ที่จำเป็นในการเข้าถึงที่เก็บผ่าน
sudo apt update
sudo apt install apt-transport-https
ติดตั้ง OpenJDK 8:
sudo apt install openjdk-8-jdk
ตรวจสอบการติดตั้ง Java โดยการพิมพ์เวอร์ชั่น Java:
java -version
ผลลัพธ์ควรมีลักษณะดังนี้:
openjdk version "1.8.0_181" OpenJDK Runtime Environment (build 1.8.0_181-8u181-b13-2~deb9u1-b13) OpenJDK 64-Bit Server VM (build 25.181-b13, mixed mode)
ขั้นตอนต่อไปคือการเพิ่มที่เก็บ Elasticsearch
อิมพอร์ตพับลิกคีย์ของที่เก็บโดยใช้คำสั่ง
wget
ต่อไปนี้:
wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo apt-key add -
คำสั่งด้านบนควรเอาท์พุท
OK
ซึ่งหมายความว่าคีย์ได้รับการนำเข้าสำเร็จแล้วและแพคเกจจากพื้นที่เก็บข้อมูลนี้จะได้รับการพิจารณาว่าเชื่อถือได้
ถัดไปเพิ่มที่เก็บ Elasticsearch ลงในระบบโดยเรียกใช้:
sudo sh -c 'echo "deb https://artifacts.elastic.co/packages/7.x/apt stable main" > /etc/apt/sources.list.d/elastic-7.x.list'
หากคุณต้องการติดตั้งเวอร์ชันอื่นของ Elasticsearch ให้เปลี่ยน
7.x
ในคำสั่งด้านบนด้วยรุ่นที่คุณต้องการ
อัพเดตดัชนีแพ็กเกจและติดตั้งเอ็นจิ้น Elasticsearch:
sudo apt update
sudo apt install elasticsearch
เมื่อกระบวนการติดตั้งเสร็จสมบูรณ์ให้เริ่มและเปิดใช้งานบริการโดยใช้คำสั่งต่อไปนี้:
sudo systemctl enable elasticsearch.service
sudo systemctl start elasticsearch.service
ในการตรวจสอบว่า Elasticsearch กำลังเรียกใช้ส่งคำขอ HTTP ไปยังพอร์ต 9200 บน localhost โดยใช้คำสั่ง curl ต่อไปนี้:
curl -X GET "localhost:9200/"
ผลลัพธ์ควรมีลักษณะคล้ายกับนี้:
{ "name": "stretch", "cluster_name": "elasticsearch", "cluster_uuid": "Nj2W3PswRuWvJW8JG75O1Q", "version": { "number": "7.0.0", "build_flavor": "default", "build_type": "deb", "build_hash": "b7e28a7", "build_date": "2019-04-05T22:55:32.697037Z", "build_snapshot": false, "lucene_version": "8.0.0", "minimum_wire_compatibility_version": "6.7.0", "minimum_index_compatibility_version": "6.0.0-beta1" }, "tagline": "You Know, for Search" }
อาจใช้เวลา 5-10 วินาทีเพื่อให้บริการเริ่มทำงาน หากคุณเห็น
curl: (7) Failed to connect to localhost port 9200: Connection refused
ให้รอสองสามวินาทีแล้วลองอีกครั้ง
หากต้องการดูข้อความที่บันทึกโดยบริการ Elasticsearch ให้ใช้คำสั่งด้านล่าง:
sudo journalctl -u elasticsearch
แค่นั้นแหละ. Elasticsearch ได้รับการติดตั้งบนเซิร์ฟเวอร์ Debian ของคุณแล้ว
การกำหนดค่า Elasticsearch
ข้อมูล Elasticsearch ถูกเก็บไว้ใน
/var/lib/elasticsearch
ไฟล์การกำหนดค่าจะอยู่ใน
/etc/elasticsearch
และตัวเลือกการเริ่มต้น Java สามารถกำหนดค่าในไฟล์
/etc/default/elasticsearch
โดยค่าเริ่มต้น Elasticsearch มีการกำหนดค่าให้ฟังบน localhost เท่านั้น หากไคลเอนต์ที่เชื่อมต่อกับฐานข้อมูลกำลังทำงานบนโฮสต์เดียวกันและคุณกำลังตั้งค่าคลัสเตอร์โหนดเดี่ยวคุณไม่จำเป็นต้องเปิดใช้งานการเข้าถึงระยะไกล
การเข้าถึงระยะไกล
Elasticsearch ไม่ใช้การพิสูจน์ตัวตนเพื่อให้สามารถเข้าถึงได้โดยทุกคนที่สามารถเข้าถึง HTTP API ได้ หากคุณต้องการอนุญาตให้เข้าถึงเซิร์ฟเวอร์ Elasticsearch ระยะไกลคุณจะต้องกำหนดค่าไฟร์วอลล์ของคุณและอนุญาตให้เข้าถึงพอร์ต Elasticsearch 9200 จากไคลเอนต์ที่เชื่อถือได้เท่านั้น
sudo ufw allow from 192.168.100.20 to any port 9200
อย่าลืมเปลี่ยน
192.168.100.20
ด้วยที่อยู่ IP ระยะไกลของคุณ
มิฉะนั้นหากคุณใช้ iptables แบบเก่า ๆ ให้รัน:
sudo iptables -A INPUT -p tcp -s 192.168.100.20 --dport 9200 -j ACCEPT
เมื่อกำหนดค่าไฟร์วอลล์ของคุณแล้วขั้นตอนต่อไปคือแก้ไขการกำหนดค่าและตั้งค่า Elasticsearch เพื่อฟังการเชื่อมต่อภายนอก
หากต้องการทำเช่นนั้นให้เปิดไฟล์คอนฟิกูเรชัน
elasticsearch.yml
:
sudo nano /etc/elasticsearch/elasticsearch.yml
ค้นหาบรรทัดที่มี
network.host
ไม่ต้องใส่เครื่องหมายข้อคิดเห็นและเปลี่ยนค่าเป็น
0.0.0.0
:
network.host: 0.0.0.0
เริ่มบริการ Elasticsearch เพื่อให้การเปลี่ยนแปลงมีผล:
sudo systemctl restart elasticsearch
ณ จุดนี้คุณควรสามารถเชื่อมต่อกับเซิร์ฟเวอร์ Elasticsearch จากตำแหน่งระยะไกลของคุณ
ข้อสรุป
คุณติดตั้ง Elasticsearch บนระบบ Debian 9 สำเร็จแล้ว สำหรับข้อมูลเพิ่มเติมเกี่ยวกับวิธีเริ่มต้นใช้งาน Elasticsearch โปรดไปที่หน้าเอกสารทางการของพวกเขา
Java elasticsearch ฐานข้อมูล debianMicrosoft Tweaks Ad หลังจากที่ Apple บ่น

เรื่องราว "Laptop Hunter" ยังคงมีน้อยลงเล็กน้อย Apple-bashing
วิธีการติดตั้ง ElasticSearch บน CentOS 7

Elasticsearch เป็นหนึ่งในเสิร์ชเอนจิ้นที่ได้รับความนิยมมากที่สุดที่เสริมประสิทธิภาพให้กับแอพพลิเคชั่นที่มีความต้องการการค้นหาที่ซับซ้อนเช่นร้านค้าอีคอมเมิร์ซขนาดใหญ่และแอพพลิเคชั่นการวิเคราะห์ บทช่วยสอนนี้อธิบายวิธีการติดตั้ง Elasticsearch บน CentOS 7
วิธีการติดตั้ง ElasticSearch บน Ubuntu 18.04

Elasticsearch เป็นโอเพ่นซอร์สแบบกระจายข้อความค้นหาและเครื่องมือวิเคราะห์ สนับสนุนการดำเนินการ RESTful และช่วยให้คุณจัดเก็บค้นหาและวิเคราะห์ข้อมูลปริมาณมากในเวลาจริง ในบทช่วยสอนนี้เราจะแสดงวิธีการติดตั้ง Elasticsearch บน Ubuntu 18.04