elasticsearch(三) 之 elasticsearch目录介绍和配置文件详解
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目录介绍和配置文件详解的更多相关文章
- Tomcat的目录结构和配置文件详解
本文转载: https://www.zybuluo.com/1234567890/note/515235 参考帖子: Tomcat(一):基础配置详解 Tomcat服务器中配置多个域名,访问不同的we ...
- Nginx目录结构与配置文件详解
Nginx安装 具体安装nginx请移步:[nginx部署] 安装依赖 安装pcre依赖软件 [root@ubuntu ~]# yum install -y pcre pcre-devel //外网情 ...
- Linux:apache目录结构和配置文件详解
bin目录下的常见命令 conf目录 htdocs目录 logs目录 httpd.conf文件解析. 如果后期自己新创建了新的站点目录,就要重新增加对应的目录权限配置 extra/目录下配置文件解析 ...
- Nginx安装,目录结构与配置文件详解
1.Nginx简介 Nginx(发音同 engine x)是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,并在一个BSD-like 协议下发行.由俄罗斯的程序设 ...
- Nginx知多少系列之(三)配置文件详解
目录 1.前言 2.安装 3.配置文件详解 4.Linux下托管.NET Core项目 5.Linux下.NET Core项目负载均衡 6.Linux下.NET Core项目Nginx+Keepali ...
- 网卡配置文件详解 用户管理与文件权限篇 文件与目录权限 软连接 tar解压命令 killall命令 linux防火墙 dns解析设置 计划任务crond服务 软件包安装 阿里云 yum源 安装
Linux系统基础优化及常用命令 Linux基础系统优化 引言没有,只有一张图. Linux的网络功能相当强悍,一时之间我们无法了解所有的网络命令,在配置服务器基础环境时,先了解下网络参数设定命令. ...
- SaltStack 入门到精通第三篇:Salt-Minion配置文件详解
SaltStack 入门到精通第三篇:Salt-Minion配置文件详解 作者:ArlenJ 发布日期:2014-06-09 17:52:16 ##### 主要配置设置 ##### 配置 默认值 ...
- nginx应用场景,特性,目录结构,常用模块,内置变量,URL和URI,http状态码,配置文件详解
1.nginx介绍 1丶俄罗斯人开发的,开源www服务软件 2丶软件一共780K 3丶nginx本身是一款静态(html,js,css,jpg等)www软件 4丶静态小文件高并发,同时占用的资源很少, ...
- Apache服务的主要目录和配置文件详解
Apache服务的主要目录和配置文件详解 2014-01-14 19:05:14 标签:httpd配置文件详解 apache配置文件 httpd配置文件 apache文件目录 原创作品,允许转载,转载 ...
随机推荐
- 如何利用Visio设计一个系统的结构图
首先建立一个空的vison列表 添加图形和连接线 托选一个矩形块到操作台上,并进行底色填充 选择有向线段1拖到矩形模块上,此时有向线段1会自动吸附到矩形的中点处. 此时按下图操作即可取消,自动吸附 托 ...
- node nodemailer
需求:通过nodejs发送邮件 一般都是用nodemailer这个模块.目前有0.7和1.0两个版本,网上的很多教程和代码,大都是按照0.7写的,自己做的时候需要注意看README.md 支持的ser ...
- java web 项目启动的根目录,以及项目启动后使用的端口具体是哪一个
1.今天启动项目发现一直找不到网页,原来是自己浏览器地址的根目录出现了问题,那么系统中的根目录(也就是项目名)到底是哪个,究竟以哪个为基准? 这里有一地方不能忽视:见图片 在普通的java web项目 ...
- matlab 生成mat文件
生成MAT文件 假如你的矩阵A.B都已赋值,现在需要将A,B矩阵保存成mat格式文件,执行如下命令:save mydata A B 就会把A B矩阵数据保存在yourdata.dat文件中了 保存指定 ...
- Linq的基本用用法
Linq 的基本用法: Sort , OrderBy, Skip,Take,Where,Compare,Join,Distinct ,InsertRange 等关键词 Select用法 var sel ...
- Unity里vertexShader里压扁模型来实现比较low的阴影
只有阴影pass,请自行合并,需要指定高度,忽略深度检测,需要控制好排序,或者去掉忽略,视情况而定,最后我觉得还是shadowmap好 Shader "Custom/MeshShadow&q ...
- 程序媛计划——python爬虫
#用selenium打开百度首页 #第一次运行代码时应该在safari开发者选项中设置'allow remote automation' from selenium import webdriver ...
- leetcode 120. 三角形最小路径和 JAVA
题目: 给定一个三角形,找出自顶向下的最小路径和.每一步只能移动到下一行中相邻的结点上. 例如,给定三角形: [ [2], [3,4], [6,5,7], [4,1,8,3] ] 自顶向下的最小路径和 ...
- poj2506 Tiling
http://poj.org/problem?id=2506 题目大意:用多少种方法可以用2*1或2*2瓦片来铺一个2*n的矩形? 这是一个2*17长方形的样品. 输入是一行行的序列,每一行包含一个整 ...
- easyUI取消选中的所有行
在datagrid选择选中行进行展示后,再返回这个datagrid重新加载数据, 原来选中的数据还是保持选中状态.执行以下的方法还是如此,如图. $("#Table").datag ...