Elasticsearch笔记四之配置参数与核心概念
在es根目录下有一个config目录,在此目录下有两个文件分别是elasticsearch.yml和logging.yml。
logging.yml是日志文件,es也是使用log4j来记录日志的,我在此文件中配置日志级别。
elasticsearch.yml是es的基本配置文件es的参数都在这个文件中,我们这里结合此文件来介绍es的核心概念和参数。
1:集群
node.master: true表示此节点有资格竞争成为主节点。
cluster.name: elasticsearch表示es集群的名称可以自行更改
discovery.zen.ping.multicast.enabled: false 集群的自动发现机制,false不启动
discovery.zen.ping.unicast.hosts: ["host1","host2:port"] 告诉从节点主节点的位置,默认是9300端口。
Es集群由多个节点组成,其中一个为主节点其他为从节点。从节点通过竞争来确定哪个是主节点,一般在集群中第一个启动的符合条件的就是主节点。主节点负责管理集群状态包括管理分片和副本的状态以及节点的增加和删除。
Es集群具有去中心化的概念,我们可以访问集群中的任何一个节点来操作整个集群,不管它是主节点还是从节点只要安装了相关插件就行。
同一个网段内的es节点会自动互相感知自动组成集群。
自动发现机制
Es是基于P2P的系统,当集群启动后会先通过广播寻找存在的节点,再通过多播协议进行节点间的通信进而自动组建es集群,同时也支持节点之间的通信。
同一网段内节点组建集群,首先启动自动发现机制另外节点的集群名称要一致
discovery.zen.ping.multicast.enabled: true
cluster.name: elasticsearch
如果不同网段的节点要组建集群首先各个节点禁用自动发现机制然后给从节点指定主节点的位置,默认是9300端口。
discovery.zen.ping.multicast.enabled: false
discovery.zen.ping.unicast.hosts: ["host1","host2:port"]
查看集群状态
浏览器:http://192.168.79.131:9200/_cluster/health?pretty
{
"cluster_name" :"shb01",
"status" :"green",
"timed_out" :false,
"number_of_nodes": 1,
"number_of_data_nodes" : 1,
"active_primary_shards" : 0,
"active_shards" :0,
"relocating_shards" : 0,
"initializing_shards" : 0,
"unassigned_shards" : 0
}
2:shards分片
index.number_of_shards: 5 分片数
Es中索引库会被拆分成多个分片,各个分片会存储在不同的节点上以提高集群的存储能力从而构成分布式的存储和分布式的查询。
通过index.number_of_shards参数指定分片数默认是5,分片数一旦指定集群启动后不能动态的修改。
3:replicas副本
index.number_of_replicas:1副本数,默认为1
当某个节点宕机或被删除后可以通过副本进行恢复,另外也可以提高查询效率分流查询实现负载均衡。分片和其副本不会被存储与同一个节点上,如果只有一个节点则没有副本。
4:持久化方式
gateway.type:local
索引的持久化方式默认是local本地方式,也可以存放在hdfs中。
/usr/local/elasticsearch-1.4.4/data/elasticsearch/nodes/0/indices/shb01/0
第一个0表示集群中的节点编号,最后一个0表示分片。我的节点上一共有0到4,共5个分片。
5:transport
交互方式,es集群与客户端使用tcp协议交互同时也支持http协议
transport.tcp.port: 9300 节点之间通信使用此端口
http.port: 9200 http请求使用9200端口
我们在启动es时可以看到es在监控这两个节点
6:recovery
数据恢复与重新分布,当有节点加入或退出时es会根据机器的负载对索引分片进行重新分配,挂了的节点在重启后也会进行恢复。
7:其他参数
node.data: true 为true表示此节点可以用来存储数据。默认true
http.enabled: false 默认不禁用http访问
http.max_content_length: 100mb 限制_bulk批处理的最大数据量。
bootstrap.mlockall: true 禁用内存交互
Elasticsearch笔记四之配置参数与核心概念的更多相关文章
- Jmeter学习笔记(四)配置元件之计数器
在接口测试中,有时候需要重复跑一个接口,里面的某个参数的值不能每次都一样,这个时候我们可以使用计数器来实现,名称+计数器. 1.线程组->添加->配置元件->计数器 2.添加效果如下 ...
- CLR via C#深解笔记四 - 方法、参数、属性
实例构造器和类(引用类型) 构造器(constructor)是允许将类型的实例初始化为良好状态的一种特殊方法.构造器方法在“方法定义元数据表”中始终叫.ctor. 创建一个引用类型的实例时: #1, ...
- nodejs学习笔记<四>处理请求参数
在web开发中处理请求参数是个非常常见的工作:nodejs提供了了querystring用来处理请求参数. querystring常用方法有:parse,stringify. (1)parse: 解析 ...
- Elasticsearch之重要核心概念(cluster(集群)、shards(分配)、replicas(索引副本)、recovery(据恢复或叫数据重新分布)、gateway(es索引的持久化存储方式)、discovery.zen(es的自动发现节点机制机制)、Transport(内部节点或集群与客户端的交互方式)、settings(修改索引库默认配置)和mappings)
Elasticsearch之重要核心概念如下: 1.cluster 代表一个集群,集群中有多个节点,其中有一个为主节点,这个主节点是可以通过选举产生的,主从节点是对于集群内部来说的.es的一个概念就是 ...
- ElasticSearch学习笔记-01 简介、安装、配置与核心概念
一.简介 ElasticSearch是一个基于Lucene构建的开源,分布式,RESTful搜索引擎.设计用于云计算中,能够达到实时搜索,稳定,可靠,快速,安装使用方便.支持通过HTTP使用JSON进 ...
- windows线程池四种情形(win核心读书笔记)
windows线程池四种情形(win核心读书笔记) Mircosoft从Windows2000引入线程池API,并在Vista后对线程池重新构架,引入新的线程池API.以下所有线程池函数均适用于Vis ...
- 痞子衡嵌入式:超级下载算法(RT-UFL)开发笔记(4) - 轮询Flash配置参数
大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是超级下载算法开发笔记(4)之轮询Flash配置参数. 文接上篇 <超级下载算法(RT-UFL)开发笔记(3) - 统一FlexSP ...
- Elasticsearch学习笔记(六)核心概念和分片shard机制
一.核心概念 1.近实时(Near Realtime NRT) (1)从写入数据到数据可以被搜索到有一个小延迟(大概1秒): (2)基于es执行搜索和分析可以达到秒级 2.集群(Cluster) 一个 ...
- kvm虚拟化学习笔记(四)之kvm虚拟机日常管理与配置
KVM虚拟化学习笔记系列文章列表----------------------------------------kvm虚拟化学习笔记(一)之kvm虚拟化环境安装http://koumm.blog.51 ...
随机推荐
- javascript语言扩展:可迭代对象(2)
在文章迭代器(1)中我们简单介绍了如何创建一个可迭代对象:出于某种考虑你可能想从可迭代对象中显式获取一个迭代器对象,这时你可以调用Iterator()函数(该函数是定义在JavaScript 1.7中 ...
- centos 7下安装python 3.6笔记
每次在centos上安装python 3都需要重新查资料,这次索性自己记下笔记. 首先安装gcc yum -y install gccyum install zlib-devel./configure ...
- VS Code python初体验笔记
之前一直都是使用Notepad++来编写Python代码,后来想起来之前查资料的时候有个VS Code可以编写一些的脚本语言(js,node.js)甚至是高级编程语言(C#,PHP,JAVA,Pyth ...
- kubernetes-dashboard(1.8.3)部署与踩坑
Kubernetes Dashboard 是一个管理Kubernetes集群的全功能Web界面,旨在以UI的方式完全替代命令行工具(kubectl 等). 目录 部署 创建用户 集成Heapster ...
- c#调用野狗云 rest api
野狗云就不多介绍了,这里主要是记录一下c#调用他们提供的rest api,把数据post到野狗云存储,直接上代码 static void Main(string[] args) { string st ...
- rcp perspective 添加9个视图均匀排列
PageLayout布局方法 pageLayout.addView("NodePMTSStream" + ":1", IPageLayout.TOP, 0.5f ...
- JMM规范
JMM规范: The rules for happens-before are: Program order rule. Each action in a thread happens-before ...
- Aptana版本回滚的方法
最近Aptana对Django1.7的编译支持有点问题,开发环境必须使用Django1.6版本,今天看了一眼它的官网,版本已经到3.6.1,我的版本还是3.4.2,就checkupdate升级到3.6 ...
- SOFA 源码分析 — 自动故障剔除
前言 集群中通常一个服务有多个服务提供者.其中部分服务提供者可能由于网络,配置,长时间 fullgc ,线程池满,硬件故障等导致长连接还存活但是程序已经无法正常响应.单机故障剔除功能会将这部分异常的服 ...
- springboot~为Money类型添加最大值和最小值的注解校验
在spring框架里,为我们集成了很多校验注解,直接在字段上添加对应的注解即可,这些注解基本都是简单保留类型的,即int,long,float,double,String等,而如果你自己封装了新的类, ...