- 查看集群状态:GET _cat/health?v
epoch timestamp cluster status node.total node.data shards pri relo init unassign pending_tasks max_task_wait_time active_shards_percent 1607766221 17:43:41 elasticsearch yellow 1 1 5 5 0 0 5 0 - 50.0%
cluster :集群名
status:状态
node.total:节点总数
node.data:节点数据
shards:节点分片
pri:脉波重复间隔
pending_tasks:挂起的任务
max_task_wait_time:最大等待时间
active_shards_percent:活动碎片百分比
查看集群的插件安装
下载链接:https://codeload.github.com/mobz/elasticsearch-head/zip/master
该插件是基于node.js的所以在之前需要node.js环境
node.js下载(linux版本):https://nodejs.org/dist/v14.15.1/node-v14.15.1-linux-x64.tar.xz
-
linux安装nodejs环境
1.解压缩xz的压缩包:xz -d node-v14.15.1-linux-x64.tar.xz
2.得到一个tar包,再次解压:tar -xvf node-v14.15.1-linux-x64.tar
3.配置nodejs环境变量:vim /etc/profile
4.使更新的配置生效:
source /etc/profile
5.测试:node -v
6.设置淘宝镜像:npm config set registry https://registry.npm.taobao.org
-
安装head插件
1.解压head:unzip elasticsearch-head-master.zip
2.下载head所需依赖:进去解压后的文件夹,执行 npm install
3.启动:npm run start
可以看懂启动日志,端口为9100,开放9100端口即可访问
此时并不能链接到自己的es,需要开启es的插件链接
4.开启es的插件链接
修改elasticsearch.yml文件添加http.cors.enabled: true http.cors.allow-origin: "*"
这两行配置,重启es即可
5.再次链接
ES集群搭建
- 准备三个节点,(是没有任何数据的)可以cp一下,将里面的data文件夹删除即可
- 调整各个jvm内存大小限制(如果你的服务器内存够大可以省略这一步)
vim node1/config/jvm.options
-
修改ES配置问文件elasticsearch.yml
cluster.name: myes
:修改多个节点集群的名字,必须一致
node.name: node-1
:修改节点的名字,不同
network.host: 0.0.0.0
:开启远程链接权限
http.port: 9201
:远程连接监听的端口,不一致
transport.tcp.port: 9301
:个节点之间通信的端口,
discovery.zen.ping.unicast.hosts: ["xxxx:9302", "xxxx:9303"]
:节点之间关联
gateway.recover_after_nodes: 3
:集群节点初始值
http.cors.enabled: true:可使用插件进行查看
http.cors.allow-origin: “*” -
分别启动三个节点
-
使用head链接其中任意一个即可
-
索引分片的分布
创建索引时,指定的副本数即为主分片的倍数,将这些副分片分布到其他节点上,其中停掉一个,还可以保证数据的完整性,当数据不完整时,即不可用,当节点再次启动时,会自动将分片数据恢复