2.es规定root用户不能启动es,所以需要创建一个用户来启动es
创建用户名为elastic的用户
useradd elastic
设置elastic用户的密码
passwd elastic
3.创建es的data和logs目录
cd /usr/local/elasticsearch/elasticsearch-5.6.9
mkdir -p data
mkdir -p logs
4.将/usr/local/elasticsearch/elasticsearch-5.6.9的拥有者设置为elastic
chown -R elastic:elastic /usr/local/elasticsearch/elasticsearch-5.6.9
5.编辑配置文件
cd config/
vim elasticsearch.yml
编辑内容如下:
network.host: 你自己的服务器ip 可以设置为0.0.0.0
http.port: 9200
6.开放防火墙端口
firewall-cmd --zone=public --add-port=9200/tcp --permanent
firewall-cmd --zone=public --add-port=9300/tcp --permanent
firewall-cmd --reload
7.启动elasticsearch
切换用户
su elastic
启动
/usr/local/elasticsearch/elasticsearch-5.6.9/bin/elasticsearch -d
查看进程
ps aux | grep Elasticsearch
8.相关操作语句
查询全部数据
curl localhost:9200/_search?pretty=true
查询全部索引
curl localhost:9200/_cat/indices?v
9.安装ik中文分词器
下载最新版本的ik分词库,github地址为https://github.com/medcl/elasticsearch-analysis-ik,下载zip包
找到对应版本的ik分词库zip,本系统安装分词库地址如下
执行如下命令
cd /usr/local/elasticsearch/elasticsearch-5.6.9/bin/
./elasticsearch-plugin installhttps://github.com/medcl/elasticsearch-analysis-ik/releases/download/v5.6.9/elasticsearch-analysis-ik-5.6.9.zip
然后重启Elasticsearch
测试语句如下:
curl -XGET 'http://localhost:9200/_analyze?pretty&analyzer=ik_smart' -d '我是雨哥哥'
10.安装head插件
(1)下载head插件
wgethttps://github.com/mobz/elasticsearch-head/archive/master.zip
解压
unzip master.zip
mv elasticsearch-head-master /usr/local/elasticsearchhead
修改elasticsearch下的config/elasticsearch.yml,添加如下代码
http.cors.enabled: true
http.cors.allow-origin: "*"
(2)下载node.js
从node.js官网https://nodejs.org/dist/下载安装包
wgethttps://nodejs.org/dist/v6.9.2/node-v6.9.2-linux-x64.tar.xz
解压并移动
xz -d node-v6.9.2-linux-x64.tar.xz
tar –xvf node-v6.9.2-linux-x64.tar
mv node-v6.9.2-linux-x64 /usr/local/nodejs
配置环境变量
vim /etc/profile
配置内容如下
#nodejs
export NODE_HOME=/usr/local/nodejs/node-v6.9.2-linux-x64
export PATH=$PATH:$NODE_HOME/bin
#nodejs
重启
source /etc/profile
查询nodejs版本
node -v
(3)下载安装grunt
cd /usr/local/elasticsearchhead/elasticsearch-head-master
执行后会生成node_modules文件夹
npm install -g grunt-cli
校验是否安装成功
grunt -version
(4)修改head插件源码
以下两个文件均存在于elasticsearch-head-master文件夹下
修改服务器监听地址
vim Gruntfile.js
增加hostname属性,设置为0.0.0.0
修改连接地址
cd _site
vim app.js
修改head的连接地址
this.base_uri = this.config.base_uri || this.prefs.get("app-base_uri") || "http://localhost:9200";
把localhost改为自己es服务器的地址
this.base_uri = this.config.base_uri || this.prefs.get("app-base_uri") || "http://111.111.111.111:9200";
(5)运行head
开启防火墙
firewall-cmd --zone=public --add-port=9100/tcp --permanent
firewall-cmd --reload
首先开启es
然后在head目录中elasticsearch-head-master执行
npm install
cd /usr/local/elasticsearchhead/elasticsearch-head-master/
grunt server
问题:
1.Java HotSpot(TM) 64-Bit Server VM warning: INFO: os::commit_memory(0x0000000085330000, 2060255232, 0) failed; error='Cannot allocate memory' (errno=12)
解决办法:
由于elasticsearch5.0默认分配jvm空间大小为2G,修改jvm空间分配
如果使用虚拟机安装内存最好不小于2G
cd config/
vim jvm.options
-Xms512m
-Xms512m
2.org.elasticsearch.bootstrap.StartupException: BindTransportException[Failed to bind to [9300-9400]]; nested: BindException[Cannot assign requested address];
解决办法:
vim elasticsearch.yml
设置network.host = 0.0.0.0
3.[1]: max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]
解决办法:
提高vm.max_map_count的大小
切换到root用户
vim /etc/sysctl.conf
在其中添加
vm.max_map_count=262144
然后执行
sysctl -p
4.java.lang.IllegalStateException: Received message from unsupported version: [2.0.0] minimal compatible version is: [5.0.0]
解决办法:
把springboot中的es包换成高于2.0的版本
springboot目前只支持大版本为2的elasticsearch,所以我们把springboot换成更高版本额
作者:雨落地筝
链接:https://www.jianshu.com/p/e8a5ac9c282b
共同学习,写下你的评论
评论加载中...
作者其他优质文章