ElasticSearch5.6.1 + 中文分词(IK)
在安装ElasticSearch 需要先安装java 的 jdk
可以通过 命令来确认是否已经安装了
java -version
如果没有安装可以使用 yum 直接安装通过。
先通过命令查看yum源中的 jdk版本
yum list |grep java |grep jdk
然后通过yum安装
yum install -y java-1.8.0-openjdk
ElasticSearch安装
官网:https://www.elastic.co
1.ElasticSearch安装
1.1.下载tar包安装
wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-5.6.1.tar.gz tar -xzf elasticsearch-5.6.1.tar.gz
1.2.配置
先将解压后的目录文件移动到 /usr/share/elasticsearch 目录
mkdir /usr/share/elasticsearch #建立目录 mv ./elasticsearch-5.6.1/* /usr/share/elasticsearch/ 移动目录
进入config
cd /usr/share/elasticsearch/config
先配置 jvm.options
vim ./jvm.options
有一项
-Xms2g
-Xmx2g
这个设置 因为是虚拟机所以设置小一点 如下:
设置外网访问
vim elasticsearch.yml
如图 设置箭头的两个设置 为 0.0.0.0
1.3.启动
cd /usr/share/elasticsearch/config
./elasticsearch
发现启动失败
因为elasticsearch默认是不允许通过root用户启动的
解决方式建立一个es用户 通过es用户启动
useradd es passwod es #设置密码 cd /usr/share/ chown -Rf es:es ./elasticsearch #设置所属用户 su es #切换用户 ./elasticsearch/bin/elasticsearch
启动还是失败
错误提示:
解决方式
切换回root用户设置limits.conf 和 sysctl.conf
这两个配置
vim /etc/security/limits.conf
在加入
* soft nofile 65536 * hard nofile 131072 * soft nproc 2048 * hard nproc 4096
编辑sysctl.conf
vim /etc/sysctl.conf
在最后加入
vm.max_map_count=262144
再次切换回es用户 启动 -d 标示后台运行
su es
/usr/share/elasticsearch/bin/elasticsearch -d
启动后访问curl localhost:9200 得到
{
"name" : "kfxmWFv",
"cluster_name" : "my-application",
"cluster_uuid" : "K04PdttQSpm1XCLRJIJXsA",
"version" : {
"number" : "5.6.1",
"build_hash" : "667b497",
"build_date" : "2017-09-14T19:22:05.189Z",
"build_snapshot" : false,
"lucene_version" : "6.6.1"
},
"tagline" : "You Know, for Search"
}
2 安装ik中文分词插件
2.1es5.5.1已上可以直接通过命令就可以安装了
/usr/share/elasticsearch/bin/elasticsearch-plugin install https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v5.6.1/elasticsearch-analysis-ik-5.6.1.zip
重新启动 es 在安装时es是要关闭的。
2.2 将ik 插件 安装到 ElasticSearch中
创建索引m8:为索引(m8)及类型(logs)下的字段(message)设置分词器(分词器可选ik_smart或ik_max_word):
http put localhost:9200/m8 -d '{ "settings" : { "analysis" : { "analyzer" : { "ik" : { "tokenizer" : "ik_smart" } } } }, "mappings" : { "logs" : { "dynamic" : true, "properties" : { "message" : { "type" : "string", "analyzer" : "ik_smart" } } } } }'
如果提示http put不存在看下面
案例
http://localhost:9200/m8/_analyze?analyzer=ik_max_word&text=南京市长江大桥
结果
参数说明:
ik_max_word: 会将文本做最细粒度的拆分,比如会将“中华人民共和国国歌”拆分为“中华人民共和国,中华人民,中华,华人,人民共和国,人民,人,民,共和国,共和,和,国国,国歌”,会穷尽各种可能的组合;
ik_smart: 会做最粗粒度的拆分,比如会将“中华人民共和国国歌”拆分为“中华人民共和国,国歌”。
http put不存在问题:
yum install httpie
转载请注明来源 http://www.cnblogs.com/phpshen/p/6085274.html