Hướng dẫn cài đặt Elasticsearch 7 trên CentOS
Elasticsearch là một công cụ tìm kiếm và phân tích phân tán mã nguồn mở, được xây dựng trên Apache Lucene. Bài viết này sẽ hướng dẫn cách cài đặt Elasticsearch 7 trên CentOS 9 Stream:
1. **Cài đặt Java**
Elasticsearch yêu cầu Java 8 hoặc cao hơn. OpenJDK 11 là một lựa chọn tốt và có thể cài bằng lệnh sau:
```
sudo dnf update -y
sudo dnf upgrade -y
sudo dnf install java-11-openjdk-devel -y
```
2. **Tải xuống và cài đặt Elasticsearch**
Bước tiếp theo chúng ta sẽ tải xuống Elasticsearch, từ trang download của Elasticsearch https://www.elastic.co/downloads/elasticsearch chúng ta chọn phiên bản Elasticsearch 7 phù hợp, ví dụ 7.17.9 (Chú ý khi cài đặt cluster các phiên bản nên giống nhau trên các máy chủ). Thực hiện tải xuống bằng lệnh wget (có sẵn trên CentOS 9 Stream):
```
wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.17.9-x86_64.rpm
```
Sau đó, cài đặt gói Elasticsearch bằng lệnh:
```
sudo dnf install elasticsearch-7.17.9-x86_64.rpm
```
3. **Cấu hình Elasticsearch**
Sau khi tải xuống và cài đặt gói xong, hệ thống sẽ tự động tạo ra các thư mục cấu hình mặc định trên máy chủ. Tệp cấu hình chính của Elasticsearch nằm mặc định ở đường dẫn`/etc/elasticsearch/elasticsearch.yml`. Mở tệp này để sửa đổi tùy chọn cấu hình bằng lệnh sau:
```
vi /etc/elasticsearch/elasticsearch.yml
```
Trong tệp cấu hình của Elasticsearch, kiểm tra các cấu hình sau:
- `network.host`: Đặt thành địa chỉ IP của máy chủ hoặc 0.0.0.0 để cho phép truy cập từ mọi nơi.
- `http.port`: Cổng truy cập vào Elasticsearch từ bên ngoài. Mặc định là 9200.
- `path.data`: Thư mục lưu dữ liệu. Mặc định là `/var/lib/elasticsearch`.
- `path.logs`: Thư mục lưu dữ logs. Mặc định là `/var/log/elasticsearch`.
Các tham số khác chưa cần thay đổi.
4. **Quản lý Elasticsearch**
Để bắt đầu (start) dịch vụ Elasticsearch:
```
systemctl start elasticsearch
```
Để cho phép Elasticsearch khởi động cùng hệ thống:
```
systemctl enable elasticsearch
```
Để dừng Elasticsearch:
```
sudo systemctl stop elasticsearch.service
```
Để khởi động lại Elasticsearch:
```
sudo systemctl restart elasticsearch.service
```
Để kiểm tra trạng thái Elasticsearch:
```
sudo systemctl status elasticsearch.service
```
5. **Mở tường lửa (Firewall)**
Để có thể truy cập Elasticsearch từ bên ngoài mạnh, thực hiện mở cổng trên tưởng lửa Iptables được cài đặt mặc định trên CentOS 9 Stream:
```
sudo firewall-cmd --permanent --add-port=9200/tcp
sudo firewall-cmd --reload
```
6. **Kiểm tra Elasticsearch**
Để kiểm tra xem Elasticsearch đã hoạt động hay chưa, truy cập `http://ip_may_chu:9200` trên trình duyệt web hoặc sử dụng lệnh `curl`:
```
curl http://ip_may_chu:9200
```
Nếu kết quả hiển thị thông tin cơ bản về cụm Elasticsearch, việc cài đặt đã thành công.
Lưu ý rằng Elasticsearch hiện tại có nhiều phiên bản, đến tháng 06/2024 đã có phiên bản mới nhất là 8.14.0, vì vậy hãy chọn lựa phiên bản phù hợp với nhu cầu của mình hoặc tìm kiếm các bài viết hướng dẫn cho phiên bản mong muốn.