【零】据说ES的分布式功能做的非常强~直接贴官方翻译
Elasticsearch致力于隐藏分布式系统的复杂性。以下这些操作都是在底层自动完成的:
- 将你的文档分区到不同的容器或者分片(shards)中,它们可以存在于一个或多个节点中。
- 将分片均匀的分配到各个节点,对索引和搜索做负载均衡。
- 冗余每一个分片,防止硬件故障造成的数据丢失。
- 将集群中任意一个节点上的请求路由到相应数据所在的节点。
- 无论是增加节点,还是移除节点,分片都可以做到无缝的扩展和迁移。
【一】基本概念
- 集群(cluster)里面有多个节点(node),节点里面有多个分片(Sharding);
- 一个节点是一个ES运行实例,ES节点创建的时候确定本节点中含有的分片个数
-
索引(index) —— 一个用来指向n个分片(shards)的“逻辑命名空间(logical namespace)
- 创建索引的时候会指定需要几个主分片、要几份复制分片,默认是5+1
- 存 储:集 群 => 节点=> 分片
- 数 据:索 引=> 类型=> 文档=> 字段
- 数据库:数据库 => 表=> 行数据=> 列数据
- 分片 = 主分片+复制分片,二者不再同一个节点上
【二】搭建集群环境
查看集群状态
curl -XGET http://ip:9200/_cluster/health?pretty { "cluster_name" : "my-es-cluster", "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,#未分配到具体节点上的分片数 "delayed_unassigned_shards" : 0, "number_of_pending_tasks" : 0, "number_of_in_flight_fetch" : 0, "task_max_waiting_in_queue_millis" : 0, "active_shards_percent_as_number" : 100.0 }
集群状态有三种颜色取值:green(所有主要分片和复制分片都可用)、yellow(所有主要分片可用,但不是所有复制分片都可用)、 red(不是主要的所有分区都能用)
配置一个集群
1、修改elasticsearch配置文件
sudo vim elasticsearch/config/elasticsearch.yml
2、修改指定项
#集群名字一样 cluster.name: my-es-cluster #节点名字不一样 node.name: node-2 #节点ip,根据自己的机器来 network.host: 10.xx.xx.xxx #节点对外端口,不同的节点不一样,注意范围9200~9300 http.port: 9202 #默认寻找集群节点 discovery.zen.ping.unicast.hosts: ["10.xx.xx.xxx:9300"]
3、启动&检查
./elasticsearch_1/bin/elasticsearch & ./elasticsearch_2/bin/elasticsearch & ./elasticsearch_3/bin/elasticsearch &
PUT /blogs { "settings" : { "number_of_shards" : 3,#本索引需要3个主分片 "number_of_replicas" : 1#每个主分片需要1个复制分片 } }
集群配置文件详解
http://www.cnblogs.com/hdflzh/p/4103226.html
http://www.cnblogs.com/yjf512/p/4865930.html
【三】集群管理
1、集群原始正常状态
2、集群丢失节点
3、集群自我修复
4、集群的增加节点也是同样的道理咯
相关推荐
ElasticSearch安装与基本使用
相关推荐
ElasticSearch集群配置文件 其他节点只需要修改以下内容: 1. node.name: es-node1 --节点名称不能一样 2. http.port: 8081 --节点端口 3. transport.port: 8090 --节点间通信端口 4. discovery.seed_hosts: --集群...
springboot 2.0.2集成elasticsearch5.5.1,并使用集群模式,亲测可用!!!
elasticsearch集群简单搭建
Elasticsearch集群安装配置
开箱即用,简单粗暴...我们本机启动两个es实例,也就是两个node节点,默认集群名称是elasticsearch,所以他会自动将这两个node凑成一个集群,我们什么都不用配置,它自动发现。shard负载均衡假设我们有1个index,
本文档主要以Elasticsearch6.6.2为版本,以Centos7.6为操作系统,详细讲解了ES的集群部署和配置,该文档也支持其他ES其他版本部署配置。原创作者:永远的SSS
ElasticSearch集群部署方式及社会公共信息系统配置文件中es相关参数的修改
我们建立一个网站或应用程序,并要添加搜索功能,但是想要完成搜索工作的创建是非常困难的。我们希望搜索解决方案要运行速度快,我们希望能...因此我们利用Elasticsearch来解决所有这些问题及可能出现的更多其它问题。
该安装包实现利用给定参数安装单机版或者集群版es数据库,指定参数后安装过程全自动,自动修改系统内核,配置jdk,自动识别并配置内存,自动根据节点数配置集群脑溢节点配置数。涉及到以下操作 1、自动检测配置java...
主要介绍elasticsearch6.4.2集群安装配置,包括相关插件的安装以及服务的启停和测试
根据研究和咨询公司大佬 本人搭建的生产环境运行的es集群配置文件,版本6.5.4,操作系统是CentOS7.6 3台es做成的集群,亲测可用。 只需要更改集群名称和每台节点的名称即可使用。
8.2.8 SpringBoot整合elasticsearch集群 Spring 是最受欢迎的企业级 Java 应用程序开发框架,数以百万的来自世界各地的开发人员使用 Spring 框架来创建性能好、易于测试、可重用的代码。Spring Boot是由Pivotal团队...
ELasticsearch的集群是由多个节点组成的,通过cluster.name设置集群名称,并且用于区分其它的集群,每个节点通过node.name指定节点的名称。 在Elasticsearch中,节点的类型主要有4种: master节点: 配置文件中node...
一键部署工具实现功能如下: 1、支持单节点部署 2、支持伪集群部署 3、支持分布式集群部署 ...5、支持集群名称、数据目录、...说明:工具使用非常简单,只需要修改变量文件,一分钟就可以快速帮你部署elasticsearch集群。
Elasticsearch集群部署及kibana安装笔记Elasticsearch集群部署部署步骤1. 使用root账户创建用户2. 上次相关安装包3. 安装java(如已经安装,可不需要重复)4. 安装ES5. JVM 配置6. 修改系统配置7. 启动elasticsearch...
快速搭建elasticsearch6.5.4集群和Head插件,elasticsearch分别在window、linux的系统的安装部署教程,以及相关安装包,该踩得坑一一踏平。
# 集群的名称 cluster.name: rick # 节点名称 node.name: rick node.master: true node.data: false network.bind_host: 192.168.1.24 network.host: 192.168.1.25 http.port: 9200 transport.tcp.port: 9300 ...
ElasticSearch7.2.1+SearchGuard+ KerBeros+Kibana 集群测试环境部署文档,全网首发,网上能找到的都没有带上kerberos这种环境的,本文档包含了4大件ElasticSearch、SearchGuard、KerBeros、Kibana,谢谢下载
prometheus-es-exporter, Prometheus Elasticsearch导出程序 Elasticsearch导出程序这个普罗米修斯出口商从运行在Elasticsearch数据上的查询收集指标,并收集关于集群本身的度量。查询度量出口商定期对Elasticsearch...
一键部署工具实现功能如下: 1、支持单节点部署 2、支持伪集群部署 3、支持分布式集群部署 4、支持集群名称、数据目录、...说明:工具使用非常简单,只需要修改变量文件,一分钟就可以快速帮你部署elasticsearch集群。