elasticsearch 配置

目录详情

  • bin 二进制脚本,包含启动命令和安装插件命令等
  • config 配置文件目录
  • lib 依赖包目录
  • logs 日志文件目录
  • modules 模块库
  • plugins 插件目录
  • data 数据储存目录

(config) 配置文件

  • elasticsearch.yml elasticearch 配置文件
  • jvm.options elasticsearch jvm 配置文件
  • log4j2.properties elasticsearch 日志配置文件

    注意配置文件的文件格式为 YAML

elasticsearch.yml

配置集群名称(cluster.name)

cluster.name 默认值是 elasticsearch

在同一个环境中,我们不要使用相同的集群名,因为这样会导致节点加入错误的集群,我们要配置集群名称为有含义且唯一的集群名,而不要使用通用的集群名。

配置节点名称(node.name)

默认情况下,Elasticsearch将使用随机生成的UUID的前七个字符作为节点ID。请注意,节点ID是持久的,并且在节点重新启动时不会更改,因此默认节点名称也不会更改。

配置一个具有意义的名称

node.name:haha-elk-1

也可以使用系统变量

node.name: ${HOSTNAME}

配置 network.host

默认情况,elasticsearch 绑定回环地址 127.0.0.1.

如果是单节点,我们绑定回环地址就可以了,但是如果我们是集群的话,我们就需要绑定到我们的内网ip或者是公网IP.

只要您提供自定义设置network.host,Elasticsearch就会假定您从开发模式转为生产模式,并将许多系统启动检查从警告升级到异常。

更改数据和储存路径

在33行的位置
#path.data: /path/to/data
#path.logs: /path/to/logs
我们需要把# 去除,然后更改存储的路径。 对于
path.data: 我们可以配置多个路径
path:
data:
- /mnt/elasticsearch_1
- /mnt/elasticsearch_2
- /mnt/elasticsearch_3
但是我们同一个分片的数据会放在同一个路径

节点网络和名称配置

我们可以引用系统的环境变量值来指定我们的配置,例如下面的结点名称使用主机名称,网络地址使用 ES_NETWORK_HOST 变量的值

node.name:    ${HOSTNAME}
network.host: ${ES_NETWORK_HOST}

发现设置

# 配置节点
discovery.zen.ping.unicast.hosts: ["host1", "host2"]
# 配置最大主节点数
discovery.zen.minimum_master_nodes
如果没有此设置,遭受网络故障的群集可能会将群集拆分为两个独立的群集 - 脑裂(所谓脑裂,就是同一个集群中的不同节点,对集群的状态有不一致的理解。) - 这将导致数据丢失 设置数为 :(master_eligible_nodes / 2)+ 1
换句话说,如果有三个符合主节点的节点,则应将最小主节点设置为(3/2) + 1或2

jvm.options

官方文档写到

You should rarely need to change Java Virtual Machine (JVM) options. If you do, the most likely change is setting the heap size. The remainder of this document explains in detail how to set JVM options.

意思是 :我们需要更改jvm配置的次数应该非常少,就算是修改也是修改 heap size

heap size 配置

大约在 jvm.options 21行

一般在运行elasticsearch 的时候最小需要是内存是1G,少于1G我们会经常启动不了。
-Xms1g # 最小值为1G
-Xmx1g # 最大值为1G
对于这个值的设置,官方为了适应不同的java版本,特做了一些适应配置
-Xms1g 不受版本影响,默认
8:-Xmx2g 只适应java8版本
8-:-Xmx2g 适应java8及以上版本
8-9:-Xmx2g 适应java8-java-9版本 官方文档写到:以往经验得出,
1. 最大值和最小值设置为一样的值,否则在系统使用的时候会因jvm值变化而导致服务暂停
2. 过多的内存,会导致用于缓存的内存越多,最终导致回收内存的时间也加长
3. 设置的内存不要超过物理内存的50%,以保证有足够的内存留给操作系统
4. 不要将内存设置超过32GB

GC 日志

默认情况下是开启GC日志的,也就是记录java的内存回收

默认储存位置在/logs/下 ,默认配置每64MB转换一次日志 ,最大占用2g磁盘空间。

log4j2.properties 配置

elasticsearch 使用log4j2 进行日志记录

需要具体配置日志文件的请看官方文档:https://www.elastic.co/guide/en/elasticsearch/reference/6.3/logging.html

由于默认日志配置已经满足我们的日常需求,所以这里不提及。

