需要安装好1.8以上的jdk且版本统一
不建议使用root用户操作。我们使用新建的hadoop用户来操作(略)
1 基础环境
192.168.8.108
192.168.8.109
192.168.8.110
centos jdk1.8
将elasticsearch-7.2.0-linux-x86_64.tar.gz 解压放在/opt/es目录下(位置随意)
假设我们把108作为master,其他为slave
启动es可能会报max virtual memory areas vm.max_map_count [65530] likely too low, increase to at least [262144] 之类的错误。 这是本机设置问题
将当前用户切换到root
ulimit -Hn 查看硬限制(修改了可能需要退出重新登录才能看见变化)
打开limits.conf
vim /etc/security/limits.conf
添加
hadoop soft nofile 65536
hadoop hard nofile 65536
保存再打开
vim /etc/sysctl.conf
添加下面配置:
vm.max_map_count=655360
并执行命令:
sysctl -p
切换成hadoop 就可以运行es了
(启动的时候可能会因为权限的问题无法运行es,显示accessdeniedexception之类的异常,需要 chmod -R 777 es解压目录来赋予权限)
此时每个es都应该可以单独正常运行
2 集群搭建
注:集群需要cluster.name名字一样,node.name名字不一样
修改192.168.8.108作为master的配置文件 在config/elasticsearch/yml修改
cluster.name: "es_cluster"
node.name: master
network.host: 192.168.8.108
http.port: 9200
transport.tcp.port: 9300
# 是否可以成为master节点
node.master: true
# # 是否允许该节点存储数据,默认开启
node.data: true
# 支持跨域访问
http.cors.enabled: true
http.cors.allow-origin: "*"
cluster.initial_master_nodes: ["192.168.8.108"]
修改192.168.8.109 slave节点的配置
cluster.name: "es_cluster"
node.name: slave1
network.host: 192.168.8.109
http.port: 9200
# 是否可以成为master节点
node.master: false
# # 是否允许该节点存储数据,默认开启
node.data: true
http.cors.enabled: true
http.cors.allow-origin: "*"
discovery.seed_hosts: ["192.168.8.108:9300"]
配置192.168.8.110slave2的配置和上面差不多。只需要node.name: slave2,
network.host: 192.168.8.110 就可以了
此时启动三个es就会自动加入集群了。(注意下防火墙之类的。如果启动的时候报无法加入的问题,试着把主从的data目录下的东西删除试试)
效果图(我已经安装好了插件)
3 插件安装
head plugin可视化插件
https://github.com/mobz/elasticsearch-head#running-with-built-in-server
es5以上head就不支持插件安装了。需要nodejs安装成一个独立的9100端口的服务。我这里就采用chrome浏览器的插件。
中文分词插件
es7.2有个自带的smartch 拆分力度太大。没有ik好用
https://www.elastic.co/guide/en/elasticsearch/plugins/current/analysis-smartcn.html
下载ik分词器,解压到每个节点的plugin下面。如图
启动的时候也会提示正在加载ik插件
https://github.com/medcl/elasticsearch-analysis-ik/releases
通过如下的方式测试分词
与此同时,在创建索引的时候需要执行分词类型如下
4 其他组件安装
kibana安装
https://www.elastic.co/cn/downloads/kibana 下载符合版本的kibana 我的是7.2
解压,打开config下的kibana.yml 配置文件
默认端口是5601。修改server.host为本机ip。elasticsearch.hosts修改为监控的es路径
#server.port: 5601
server.host: "192.168.8.108"
server.name: "yourkibana"
elasticsearch.hosts: ["http://192.168.8.108:9200"]
之后运行bin下面的kibana 即可启动 。
参考
https://blog.csdn.net/zereao/article/details/89373246 Elasticsearch入门(三):Elasticsearch 7.0.0 集群搭建
https://wiki.shileizcc.com/confluence/pages/viewpage.action?pageId=50593990
Elasticsearch 技术解析与实战
https://github.com/mobz/elasticsearch-head#running-with-built-in-server mobz/elasticsearch-head
https://github.com/medcl/elasticsearch-analysis-ik/releases
medcl/elasticsearch-analysis-ik
————————————————
版权声明:本文为CSDN博主「方元之外」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/fangyuandoit/article/details/95235036