elasticsearch分布式环境搭建

Elasticsearch 环境搭建

elasticsearch端口:
9200:用于外部通讯,基于http协议,程序与es的通信使用9200端口。
9300:jar之间就是通过tcp协议通信,遵循tcp协议,es集群中的节点之间通过9300端口进行通信。

windows环境下安装es分布式环境:版本为:6.5.1
网址为:https://www.elastic.co/downloads/past-releases
下载解压包,解压三次,分别命名为如下名称:
在这里插入图片描述
1.修改配置
1)主节点master:
在elasticsearch-6.5.1-master\config 下的elasticsearch.yml 文件,在底部追加如下内容:

cluster.name: tom-test     #集群名称
node.name: master           #节点 ID,保证唯一
node.master: true           #标记是否为主节点
network.host: 127.0.0.1     #对外公开的 IP 地址,如果自动识别配置为 0.0.0.0

2)slave1节点:
对应的在elasticsearch.yml文件底部追加如下内容:

cluster.name: tom-test #集群名称三个节点保持一致
node.name: slave-1 #从节点ID,保证唯一
network.host: 127.0.0.1 #对外公开的IP 地址,如果自动识别配置为0.0.0.0
http.port: 8200 #默认端口为9200,因为我的环境是在同一台机器,因此,指定服务端口号
discovery.zen.ping.unicast.hosts: ["127.0.0.1"] #集群的IP组,配置主节点IP 即可

3)slave2节点:

cluster.name: tom-test #集群名称三个节点保持一致
node.name: slave-2 #从节点ID,保证唯一
network.host: 127.0.0.1 #对外公开的IP 地址,如果自动识别配置为0.0.0.0
http.port: 8000 #默认端口为9200,因为我的环境是在同一台机器,因此,指定服务端口号
discovery.zen.ping.unicast.hosts: ["127.0.0.1"] #集群的IP 组,配置主节点IP 即可

【注】:配置yml文件中的":"后要空一格

2.启动elasticsearch:

依次执行bin/elasticsearch.bat文件启动
【注】可通过在elasticsearch.bat文件中 title=“es-master”; 来区别cmd窗口的名称

3.可视化插件安装
1)下载NodeJS 环境:
https://nodejs.org/en/download/
2)安装NodeJS
运行node-v8.11.3-x64.msi 之后,cmd中输入node -v 检查node 是否安装成功。
3)安装grunt
在node安装路径下,使用命令安装:npm install -g grunt-cli 安装grunt。
安装结束后,使用命令grunt -version查看是否安装成功

4)安装elasticsearch-head插件

  1. https://github.com/mobz/elasticsearch-head,下载zip包
    解压:D:\elk\elasticsearch-head-master

  2. 安装pathomjs:
    需在D:\elk\elasticsearch-head-master 下进入cmd中使用命令npm install安装pathomjs

  3. 修改master 节点的跨域配置,在elasticsearch.yml 中追加以下内容。

http.cors.enabled: true #允许跨域
http.cors.allow-origin: "*"
  1. 使用命令npm start启用服务:在head-master安装路径下使用命令npm run start
    在这里插入图片描述
  2. 浏览器访问效果如下:http://localhost:9100/
    注:图片是已经创建了索引的效果图
    在这里插入图片描述
    Cerebro 的安装
    下载地址:https://github.com/lmenezes/cerebro/releases

elasticsearch基础及其使用

1.ES基本概念

  • 集群与节点:一个集群由由多个若干节点组成,节点类似于一个提供数据的服务
  • 索引: 含有相同属性的文档集合,类似于(database)
  • 类型Type: 索引可以定义一个或多个类型,文档必须属于一个类型;类似于(table)
  • 文档:文档是可以被索引的基本数据单元; 类似于 (row)
  • 分片:每个索引都有多个分片,每个分片是一个Lucene 索引。
  • 备份:拷贝一份分片就完成了分片的备份。
    【注】索引创建后就不能修改分片的数量了,而备份是可以动态修改的

2.数据类型

核心类型 字符串类型 string,text,keyword

整数类型 integer,long,short,byte
浮点类型 double,float,half_float,scaled_float
逻辑类型 boolean
日期类型 date
范围类型 range
二进制类型 binary
复合类型 数组类型 array
对象类型 object

3.ES基本使用
es是以RESTFul风格来命名API的,其API的基本格式如下:
【1】http://ip:port/<索引>/<类型>/<文档id>
该格式从es7.0.0开始,移除Type(类型)这个概念,新的基本格式如下:
【2】http://ip:port/<索引>/_doc/<文档id>
Type(类型)字段那里变为固定值 _doc
常用的http方法: GET/PUT/POST/DELETE

4.索引的相关操作
参考博客:https://www.cnblogs.com/hong-fithing/p/11221020.html (操作)
参考博客:https://www.jianshu.com/p/8a0df3bf068d (返回字段定义)

  • 索引的创建
    通过elasticsearch-head可视化工具创建或者postman来创建
    head插件创建:非结构化索引和结构化索引:
    在这里插入图片描述
    【注】“mappings”: { },为空即为非结构化的索引:即book就是非结构化的索引
    在这里插入图片描述
    5.Api操作
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值