elasticsearch(三) 之 elasticsearch目录介绍和配置文件详解的更多相关文章

  1. Tomcat的目录结构和配置文件详解

    本文转载: https://www.zybuluo.com/1234567890/note/515235 参考帖子: Tomcat(一):基础配置详解 Tomcat服务器中配置多个域名,访问不同的we ...

  2. Nginx目录结构与配置文件详解

    Nginx安装 具体安装nginx请移步:[nginx部署] 安装依赖 安装pcre依赖软件 [root@ubuntu ~]# yum install -y pcre pcre-devel //外网情 ...

  3. Linux:apache目录结构和配置文件详解

    bin目录下的常见命令 conf目录 htdocs目录 logs目录 httpd.conf文件解析. 如果后期自己新创建了新的站点目录,就要重新增加对应的目录权限配置 extra/目录下配置文件解析 ...

  4. Nginx安装,目录结构与配置文件详解

    1.Nginx简介 Nginx(发音同 engine x)是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,并在一个BSD-like 协议下发行.由俄罗斯的程序设 ...

  5. Nginx知多少系列之(三)配置文件详解

    目录 1.前言 2.安装 3.配置文件详解 4.Linux下托管.NET Core项目 5.Linux下.NET Core项目负载均衡 6.Linux下.NET Core项目Nginx+Keepali ...

  6. 网卡配置文件详解 用户管理与文件权限篇 文件与目录权限 软连接 tar解压命令 killall命令 linux防火墙 dns解析设置 计划任务crond服务 软件包安装 阿里云 yum源 安装

    Linux系统基础优化及常用命令 Linux基础系统优化 引言没有,只有一张图. Linux的网络功能相当强悍,一时之间我们无法了解所有的网络命令,在配置服务器基础环境时,先了解下网络参数设定命令. ...

  7. SaltStack 入门到精通第三篇:Salt-Minion配置文件详解

    SaltStack 入门到精通第三篇:Salt-Minion配置文件详解 作者:ArlenJ  发布日期:2014-06-09 17:52:16   ##### 主要配置设置 ##### 配置 默认值 ...

  8. nginx应用场景,特性,目录结构,常用模块,内置变量,URL和URI,http状态码,配置文件详解

    1.nginx介绍 1丶俄罗斯人开发的,开源www服务软件 2丶软件一共780K 3丶nginx本身是一款静态(html,js,css,jpg等)www软件 4丶静态小文件高并发,同时占用的资源很少, ...

  9. Apache服务的主要目录和配置文件详解

    Apache服务的主要目录和配置文件详解 2014-01-14 19:05:14 标签:httpd配置文件详解 apache配置文件 httpd配置文件 apache文件目录 原创作品,允许转载,转载 ...

随机推荐

  1. Codeforces805 A. Fake NP 2017-05-05 08:30 327人阅读 评论(0) 收藏

    A. Fake NP time limit per test 1 second memory limit per test 256 megabytes input standard input out ...

  2. win7结束进程 时,提示“拒绝访问”、“没有此任务的实例运行”怎么办?

    开发了个程序,创建了一个进程,但是杀不掉了,在任务管理器里面 右键--结束进程,提示“拒绝访问”,或者“没有此任务实例运行” 怎么办? 直接给答案:PCHunter 具体方法: 1.打开PCHunte ...

  3. hdu 5019

    http://acm.hdu.edu.cn/showproblem.php?pid=5019 给出X 和Y,求出第K 大的 X 和Y 的公约数. 暴力求出所有公约数 #include <cstd ...

  4. Firemonkey里触发home按键被按下的事件

    吾八哥我最近在使用Delphi里的Firemonkey平台写一个叫“由由密码管家”的APP工具,是跨多平台的,如ios/android/windows/macOs.由于是用于密码管理的,那么在手机里操 ...

  5. 【Win10】一些零碎不好归档的小总结(原谅我这个该死的标题吧)

    一.同步方式获取设备的屏幕分辨率 public static class ScreenResolution { /// <summary> /// 获取屏幕高度. /// </sum ...

  6. C#内存释放(垃圾回收)

    今天写了个很小的程序,程序的功能仅仅是截图,但是如果长时间开启并截图的时候,程序会变的很大,从刚开始的运行在任务管理器中只有十几K大小,运行一段时间后在任务管理器中看到程序可以达到1G或2G甚至更大: ...

  7. Nginx+IIS部署负载均衡的常见问题

    windows 下配置 Nginx 常见问题 一.  Nginx配置 找到 conf 目录里的 nginx.conf 文件,配置Nginx #user nobody; #指定nginx进程数 work ...

  8. Winform打包安装程序覆盖安装的实现

    1.修改项目程序集版本号. 2.设置Version,使当前版本号大于前一个版本号. 3.RemovePreviousVersions属性设置为true. 以上三步后,生成安装程序即可实现覆盖安装. P ...

  9. OpenLayers在地图上显示统计图,饼图线状图柱状图,修复统计图跳动的问题

    环境介绍 Openlayers ol.js v5.3.0 Highcharts highcharts.js v7.0.1 jquery jquery-3.3.1.js v3.3.1 显示效果 地图放大 ...

  10. Win(Phone)10开发第(2)弹,导出APPX包并签名部署

    当我们新建一个win10 uap项目,如果想导出测试包,需要点击项目名称,选择商店-导出应用包,这个时候会生成一个文件夹,包含appx和ps1等文件. powershell运行Add-AppDevPa ...