linux上安装 Elasticsearch及插件
https://www.cnblogs.com/yuanyongqiang/p/11867537.html
一、 准备工作:
安装参考文档:
ELK官网:https://www.elastic.co/
ELK官网文档:https://www.elastic.co/guide/index.html
ELK中文手册:https://www.elastic.co/guide/cn/elasticsearch/guide/current/index.html
ELK中文社区:https://elasticsearch.cn/
ELK-API :https://www.elastic.co/guide/en/elasticsearch/client/java-api/current/transport-client.html
二、 下载安装ES:
下载安装包:
访问elasticSearch官网地址 https://www.elastic.co/cn/downloads/past-releases#elasticsearch
解压安装包:
tar -zxvf elasticsearch-5.2.0.tar.gz
修改配置文件:
进入到es安装目录下的config文件夹中,修改elasticsearch.yml 文件,修改的主要内容:
#配置es的集群名称,默认是elasticsearch,es会自动发现在同一网段下的es,如果在同一网段下有多个集群,就可以用这个属性来区分不同的集群。 cluster.name: my-es #节点名称 node.name: node-1 #设置索引数据的存储路径 path.data: /usr/local/elasticsearch/data #设置日志的存储路径 path.logs: /usr/local/elasticsearch/logs #设置当前的ip地址,通过指定相同网段的其他节点会加入该集群中 network.host: 0.0.0.0 #设置对外服务的http端口 http.port: 9200 #设置集群中master节点的初始列表,可以通过这些节点来自动发现新加入集群的节点 discovery.zen.ping.unicast.hosts: ["127.0.0.1","10.10.10.34:9200"]
注:
1、补齐必要的目录
mkdir -p /usr/local/elasticsearch/data
mkdir -p /usr/local/elasticsearch/logs (目录可能已经存在,需先确定清楚)
2、network.host: 0.0.0.0
修改Elasticsearch的配置,使其支持外网访问。在浏览器中,访问http://xxxx:9200/(xxxx是运行elasticsearch的服务器的ip地址)即可。否则这可以在本机使用。
三、 解决启动时报错:
因为安全问题elasticsearch 不让用root用户直接运行,所以要创建新用户。
具体操作如下:
useradd testuser
passwd testuser
再输入两次密码(自定义)
为用户赋权限
chown -R testuser:testuser /usr/local/elasticsearch
然后使用es用户启动 :su testuser
cd /usr/local/elasticsearch
启动es命令:bin/elasticsearch
(2)、在testuser用户下启动时报错
为用户赋权限
chown -R testuser:testuser /usr/local/elasticsearch
然后使用es用户启动 :su testuser
cd /usr/local/elasticsearch
启动es命令:bin/elasticsearch
(3)、在testuser用户下启动时报错
原因:Centos6不支持SecComp,而ES默认bootstrap.system_call_filter为true进行检测,所以导致检测失败,失败后直接导致ES不能启动。
详见 :https://github.com/elastic/elasticsearch/issues/22899
解决方案:
在elasticsearch.yml中新增配置bootstrap.system_call_filter,设为false。
bootstrap.system_call_filter: false
(4)、在testuser用户下启动继续报错
a、原因:无法创建本地文件问题,用户最大可创建文件数太小,解决方案:切换到root用户,编辑limits.conf配置文件, 添加类似如下内容:
vi /etc/security/limits.conf
然后添加如下内容: 注意*不要去掉了
* soft nofile 65536
* hard nofile 131072
注:* 代表Linux所有用户名称(比如 hadoop)
需要保存、退出、重新登录才可生效。
b、原因:最大虚拟内存太小,解决办法切换到root用户修改配置sysctl.conf:
vi /etc/sysctl.conf
添加下面配置:
vm.max_map_count=655360
最后记得执行:
sysctl -p
然后,重新启动elasticsearch,即可启动成功。
四、 测试:
切换到testuser用户执行:
看到这个界面证明已经成功了,可以用浏览器访问ip:9200查看,会下载一个json文件打开如下:
启动命令:
cd /home/es/elasticsearch-5.2.0
./elasticesrarch -d 是后台运行
ps -ef|grep elasticesrarch 查看进程号
kill -9 5365 结束后台运行的es
至此Elasticsearch就安装完成了,当然这只是一台机器,如果有需要还可以搭成集群.
五、插件安装
1、 安装head
5.x 版本后,安装 elasticsearch-head 这个插件需要很复杂的流程。各种踩坑后,我放弃了。转战谷歌浏览器的 elasticsearch-head-chrome 插件:
2、 安装kibana
下载地址: https://www.elastic.co/cn/downloads/past-releases#kibana
解压:tar -zxvf kibana-5.2.0-linux-x86_64.tar.gz
进入文件夹: cd kibana-5.2.0-linux-x86_64
然后到kibana安装目录的config下,编辑kibana.yml配置文件,添加如下配置:
1 #配置本机ip 2 server.host: "192.168.252.129" 3 #配置es集群url 4 elasticsearch.url: "http://192.168.252.129:9200"
Kibana 启动:
切换到kibana安装目录的bin目录下,执行kibana文件
cd /usr/local/kibana/bin
./kibana &
主要使用&命令启动后,退出当前窗口时需要使用exit退出
成功启动后,可以访问:http:// 192.168.252.129:5601来访问kibana,ip为kibana安装节点ip,端口默认为5601,可以在config/kibana.yml中配置。
参考:
ES安装部分:https://www.cnblogs.com/socketqiang/p/11363024.html
Kibana安装部分: http://www.mamicode.com/info-detail-2617619.html