Tutorial 2x ElasticSearch 7 on CentOS - Cài đặt ElasticSearch 7 trên CentOS

PVS

Super Moderator
Thành viên BQT
Tham gia
28/02/2015
Bài viết
17,142
Được Like
12,745
ElasticSearch 7 on CentOS - Cài đặt ElasticSearch 7 trên CentOS

Xenforo Enhanced Search phụ thuộc vào ElasticSearch 2.0+. Cài đặt và định cấu hình ElasticSearch để nó hoạt động với XF có thể là một thách thức đối với một số người, vì vậy mình đã tổng hợp một số hướng dẫn nhanh để cài đặt nó trên CentOS 7. Với một số điều chỉnh, các hướng dẫn có thể sẽ hoạt động trên các phiên bản khác của CentOS/Fedora/Redhat và có nguồn gốc phân phối là tốt.

Tất cả các lệnh giả sử bạn là người dùng root hoặc bạn chạy các hướng dẫn với sudo.

Chúng ta sẽ cài đặt yum repo của ElasticSearch để bạn có thể dễ dàng nhận được các bản cập nhật/sửa lỗi với "yum update".

Đầu tiên cài đặt key ElasticSearch GPG:
Mã:
rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch

Sau đó tạo tệp yum repo cho ElasticSearch 7:
Mã:
cat > /etc/yum.repos.d/elasticsearch.repo <<EOF
[elasticsearch]
name=Elasticsearch repository for 7.x packages
baseurl=https://artifacts.elastic.co/packages/7.x/yum
gpgcheck=1
gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch
enabled=1
autorefresh=1
type=rpm-md
EOF

Tiếp theo thực hiện cài đặt thực tế:
Mã:
yum install elasticsearch

Theo mặc định trên CentOS 7, SELinux đang chạy ở chế độ thực thi. Vì vậy, chúng ta cần nói với SELinux rằng máy chủ web (Apache, Nginx hoặc thứ gì khác) nên được phép trao đổi với ElasticSearch qua TCP:
Mã:
setsebool httpd_can_network_connect on -P

Bây giờ chúng ta sẽ thực hiện một số thay đổi cấu hình cho tệp config ElasticSearch. Chúng ta cần đặt tên cho cluster và đặt máy chủ, cổng TCP và bật cài đặt bảo mật để sau này có thể đặt mật khẩu.
Mã:
cat > /etc/elasticsearch/elasticsearch.yml <<EOF
cluster.name: elasticxf
network.host: 127.0.0.1
http.port: 9200
xpack.security.enabled: true
EOF

Chúng ta cũng cần xem xét dung lượng heap (bộ nhớ) JVM mà chúng ta muốn phân bổ cho ElasticSearch. Theo kinh nghiệm của mình, bạn cần ít nhất 420m, nhưng có thể cần nhiều hơn nữa. Cẩn thận không cung cấp cho nó nhiều hơn bạn có, nếu không bạn có thể thấy rằng OOM killer sẽ giết chết quá trình ElasticSearch (hoặc một số quy trình khác, như quy trình MariaDB/MySQL của bạn). Dung lượng heap được kiểm soát trong tệp /etc/elasticsearch/jvm.options. Sử dụng vi, vim, nano hoặc bất kỳ trình soạn thảo văn bản đơn giản nào khác để mở tệp và tìm một số cài đặt gần đầu tệp giống như:
Mã:
-Xms1g
-Xmx1g

Thay đổi "1g" trong cả hai dòng thành kích thước mong muốn của bạn, ví dụ: "512m". Sau đó lưu và thoát.

Bây giờ hãy bắt đầu ElasticSearch - việc này có thể mất vài giây:
Mã:
systemctl start elasticsearch.service

Cách tốt nhất là tạo mật khẩu cho ElasticSearch và có rất nhiều ví dụ về các trường hợp ElasticSearch đã bị hack vì họ không tạo mật khẩu. (Đây cũng là một ý tưởng tốt để có tường lửa và không mở cổng ElasticSearch với Internet!) Vì vậy, hãy tạo các mật khẩu đó ngay bây giờ - bạn sẽ được nhắc nhập mật khẩu cho 7 người dùng. Hãy chắc chắn để ghi lại những mật khẩu này! Bạn sẽ cần người dùng và mật khẩu 'elastic' khi bạn định cấu hình Enhanced Search trong adminCP XF.
Mã:
/usr/share/elasticsearch/bin/elasticsearch-setup-passwords interactive

Bước cài đặt cuối cùng là định cấu hình ElasticSearch để bắt đầu bất cứ khi nào thiết bị khởi động:
Mã:
systemctl daemon-reload
systemctl enable elasticsearch.service

Bây giờ bạn có thể xác minh rằng ElasticSearch hoạt động và chạy như mong đợi với:
Mã:
curl -u elastic -X GET "localhost:9200/?pretty"

... sẽ nhắc nhập mật khẩu và sau đó cung cấp output tương tự như sau:
Mã:
{
"name" : "localhost.localdomain",
"cluster_name" : "elasticxf",
"cluster_uuid" : "sSvt41vAS8i6Z1RRFI5V4w",
"version" : {
"number" : "7.8.0",
"build_flavor" : "default",
"build_type" : "rpm",
"build_hash" : "757314695644ea9a1dc2fecd26d1a43856725e65",
"build_date" : "2020-06-14T19:35:50.234439Z",
"build_snapshot" : false,
"lucene_version" : "8.5.1",
"minimum_wire_compatibility_version" : "6.8.0",
"minimum_index_compatibility_version" : "6.0.0-beta1"
},
"tagline" : "You Know, for Search"
}

Chúc các bạn thành công.


Nguồn: xenforo.com​
 

Top Bottom