1: Java安裝
1.1 檢測是否安裝java及java版本
在終端輸入java –version,如果未安裝java或者版本低于8,請下載java8,在終端輸入:
wget http://download.oracle.com/otn-pub/java/jdk/8u112-b15/jdk-8u112-linux-x64.tar.gz?AuthParam=1478501340_5bfa9f75e38b012bb7e871c993104c2f
1.2? 解壓下載的文件,tar –xvf jdk-8u112-linux-x64.tar.gz
1.3? 執(zhí)行下面語句將解壓后的文件夾jdk1.8.0_112 拷貝到/usr/lib/jvm下
cp –r jdk1.8.0_112 /usr/lib/jvm
1.4? 配置java環(huán)境變量
1) cd ~
2)在.bashrc文件中配置java環(huán)境變量。vi .bashrc
export JAVA_HOME = /usr/local/jdk1.8.0
export JRE_HOME = ${JAVA_HOME}/jre
export CLASSPATH = .:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH = ${JAVA_HOME}/bin:$PATH
3)退出并保存。執(zhí)行 source .bashrc
4)在終端執(zhí)行java –version,輸出以下信息,則完成配置
java version "1.8.0_112"
Java(TM) SE Runtime Environment (build 1.8.0_112-b15)
Java HotSpot(TM) 64-Bit Server VM (build 25.112-b15, mixed mode)
2: elasticsearch安裝
2.1 下載elasticsearch安裝包
wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-5.0.0.tar.gz
2.2 解壓
sha1sum elasticsearch-5.0.0.tar.gz
tar -xzf elasticsearch-5.0.0.tar.gz
2.3 移動到指定文件夾并重命名
mv elasticsearch-5.0.0 /usr/local/elasticsearch
2.4 修改訪問elasticsearch的IP及端口
vim /usr/local/elasticsearch/config/elasticsearch.yml
找到如下代碼段,并取消network.host及http.port所在行的注釋,修改IP及端口。
# ---------------------------------- Network -----------------------------------
#
# Set the bind address to a specific IP (IPv4 or IPv6):
#
network.host: 192.168.0.155
#
# Set a custom port for HTTP:
#
http.port: 9200
#
# For more information, see the documentation at:
# http://www.elastic.co/guide/en/elasticsearch/reference/current/modules-network.html
3: 啟動elasticsearch并解決出現(xiàn)的錯誤
3.1直接運行bin/elasticsearch文件啟動elasticsearch
cd /usr/java/elasticsearch/bin/
./elasticsearch
3.2 遇到問題及解決方案
問題一:Java HotSpot(TM) 64-Bit Server VM warning: INFO: os::commit_memory(0x0000000085330000, 2060255232, 0) failed; error='Cannot allocate memory' (errno=12)
#
# There is insufficient memory for the Java Runtime Environment to continue.
解決:增加服務(wù)器內(nèi)存
問題二:can not run elasticsearch as root
解決:https://my.oschina.net/topeagle/blog/591451?fromerr=mzOr2qzZ
問題三:max file descriptors [4096] for elasticsearch process likely too low, increase to at least [65536]
解決方法:切換到root用戶,進入vi /etc/security/limits.conf? ,增加配置(保存后注意切回elsearch用戶的時候才能生效,sudo 修改的不能立即生效):
elsearch soft nofile 819200
elsearch hard nofile 819200
問題四:max number of threads [1024] for user [work] likely too low, increase to at least [2048]
解決方法:進入limits.d下的配置文件:vi /etc/security/limits.d/90-nproc.conf ,修改配置如下:
*? ? ? ? ? soft? ? nproc? ? 1024
修改為:
*? ? ? ? ? soft? ? nproc? ? 2048
問題五:max virtual memory areas vm.max_map_count [65530] likely too low, increase to at least [262144]
解決方法:修改sysctl文件:vi /etc/sysctl.conf ,增加下面配置項:
增加改行配置:vm.max_map_count=655360
保存退出后,執(zhí)行:
sysctl -p
問題六:另外再配置ES的時候,threadpool.bulk.queue_size 已經(jīng)變成了thread_pool.bulk.queue_size ,ES_HEAP_SIZE,ES_MAX_MEM等配置都變?yōu)镋S_JAVA_OPTS這一配置項,如限制內(nèi)存最大最小為1G:
export ES_JAVA_OPTS="-Xms1g -Xmx1g"