基于Linux的ElasticSearch轻松搭建

搭建环境:

CentOS Linux release 7.5.1804 

elasticsearch-6.2.3

jdk1.8.0_141 

第一步:安装jdk,配置环境变量,注意1.8以上,否则出各种问题

基于Linux的ElasticSearch轻松搭建


  第二步.解压缩es,配置es的环境参数config/elasticsearch.yml和jvm.options调优

  tar -zxvf elasticsearch-6.2.3.tar.gz

基于Linux的ElasticSearch轻松搭建

  cluster.name:集群的名字

  node.name:节点的名字

  node.master: 设置当前节点为master节点,指定该节点是否有资格被选举成为node,默认是true,es是默认集群中的第一台机器为master,如果这台机挂了就会重新选举master

  node.data:设置当前节点是否存储数据

  path.data:ElasticSearch存储数据的目录

  path.logs:ElasticSearch日志打印的目录

  bootstrap.memory_lock:ElasticSearch启动的时候是否锁定内存,设置为true来锁住内存不进行swapping。因为当jvm开始swapping时es的效率会降低,所以要保证它不swap,可以把ES_MIN_MEM和ES_MAX_MEM两个环境变量设置成同一个值,并且保证机器有足够的内存分配给es。 同时也要允许elasticsearch的进程可以锁住内存,linux下启动es之前可以通过`ulimit -l unlimited`命令设置

  network.host:ElasticSearch当前节点的主机ip

  http.port:ElasticSearch的端口

  discovery.zen.ping.unicast.hosts:设置集群中master节点的初始列表,可以通过这些节点来自动发现新加入集群的节点

  

基于Linux的ElasticSearch轻松搭建

   -Xms5g:设置ElasticSearch初始化的JVM堆内存为5g

   -Xmx5g:设置ElasticSearch最大的JVM堆内存为5g

   -XX:+UseG1GC
   -XX:MaxGCPauseMillis=100

    设置JVM垃圾收集器卫G1,默认是CMS,JVM GC停顿的时间设置为100毫秒

  第三步:创建es用户组,创建es用户,密码为root,修改es的目录权限
  groupadd es 
  useradd es -g es -p root
  chown -R es:es /opt/elasticsearch-6.1.0

   第四步:根据情况修改elasticsearch.yml文件,在文件的最后加上三行
  http.cors.enabled: true
  http.cors.allow-origin: "*"
  #下面那一行可以酌情考虑,如果es以后是要做很多例如聚合操作,且内存足够的话,可以适当调大,如果仅仅是做搜索引擎,那么不必要设置这个参数
  indices.fielddata.cache.size: 5GB

  第五步:切换用户es启动ElasticSearch

基于Linux的ElasticSearch轻松搭建