Elasticsearch là một công cụ phân tích mã nguồn mở và miễn phí được sử dụng để lưu trữ, tìm kiếm và phân tích khối lượng dữ liệu lớn theo thời gian thực. Nó được viết bằng Java và dựa trên Apache Lucene. Nó được biết đến với tốc độ, khả năng mở rộng và bộ tính năng mạnh mẽ. Bạn có thể sử dụng nó để theo dõi hiệu suất ứng dụng, ghi nhật ký và phân tích nhật ký.
Trong hướng dẫn này, chúng tôi sẽ chỉ cho bạn cách cài đặt ElasticSearch trên Rocky Linux 8.
Sau khi Java được cài đặt, hãy xác minh cài đặt Java bằng lệnh sau:
Bạn sẽ thấy đầu ra sau:
Đầu tiên, hãy nhập khóa GPG ElasticSearch với lệnh sau:
Tiếp theo, tạo một kho lưu trữ ElasticSearch bằng lệnh sau:
Thêm các dòng sau:
Lưu và đóng tệp, sau đó cài đặt gói ElasticSearch bằng lệnh sau:
Sau khi ElasticSearch được đã cài đặt, bạn có thể tiến hành bước tiếp theo.
Xác định tên nút, tên cụm, đường dẫn dữ liệu và máy chủ mạng của bạn như được hiển thị bên dưới:
Lưu và đóng tệp, sau đó khởi động dịch vụ ElasticSearch và cho phép dịch vụ này khởi động khi khởi động lại hệ thống:
Bạn có thể xác minh trạng thái của ElasticSearch bằng lệnh sau:
Bạn sẽ thấy đầu ra sau:
Bạn sẽ thấy kết quả đầu ra sau:
Bạn cũng có thể xác minh ElasticSearch bằng lệnh sau:
Bạn sẽ nhận được kết quả đầu ra sau:
Bạn sẽ thấy kết quả đầu ra sau:
Bây giờ bạn có thể truy xuất dữ liệu của mình bằng cách sử dụng yêu cầu GET:
Bạn sẽ thấy kết quả đầu ra sau:
Để lấy dữ liệu ở định dạng dễ đọc, hãy chạy lệnh sau:
Bạn sẽ nhận được kết quả sau:
Trong hướng dẫn này, chúng tôi sẽ chỉ cho bạn cách cài đặt ElasticSearch trên Rocky Linux 8.
Điều kiện tiên quyết
- Máy chủ chạy RockyLinux 8.
- Mật khẩu gốc được cấu hình trên máy chủ.
Cài đặt Java
ElasticSearch dựa trên Java. Vì vậy, Java phải được cài đặt trên máy chủ của bạn. Bạn có thể cài đặt bằng lệnh sau:
Mã:
dnf install java-11-openjdk-devel -y
Mã:
java -version
Mã:
openjdk version "11.0.12" 2021-07-20 LTSOpenJDK Runtime Environment 18.9 (bản dựng 11.0.12+7-LTS)OpenJDK 64-Bit Server VM 18.9 (bản dựng 11.0.12+7-LTS, chế độ hỗn hợp, chia sẻ)
Cài đặt ElasticSearch
Theo mặc định, ElasticSearch không được bao gồm trong Rocky Linux 8. Vì vậy, bạn sẽ cần tạo một kho lưu trữ ElasticSearch.Đầu tiên, hãy nhập khóa GPG ElasticSearch với lệnh sau:
Mã:
rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch
Mã:
nano /etc/yum.repos.d/elasticsearch.repo
Mã:
[elasticsearch-7.x]name=Kho lưu trữ Elasticsearch cho các gói 7.xbaseurl=https://artifacts.elastic.co/packages/7.x/yumgpgcheck=1gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearchenabled=1autorefresh=1type=rpm-md
Mã:
dnf install elasticsearch -y
Cấu hình ElasticSearch
Theo mặc định, tệp cấu hình chính của ElasticSearch nằm tại /etc/elasticsearch/elasticsearch.yml. Bạn có thể chỉnh sửa bằng lệnh sau:
Mã:
nano /etc/elasticsearch/elasticsearch.yml
Mã:
cluster.name: Elastic Cluster node.name: rockylinux path.data: /var/lib/elasticsearch network.host: 127.0.0.1
Mã:
systemctl start elasticsearch
systemctl enable elasticsearch
Mã:
systemctl status elasticsearch
Mã:
? elasticsearch.service - Elasticsearch Đã tải: đã tải (/usr/lib/systemd/system/elasticsearch.service; đã tắt; cài đặt trước của nhà cung cấp: đã tắt) Đang hoạt động: đang hoạt động (đang chạy) kể từ Thứ Hai 2021-08-09 04:34:34 UTC; 8 giây trước Tài liệu: https://www.elastic.co PID chính: 5247 (java) Nhiệm vụ: 62 (giới hạn: 11411) Bộ nhớ: 1,1G CGroup: /system.slice/elasticsearch.service ??5247 /usr/share/elasticsearch/jdk/bin/java -Xshare:auto -Des.networkaddress.cache.ttl=60 -Des.networkaddress.cache.negative.ttl=1> ??5412 /usr/share/elasticsearch/modules/x-pack-ml/platform/linux-x86_64/bin/controller09/08 04:33:29 RockyLinux8 systemd[1]: Đang khởi động Elasticsearch...09/08 04:34:34 RockyLinux8 systemd[1]: Đã khởi động Elasticsearch.
Xác minh ElasticSearch
Lúc này, ElasticSearch đã được khởi động và đang lắng nghe trên cổng 9200. Bạn có thể kiểm tra bằng lệnh sau:
Mã:
ss -antpl | grep 9200
Mã:
LISTEN 0 128 [::ffff:127.0.0.1]:9200 *:* users:(("java",pid=5247,fd=283))
Mã:
curl -X GET 'http://localhost:9200'
Mã:
{ "name" : "rockylinux", "cluster_name" : "Elastic Cluster", "cluster_uuid" : "NuDPakHARaOJOMyi6ABQwA", "version" : { "number" : "7.14.0", "build_flavor" : "default", "build_type" : "rpm", "build_hash" : "dd5a0a2acaa2045ff9624f3729fc8a6f40835aa1", "build_date" : "2021-07-29T20:49:32.864135063Z", "build_snapshot" : false, "lucene_version" : "8.9.0", "minimum_wire_compatibility_version" : "6.8.0", "minimum_index_compatibility_version" : "6.0.0-beta1" }, "tagline" : "Bạn biết đấy, để tìm kiếm"}
Cách sử dụng ElasticSearch
Bạn có thể sử dụng lệnh Curl để thêm dữ liệu vào ElasticSearch như được hiển thị bên dưới:
Mã:
curl -H 'Content-Type: application/json' -X POST 'http://localhost:9200/tutorial/blog/1' -d '{ "message": "Blog đầu tiên của tôi!" }'
Mã:
{"_index":"tutorial","_type":"blog","_id":"1","_version":1,"result":"created","_shards":{"total":2,"successful":1,"failed":0},"_seq_no":0,"_primary_term":1}
Mã:
curl -X GET 'http://localhost:9200/tutorial/blog/1'
Mã:
{"_index":"tutorial","_type":"blog","_id":"1","_version":1,"_seq_no":0,"_primary_term":1,"found":true,"_source":{ "message": "Blog đầu tiên của tôi!" }}
Mã:
curl -X GET 'http://localhost:9200/tutorial/blog/1?pretty'
Mã:
{ "_index" : "tutorial", "_type" : "blog", "_id" : "1", "_version" : 1, "_seq_no" : 0, "_primary_term" : 1, "found" : true, "_source" : { "message" : "My first blog!" }}