1. 程式人生 > >ElasticSearch叢集搭建及啟動異常的問題

ElasticSearch叢集搭建及啟動異常的問題

ElasticSearch叢集搭建

本文采用ElasticSearch5.6.9版本,採用3臺機器安裝,分別為server01,server02,server03。機器的系統是CentOS6.9版本

ElasticSearch叢集是採用leader選舉機制來產生master

1.下載並解壓

1.1 官網下載地址:

1.2 上傳到server01機器

scp elasticsearch-5.6.9.tar.gz [email protected]:/hadoop

1.3 解壓

tar -zxvf elasticsearch-5.6.9.tar.gz

1.4 重新命名

mv elasticsearch-5.6.9 elasticsearch

2.修改配置檔案並啟動

進入elasticsearch/config目錄

2.1 修改elasticsearch.yml配置檔案

#叢集名稱,通過組播的方式通訊,通過名稱判斷屬於哪個叢集
cluster.name: es-cluster

#節點名稱,要唯一
node.name: es1

#資料存放位置
path.data: /hadoop/elasticsearch/data

#日誌存放位置
path.logs: /hadoop/elasticsearch/logs

# centos6.x需要新增,不然會導致啟動錯誤
bootstrap.system_call_filter: false #es繫結的ip地址 network.host: server01 # http訪問的埠 http:port: 9200 #初始化時可進行選舉的節點 discovery.zen.ping.unicast.hosts: ["server01", "server02", "server03"]

image

image

2.2 修改jvm.options檔案(可選)

vim config/jvm.options

# 將虛擬機器記憶體預設的2g改為512m
# -Xms2g  
# -Xmx2g  
# 修改為  

-Xms512m  
-Xmx512m 

如果機器的記憶體比較小,設定為2g會導致如下錯誤

Java HotSpot(TM) 64-Bit Server VM warning: INFO: os::commit_memory(0x0000000085330000, 2060255232, 0) failed; error=’Cannot allocate memory’ (errno=12)

2.3 分發到server02,server03機器上

scp -r /hadoop/elasticsearch hadoop@server02:/hadoop

scp -r /hadoop/elasticsearch hadoop@server03:/hadoop

修改server02機器上的elasticsearch.yml配置檔案

node.name: es2

network.host: server02

修改server03機器上的elasticsearch.yml配置檔案

node.name: es3

network.host: server03

2.4 設定環境變數

在server01,server02,server03機器上分別設定環境變數

sudo vim /etc/profile

export ES_HOME=/hadoop/elasticsearch
export PATH=$PATH:$ES_HOME/bin

使環境變數生效

source /etc/profile

2.5 啟動elasticsearch叢集

elasticsearch

# 後臺啟動
# elasticsearch -d

image

image

3.啟動異常的問題

image

3.1 max file descriptors [4096] for elasticsearch process is too low, increase to at least [65536]

解決方案:

切換到root使用者下,編輯/etc/security/limits.conf檔案

vim /etc/security/limits.conf

編輯內容如下:

* soft nofile 65536

* hard nofile 131072

* soft nproc 2048

* hard nproc 4096

3.2 max number of threads [1024] for user [hadoop] is too low, increase to at least [2048]

解決方案:

在root使用者下

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

修改如下內容:

# 將
# * soft nproc 1024
# 修改為

* soft nproc 2048

3.3 max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]

解決方案:

在root使用者下

編輯vim /etc/sysctl.conf檔案

新增下面配置:
vm.max_map_count=655360


並執行命令:
sysctl -p

3.4 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.0預設bootstrap.system_call_filter為true進行檢測,所以導致檢測失敗,失敗後直接導致ES不能啟動。

解決方案:

elasticsearch.yml中配置bootstrap.system_call_filter為false

bootstrap.system_call_filter: false

3.5 Java HotSpot(TM) 64-Bit Server VM warning: INFO: os::commit_memory(0x0000000085330000, 2060255232, 0) failed; error=’Cannot allocate memory’ (errno=12)

image

這個問題表示jvm的記憶體不足

解決方案:

vim config/jvm.options

# 將jvm記憶體引數2g改為512m
# -Xms2g  
# -Xmx2g  
# 修改為  

-Xms512m  
-Xmx512m 

相關推薦

ElasticSearch叢集搭建啟動異常的問題

ElasticSearch叢集搭建 本文采用ElasticSearch5.6.9版本,採用3臺機器安裝,分別為server01,server02,server03。機器的系統是CentOS6.9版本 ElasticSearch叢集是採用leader選舉機制來

Elasticsearch叢集搭建Python互動

本文記錄Elasticsearch物理叢集的安裝步驟,在3臺機器上部署一個叢集。行文順序為整個安裝過程從頭到尾,期間發現不少問題。因此,本文不適合一步步跟著做,建議您看完整篇文章,然後再開始搭建叢集。 1 . 環境 機器: 3臺物理機器,分別為130,

elasticsearch 叢集淺析搭建

相關概念 叢集(cluster): 由一個或多個節點組成, 並通過叢集名稱與其他叢集進行區分 ​ 節點(node): 單個ElasticSearch例項.ES叢集中每一個節點就是一個node ​ 索引(index): 在ES中, 索引是一組文件的集合 ​ 分片(shard): 因為ES是個分散式

elasticsearch本地叢集搭建遠端伺服器搭建注意事項kibana配置

elasticsearch本地叢集 首先下載解壓elasticsearch壓縮包,我使用的版本為elasticsearch-6.3.2-2,解壓後的路徑為E:\elasticsearch-6.3.2-2。 在解壓目錄下有config資料夾,裡面有elastics

