码迷,mamicode.com
首页 > 其他好文 > 详细

elasticsearch 单节点实现

时间:2017-10-19 12:28:07      阅读:179      评论:0      收藏:0      [点我收藏+]

标签:tmp   str   环境   signed   div   arch   roo   http   插件   

一、安装java环境,这么不说了,一般用源码安装,配置好环境变量

二、新建es用户和组,es不能用root启动

三、下载需要的稳定版es

四、解压安装es

unzip elasticsearch-5.5.2.zip
mv elasticsearch-5.5.2 /opt/app/
ln -s elasticsearch-5.5.2 es
chown -R es:es /opt/app/elasticsearch-5.5.2/

五、修改es配置文件

vim /opt/app/elasticsearch-5.5.2/config/elasticsearch.yml

cluster.name: es_znj
node.name: es_163
path.data: /data/es/
path.logs: /data/logs/es/
network.host: *.*.*.*
http.port: 9200
http.cors.enabled: true
http.cors.allow-origin: "*"
vim
/opt/app/elasticsearch-5.5.2/config/jvm.options

-Xms2g
-Xmx2g


六、修改系统参数

vim /etc/security/limits.conf
* soft nofile 65536
* hard nofile 131072

vim /etc/sysctl.conf
vm.max_map_count=262144
systemctl -p

七、创建目录

mkdir /data/es/
mkdir /data/logs/es/

八、使用systemd管理进程

vim /etc/systemd/system/es.service
[Unit]
Description=elasticsearch5

[Service]
Type=simple
User=es
Group=es
EnvironmentFile=-/etc/default/es
ExecStart=/opt/app/es/bin/elasticsearch -Epath.conf=/opt/app/es/config
ExecStop=/bin/kill -s QUIT $MAINPID
PrivateTmp=false
Restart=always
LimitNOFILE=655350


[Install]
WantedBy=multi-user.target

九、安装ik插件

ik插件到这里下载对应es版本的,然后解压复制到es的插件目录:

unzip elasticsearch-analysis-ik-5.5.2.zip
mv elasticsearch /opt/src/
mv elasticsearch analysis-ik

十、安装head插件

1.下载head插件,下载地址

mv elasticsearch-head /opt/app/
ln -s elasticsearch-head es-head

2.修改配置

修改监听地址:
head/Gruntfile.js
修改连接地址:
目录:head/_site/app.js
this.base_uri = this.config.base_uri || this.prefs.get("app-base_uri") || "http://localhost:9200";
然后在head目录中,执行npm install 下载以来的包:
npm install
这里可以用淘宝的源
npm install -g cnpm --registry=https://registry.npm.taobao.org (用这个源很快,全部安装完成)
 
需要安装phantomjs 如果报错就安装下面的centos下:
安装yum install libXext libXrender fontconfig libfontconfig.so.1
报错:
elasticsearch-head@0.0.0 license should be a valid SPDX license expression;
改license
vim package.json
"license": "Apache-2.0", license改为这个 因为要license在apache下面存在的
 
启动nodejs
grunt server
 
nginx代理限制访问权限
 
tips:
单节点出现Unassigned 错误,使用下面的命令,多节点就要注意排错了
 
curl -XPUT ‘10.0.10.21:9201/_settings‘ -d ‘ { "index" : { "number_of_replicas" : 0 } }‘
 
 
curl -XPUT ‘20.0.0.125:9200/_settings‘ -d ‘ { "index" : { "number_of_replicas" : 0 } }‘
上面的配置就表面没有复制,只有一个主分片,可以解决问题,下面的是针对过个节点调整
看备份数,比如只有一个节点,replicas 最多一个,两个节点,最多两个,调整节点数如下
curl -XPUT ‘localhost:9200/<INDEX_NAME>/_settings‘ -d ‘{"number_of_replicas": 2}‘
 
服务器放在线上的时候 要在外部需要做代理,同时将head和es都要代理出去:
技术分享
 

elasticsearch 单节点实现

标签:tmp   str   环境   signed   div   arch   roo   http   插件   

原文地址:http://www.cnblogs.com/mikeluwen/p/7691468.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!