环境概述
操作系统:Debian 8.2
软件版本:Elasticsearch 6.5.0
安装依赖
由于Elasticsearch依赖于Java环境,但是从源中安装Elasticsearch时并不会自动安装JDK包,因此需要进行手动安装。并且不同版本的Elasticsearch依赖的JDK版本不同:
Elasticsearch 6.5.0: Java 8(1.8.0_131 or a later version in the Java 8 release series)
否则APT(DPKG)安装会失败。下载地址:https://jdk.java.net
安装服务
#!/bin/sh wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | apt-key add - apt-get install apt-transport-https echo "deb https://artifacts.elastic.co/packages/6.x/apt stable main" | tee -a /etc/apt/sources.list.d/elastic-6.x.list apt-get update apt-get install elasticsearch=6.5.0
配置服务
修改/etc/elasticsearch/elasticsearch.yml文件的内容如下:
cluster.name: elk # 集群名称 node.name: master # 该节点名称 node.master: true # 意思是该节点为主节点 node.data: true # 表示这是数据节点 network.host: 0.0.0.0 # 监听全部ip,在实际环境中应设置为一个安全的ip http.port: 9200 # es服务的端口号 # discovery.zen.ping.unicast.hosts: ["192.168.77.128", "192.168.77.130", "192.168.77.134"] # 配置自动发现
由于没有配置集群,所以这个节点既是master节点,也是data节点。
启动服务
执行systemctl start elasticsearch.service来启动Elasticsearch服务。
验证访问
执行curl http://localhost:9200来查看服务是否正常。如果产生类似如下的输入,则表示正常:
{ "name" : "master", "cluster_name" : "elk", "cluster_uuid" : "mE5oXleaRimUhncwrG9hRw", "version" : { "number" : "6.4.0", "build_flavor" : "default", "build_type" : "rpm", "build_hash" : "595516e", "build_date" : "2018-08-17T23:18:47.308994Z", "build_snapshot" : false, "lucene_version" : "7.4.0", "minimum_wire_compatibility_version" : "5.6.0", "minimum_index_compatibility_version" : "5.0.0" }, "tagline" : "You Know, for Search" }
(执行systemctl start elasticsearch.service后,Elasticsearch会立即启动,但不会马上监听9200端口,需要等待片刻再执行该命令)
常见错误
#1 JAVA_HOME environment variable must be set!
系统环境:Debian 8.2
软件版本:Elasticsearch 6.5.0
问题描述:由手动安装的JDK或者JRE可以会遇到这个错误。
解决办法:修改/etc/default/elasticsearch文件,将其中的JAVA_HOME这是为JDK或JRE的根目录。
相关文章
参考文献
Elasticsearch Reference [6.5] » Set up Elasticsearch
搭建ELK日志分析平台(上)—— ELK介绍及搭建 Elasticsearch 分布式集群
Elasticsearch Reference [6.4] » Set up Elasticsearch » Installing Elasticsearch