前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >ES集群搭建「建议收藏」

ES集群搭建「建议收藏」

作者头像
全栈程序员站长
发布2022-11-08 15:09:28
4690
发布2022-11-08 15:09:28
举报
文章被收录于专栏:全栈程序员必看

大家好,又见面了,我是你们的朋友全栈君。

1.设置内核参数:/etc/sysctl.conf

代码语言:javascript
复制
vm.max_map_count=655360

2.设置文件描述符限制: /etc/security/limits.conf

代码语言:javascript
复制
* soft nofile 65536
* hard nofile 131072
* soft nproc 2048
* hard nproc 4096

&&1和2的配置,可以等到启动时候报错,再修改(可以清晰地知道1、2在处理什么问题)

3.es不允许root用户启动,修改用户和分组

代码语言:javascript
复制
chown user1 es/ -R
chgrp group1 es/ -R

4.集群配置; es/config/elasticsearch.yml 将一个节点配置ik分词器后,启动正常,复制节点node2\node3,修改下述配置

代码语言:javascript
复制
#集群名称
cluster.name: cluster-es
#节点名称
node.name: node-3
#数据存储路径
path.data: /opt/es-cluster/node3/data
#日志存储路径
path.logs: /opt/es-cluster/node3/logs
#绑定的ip地址(“0.0.0.0”说明都可以访问)
network.host: 0.0.0.0
#对外服务的http端口
http.port: 9203
#节点间交互的tcp端口,默认是9300
transport.tcp.port: 9303
#节点列表
discovery.zen.ping.unicast.hosts: ["192.168.0.109:9301", "192.168.0.109:9302","192.168.0.109:9303"]
#至少两个节点在线
discovery.zen.minimum_master_nodes: 2
#接入es-head插件
http.cors.enabled: true
http.cors.allow-origin: "*"

5. jvm参数调整:结合服务器的内存情况

代码语言:javascript
复制
-Xms256m -Xmx256m -Xss128m

6. ik中文分词器

代码语言:javascript
复制
wget https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v6.2.1/elasticsearch-analysis-ik-6.2.1.zip

解压后的文件放入(不是加压的文件夹,是解压文件夹里面的文件,如果没有ik文件,手动创建)es/plugins/ik 校验ik分词器 (curl执行一直编码错误,惭愧惭愧)

代码语言:javascript
复制
url-Post:http://124.71.80.133:9201/_analyze
body {"text": "中华人民共和国"}
body {"analyzer": "ik_max_word","text": "中华人民共和国"}

7. es-head插件安装(自行百度,找最简单的) – 可以是浏览器安装插件 – 安装es-head插件 – 编写后台启动脚本:

代码语言:javascript
复制
 nohup npm run start >nohup.out 2>&1 &

(可以参考博客:https://www.cnblogs.com/keystone/p/13266528.html)

··········复制节点步骤省略描述 >.>

8. 检测集群安装情况(建议:单个节点的ik安装成功后,再配置集群)

代码语言:javascript
复制
wget http://192.168.0.109:9201/_cat/nodes?pretty

9. 编写一个集群启动脚本(可以优化:建议思路-获取上个执行结果pid,利用kill -9 pid干掉)

代码语言:javascript
复制
#!/bin/sh
/opt/es-cluster/node1/bin/elasticsearch -d
echo 'node1启动成功...'
/opt/es-cluster/node2/bin/elasticsearch -d
echo 'node2启动成功...'
/opt/es-cluster/node3/bin/elasticsearch -d
echo 'node3启动成功...'

10. 特别注意:如果是微服务整合ES-starter,在安装ES之前,一定要查看项目版本中微服务版本号,根据官网推荐安装合适的ES版本,避免出现兼容问题。

代码语言:javascript
复制
官网地址:https://docs.spring.io/springdata/elasticsearch/docs/4.2.3/reference/html/#preface.requirements
版本列表目录:3.1版本

11.微服务整合有两种方式

> 使用Jest整合

> 使用官网的ES-starter(需要版本兼容)

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/182353.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022年10月13日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
Elasticsearch Service
腾讯云 Elasticsearch Service(ES)是云端全托管海量数据检索分析服务,拥有高性能自研内核,集成X-Pack。ES 支持通过自治索引、存算分离、集群巡检等特性轻松管理集群,也支持免运维、自动弹性、按需使用的 Serverless 模式。使用 ES 您可以高效构建信息检索、日志分析、运维监控等服务,它独特的向量检索还可助您构建基于语义、图像的AI深度应用。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档