Centos7+Elasticsearch7.4.2+Kibana+IK分词+ElasticHD 安装配置以及集群搭建
Centos7+Elasticsearch7.4.2+Kibana+IK分词+ElasticHD 安装配置以及集群搭建
- 1. elasticSearch 7.4.2 安装
- 1.1 关于jdk
- 1.2 安装ES
- 2 集群的搭建
- 2.1 配置文件
- 2.2 中文分词及可视化
- 2.2.1 可视化elasticHD
- 2.2.2 可视化Kibana
- 2.2.2 中文分词
由于课程上的要求,需要做一个电影推荐系统,然后需要实现搜索功能,第一次配置分布式的小白如我还是碰到了各种各样的问题… 还是太菜,很多东西也不太懂,跌跌撞撞地实现了,以防以后要用到,在此做一个记录。
1. elasticSearch 7.4.2 安装
1.1 关于jdk
es7不需要依赖java的环境了,其中已经整合了java环境,但是应用过程中还是碰到了一些插件需要依赖java环境的情况。
用yum安装jdk:安装了默认的jdk1.8.0版本
yum install java
1.2 安装ES
基于能用命令完成的事就不去自己下载的懒人思想,还是用yum以系统服务的方式下载安装。
yum更新
yum update
在目录
/etc/yum.repos.d/
目录下创建一个名为elasticsearch.repo
的文件,内容如下:
[elasticsearch-7.x]
name=Elasticsearch repository for 7.x packages
baseurl=https://artifacts.elastic.co/packages/7.x/yum
gpgcheck=1
gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch
enabled=1
autorefresh=1
type=rpm-md
- 然后执行
sudo yum install elasticsearch
- 配置和启动ES服务器进程
/sbin/chkconfig --add elasticsearch #用于添加到开机自启动
systemctl start elasticsearch
- 测试是否成功部署 执行
curl -X GET localhost:9200
返回类似如下内容即成功
{"name" : "node-1","cluster_name" : "movies","cluster_uuid" : "tKLNYk-dTGOut-cI8CWcTA","version" : {"number" : "7.4.2","build_flavor" : "default","build_type" : "rpm","build_hash" : "2f90bbf7b93631e52bafb59b3b049cb44ec25e96","build_date" : "2019-10-28T20:40:44.881551Z","build_snapshot" : false,"lucene_version" : "8.2.0","minimum_wire_compatibility_version" : "6.8.0","minimum_index_compatibility_version" : "6.0.0-beta1"},"tagline" : "You Know, for Search"
}
2 集群的搭建
上面我们提到的安装是在一个机器上面的es部署,并且采用的默认配置。接下来的工作就是将三台服务器作为一个集群,一个是master节点另外两个是slave节点。
用的是阿里云服务器,一开始因为一些端口没有设置对外开放的问题走了很多弯路,三台机器怎么都无法互相识别,找了各种办法,后来发现三个机器是在一个网段里面的。
这里是用到的几个检测进程状态的方法:
- 查找es进程:
ps -ef | grep elastic
- 杀死某一个进程:
Kill -9 进程pid
- 查看端口监听状态:
netstat -lnpt
systemctl stop firewalld.service
停止firewall
systemctl disable firewalld.service
禁止firewall开机启动
firewall-cmd --state
查看默认防火墙状态(关闭后显示notrunning,开启后显示running)
2.1 配置文件
和其他方法不太一样,使用yum方式安装的es把配置文件放在了这个目录下/etc/elasticsearch/elasticsearch.yml
,用vim编辑:
vim /etc/elasticsearch/elasticsearch.yml
然后假设三个服务器的内网ip分别是:172.26.240.210(master)、172.26.240.223、172.26.240.220
然后master服务器的yml文件内容如下:(初始内容里面的注释就没放过来了)
cluster.name: movies #cluster名字三个服务器要一样
node.name: node-1 #节点名称
node.master: true #作为主节点
node.data: true #同时存放数据path.data: /var/lib/elasticsearch #数据路径
path.logs: /var/log/elasticsearch #日志路径network.host: 0.0.0.0 #允许所有ip访问http.port: 9200
transport.tcp.port: 9300 #不同节点的通信端口
#向两个slave服务器 单播
discovery.zen.ping.unicast.hosts: ["172.26.240.223:9300","172.26.240.220:9300"]
对于slave服务器1
cluster.name: movies #cluster名字三个服务器要一样
node.name: node-2 #节点名称
node.master: false #不作为主节点
node.data: true #存放数据path.data: /var/lib/elasticsearch #数据路径
path.logs: /var/log/elasticsearch #日志路径network.host: 0.0.0.0 #允许所有ip访问http.port: 9200
transport.tcp.port: 9300 #不同节点的通信端口
#向两个slave服务器 单播
discovery.zen.ping.unicast.hosts: ["172.26.240.210:9300"]
另外一个slave服务器与之类似。配置好了之后启动
2.2 中文分词及可视化
2.2.1 可视化elasticHD
之前采用elasticHD插件进行可视化
- 首先下载Zip压缩包 :
https://github.com/360EntSecGroup-Skylar/ElasticHD/releases/
- 修改权限:
chmod -R 777 ElasticHD
- 运行:
./ElasticHD -p 127.0.0.1:9800
出现问题:
exec: "xdg-open": executable file not found in $PATH
原因: 没有安装xdg-open
安装xdg-utils之后,xdg-open命令就可以使用了.
yum install xdg-utils
因为我是在服务器部署,在本地打ip+端口访问一直访问不了。怀疑是不是有ip访问限制。
改成./ElasticHD -p 0.0.0.0:9800
启动,再远程访问,一切正常。果然-p参数是ip访问限制。
2.2.2 可视化Kibana
后来发现es官方有出综合可视化和数据分析的工具Kibana。
安装部署在master服务器上,并开放9301端口用于节点和索引的状态查看和管理。将kibana下载并解压后,进入kibana.yml配置文件配置相关信息,允许任何人访问,且端口为9301:
server.host: "0.0.0.0"
server.port: 9301
2.2.2 中文分词
- 由于es自带的四种analyzer中不包含对中文的分词处理,对于中文的处理仅仅是简单的按字分词,最终搜索效果不佳,因此选用了流行的IK分词器针对中文进行分词。
- IK插件需要在三台服务器上分别部署。下载的版本与es的版本需要完全一致。
- 可以使用es的plugin install方法安装:
/usr/share/elasticsearch/bin/elasticsearch-plugin install https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v6..0/elasticsearch-analysis-ik-7.4.2.zip
速度实在太慢,放弃了。到ik的github网页,下载对应的版本release并解压。在es的plugin文件夹下新建ik的文件夹并将解压内容拷贝进来。
- 这里需要注意,不能直接把内容放到plugin文件夹下,要在里面创建一个ik的文件夹,把内容放进去,否则识别不了。文件结构应该为
plugin/ik/ik解压出来的各种文件
。
Centos7+Elasticsearch7.4.2+Kibana+IK分词+ElasticHD 安装配置以及集群搭建相关推荐
- docker之es+es-head+kibana+ik分词器安装
一.es 第一步:搜索 docker search elasticsearch 第二步:下载镜像 第三步:创建数据文件夹和配置文件 宿主服务器创建文件夹 mkdir -p /docker/es1/da ...
- 3.5.CentOS7下安装配置Zookeeper集群与一键启动小脚本
python编程快速上手(持续更新中-) 推荐系统基础 文章目录 python编程快速上手(持续更新中-) 推荐系统基础 一.事前准备 1.VMware下CentOS7虚拟机(三台) 2.Zookee ...
- solrloud集群的配置,zoookeeper+IK分词器+solrcloud,以及集群连接,分片管理
什么是SolrCloud SolrCloud(solr 云)是Solr提供的分布式搜索方案,当你需要大规模,容错,分布式索引和检索能力时使用 SolrCloud.当一个系统的索引数据量少的时候是不需要 ...
- citus介绍和centos7安装部署和集群搭建
文章目录 citus 简介 citus主要特性 部署 centos单节点版本部署启动 centos集群部署启动 要在所有节点上执行的步骤 要在协调器节点上执行的步骤 常用语句 遇到的问题 参考 cit ...
- CentOS7下安装配置zookeeper集群及设置开机自启
1.在做zookeeper集群之前需要有至少三台centos机器或虚拟机 一.Zookeeper原理简介 ZooKeeper是一个开放源码的分布式应用程序协调服务,它包含一个简单的原语集,分布式应用程 ...
- Elasticsearch+elasticsearch-head的安装+Kibana环境搭建+ik分词器安装
一.安装JDK1.8 二.安装ES 三个节点:master.slave01.slave02 1.这里下载的是elasticsearch-6.3.1.rpm版本包 https://www.elastic ...
- 服务器安装配置elasticsearch,kibana,IK分词器和拼音分词器,集群搭建教程
docker安装配置elasticsearch,kibana和IK分词器 elasticsearch文章系列 前置安装docker 创建docker网络 安装Elasticsearch 运行elast ...
- ik分词器安装_Elasticsearch-analysis-ik-7.4.0_Linux_安装
ik分词器安装_Elasticsearch-analysis-ik-7.4.0 文章目录 ik分词器安装_Elasticsearch-analysis-ik-7.4.0 IK分词器安装 1.环境准备 ...
- ElasticSearch IK分词器安装
2019独角兽企业重金招聘Python工程师标准>>> Elasticsearch 默认是带分词器了,对英文是按固定的英文的空格,或者"-"进行分词,但是对中文分 ...
最新文章
- 解决:No configuration found. Configuring ehcache from ehcache-failsafe.xml 问题
- 【QwQ】乱七八糟的置顶
- python字符串、列表和文件对象总结
- python判断图片模糊
- 野火开发版屏幕_盘一盘那些年我们常用的物联网开发板!
- JAVASCRIPT 提示信息 主要是使用了获取控件的位置进行定位
- 这些Windows 10隐藏秘技,你知道几个?
- springboot自动配置的原理_SpringBoot实战:详解SpringBoot自动配置原理
- C#进阶系列——一步一步封装自己的HtmlHelper组件:BootstrapHelper(三:附源码)...
- MyEclipse插件不能安装原因
- 如何用微信自动添加wifi连接服务器地址,微信服务号如何实现扫码自动连接WIFI?详细步骤介绍!...
- dos从优盘启动计算机,对老旧电脑升级很重要,教你制作纯DOS的U盘启动盘
- 原理与结构解析——智能门锁方案
- 3.2Abstraction data type
- fastboot与fastbootd介绍
- EasyCVR通过GB28181级联到紫光华智综合安防应用平台无法注册成功问题排查
- CSS的背景——颜色,图片,背景图片位置,
- python如何画散点图
- java中socket实现一对一聊天
- android禁止输入字符,Android输入框禁止输入表情符号、特殊字符
热门文章
- 盈余贝分享网赚项目的思维和观念
- 最好用的六款虚拟机软件,赶紧收藏
- makefile往tcl中传递参数
- 阿里面试题-判断是不是一个IP地址的测试用例设计(Python实现)
- Android 仿微信发送坐标,Android最新版高德地圖poi檢索仿微信發送位置
- html excel导出的路径,html 导出多个excel表格数据-如何将html页面中的表格导出到excel表格...
- Godot Shader:无需建模用一张图片在Godot中生成一座山
- 2021福建漳州高考成绩查询,2021年漳州高考成绩排名及成绩公布时间什么时候出来...
- 第七届ArcGIS暨ERDAS用户大会
- 2018手机江湖之战:OPPO的变与不变