elasticsearch6.6.1集群安装
安装步骤
ElasticSearch是一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口。elasticsearch的安装起因是因为griffin质量分析组件的依赖,故有此文。
下载链接:https://www.elastic.co/downloads/elasticsearch
安装依赖
- jdk版本要在1.8以上
- 必须是非root用户安装
解压es压缩包
[hadoop@master ~]$ tar -zxvf elasticsearch-6.6.1.tar.gz
修改配置文件elasticsearch.yml
集群配置中最重要的两项是node.name与network.host,每个节点都必须不通。其中node.name是节点名称主要是在Elasticsearch自己的日志加以区分每一个节点信息。
discovery.zen.ping.unicast.hosts是集群中的节点信息,可以使用IP地址、可以使用主机名(必须可以解析)。
[hadoop@master ~]$ cd elasticsearch-6.6.1/config/
[hadoop@master config]$ vi elasticsearch.yml
末尾添加
cluster.name:es-cluster # 集群名称
node.name: els1 # 节点名称,仅仅是描述名称,用于在日志中区分
#path.data: /home/hadoop/elasticsearch-6.6.1/data # 数据的默认存放路径,默认就好
#path.logs: /home/hadoop/elasticsearch-6.6.1/logs # 日志的默认存放路径,默认就好
network.host: 169.254.1.100 # 当前节点的IP地址
http.port: 9200 # 对外提供服务的端口,9300为集群服务的端端口
discovery.zen.ping.unicast.hosts: [“169.254.1.100”, “169.254.1.101”,“169.254.1.102”]
# 集群个节点IP地址,也可以使用els、els.shuaiguoxia.com等名称,需要各节点能够解析
discovery.zen.minimum_master_nodes: 2 # 为了避免脑裂,集群节点数最少为半数+1
bootstrap.system_call_filter: false # Centos6系统必须加
安装问题:
[2]: system call filters failed to install; check the logs and fix your configuration or disable system call filters at your own risk
原因:
Centos6不支持SecComp,而ES默认bootstrap.system_call_filter为true进行检测,所以导致检测失败,失败后直接导致ES不能启动。
解决方案
在每个节点elasticsearch.yml中新增配置
bootstrap.system_call_filter: false
复制es安装包到其他节点
复制之前需要删除es目录中已存在的data目录(如果有data目录),否则会报如下错:
问题:<