# Linux下怎么安裝Elasticsearch
Elasticsearch 是一個開源的分布式搜索和分析引擎,廣泛應用于全文搜索、日志分析、實時數據處理等場景。本文將詳細介紹在 Linux 系統下安裝 Elasticsearch 的完整流程,包括環境準備、安裝步驟、配置優化以及常見問題解決。
## 1. 環境準備
在開始安裝 Elasticsearch 之前,請確保您的 Linux 系統滿足以下要求:
### 1.1 系統要求
- **操作系統**:支持大多數主流 Linux 發行版(如 Ubuntu、CentOS、Debian 等)
- **Java 環境**:Elasticsearch 需要 Java 8 或更高版本(推薦 OpenJDK 或 Oracle JDK)
- **內存**:建議至少 2GB 可用內存
- **磁盤空間**:建議至少 5GB 可用空間
### 1.2 檢查 Java 環境
```bash
java -version
如果未安裝 Java,可以通過以下命令安裝 OpenJDK(以 Ubuntu/Debian 為例):
sudo apt update
sudo apt install openjdk-11-jdk
wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo gpg --dearmor -o /usr/share/keyrings/elasticsearch-keyring.gpg
對于基于 Debian 的系統(如 Ubuntu):
echo "deb [signed-by=/usr/share/keyrings/elasticsearch-keyring.gpg] https://artifacts.elastic.co/packages/8.x/apt stable main" | sudo tee /etc/apt/sources.list.d/elastic-8.x.list
對于基于 RPM 的系統(如 CentOS/RHEL):
sudo rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch
cat <<EOF | sudo tee /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
EOF
Ubuntu/Debian:
sudo apt update
sudo apt install elasticsearch
CentOS/RHEL:
sudo yum install elasticsearch
wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-8.12.0-linux-x86_64.tar.gz
tar -xzf elasticsearch-8.12.0-linux-x86_64.tar.gz
cd elasticsearch-8.12.0/
編輯配置文件(通常位于 /etc/elasticsearch/elasticsearch.yml
或解壓目錄的 config/elasticsearch.yml
):
# 集群名稱(默認即可)
cluster.name: my-elasticsearch-cluster
# 節點名稱
node.name: node-1
# 數據存儲路徑
path.data: /var/lib/elasticsearch
# 日志存儲路徑
path.logs: /var/log/elasticsearch
# 綁定網絡接口(設為 0.0.0.0 允許遠程訪問)
network.host: 0.0.0.0
# HTTP 端口
http.port: 9200
# 初始主節點設置(單節點時需要配置)
discovery.type: single-node
編輯 /etc/elasticsearch/jvm.options
調整內存設置(根據服務器配置調整):
-Xms1g
-Xmx1g
sudo systemctl daemon-reload
sudo systemctl enable elasticsearch
sudo systemctl start elasticsearch
./bin/elasticsearch -d # -d 表示后臺運行
curl -X GET "localhost:9200/"
成功運行會返回類似以下信息:
{
"name" : "node-1",
"cluster_name" : "my-elasticsearch-cluster",
"version" : {
"number" : "8.12.0",
"build_flavor" : "default",
"build_type" : "tar",
"build_hash" : "e1a2fa2f90a0",
"build_date" : "2023-11-04T22:09:35.506801700Z",
"build_snapshot" : false,
"lucene_version" : "9.8.0",
"minimum_wire_compatibility_version" : "7.17.0",
"minimum_index_compatibility_version" : "7.0.0"
},
"tagline" : "You Know, for Search"
}
Elasticsearch 8.x 默認啟用安全功能,首次啟動時會自動生成:
- 超級用戶 elastic
的密碼(在終端輸出或日志中)
- HTTP CA 證書(位于 config/certs/http_ca.crt
)
sudo /usr/share/elasticsearch/bin/elasticsearch-reset-password -u elastic
curl --cacert /etc/elasticsearch/certs/http_ca.crt -u elastic https://localhost:9200
錯誤信息:
max virtual memory areas vm.max_map_count [65530] is too low
解決方案:
sudo sysctl -w vm.max_map_count=262144
# 永久生效
echo "vm.max_map_count=262144" | sudo tee -a /etc/sysctl.conf
檢查:
1. network.host
是否設置為 0.0.0.0
2. 防火墻是否放行 9200 端口
sudo ufw allow 9200/tcp # Ubuntu
sudo firewall-cmd --add-port=9200/tcp --permanent # CentOS
檢查:
1. discovery.seed_hosts
是否配置正確
2. 多節點時確保集群名稱一致
安裝 Kibana:可視化 Elasticsearch 數據
sudo apt install kibana # 或對應系統的安裝命令
安裝插件:
sudo /usr/share/elasticsearch/bin/elasticsearch-plugin install analysis-icu
定期備份:使用快照功能備份數據
本文詳細介紹了在 Linux 系統下安裝 Elasticsearch 的完整流程。通過官方倉庫安裝是最簡單的方式,而壓縮包安裝則適合需要自定義配置的場景。安裝完成后,請務必進行基本的安全配置,并根據實際需求調整 JVM 參數和系統設置。如果在安裝過程中遇到問題,可以參考官方文檔或社區支持資源。 “`
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。