ElasticSearch+ElasticSearch的搜房网实战(在windows搭建的es分布式环境)

可以参考windows环境下ElasticSearch5以上版本安装head插件  两个重点的链接!!!!

点击打开链接                点击打开链接   

es的elasticsearch.yml文件的配置(在elasticsearch.yml中添加下面的如下的配置)

master配置如下

http.cors.enabled: true
http.cors.allow-origin: "*"

cluster.name: wanan
node.name: master
node.master: true
network.host: 127.0.0.1
http.port: 9200   #服务端口号,在同一机器下必须不一样  
discovery.zen.ping.unicast.hosts: ["127.0.0.1:9200","127.0.0.1:9201"]  

slave1的配置如下:

http.cors.enabled: true
http.cors.allow-origin: "*"

cluster.name: wanan
node.name: slave1

network.host: 127.0.0.1
http.port: 9201   #服务端口号,在同一机器下必须不一样  

discovery.zen.ping.unicast.hosts: ["127.0.0.1"]  

slave2的配置如下:

http.cors.enabled: true
http.cors.allow-origin: "*"

cluster.name: wanan
node.name: slave2

network.host: 127.0.0.1
http.port: 9202   #服务端口号,在同一机器下必须不一样  

discovery.zen.ping.unicast.hosts: ["127.0.0.1"]  


        

es和head插件分属于两个不同的东西,两个东西的访问时有跨域的问题,需要有跨域问题的一些配置。

elasticsearch-5.6.5\config\elasticsearch.yml的配置

master的配置

http.cors.enabled: true 
http.cors.allow-origin: "*"

cluster.name: wanan
node.name: master
node.master: true
network.host: 0.0.0.0

[2018-06-15T00:11:55,630][INFO ][o.e.t.TransportService   ] [master] publish_address {192.168.1.114:9300}, bound_addresses {192.168.1.114:9300}
[2018-06-15T00:11:55,642][INFO ][o.e.b.BootstrapChecks    ] [master] bound or publishing to a non-loopback or non-link-local address, enforcing bootstrap checks
[2018-06-15T00:11:58,725][INFO ][o.e.c.s.ClusterService   ] [master] new_master {master}{yki9TDhwQoyuqZjyVGfr0A}{iA-LDjLuTra_Yc9pZeOOtg}{192.168.1.114}{192.168.1.114:9300}, reason: zen-disco-elected-as-master ([0] nodes joined)
[2018-06-15T00:11:58,778][INFO ][o.e.h.n.Netty4HttpServerTransport] [master] publish_address {192.168.1.114:9200}, bound_addresses {192.168.1.114:9200}
[2018-06-15T00:11:58,793][INFO ][o.e.n.Node               ] [master] started
[2018-06-15T00:11:58,825][INFO ][o.e.g.GatewayService     ] [master] recovered [0] indices into cluster_state

[2018-06-15T00:13:48,336][INFO ][o.e.t.TransportService   ] [master] publish_address {192.168.1.114:9300}, bound_addresses {[::]:9300}
[2018-06-15T00:13:48,349][INFO ][o.e.b.BootstrapChecks    ] [master] bound or publishing to a non-loopback or non-link-local address, enforcing bootstrap checks
[2018-06-15T00:13:51,490][INFO ][o.e.c.s.ClusterService   ] [master] new_master {master}{yki9TDhwQoyuqZjyVGfr0A}{PciM4mRaTNGPGBVJUi3XNQ}{192.168.1.114}{192.168.1.114:9300}, reason: zen-disco-elected-as-master ([0] nodes joined)
[2018-06-15T00:13:51,572][INFO ][o.e.g.GatewayService     ] [master] recovered [0] indices into cluster_state
[2018-06-15T00:13:52,797][INFO ][o.e.h.n.Netty4HttpServerTransport] [master] publish_address {192.168.1.114:9200}, bound_addresses {[::]:9200}
[2018-06-15T00:13:52,798][INFO ][o.e.n.Node               ] [master] started

es的索引创建(利用postman这个工具)

postman中 post 方式 192.168.56.1:9200/people

body中填写以下json数据

{
	"settings":{
		"number_of_shards": 3,
		"number_of_replicas": 1
	},
	"mappings":{
		"man":{
			"properties": {
				"name": {
					"type": "text"
				},
				"country": {
					"type": "keyword"
				},
				"age": {
					"type": "integer"
				},
				"date": {
					"type": "date",
					"format":"yyyy-MM-dd HH:mm:ss||yyyy-MM-dd"
				}
			}
		},
		"women": {
		}
	}
}

es的插入

postman中 post 方式 192.168.56.1:9200/people

body中填写以下json数据

{
	"name":"wanan2",
	"country":"china",
	"age":30,
	"date":"1995-07-27"
}

es的修改

postman中 post 方式 192.168.56.1:9200/people/man/1/_update

body中填写以下json数据

api方式

{
	"doc" :{
		"name":"xiaohuamao"
	}
}
脚本方式
{
	"script":{
		"lang":"painless",
		"inline":"ctx._source.age += 10"
	}
}

es的删除

删除一个文档

postman中 delete 方式 192.168.56.1:9200/people/man/1

删除一个索引


es的查询

postman中 post 方式 192.168.56.1:9200/people/man/1/_update

192.168.56.1:9200/people/man/AWQHn-88cR5y_omfKHEn (单条记录查询)

192.168.56.1:9200/people/man(多条记录查询)配合下面的body语句使用


报错with the same id but is a different node instance解决办法

然后百度发现问题,是因为复制虚拟机时,elsticsearch时,将elsticsearch文件夹下的data文件夹一并复制了。而在前面测试时,data文件夹下已经产生了data数据,于是报上面的错误。

解决办法:删除elsticsearch文件夹下的data文件夹下的节点数据

binggo!

习惯:先把错误粘贴下来到edit-plus中然后分析问题的关键字,然后再百度


  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

_bukesiyi

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值