和我一起打造個簡單搜尋之ElasticSearch叢集搭建

我們所常見的電商搜尋如京東,搜尋頁面都會提供各種各樣的篩選條件,比如品牌、尺寸、適用季節、價格區間等,同時提供排序,比如價格排序,信譽排序,銷量排序等,方便了使用者去找到自己心裡理想的商品。 站內搜尋對於一個網站幾乎是標配,只是搜尋的強大與否的區別,有的網站只支援關鍵詞模糊搜尋,而淘寶,京東提供了精細的篩選

elasticsearch叢集搭建手冊(偽叢集搭建

安裝部署 建立程式目錄 安裝目錄 mkdir /usr/local/elasticsearch mkdir /usr/local/elasticsearch/6.4.3 mkdir /usr/local/elasticsearch/6.4.3/01 #第一個節

Redis叢集安裝--叢集搭建密碼配置遇到的一些問題

網上關於Redis叢集安裝配置的文章很多,也比較全面,但每個人的需求不一樣,本文搭建一個配置密碼的Redis叢集過程其中遇到的一些問題 其中我見到的以這篇文章最詳細https://www.cnblogs.com/hello-daocaoren/p/843190

redis叢集搭建問題的決方法(一)

一、叢集搭建主要配置如下: P61 bind 127.0.0.1//預設ip為127.0.0.1改為其他節點機器可訪問 的ip 註釋掉bind;可以監聽連線當前服務的所有-h 後的ip;例如;綁定了 127.0.0.1,但是登入時使用-h 10.9.17.153

redis叢集搭建問題的決方法(二)

一、準備好有三個主節點的叢集 127.0.0.1:8000> cluster nodes 8ce851252f32fcab268e77d3b3ed976d57d2f498 10.211.55.5:8000 myself,master - 0 0 1 con

[Kafka] Apache Kafka 簡介、叢集搭建配置詳解

前言 kafka是一種高吞吐量的分散式釋出訂閱訊息系統,它可以處理消費者規模的網站中的所有動作流資料。這種動作(網頁瀏覽,搜尋和其他使用者的行動)是在現代網路上的許多社會功能的一個關鍵因素。這些資料通常是由於吞吐量的要求而通過處理日誌和日誌聚合來解決。 Kafk

Es叢集搭建日誌指令碼

1.場景還原     近日,筆者專案中需要做系統化的日誌採集,筆者靈機一動,elk最好不過;今天筆者就es叢集搭建作此分享 2.實現方案 ①筆者整合的是elasticsearch-2.4.6,下載對應的tar包 ②叢集配置 節點1配置: cluster.name:

8分鐘學會Consul叢集搭建微服務概念

Consul介紹: Consul 是由 HashiCorp 公司推出的開源軟體,用於實現分散式系統的服務發現與配置。與其他分散式服務註冊與發現的方案,Consul 的方案更“一站式”,內建了服務註冊與發現框 架、分佈一致性協議實現、健康檢查、Key/Value 儲存、多資料中心方

elasticsearch叢集搭建

es叢集搭建網上百度一大堆,有很詳細的步驟,在這裡還是記錄一下自己的搭建過程,分享經驗(主要是我覺得這個搭建比較簡單); 準備材料 叢集主機3臺:192.168.54.16、192.168.54.17、192.168.54.18 es版本:elasticsearch-2.4.0.tar.gz 步驟: 一、解壓

elasticsearch 叢集搭建

1.先安裝elasticsearch服務   安裝教程檢視前篇部落格:elasticsearch 單機安裝   2.叢集配置 我這邊3太機器的ip分別是:192.168.30.242,192.168.30.82,192.168.30.108 此處我選擇了192.168.30.242作為mas

ElasticSearch教程(三)————ElasticSearch叢集搭建

公司一直在使用ES作為分散式的搜尋引擎,由於資料量的不斷升高,ES出現了效能瓶頸。公司決定進一步的優化ES配置,所以最近幾天在研究ES,最近會更新一系列ES的教程,希望大家持續關注。不多說了,Action。 前言 這篇博文我們親自搭建一個簡單的Elast

elasticsearch叢集檔案路徑設定

es叢集檔案路徑: (1)資料目錄、日誌目錄以及外掛目錄 預設情況下es會將plugin、log、data 、config、file都放在es的安裝目錄中。這有一個問題,就是在進行es升級的時候,可能會導致這些目錄被覆蓋掉使我們叢集中的檔案或資料丟失,所以對

CentOS環境下elasticsearch叢集搭建

1、環境搭建(CentOS6.6) 機器1(192.168.13.166) 機器2(192.168.13.171) Elasticsearch配置目錄:/etc/elasticsearch Elas

redis-cluser叢集搭建使用

    近段時間一直在研究redis-cluser叢集模式,準備將原有的sentinel模式替換掉。但是遲遲沒能落實,一來是現有叢集模式尚能滿足現有應用,怕變更後不穩定固不願輕易改動;二是對redis-cluster的研究還不是很深入,還需要時間。redis-cluster

Redis-Cluster叢集搭建配置

前言 在上一篇文章中隊redis進行了簡單的介紹和安裝,在這一篇文章中進行一個redis-Cluster的叢集搭建。 Redis-Cluster介紹 redis-cluster架構設計 架構細節: (1)所有的redis節點彼此互聯(PIN

redis叢集搭建--redis啟動以後臺方式啟動

前提:搭建好redis集群后,使用start_all.sh啟動所有節點,但是在啟動第一個節點後,其他的節點並沒有啟動,使用ps -ef | grep redis並沒有顯示其它節點,只有當停掉該節點,下一個節點才會啟動 Redis預設不是以守護程序的方式執行,可