Giới thiệu:
Elasticsearch là một công cụ tìm kiếm dựa trên nền tảng
Apache Lucene. Nó cung cấp một bộ máy tìm kiếm dạng phân tán, có đầy đủ công cụ với một giao diện web HTTP có hỗ trợ dữ liệu
JSON.
Cơ chế hoạt động của Elasticsearch:

Các dữ liệu tổng hợp, dữ liệu được người dùng tải lên sẽ lưu vào database sau đấy đồng bộ hóa sang Elasticsearch.
Khi người dùng tìm kiếm thì sẽ tìm kiếm trên Elasticsearch, tốc độ vừa nhanh, vừa giảm tải cho database.
Cài đặt :
Yêu cầu:
- Một máy chủ chạy Ubuntu 20.04
- Đã cài đặt Open JDK 11(Link hướng dẫn cài JDK 11)
Tiến hành cài đặt:
Đầu tiên ta cập nhật lại hệ thống:
sudo apt update

Tiếp theo sử dụng cURL để thêm khóa GPG vào APT bằng lệnh:
curl -fsSL https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo apt-key add -

Tiếp theo thêm danh sách nguồn vào
sources.list.d , nơi APT tìm kiếm nguồn mới:
echo "deb https://artifacts.elastic.co/packages/7.x/apt stable main" | sudo tee -a /etc/apt/sources.list.d/elastic-7.x.list

Sau đó cài đặt Elasticsearch bằng lệnh sau:
sudo apt install elasticsearch
Cấu hình Elasticsearch:
Mở tệp cấu hình của
Elasticsearh:
sudo nano /etc/elasticsearch/elasticsearch.yml
Để hạn chế quyền truy cập và tăng cường bảo mật, hãy tìm dòng chỉ định
netword.host :

Bỏ dấu “#” và thay thế giá trị bằng
localhost :

Sau khi thay đổi, Restart lại dịch vụ bằng lệnh sau:
sudo systemctl start elasticsearch

Tiếp theo, hãy chạy lệnh sau để cho phép
Elasticsearch khởi động mỗi khi máy chủ của bạn khởi động:
sudo systemctl enable elasticsearch
Bảo mật Elasticsearch:
Bây giờ chúng ta sẽ cấu hình tường lửa để cho phép truy cập vào cổng
Elasticsearch HTTP
API mặc định (
TCP 9200) cho máy chủ từ xa đáng tin cậy, thường là máy chủ bạn đang sử dụng trong thiết lập một máy chủ, chẳng hạn như 172.16.1.30. Để cho phép truy cập, hãy nhập lệnh sau:
sudo ufw allow from 172.16.1.30 to any port 9200

Sau đó , bật UFW bằng lệnh:
sudo ufw enable

Kiểm tra trạng thái của UFW:
sudo ufw status
Kiểm tra hoạt động của Elasticsearch:
Hiện tại, Elasticsearch sẽ chạy trên cổng 9200. Bạn có thể kiểm tra nó bằng cURL và yêu cầu GET:
curl -X GET 'http://localhost:9200'

Để thực hiện kiểm tra kỹ lưỡng hơn Elasticsearch, hãy thực hiện lệnh sau:
curl -XGET 'http://localhost:9200/_nodes?pretty'

Nếu bạn nhận được phản hồi tương tự như ở trên, Elasticsearch đang hoạt động bình thường. Nếu không, hãy đảm bảo rằng bạn đã làm theo đúng hướng dẫn cài đặt và bạn đã để một khoảng thời gian để Elasticsearch khởi động hoàn toàn.
Kết luận:
Bây giờ bạn đã cài đặt, cấu hình và bắt đầu sử dụng Elasticsearch.