elasticsearch 集群設計

時間 2021-10-21 14:03:35

1樓:皮皮

三颱機器

IPHOSTANME

OS是否是主節點

172.16.241.2

linux1

centos8

是(初始)

172.16.241.3

linux2

centos8

是172.16.241.4

linux3

centos8

是Es不允許使用root啟動,故而建立使用者和組(三颱機器)

groupadd es

useradd es -g es -p es

su es

設定系統配置(切換root使用者)

vi /etc/sysctl.conf

#設定如下

vm.max_map_count=

262144

#執行生效

sysctl -p

vi /etc/security/limits.conf

#增加如下內容

# * 代表所有,可以修改為使用者es

* soft nproc 4096

* hard nproc 4096

開啟linux1機器,進入/home/es/目錄,執行如下指令:

tar.gz.sha512 // 如找不到指令,使用yum install -y perl-Digest-SHA 安裝

tar -xzf elasticsearch-7.13.3-linux-x86_64.tar.gz

使用scp指令分發elasticsearch-7.13.3到其他機器上

scp傳檔案到linux2,linux3

scp -r elasticsearch-7.13.3 root@linux2:/home/es

scp -r elasticsearch-7.13.3 root@linux2:/home/es

修改config下的elasticsearch.yaml檔案

linux1(master)

#集群配置

cluster:

name: xpp-es-cluster

initial_master_nodes:

- linux1

path:

data: /home/es/elasticsearch-7.13.3/data

logs: /home/es/elasticsearch-7.13.3/data

node:

name: linux1

network:

host: linux1

discovery.seed_hosts:

- linux1:9300

- linux2:9300

- linux3:9300

linux2

#集群配置

cluster:

name: xpp-es-cluster

initial_master_nodes:

- linux1

path:

data: /home/es/elasticsearch-7.13.3/data

logs: /home/es/elasticsearch-7.13.3/data

node:

name: linux2

roles: [data]

network:

host: linux2

discovery.seed_hosts:

- linux1:9300

- linux2:9300

- linux3:9300

linux3

#集群配置

cluster:

name: xpp-es-cluster

initial_master_nodes:

- linux1

path:

data: /home/es/elasticsearch-7.13.3/data

logs: /home/es/elasticsearch-7.13.3/data

node:

name: linux3

roles: [data]

network:

host: linux3

discovery.seed_hosts:

- linux1:9300

- linux2:9300

- linux3:9300

先啟動linux1下的es,再啟動linux2, linux3

./elasticsearch -d

訪問http://

linux1:9200

使用chrome外掛程式elasticsearch head外掛程式訪問如圖:

建立索引book, user, shopping

檢視集群狀態

索引已經建立,並且資料分片沒有問題。綠色代表健康。

建立Doc

返回結果

,"_seq_no":0

,"_primary_term":1

}三節點的集群搭建完畢,該集群有什麼問題?如果master掛掉還能否正常提供服務?

答案是否定的,具體是為什麼呢?

主要跟角色有關,linux2和linux3都是非master節點,當我把linux1(master)停掉,集群就沒有了master,所以無法對外提供服務。

三節點中官方建議每個節點都要設定master角色,這樣linux1(master)不能提供服務,集群會選舉新的master對外服務。來模擬一下。

首先我要修改linux2和linux3的配置

node.roles:[data] 修改為node.roles:[data, master]

重啟linux2和linux3的es

停止linux1(原master)服務

開啟elasticseatch head檢視

linux3已經被選舉為master節點。

重啟linux1節點後,他不會重新變為master節點,而是作為從節點。

2樓:線性計算單元01

首先,CPU首先要確認cpu使用類別,是否io中斷過多等,使用者使用部分過高一般是集群在進行大量的計算工作,包括但不限於

custom scoring

geo computing

sorting

需要確認在bitset過濾器生效後命中文件數,根據集群效能不同,從幾萬到上百萬資料所消耗的cpu都不一樣,另外你可以嘗試使用熱點執行緒查詢功能去看看節點到底在使用CPU做什麼事情。

附:/_nodes//hot_threads 查詢節點熱點執行緒

在ElasticSearch中,集群 Cluster ,節點 Node ,分片 Shard ,Indices 索引 ,replicas 備份 之間是什麼關係?

最近正在研究 Elasticsearch 下稱 ES 試著回答下你的問題 幾個關鍵的概念 Node 乙個執行著的 ES 例項即為 Node Cluster 多個 Node 組成 Cluster。其中會有乙個 Node 充當 Master 角色,用來進行集群管理類的工作 Index ES 的資料從邏輯...

在Spark集群中,集群的節點個數 RDD分割槽個數 cpu核心個數三者與並行度的關係??

王燚光 梳理一下Spark中關於併發度涉及的幾個概念File,Block,Split,Task,Partition,RDD以及節點數 Executor數 core數目的關係。輸入可能以多個檔案的形式儲存在HDFS上,每個File都包含了很多塊,稱為Block。當Spark讀取這些檔案作為輸入時,會根...

Elasticsearch到底能玩多大的資料量?

熊哥club 我們目前3個集群,主集群30臺伺服器,配置512G記憶體40C,25T 30T,80T的磁碟容量都有,98個節點,單index最大7T,shard數接近1萬 日均30億條日誌記錄,6T資料,總容量已經達到pb級別。目前搜查都是毫秒級,由於是新手,踩過很多坑也填了很多坑,目前還在摸索優化...