elasticsearch叢集搭建手冊(偽叢集搭建)
阿新 • • 發佈:2018-11-30
安裝部署
建立程式目錄
- 安裝目錄
mkdir /usr/local/elasticsearch
mkdir /usr/local/elasticsearch/6.4.3
mkdir /usr/local/elasticsearch/6.4.3/01 #第一個節點
mkdir /usr/local/elasticsearch/6.4.3/02 #第二個節點
mkdir /usr/local/elasticsearch/6.4.3/03 #第三個節點
- 資料目錄
mkdir /data mkdir /data/elasticsearch mkdir /data/elasticsearch/01 mkdir /data/elasticsearch/01/data mkdir /data/elasticsearch/01/logs mkdir /data/elasticsearch/02 mkdir /data/elasticsearch/02/data mkdir /data/elasticsearch/02/logs mkdir /data/elasticsearch/03 mkdir /data/elasticsearch/03/data mkdir /data/elasticsearch/03/logs
- 下載程式
3.1 下載Elasticsearch 6.4.3 tar
curl -L -O https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.4.3.tar.gz
3.2 解壓檔案
tar -xvf elasticsearch-6.4.3.tar.gz cd elasticsearch-6.4.3/ cp -rf * /usr/local/elasticsearch/6.4.3/01/ cp -rf * /usr/local/elasticsearch/6.4.3/02/ cp -rf * /usr/local/elasticsearch/6.4.3/03/
修改配置檔案
- 01節點 vi /usr/local/elasticsearch/6.4.3/01/config/elasticsearch.yml
# ---------------------------------- Cluster ----------------------------------- #這個填寫叢集名稱,叢集中每個節點的名稱必須一致,es節點是通過名稱才來確定是否是同一個叢集的 cluster.name: es-test # ------------------------------------ Node ------------------------------------ #配置當前節點的名稱,該名稱在叢集中唯一,不可重複 node.name: node01 # ----------------------------------- Paths ------------------------------------ path.data: /data/elasticsearch/01/data path.logs: /data/elasticsearch/01/logs # ----------------------------------- Memory ----------------------------------- #用於程式啟動時建設記憶體是否足夠存放heap size,測試版可以設成false bootstrap.memory_lock: true # ---------------------------------- Network ----------------------------------- #繫結IP地址 network.host: 0.0.0.0 #預設埠9200, 注:9300為es節點間TCP通訊使用,配置是請勿佔用 http.port: 9201 # --------------------------------- Discovery ---------------------------------- #叢集最小主節點數,為了防止腦裂,主節點數必須為奇數個,正式版建議採用 “總節點數/2 + 1” discovery.zen.minimum_master_nodes: 1
- 02節點 $ vi /usr/local/elasticsearch/6.4.3/02/config/elasticsearch.yml
# ---------------------------------- Cluster -----------------------------------
#這個填寫叢集名稱,叢集中每個節點的名稱必須一致,es節點是通過名稱才來確定是否是同一個叢集的
cluster.name: es-test
# ------------------------------------ Node ------------------------------------
#配置當前節點的名稱,該名稱在叢集中唯一,不可重複
node.name: node02
# ----------------------------------- Paths ------------------------------------
path.data: /data/elasticsearch/02/data
path.logs: /data/elasticsearch/02/logs
# ----------------------------------- Memory -----------------------------------
#用於程式啟動時建設記憶體是否足夠存放heap size,測試版可以設成false
bootstrap.memory_lock: true
# ---------------------------------- Network -----------------------------------
#繫結IP地址
network.host: 0.0.0.0
#預設埠9200, 注:9300為es節點間TCP通訊使用,配置是請勿佔用
http.port: 9202
# --------------------------------- Discovery ----------------------------------
#叢集最小主節點數,為了防止腦裂,正式版建議採用 “總節點數/2 + 1”
discovery.zen.minimum_master_nodes: 1
- 03節點 $ vi /usr/local/elasticsearch/6.4.3/03/config/elasticsearch.yml
# ---------------------------------- Cluster -----------------------------------
#這個填寫叢集名稱,叢集中每個節點的名稱必須一致,es節點是通過名稱才來確定是否是同一個叢集的
cluster.name: es-test
# ------------------------------------ Node ------------------------------------
#配置當前節點的名稱,該名稱在叢集中唯一,不可重複
node.name: node03
# ----------------------------------- Paths ------------------------------------
path.data: /data/elasticsearch/03/data
path.logs: /data/elasticsearch/03/logs
# ----------------------------------- Memory -----------------------------------
#用於程式啟動時建設記憶體是否足夠存放heap size,測試版可以設成flase
bootstrap.memory_lock: true
# ---------------------------------- Network -----------------------------------
#繫結IP地址
network.host: 0.0.0.0
#預設埠9200, 注:9300為es節點間TCP通訊使用,配置是請勿佔用
http.port: 9203
# --------------------------------- Discovery ----------------------------------
#叢集最小主節點數,為了防止腦裂,正式版建議採用 “總節點數/2 + 1”
discovery.zen.minimum_master_nodes: 1
部署隔離完善
- 建立執行賬戶
groupadd elastic
useradd -g elastic elasticsearch
- 修改目錄許可權
chown -R elasticsearch:elastic /data/elasticsearch
chown -R /usr/local/elasticsearch/6.4.3
- 新增supervisor守護 $ vi /etc/supervisor/conf.d/elasticsearch.conf
[program:elasticsearch01]
command=/usr/local/elasticsearch/6.4.3/01/bin/elasticsearch
autostart=true
autorestart=true
startsecs=3
user=elasticsearch
redirect_stderr=true
stdout_logfile=/var/logs/supervisor/elasticsearch01.log
stdout_logfile_maxbytes=10MB
stdout_logfile_backups=10
[program:elasticsearch02]
command=/usr/local/elasticsearch/6.4.3/02/bin/elasticsearch
autostart=true
autorestart=true
startsecs=3
user=elasticsearch
redirect_stderr=true
stdout_logfile=/var/logs/supervisor/elasticsearch02.log
stdout_logfile_maxbytes=10MB
stdout_logfile_backups=10
[program:elasticsearch03]
command=/usr/local/elasticsearch/6.4.3/03/bin/elasticsearch
autostart=true
autorestart=true
startsecs=3
user=elasticsearch
redirect_stderr=true
stdout_logfile=/var/logs/supervisor/elasticsearch03.log
stdout_logfile_maxbytes=10MB
stdout_logfile_backups=10