暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

Elasticsearch的介绍与安装

码酱 2020-08-16
342
面对复杂的搜索业务和数据量,使用传统数据库搜索就显得力不从心,一般我们都会使用全文检索技术,比如Solr,Elasticsearch
今天我们要谈的就是其中之一的Elasticsearch
Elastic官网https://www.elastic.co/cn/



如上所述,Elasticsearch具备以下特点:

  • 分布式,无需人工搭建集群(solr就需要人为配置,使用Zookeeper作为注册中心)

  • Restful风格,一切API都遵循Rest原则,容易上手

  • 近实时搜索,数据更新在Elasticsearch中几乎是完全同步的。

安装与配置

为了模拟真实场景,在linux下安装Elasticsearch。出于安全考虑,elasticsearch默认不允许以root账号运行。
useradd diku #创建用户diku
passwd diku #设置密码
su - diku #切换到diku用户
复制
上传安装包解压

       解压缩并重命名

tar -zxvf elasticsearch-6.3.0.tar.gz 
mv elasticsearch-6.3.0 elasticsearc
复制

        查看目录结构

        修改配置

进入config目录

1.Elasticsearch基于Lucene的,而Lucene底层是java实现,因此我们需要配置jvm参数。vim jvm.options 默认配置为-Xms1g -Xmx1g内存占用太多,我们调整为512m。

2.修改数据和日志目录。vim elasticsearch.yml。

path.data: /home/diku/elasticsearch/data # 数据目录位置
path.logs: /home/diku/elasticsearch/logs # 日志目录位置
复制

把data和logs目录修改指向了elasticsearch的安装目录。但是data目录并不存在,因此需要创建出来。进入elasticsearch的根目录,然后创建:mkdir data。

修改绑定ip,默认只允许本机访问,修改为0.0.0.0后则可以远程访问。


使用root账户登录,vim /etc/security/limits.conf赋予权限

* soft nofile 65536
* hard nofile 131072
* soft nproc 4096
* hard nproc 4096
复制

启动

可以看到绑定了两个端口:

  • 9300:集群节点间通讯接口

  • 9200:客户端访问接口

防火墙放行端口

firewall-cmd --add-port=9200/tcp --permanent  增加端口号
firewall-cmd –reload   重启防火墙
复制

浏览器访问

安装kibana

Kibana是一个基于Node.js的Elasticsearch索引库数据统计工具,可以利用Elasticsearch的聚合功能,生成各种图表,如柱形图,线状图,饼图等。而且还提供了操作Elasticsearch索引数据的控制台,并且提供了一定的API提示,非常有利于我们学习Elasticsearch的语法。
因为Kibana依赖于node,我的虚拟机没有安装node,而window中安装过。所以在window下使用kibana。版本与elasticsearch保持一致,也是6.3.0。


进入安装目录下的config目录,修改kibana.yml文件,修改elasticsearch服务器的地址:

elasticsearch.url: "http://192.168.9.120:9200"
复制


进入安装目录下的bin目录,双击kibana.bat

监听端口为5601,浏览器访问http://127.0.0.1:5601

安装ik分词器

解压到Elasticsearch目录的plugins目录中

unzip elasticsearch-analysis-ik-6.3.0.zip -d ik-analyzer
复制

然后重启elasticsearch:

测试:在kibana控制台输入下面的请求:

POST _analyze
{
"analyzer": "ik_max_word",
"text": "我是中国人"
}
复制

运行结果


文章转载自码酱,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论