實作架設 Server ,從套件庫下載安裝,可以大幅地節省工程師開發與部署的時間,使用 yum 來達成,這是最簡單的方法。
Table of Contents
Toggle功能簡介
Elasticsearch 是一個分佈式的免費開源搜索和分析引擎,適用於包括文本、數字、地理空間、結構化和非結構化數據等在內的所有類型的數據,擁有簡單的 REST 風格 API、分佈式特性、速度和可擴展性等,是一套可用於數據採集、擴充、存儲、分析和可視化的免費開源工具。
主機架構
建置單台的主機架構。
Node | IP | Port |
Master | 192.168.1.100 | 9200 |
安裝套件
CentOS 7 Install Elasticsearch Standalone
Elasticsearch Yum Repo,導入 GPG-KEY 。
rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch
新建檔案,建立套件庫資訊。
vim /etc/yum.repos.d/elasticsearch.repo
[elasticsearch-8.x]
name=Elasticsearch repository for 8.x packages
baseurl=https://artifacts.elastic.co/packages/8.x/yum
gpgcheck=1
gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch
enabled=1
autorefresh=1
type=rpm-md
建立套件庫後,使用 yum 命令安裝。
yum install elasticsearch
組態設定
這是主要的組態檔,參考此檔案的內容,視需求而調整設定。
vim /etc/elasticsearch/elasticsearch.yml
node.name: node-1
path.data: /var/lib/elasticsearch
path.logs: /var/log/elasticsearch
network.host: 0.0.0.0
http.port: 9200
discovery.seed_hosts: ["127.0.0.1"]
discovery.type: single-node
xpack.security.enabled: true
xpack.security.enrollment.enabled: true
xpack.security.http.ssl:
enabled: true
keystore.path: certs/http.p12
xpack.security.transport.ssl:
enabled: true
verification_mode: certificate
keystore.path: certs/transport.p12
truststore.path: certs/transport.p12
http.host: 0.0.0.0
transport.host: 0.0.0.0
設定 JVM Arguments
調整記憶體使用空間。
vim /etc/elasticsearch/jvm.options
-Xms4g
-Xmx4g
-Xss2m
防火牆設定
開通防火牆
使用 firewall-cmd 命令來開通防火牆。
firewall-cmd --permanent --add-port=9200
重載防火牆
使用 firewall-cmd 命令來重載防火牆,立即生效。
firewall-cmd --reload
運行管理
啟動服務
安裝完成後,並不會自動啟動服務,使用 systemctl start 命令來啟動服務。
systemctl start elasticsearch
開機啟動
實現主機重開時,可以自動啟動服務,使用 systemctl enable 命令來啟用開機啟動。
systemctl enable elasticsearch
停止服務
啟動服務後,使用 systemctl stop 命令終止服務運行。
systemctl stop elasticsearch
狀態驗證
Install Elasticsearch CentOS 啟動服務後,使用 systemctl status 命令來查看服務狀況。
systemctl status elasticsearch
● elasticsearch.service - Elasticsearch
Loaded: loaded (/usr/lib/systemd/system/elasticsearch.service; enabled; vendor preset: disabled)
Active: active (running) since 五 2022-12-30 22:59:59 +08; 2min 33s ago
Docs: https://www.elastic.co
Main PID: 23781 (java)
測試連線
使用命令列,連上服務。
curl -k -u elastic:password "https://localhost:9200"
{
"name" : "node-1",
"cluster_name" : "elasticsearch",
"cluster_uuid" : "XMMlNO3ORPGYoipQrHkr9A",
"version" : {
"number" : "8.5.3",
"build_flavor" : "default",
"build_type" : "rpm",
"build_hash" : "4ed5ee9afac63de92ec98f404ccbed7d3ba9584e",
"build_date" : "2022-12-05T18:22:22.226119656Z",
"build_snapshot" : false,
"lucene_version" : "9.4.2",
"minimum_wire_compatibility_version" : "7.17.0",
"minimum_index_compatibility_version" : "7.0.0"
},
"tagline" : "You Know, for Search"
}
修改密碼
修改 elastic 使用者密碼。
/usr/share/elasticsearch/bin/elasticsearch-reset-password -u elastic
修改 kibana_system 使用者密碼。
/usr/share/elasticsearch/bin/elasticsearch-reset-password -u kibana_system
產生 Kibana 連線用 Token。
/usr/share/elasticsearch/bin/elasticsearch-create-enrollment-token -s kibana
心得分享
CentOS Install Elasticsearch 快速安裝後,便於個人電腦、筆電在開發研究或測試時使用,省略複雜的設定,所以沒有參數需要調整,簡單快速建置就能使用服務。