elasticsearch5.1.2安装过程记录

elasticsearch5.1.2安装过程记录

1.环境准备

  • 系统版本 CentOS 6.8 64位
  • jdk8 elasticsearch5.x后需要jdk8来支持
  • 下载elasticsearch5.1.2
  • 下载elaticsearch-head
  • 下载nodejs

2.安装JDK

2.1解压Jdk安装包

tar -zxvf jdk-8u121-linux-x64.gz 到 /usr/jdk

2.2配置环境变量

vim /etc/profile 添加如下配置

JAVA_HOME=/usr/jdk/jdk1.8
export JAVA_HOME
PATH=$PATH:$JAVA_HOME/bin:/usr/local/nginx/sbin:$JAVA_HOME/bin
export PATH```

####2.3检查jdk安装

>java -version
>
``` java version "1.8.0_121"
    Java(TM) SE Runtime Environment (build 1.8.0_121-b13)
    Java HotSpot(TM) 64-Bit Server VM (build 25.121-b13, mixed mode)```





<div class="se-preview-section-delimiter"></div>

###3.安装Elasticsearch5.1.2





<div class="se-preview-section-delimiter"></div>

####3.1下载
>wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-5.1.2.tar.gz





<div class="se-preview-section-delimiter"></div>

####3.2解压
>tar -zxvf elasticsearch-5.1.2.tar.gz





<div class="se-preview-section-delimiter"></div>

####3.2修改配置
 vim {es_home}/confg/elasticsearch.yml 增加如下配置
> cluster.name: zzht-es-cluster
node.name: es-node-1
node.master:  true
node.data:  true
http.enabled:  true
network.host: 0.0.0.0
http.port: 9200
http.cors.enabled: true
http.cors.allow-origin: "*"





<div class="se-preview-section-delimiter"></div>

####3.3启动Elasticsearch

5.1.2Elastic启动会报错,需要修改几个配置

1.vim /etc/security/limits.d/90-nproc.conf




<div class="se-preview-section-delimiter"></div>
  • soft nproc 1024
  • soft nproc 2048

2.vim /etc/sysctl.conf





<div class="se-preview-section-delimiter"></div>

cat /etc/sysctl.conf | grep vm.max_map_count
vm.max_map_count=655360
如果不存在则添加
echo “vm.max_map_count=655360” >>/etc/sysctl.conf
sysctl -p


3. vim /etc/security/limits.conf





<div class="se-preview-section-delimiter"></div>
  • soft nofile 65536
  • hard nofile 65536
  • soft nproc 2048
  • hard nproc 4096
4.ulimit -n 65536





<div class="se-preview-section-delimiter"></div>

###3.安装elasticsearch-head





<div class="se-preview-section-delimiter"></div>

####3.1下载head插件

>wget https://codeload.github.com/mobz/elasticsearch-head/zip/master





<div class="se-preview-section-delimiter"></div>

####3.2下载nodejs

>nodejs官网下载地址https://nodejs.org/dist/





<div class="se-preview-section-delimiter"></div>

####3.3配置node环境变量
>vim /etc/profile 增加如下配置:
>export NODE_HOME=/home/zzht/soft/node-v6.9.4-linux-x64
export PATH=$PATH:$NODE_HOME/bin





<div class="se-preview-section-delimiter"></div>

####3.3安装
>yum -y install gcc make gcc-c++ openssl-devel wget
>./configure
>make && make install
>node -v
>npm -v





<div class="se-preview-section-delimiter"></div>

####3.3安装grunt
>npm install -g grunt-cli
>npm install grunt --save-dev





<div class="se-preview-section-delimiter"></div>

####3.4安装elasticsearch-head的依赖并修改配置
>npm install
>vim Gruntfile.js 增加 hostname:'0.0.0.0',




<div class="se-preview-section-delimiter"></div>

server: {
options: {
hostname:’0.0.0.0’,
port: 9100,
base: ‘.’,
keepalive: true
}
}
“`

vim _site/app.js 修改http://localhost:9200
this.base_uri = this.config.base_uri || this.prefs.get(“app-base_uri”) || “http://101.x.x.x:9200“;

3.5启动elasticsearch-head

grunt server

4.创建同义词索引

4.1创建商品索引

curl -XPUT http://x.x.x.x:9200/goods/
curl -XPOST http://x.x.x.x:9200/goods/goods_info/_mapping
{
“goods_info”: {
“_all”: {
“enabled”: true,
“analyzer”: “ik_max_word”,
“search_analyzer”: “ik_max_word”,
“term_vector”: “no”,
“store”: “false”
},
“properties”: {
“goodsId”: {
“type”: “long”
},
“createTime”: {
“type”: “long”
},
“price”: {
“type”: “double”
},
“refPrice”: {
“type”: “double”
},
“details”: {
“type”: “string”
},
“inventory”: {
“type”: “long”
},
“userId”: {
“type”: “long”
},
“name”: {
“type”: “text”,
“store”: “no”,
“term_vector”: “with_positions_offsets”,
“analyzer”: “synonym”,
“search_analyzer”: “synonym”,
“include_in_all”: “true”,
“boost”: 8
},
“shelfTime”: {
“type”: “long”
},
“goodsImage”: {
“type”: “string”
},
“goodSizes”: {
“type”: “string”
}
}
}
}

4.2更新商品索引的分词设置

curl -XPUT http://x.x.x.x:9200/goods/_settings
{
“index” : {
“analysis” : {
“analyzer” : {
“synonym” : {
“tokenizer” : “whitespace”,
“filter” : [“synonym”]
}
},
“filter” : {
“synonym” : {
“type” : “synonym”,
“synonyms_path” : “analysis/synonym.txt”
}
}
}
}
}

4.3一切准备就绪,最后坑了…

spring Data Elasticsearch的最新版本还是不支持5.1.1,本以为只是初始化的地方不一样,结果修改了一部分,发现jpa的支持实现全都变了,只好放弃,白整合了一个上午。拿最新3.0的snapshot都不支持。
结果还是回到ES2.4.3版本,Spring Data组织不给力啊!只能继续等了。。。。

5参考资料

http://www.tuicool.com/articles/a2yQVrq es5.0集群配置
http://ruby-china.org/topics/21416 Analyzer 的内部机制
https://www.elastic.co/guide/en/elasticsearch/reference/5.1/analysis-synonym-tokenfilter.html Synonym Token Filter
http://blog.csdn.net/yusewuhen/article/details/50685685 同义词分词配置
http://blog.csdn.net/applebomb/article/details/54379602 spring-data的支持
http://stackoverflow.com/questions/32526016/elasticsearch-cant-update-non-dynamic-settings 更新索引分词配置时报错参考

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值