elasticsearch_elasticsearch 问题总结

6e4f6850dc499a11fda7b79f84954fdf.png

阿里云elasticsearch试用套路

阿里云的elasticsearch可以给用户提供试用的机会,这一点还算是比较大方。
但是,并没有领取页面,你必须通过elasticsearch的购买页面来0.00元购买。
https://data.aliyun.com/product/elasticsearch
通过上面链接进入到够买页面,节点必须选择“3”,购买价格才会变成0.00元(仅新用户)!

阿里云elasticsearch白名单问题

即:通过客户端访问elasticsearch,但配置为:0.0.0.0/0 默认无效,需参照下面配置!

aa7b4fc70b5228f13113f81ce0d52db5.png

阿里云免费试用elasticsearchYAML配置开启

注意点:阿里云虽然可以领取免费的elk,但配置是比较低的,为了能顺畅体验,建议YML参数配置全部开启问题:

  1. 如果不开启自动创建索引的话,通过java、python直接PUT文档会报错哦
  2. YML参数配置需要重启,已确认重启一次至少2到4个小时(免费,所以你懂得)阿里云elasticsearch无法查询到中文结原因:倒排索引将数据分成不同的分词,用这些分词词来匹配数据查询(可能我理解的不对),
    但默认的词库没有中文相关的分词。
    解决方法:网上查找中文分词词库,并上传到阿里云的插件中(我用的是热更新)

elasticsearch无法启动

elasticsearch 出于安全考虑,不允许使用root用户启动。
解决方法:

1. 创建组elasticsearch,并在组elasticsearch下创建用户elasticsearchUser

2. elasticsearch所有目录的所有者必须是elasticsearchUser

3. 进入/elasticsearch/bin目录下,使用elasticsearchUser用户执行 ./elasticsearch 启动elasticsearch

8c076d514e91ea92ac1e50d99542cd53.png

max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]

系统级别默认的最大打开文件数太小,也可能导致elasticsearch无法启动!
解决方法:/etc/sysctl.conf 文件中最后一行添加:vm.max_map_count=655300
执行“sudo sysctl -p”使配置生效

e2069639966f768824b546ce503bf60d.png

ES日期校验导致java 或者python迁移数据到elasticsearch异常中断

场景:通过java API迁移数据时,发现经常自动中断,更换为python API迁移数据,问题同样发生,且无明显规律!
通过日志查看到每次断开时插入的最后一条数据和下一条数据,发现只要数据中包含日期,就会产生中断!
原因:在一开始设置“mapping”时,数据的类型被设置成文本类型,当数据中存在“日期类型”的数据,
ES 就会认为插入类型错误,实际上,数据就是文本类型,只不过数据中间包含了日期。
解决方案:关闭日期校验

35c04d158979e8aa6930bccc38c2021f.png

docker构建elasticsearch集群无法通过外网访问

场景:玩家A突然告诉我,通过dockerpose构建elasticsearch集群简单又方便。
于是,自己就照搬官网的构建文件“https://www.elastic.co/guide/en/elasticsearch/reference/5.6/docker.html”,
3秒钟在腾讯云构建了一个2个节点的elastic集群(正常应该要有3个节点),方便至极兴奋的跳起来了。
问题:打开浏览器验证集群:“网页无法正常访问”。
排查过程:

  1. 服务器中直接使用curl 127.0.0.1:9200 访问正常
  2. 查看防火墙,发现防火墙已关闭,排除防火墙原因
  3. 腾讯云嘛,经常玩的都懂,于是提工单,在腾讯云的帮助下,腾讯云工程师果断撇清腾讯云服务器
    (事实证明人家真没有问题,但同时也暴露一个问题:防火墙关闭、安全组也打开了9200,腾讯云
    工程师协助检查,发现9200依旧被过滤,无法访问)
  4. 反复启动多次容器,仔细查看日志
    发现一条WARNING: IPv4 forwarding is disabled. Networking will not work.
    直接粘贴“百度”发现了标准的解决方案
    更改 /etc/sysctl.conf中的“ net.ipv4.ip_forward=1”,默认其实是0.
    更改后执行“systemctl restart network”,再次启动elasticsearch则可以通过外网访

elasticsearch7.0无法创建索引常见:QQ群小伙伴反馈 创建索引报错,截图如下。

b85a90bffd67f9f5019953de95a56d6b.png


解决方案:群内大神回复,官方文档中已解释:集群最大分片数只能是1000

elasticsearch7.0 实验数据获取从哪里来

问题:要学习必须有足够的实验数据,从哪里来?
解决方法:群里面有人推荐“kaggle(https://www.kaggle.com/datasets),是一个数据网站,里面有各种各样的数据,
虽然通过官网的工具,也可以自己造数据,但要自己造数据的话,一般人能想到
在文本类型的数据中添加“日期”吗?
所以,kaggle的数据更加真实,实验的过程中能够发现更多实际问题!

阿里云mysql同步elasticsearch

解决方案:

  1. 使用阿里云DTS传输工具:https://blog.csdn.net/u010569419/article/details/89924494
  2. 通过logstash:https://www.elastic.co/cn/products/logstash
  3. 使用elasticsearch官网对应的API:https://www.elastic.co/guide/en/elasticsearch/client/java-api/current/java-docs-index.html
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值