一:准备安装包
- 下载 elasticsearch 5.5.3
链接地址是:https://github.com/elastic/elasticsearch/archive/v5.5.3.zip - 下载 IK 分词插件
链接地址是:https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v5.5.3/elasticsearch-analysis-ik-5.5.3.zip - 下载拼音分词插件
链接地址是:https://github.com/medcl/elasticsearch-analysis-pinyin/releases/download/v5.5.3/elasticsearch-analysis-pinyin-5.5.3.zip
将 ik 分词插件解压后 然后将解压出来的目录重命名为 ik
将 pinyin 分词插件解压后 然后将解压出来的目录重命名为 pinyin
将 ik 与 pinyin 加入 elasticsearch plugin 目录下
二 、安装 elasticsearch-head 可视化插件
- 下载 nodejs
链接地址是:https://nodejs.org/en/download/current/
下载 elasticsearch-head - 链接地址是:https://github.com/mobz/elasticsearch-head/archive/v5.0.0.zip
执行步骤:
① 使用 npm 安装 grunt:
npm install -g grunt -cli
② 到 elasticsearch-head 目录下,运行命令:
npm install
1、安装 grunt
npm install -g grunt-cli
将 nodejs 加入全局命令
①ln -s /app/software/nodejs/bin/npm /usr/local/bin/
②ln -s /app/software/nodejs/bin/node /usr/local/bin/
③ln -s /app/software/nodejs/bin/grunt /usr/local/bin/
使用命令
[root@localhost ~]# grunt -version
-bash: grunt: command not found
分析
如果一些程序没有安装在系统默认的路径(ie /bin/, /usr/bin, /usr/local/bin/ )里面,这个时候普通用户想要调用这些命令,必须设定路径。
[root@localhost ~]# vi ~/.bash_profile
# .bash_profile
# Get the aliases and functions
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi
# User specific environment and startup programs
PATH=\$PATH:\$HOME/bin:/usr/local/src/node-v8.2.1-linux-x86/bin
export PATH
- 修改配置,启动插件
编辑 elasticsearch-5.5.3/config/elasticsearch.yml,加入以下内容:
http.cors.enabled: true
http.cors.allow-origin: "*"
修改
network.host: 192.168.137.101
- 配置设置
打开 elasticsearch-head-master/Gruntfile.js,找到下面 connect 属性,新增 hostname: '0.0.0.0':
connect: {
server: {
options: {
hostname: '0.0.0.0',
port: 9100,
base: '.',
keepalive: true
}
}
}
- 在 elasticsearch-head/目录下,运行启动命令:
grunt server
三、 异常解决办法
[1]: max file descriptors [4096] for elasticsearch process is too low, increase to at least [65536
切换为 root 用户
编辑 limits.conf 在第一行加上如下内容
cat /etc/security/limits.conf
* soft nofile 65536
* hard nofile 131072
* soft nproc 2048
* hard nproc 4096
[1]: max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]
编辑 limits.conf 在第一行加上如下内容
cat /etc/sysctl.conf
vm.max_map_count = 655360
执行 sysctl -p
删除 data 目录下的数据(如果是新解压的安装包就不必了)
最后注意防火墙是否开放 9200、9300 端口
注意:
- 启动执行的时候不能用 root 用户启动。若用 root 用户启动,还需调整配置
解决方法 1:
在执行 elasticSearch 时加上参数-Des.insecure.allow.root=true,完整命令如下
./elasticsearch -Des.insecure.allow.root=true
解决办法 2:
用 vim 打开 elasicsearch 执行文件,在变量 ES_JAVA_OPTS 使用前添加以下命令
ES_JAVA_OPTS="-Des.insecure.allow.root=true"
欢迎来到这里!
我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。
注册 关于