Elasticsearch6.x的安装(centos6.x下)
Elasticsearch6.x目前需要至少jdk8的支持,关于如何安装jdk不在讲述。Oracle的推荐安装文档可以在Oracle的网站上找到,下载解压后只需要配置下环境变量即可
在/etc/profile里面配置
export JAVA_HOME=/usr/local/src/jdk1..0_171
export JRE_HOME=/usr/local/src/jdk1..0_171/jre
export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib
export PATH=$JAVA_HOME/bin:$PATH
安装了Java之后,下载并运行 Elasticsearch 。这些二进制文件可以在www.elastic.co/downloads下载,与过去所有的所有版本一起提供。对于每个版本,您可以选择一个zip、tar、DEB或RPM包。
下载:
curl -L -O https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.0.1.tar.gz
然后解压缩如下
tar -zxvf elasticsearch-6.0.1.tar.gz
修改目录权限,Elasticsearch6.x不准许以root用户启动,只能以普通用户启动,这里创建一个普通用户
useradd elasticsearch
chown elasticsearch:elasticsearch elasticsearch-6.0.1 -R
切换到普通用户
su - elasticsearch
然后进入bin目录进行启动
cd elasticsearch-6.0./bin
启动我们的节点和单个集群
./elasticsearch
另外我们可以修改集群或节点名称。这可以在启动 Elasticsearch 时从命令行完成,如下所示:
./elasticsearch -Ecluster.name = my_cluster_name -Enode.name = my_node_name
想要本机监听本机ip的话,需要修改elasticsearch.yml,添加如下
network.host: 192.168.73.133
以上修改完,启动后没有报错的话,可以在浏览器访问了ip:9200,显示如下,表示成功。
{
"name" : "91NMjsU",
"cluster_name" : "elasticsearch",
"cluster_uuid" : "sbyxgvkLTle-La47kVfzPQ",
"version" : {
"number" : "6.0.1",
"build_hash" : "601be4a",
"build_date" : "2017-12-04T09:29:09.525Z",
"build_snapshot" : false,
"lucene_version" : "7.0.1",
"minimum_wire_compatibility_version" : "5.6.0",
"minimum_index_compatibility_version" : "5.0.0"
},
"tagline" : "You Know, for Search"
}
在es安装过程中常见错误以下几种;
1 不能以root用户启动,需要建立普通用户并且给文件夹授权
2启动出现的错误
ERROR: bootstrap checks failed
max file descriptors [] for elasticsearch process likely too low, increase to at least []
max number of threads [] for user [elsearch] likely too low, increase to at least []
max virtual memory areas vm.max_map_count [] likely too low, increase to at least []
[--14T10::,][INFO ][o.e.n.Node ] [mysteel-node1] stopping ...
[--14T10::,][INFO ][o.e.n.Node ] [mysteel-node1] stopped
切换到root用户
vi /etc/security/limits.conf
添加如下内容:
* soft nofile 65536 * hard nofile 131072 * soft nproc 2048 * hard nproc 4096
vi /etc/security/limits.d/90-nproc.conf
修改如下内容: * soft nproc 1024 #修改为 * soft nproc 2048
3另外一种
ERROR: bootstrap checks failed
system call filters failed to install; check the logs and fix your configuration or disable system call filters at your own risk
原因:
这是在因为Centos6不支持SecComp,而ES5.2.0默认bootstrap.system_call_filter为true进行检测,所以导致检测失败,失败后直接导致ES不能启动。
解决:
在elasticsearch.yml中配置bootstrap.system_call_filter为false,注意要在Memory下面:
bootstrap.memory_lock: false
bootstrap.system_call_filter: false
4最后一种
ERROR: bootstrap checks failed
max virtual memory areas vm.max_map_count [] is too low, increase to at least []
解决办法:
修改/etc/sysctl.conf 文件,添加 “vm.max_map_count”设置
vm.max_map_count=262144
并执行:sysctl -p