1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
[2016-11-14T10:05:29,358][WARN ][o.e.b.ElasticsearchUncaughtExceptionHandler] [] uncaught exception in thread [main] org.elasticsearch.bootstrap.StartupException: java.lang.RuntimeException: can not run elasticsearch as root at org.elasticsearch.bootstrap.Elasticsearch.init(Elasticsearch.java:116) ~[elasticsearch- 5.0.0.jar:5.0.0] at org.elasticsearch.bootstrap.Elasticsearch.execute(Elasticsearch.java:103) ~[elasticsearch- 5.0.0.jar:5.0.0] at org.elasticsearch.cli.SettingCommand.execute(SettingCommand.java:54) ~[elasticsearch- 5.0.0.jar:5.0.0] at org.elasticsearch.cli.Command.mainWithoutErrorHandling(Command.java:96) ~[elasticsearch- 5.0.0.jar:5.0.0] at org.elasticsearch.cli.Command.main(Command.java:62) ~[elasticsearch-5.0.0.jar:5.0.0] at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:80) ~[elasticsearch- 5.0.0.jar:5.0.0] at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:73) ~[elasticsearch- 5.0.0.jar:5.0.0] |
解决方案:
因为安全问题elasticsearch不让用root用户直接运行,所以要创建新用户
· 建议创建一个单独的用户用来运行ElasticSearch
· 创建elsearch用户组及elsearch用户
groupadd elsearch
useradd elsearch -gelsearch -p elasticsearch
使用elsearch启动ES后又会遇到以下问题
ERROR: bootstrapchecks failed
max file descriptors[10240]for elasticsearch process likely too low, increase to at least[65536]
max number of threads[1024]for user [elsearch] likely too low, increase to at least [2048]
max virtual memory areasvm.max_map_count [65530] likely too low, increase to at least [262144]
[2016-11-14T10:22:17,569][INFO ][o.e.n.Node ] [mysteel-node1] stopping ...
[2016-11-14T10:22:17,615][INFO ][o.e.n.Node ] [mysteel-node1] stopped
[2016-11-14T10:22:17,615][INFO ][o.e.n.Node ] [mysteel-node1] closing ...
[2016-11-14T10:22:17,638][INFO ][o.e.n.Node ] [mysteel-node1] closed
临时解决方案:
sudo su
ulimit –n 65536
su zth
永久解决方案:
解决方法参考 :http://www.cnblogs.com/sloveling/p/elasticsearch.html
切换到root用户
vi/etc/security/limits.conf
添加如下内容:
* soft nofile65536
* hard nofile131072
* soft nproc2048
* hard nproc4096
vi /etc/security/limits.d/90-nproc.conf
修改如下内容:
* soft nproc1024
#修改为
* soft nproc2048
vi /etc/sysctl.conf
添加下面配置:
vm.max_map_count=655360
并执行命令:
sysctl -p
然后,重新启动elasticsearch,即可启动成功。
问题描述
curl -XPOST 192.168.14.173:32000/test_index_1221/test_type/5-d '{'user_name':"xiaoming"}'
{"error":"Content-Typeheader [application/x-www-form-urlencoded] is not supported","status":406}
1
2
官方解释:
官方改变
解决方法
curl -H "Content-Type:application/json" -XPOST 192.168.14.173:32000/test_index_1221/test_type/5 -d'{'user_name':"xiaoming"}'
{"error":"Content-Typeheader [application/x-www-form-urlencoded] is not supported","status":406}
1
2
指定header头即可
as the final mapping would have more than 1 type:
as the final mapping would have more than 1 type:
修改方式就是换一个index或者采取该index下唯一的type