Elasticsearch6.2.2服務器安裝手冊

Elasticsearch6.2.2 安裝手冊

1 說明

本手冊針對的是ES生產環境,使用3臺或以上的服務器構建高可用集羣。
服務器版本CenterOS 6.5

2 安裝包下載和解壓

官網地址:https://www.elastic.co/cn/

下載鏈接:https://www.elastic.co/cn/downloads/elasticsearch

在這裏插入圖片描述
下載包檢索頁面:

https://www.elastic.co/cn/downloads/past-releases#elasticsearch

在這裏插入圖片描述

2 解壓

tar -zxvf elasticsearch-6.2.2.tar.gz -C /usr/local

3 創建用戶

useradd elasticsearch
cd /usr/local
chown -R  elasticsearch elasticsearch-6.2.2/    # 授權

4 配置

配置文件在/usr/local/elasticsearch-6.2.2/config下,有3個文件。

  1. elasticsearch.yml用於配置Elasticsearch。
  2. jvm.options用於配置Elasticsearch JVM設置。
  3. log4j2.properties用於配置Elasticsearch 日誌記錄。

4.1 JVM配置

jvm.options

# Xmx不超過物理RAM的50%,以確保有足夠的物理RAM供內核緩存文件。過大還會增加FGC的時間。
-Xms1g
-Xmx1g

4.2 ES配置

elasticsearch.yml

# 集羣名稱
cluster.name: archives-[客戶簡寫]-pro

# 節點名稱,若不配,ES默認會生成一個UUID(前7位),且ID是持久化的,爲了便於管理和記憶,需要自定義
node.name: archives-[客戶簡寫]-nodeX  # 也可以直接使用服務器主機名:${HOSTNAME}

# 配置基本路徑,爲了防止升級ES時丟失數據庫數據和日誌記錄,必須設置到單獨的目錄中
path.data: /var/elasticsearch/data
path.logs: /var/elasticsearch/logs

# 禁用內存鎖
bootstrap.memory_lock: false
bootstrap.system_call_filter: false  #Centos6不支持SecComp

# 爲了成功形成集羣,需要配置network.host
network.host: 本機IP

# 發現設置
discovery.zen.ping.unicast.hosts: ["本機IP", 節點ip", "節點ip"]

# 爲了防止腦裂,設置具備成爲master資格的節點數/2 +1
discovery.zen.minimum_master_nodes:2

創建目錄:

mkdir /var/elasticsearch
mkdir /var/elasticsearch/data
mkdir /var/elasticsearch/logs
# 授權
chown -R elasticsearch /var/elasticsearch/

4.3 系統配置

4.3.1 limits.conf
vi /etc/security/limits.conf

將以下行添加到limits.conf

# 文件描述符,至少65536
elasticsearch soft nofile 65536
elasticsearch hard nofile 131072
# 線程數,確保Elasticearch用戶可以創建的線程數至少爲4096
elasticsearch soft nproc 4096
elasticsearch hard nproc 4096

該更改,需要shell斷開連接後重連,纔會生效(繼續配置,下面的配置還需要重啓)

4.3.2 禁用swap
vi /etc/fstab

註釋帶swap的一行(第10行附近)

4.3.3 虛擬存儲器
vi /etc/sysctl.conf

添加

vm.max_map_count=262144
4.3.4 防火牆配置

/etc/sysconfig/iptables

iptables -t filter -I INPUT 5 -m state --state NEW -m tcp -p tcp --dport 9200 -j ACCEPT
iptables -t filter -I INPUT 6 -m state --state NEW -m tcp -p tcp --dport 9300 -j ACCEPT
service iptables save
4.3.5 重啓讓配置生效
reboot

5 啓動

cd /usr/local/elasticsearch-6.2.2/bin
su elasticsearch
./elasticsearch

6 安裝服務和開機自啓

創建/etc/init.d/elasticsearch文件

#!/bin/sh
#chkconfig: 2345 80 05
#description: elasticsearch

case "$1" in
start)
    su elasticsearch<<!
    cd /usr/local/elasticsearch-6.2.2
    ./bin/elasticsearch -d
!
    echo "elasticsearch startup"
    ;;  
stop)
    es_pid=`ps aux|grep elasticsearch | grep -v 'grep elasticsearch' | awk '{print $2}'`
    kill -9 $es_pid
    echo "elasticsearch stopped"
    ;;  
restart)
    es_pid=`ps aux|grep elasticsearch | grep -v 'grep elasticsearch' | awk '{print $2}'`
    kill -9 $es_pid
    echo "elasticsearch stopped"
    su brian<<!
    cd /usr/local/elasticsearch-6.2.2
    ./bin/elasticsearch -d
!
    echo "elasticsearch startup"
    ;;  
*)
    echo "start|stop|restart"
    ;;  
esac

exit $?

授權並設置開機啓動:

chmod +x /etc/init.d/elasticsearch
chkconfig --add /etc/init.d/elasticsearch

操作命令:

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