江的福与项目(day7)

elasticsearch-head插件安装(Mac,es在虚拟机)

安装node
brew install node

git clone git://github.com/mobz/elasticsearch-head.git
cd elasticsearch-head
npm install
安装完成后在elasticsearch-head/node_modules目录下会出现grunt文件。
如果没有grunt二进制程序,需要执行

cd elasticsearch-head
npm install grunt --save
修改服务器监听地址(根据需求)
修改elasticsearch-head下Gruntfile.js文件,我不需修改(9100端口)

修改连接地址
cd elasticsearch-head/_site
vim app.js

this.base_uri = this.config.base_uri || this.prefs.get(“app-base_uri”) || “http://192.168.178.128:9200”;(这里是我虚拟机的ip及es的端口)
重新运行npm install(此处是否一定需要重新运行,尚不确定)

启动服务
elasticsearch-head/node_modules/grunt/bin/grunt server &
访问:http://localhost:9100/

解决方案:
去虚拟机
elasticsearch.yml
增加如下字段

http.cors.enabled: true
http.cors.allow-origin: “*”
重启es,并刷新head页面,发现已经可以连接上:
记得要关闭防火墙
在这里插入图片描述

es集群

分片加复制:
建索引时,将数据分别放在不同机器、不同的片上,每个机器上的主片都会在其他机器上至少有两三个复制片。(数据越分散,容错率就越高)
1、主分片(增加,删除等一些写操作)
索引中的每个文档属于一个单独的主分片,所以主分片的数量决定了索引最多能存储多少数据。
理论上主分片能存储的数据大小是没有限制的,限制取决于你实际的使用情况。分片的最大容量完全取决于你的使用状况:硬件存储的大小、文档的大小和复杂度、如何索引和查询你的文档,以及你期望的响应时间。
2、副分片(查询)
复制分片只是主分片的一个副本,它可以防止硬件故障导致的数据丢失,同时可以提供读请求,比如搜索或者从别的shard取回文档。

当索引创建完成的时候,主分片的数量就固定了,但是复制分片的数量可以随时调整。
集群中的信息,对于集群是公开的。

节点、分片、索引及三者关系

1、节点:
一个节点就是一个es的服务器,es集群中,主节点负责集群中的管理和任务的分发,一般不负责文档的增删改查。
2、片
分片是es的实际物理储存单元(一个Lucene的实例)
3、索引
索引是es的逻辑单元,一个索引一般建立在多个不同机器的分片上
4、复制片
每个机器的分片一般在其他机器上会有两到三个复制片,目的是提高数据的容错率。
5、容错
一旦集群中的某些机器发生故障,那么剩余机器会在主节点的管理下重新分配资源(分片)。
6、分片的路由。
写操作(新建,删除)只在主分片上进行,然后将结果同步到复制分片上。
sync:主分片同步给复制分片成功后,才返回结果给客户端

async:主分片在操作成功后,在同步复制分片的同时返回成功结果给客户端
读操作可以在主分片或者复制分片上。

在这里插入图片描述
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值