ElasticSearch 集羣搭建和坑點

單節點版的部署參考 安裝和使用 elasticSearch、LogStash、IK(一),分別在三臺ip安裝獨立的 ES之後,進行集羣配置

集羣配置

系統參數設置

  1. 添加非root用戶,用於執行ES
  2. 修改系統參數,ES運行的系統參數
# 1 解決:切換到root用戶,編輯limits.conf 添加類似如下內容

vi /etc/security/limits.conf 

添加如下內容:

* soft nofile 65536

* hard nofile 131072

* soft nproc 2048

* hard nproc 4096
* 
# 2 解決:切換到root用戶,進入limits.d目錄下修改配置文件。

vi /etc/security/limits.d/90-nproc.conf 

修改如下內容:

* soft nproc 1024

#修改爲

* soft nproc 2048

vim /etc/sysctl.conf  -> vm.max_map_count=262144

# 3 如果你是centos6 :system call filters failed to install; check the logs and fix your configuration or disable system call filters at your own risk
#問題原因:因爲Centos6不支持SecComp,而ES5.2.1默認bootstrap.system_call_filter爲true進行檢測,所以導致檢測失敗,失敗後直接導致ES不能啓動。在elasticsearch.yml中配置bootstrap.system_call_filter爲false,注意要在Memory下面: 

bootstrap.memory_lock: false 

bootstrap.system_call_filter: false

ES集羣yml參數設置

# vim elasticsearch.yml

#centos6 需要設置
bootstrap.memory_lock: false 
bootstrap.system_call_filter: false
network.host: 0.0.0.0

discovery.zen.minimun_master_nodes: 2
discovery.zen.ping.unicast.hosts: ["其他node的ip","其他node的ip"]


http.cors.enabled: true
http.cors.allow-origin: "*"
cluster.name: leon
node.name: node1
# node.master: true 
# 如果在某個節點設置了這個參數,那麼這個節點就一直是 Master節點

IK分詞集羣配置

ik 集羣配置 : 直接下載 https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v5.5.1/elasticsearch-analysis-ik-5.5.1.zip

放到集羣節點上的 plugins 目錄下,我的三個節點的目錄分別是:

/elasticsearch/el_slave/es_slave1/plugins
/elasticsearch/el_slave/es_slave2/plugins
/elasticsearch/elasticsearch-5.5.1/plugins

在這三個目錄下 mkdir ik ,再配置 config 文件 ,配置參考 安裝和使用 elasticSearch、LogStash、IK(二)

查看集羣

通過安裝 head 插件 或者 Kibana 圖形化查看集羣狀態,節點,分片等信息

這裏寫圖片描述

這裏我的集羣是3個節點,所以 discovery.zen.minimun_master_nodes: 2設置的 最小集羣啓動數目是2個節點,2N-1 。當3個節點有一個發生故障,剩下的兩個節點還可以自行運轉,重新選舉 。

設置 info 索引 3個分片,1個複製,可以在圖上看到,索引分佈在3個分片,又分佈在三個節點上,另外每個分片都有一個複製分片。

這裏寫圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章