ElasticStack ES集群, 路由,别名 笔记

ES集群, 路由,别名

节点类型:

1.master node (master-eligible node) 主节点,管理节点分片(默认都是),监视子节点状态
在elasticsearch.yml 中配置: node.master:true  表示当前节点可作为主节点备选节点

2.data node 数据节点,可以保存分片数据, 每个节点不做任何配置默认都是datanode
 配置 node.data:false 则表示当前节点可不存数据,(只作为主节点)
3.ingest node   用于预处理操作  node.ingest:false 关闭
4.coordination node   协调节点 , 此模式不可关闭, 即所有节点都是这种节点
5.maching learning node 用于机器学习的节点

总结	:一个ES节点可以承担多种节点角色

数据写入

1.主分片在每个节点只有一份
2.主分片数不可改
3.副分片数可随时改动,运行时通过 put index/_settings  来修改

服务发现

1. 7.0以前用的zendiscover来发现集群
2. 新节点要加入集群, 会连接配置文件中 种子节点列表的节点,连接上之后,种子节点会把自身知道的其他种子列表发给新节点,新节点会继续连接新的种子节点,
discovery.seed_hosts=["192.168.0.3","192.168.0.4"], 最好包含一个master-eligible node
3. 直到找到masternode为止
4. 如果集群内出现脑裂(网络问题..出现多个主节点),由集群自己控制处理(在7.0以前,可以配置discovery.zen.minimum_master_nodes=n   来控制集群数少于这个值则不会产生主节点)

节点停用

put _cluster/settings
{
	"transient":{
		"cluster.routing.allocation.exclude._name":"node-1"   #通过节点name
	},
	"transient":{
		"cluster.routing.allocation.exclude._ip" :"192.168.2.5"   #通过节点ip
	}
}

影响ES性能的主要因素是堆内存大小, 一般1G内存对应20个分片,每个分片硬盘大小20-40G, 不要超过50G, 否则性能急剧下降


_cluster/_healty?pretty  查看集群健康情况
_cat/shards/索引名?pretty 分片查看
索引名/_search_shards?pretty  显示查询在哪些节点哪些分片
索引名/_search_shards?pretty&routing=1 指定routing后h

不使用ES默认路由, 自定义路由key,减少查询时扫描shards的个数,提高效率

put 索引名/_doc/a?routing=key1
get 索引名/_doc/a?routing=key1

索引加别名 --相当于sql的视图
索引与别名是多对多关系

#创建别名
put /index名
{
	"aliases":{
		"index1":{
			"filter":{
				"term":{
					
				}
			}
		}
	}
}
put /index名/_alias/别名名称   #给已存在的index加别名
{
	"filter":{
				"term":{
					
				}
			}
}

#删除别名
delete /index名/_alias/别名名称

get _cat/aliases  #获取ES中所有别名

#使用别名
get 别名/_search  #与直接查index方式相同

别名可以与routing 结合使用

_rollover接口 滚动存储,索引满足指定条件后会创建新索引替换老索引, 索引的别名不变

put /indexa-1    要想使用滚动,索引名必须数字结尾, 
{
	"aliases":{
		"aaa":{}
	}
}
put /aaa/_rollover     滚动后的索引名,会保留前缀部分,而累加后面的数字并补齐6位
{  
	"conditions":{
		"max_age":15,   #存活时间达到15天
		"max_docs":10000   #文档数超过10000
		"max_size":"4gb"   #索引大小超4g
	}
}

还有其他一堆接口
在这里插入图片描述

_split  主分片分裂,在新索引的基础上对旧索引进行分裂,分裂前需要先blocks.write:true 把写入操作阻塞,分裂后再解除
_shrink 缩减分片,也是创建新索引
_reindex 索引copy,把旧索引内容copy到新索引
ES的缓存形式:节点查询缓存/分片请求缓存/text fieldata
_refresh 主动刷新,强制刷新落盘
_cache接口  清除缓存
_stats 服务状态
_segments 数据在lucene底层分片情况
_shards_stores 查询索引分片的情况
_count 查询索引文档总数
_msearch/_bulk/_mget  批量查询,批量增删改,批量搜索
_validate 在不执行查询的情况下, 评估一个查询是否可以正常运行
_field_caps 检查某个字段支持的方法
ILM
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值