Setup 安装
ElasticSearch    2018-09-01 00:40:15    0    0    0
cqc   ElasticSearch
下载安装包,解压。设置JAVA_HOME环境,ES必须要JDK7以上的版本才能支持,并建议JDK7在55版本之后,JDK8在20版本之后。
经过以上步骤即可运行ES, 执行$ES_HOME/bin/elasticsearch
$ES_HOME/bin/elasticsearch -d 后台执行
$ES_HOME/bin/elasticsearch -d -p PID 将ES的pid写入PID文件中
直接kill pid来停止ES的运行

配置

环境变量设置
可在$ES_HOME/bin/elasticsearch脚本中设置$JAVA_OPTS参数来配置JVM参数,其中最重要的应该就是-Xmx(最大可分配内存)和-Xms(最小分配内存)
更经常的是,不去动$JAVA_OPTS这个参数,而是修改$ES_JAVA_OPTS来配置JVM参数
配置内存除了以上办法外,ES还提供一些更方便的变量来设置,ES_HEAP_SIZE将同时设置最大和最小内存为相同的值,如512m、1g,并且官方建议用这个变量,还可通过ES_MIN_MEM(默认为256m)和ES_MAX_MEM(默认为1g)来分别设置最小和最大内存(官方不推荐)

discovery.zen.ping.unicast.hosts: ["10.206.19.199", "10.206.19.230"] 这个用来配置集群的机器组成

系统配置

- 首先确保服务器的文件句柄数至少为64k. ulimit -l
- 使用root账户将虚拟内存设置为sysctl -w vm.max_map_count=262144,但这个只是临时的,要使永久生效需设置/etc/sysctl.conf中的vm.max_map_count 参数,执行sysctl -p生效
- 内存使用:正常操作系统会尽可能将内存用在文件系统的缓存上,从而会将应用中暂时不用的内存交换出来,为了禁止操作系统将应用的内存交换出来,需要设置 config/elasticsearch.yml中bootstrap.mlockall: true,还需在/etc/security/limits.conf中添加"www soft memlock unlimited" "www hard memlock unlimited"(需要重新登陆生效),在应用启动后,可通过curl http://localhost:9200/_nodes/process?pretty查看是否生效

其他设置需要在config/elasticsearch.yml中设置

在安装时,最好需要将data、logs、config 目录配置在单独的目录中,为方便es升级,这三个目录分别对应config/elasticsearch.yml中的path.data、path.logs, config目录需要在启动时配置 --path.conf

上一篇: Cluster集群操作(index、create、delete)流程

下一篇: Snapshot 备份还原

文档导航