elasticsearch2.2 集群搭建各种坑

目前生产环境的es版本是1.0版本,需要升级到最新的2.2版本,于是在测试环境进行部署集群测试,在测试过程中遇到的坑相当多,下面详细介绍下。

1. 版本升级到2.2后,必须建一个单独的账号用于启动elasticsearch,不可以使用root账号进行启动,否则会报以下错误

Exception in thread "main" java.lang.RuntimeException: don‘t run elasticsearch as root.

2. 如果需要通过ip进行访问es集群,必须修改elasticsearch.yml中的network.host节点。es 1.0版本的默认配置是 "0.0.0.0",所以不绑定ip也可访问,但是es 2.2版本如果采用默认配置,只能通过 localhost 和 "127.0.0.1"进行访问。network.host节点可以配置多个值,如下:

  network.host: [_local_, 192.168.87.77]

3. es1.0 版本的集群的discovery默认采用的是组播(multicast)模式,但是在es2.2版本中已去除该模式,虽然提供了multicast的插件,但是官方说不建议采用multicast的模式,故我们只能采用单播(unicast)模式。同时我们还必须显示指明“network.publish_host”节点的内容,否则该节点会动态绑定ip,导致你设置的unicast地址不正确,以下是我的一些配置:

  network.publish_host: 192.168.87.76

  discovery.zen.ping.unicast.hosts: ["192.168.87.77","192.168.87.87.78"]

关于节点“discovery.zen.ping.unicast.hosts”的值可以是单值也可以是多值,在不同的服务器之间部署es节点可以不指明ip端口,但是在同一服务器中部署,ip最好是加上检测的端口号,否则可能检测不到要加入的节点,如下配置:

  network.publish_host: 192.168.87.76

  discovery.zen.ping.unicast.hosts: ["192.168.87.77:9300"]

4. 在同一台服务器上部署多个节点,最好显示指明节点间通信的端口号,这样有利于第3点进行节点发现的ip+端口号的绑定操作,修改如下节点:

  transport.tcp.port: 9310

5. 介绍下排错的过程,可以在es启动后,用tail命令监控es的日志文件,在es的node节点分配了标识之后,会进行节点探测才操作。

该图在分配标识后,打印了new_master操作,说明没有探测到要加入的集群,可能是第3点的单播的host配置有错误

该图在分配标识后,打印了detected_master操作,说明探测到了要加入的集群

参考内容

Zen Discovery: https://www.elastic.co/guide/en/elasticsearch/reference/2.2/modules-discovery-zen.html

Network Settings: https://www.elastic.co/guide/en/elasticsearch/reference/2.2/modules-network.html

Transport: https://www.elastic.co/guide/en/elasticsearch/reference/2.2/modules-transport.html#modules-transport

转:elasticsearch2.2 集群搭建各种坑

时间: 2024-10-19 21:26:19

elasticsearch2.2 集群搭建各种坑的相关文章

redis集群搭建踩坑笔记

推荐参考教程:https://blog.csdn.net/pucao_cug/article/details/69250101 错误: from /usr/lib/ruby/2.3.0/rubygems/core_ext/kernel_require.rb:55:in `require' from /usr/local/redis-3.0.6/src/redis-trib.rb:25:in `<main>' 解决: gem install redis (最新) sudo gem install

Kafka 0.9+Zookeeper3.4.6集群搭建、配置,新Client API的使用要点,高可用性测试,以及各种坑 (转载)

Kafka 0.9版本对java client的api做出了较大调整,本文主要总结了Kafka 0.9在集群搭建.高可用性.新API方面的相关过程和细节,以及本人在安装调试过程中踩出的各种坑. 关于Kafka的结构.功能.特点.适用场景等,网上到处都是,我就不再赘述了,直接进入正文 Kafka 0.9集群安装配置 操作系统:CentOS 6.5 1. 安装Java环境 Zookeeper和Kafka的运行都需要Java环境,所以先安装JRE,Kafka默认使用G1垃圾回收器,如果不更改垃圾回收器

大数据学习系列之七 ----- Hadoop+Spark+Zookeeper+HBase+Hive集群搭建 图文详解

引言 在之前的大数据学习系列中,搭建了Hadoop+Spark+HBase+Hive 环境以及一些测试.其实要说的话,我开始学习大数据的时候,搭建的就是集群,并不是单机模式和伪分布式.至于为什么先写单机的搭建,是因为作为个人学习的话,单机已足以,好吧,说实话是自己的电脑不行,使用虚拟机实在太卡了... 整个的集群搭建是在公司的测试服务搭建的,在搭建的时候遇到各种各样的坑,当然也收获颇多.在成功搭建大数据集群之后,零零散散的做了写笔记,然后重新将这些笔记整理了下来.于是就有了本篇博文. 其实我在搭

elk6.2集群搭建,cerebro集群管理

环境准备: 两台centos 7.3 x86_64 这里软件版本是2018 .3月的,如以后最新版本请去官网下载 规划: cm-elk-01: IP:192.168.10.63 安装: elasticsearch kibana:前端展示 cm-elk-02: IP:192.168.10.64 安装: elasticsearch cerebro:查看集群状态 搭建前准备: 1. 两台服务器需要修改最大文件数65536  vim /etc/security/limits.conf   最后添加   

MHA 高可用集群搭建(二)

MHA 高可用集群搭建安装scp远程控制http://www.cnblogs.com/kevingrace/p/5662839.html yum install openssh-clients mysql5.7运行环境:centos6.51 主机部署 manager:192.168.133.141test1: 192.168.133.138test2:192.168.133.139 (为master1的备用)test3: 192.168.133.140 test1为主,test2和test3为备

RabbitMQ的安装及集群搭建方法

RabbitMQ安装 1 安装erlang 下载地址:http://www.erlang.org/downloads 博主这里采用的是otp_src_19.1.tar.gz (200MB+) [[email protected] util]# tar zxvf otp_src_19.1.tar.gz [[email protected] util]# cd otp_src_19.1 [[email protected] otp_src_19.1]# ./configure --prefix=/o

IPFS系列 集群搭建 三

本篇IPFS集群搭建指南教程距离上一篇IPFS教程已经过去一个多月了,本来在写完上一篇一两周之内就来写此篇文章.最近数字货币在谷底,顺便清理一些垃圾山寨.然后听一个朋友的介绍,说了一些区块链里的痛点,聊着聊着发现一个好的产品点子,就一股做劲去开发了,整体大概花了三周(不是工作日)大体把业务需求给实现了,目前在申请阿里云备案,应该不久可以给更多区块链数字货币界的小伙伴使用了,目前不便透露产品内容.好了,开始正题IPFS集群搭建. 一.多节点文件如何同步? 在IPFS多节点搭建文章中,我们实现了文件

redis3.0集群搭建

Redis集群搭建 redis cluster介绍 节点自动发现.集群容错slave选举.Cluster管理.集群配置管理. 集群中的每个Redis节点需要2个TCP连接端口,如6379端口用于Client连接,16379端口用于集群数据通信 集群采用Hash Slot方案,而不是一致性哈希,共16384个Hashslot.如果有3台机器,那么NodeA在0-5500,NodeB 在5501-11000,NodeC在11001-16384.这种设计下,添加,删除新Node比较方便. 由于Hash

rabbitmq集群搭建(centos6.5)

一:rabbitmq的安装: 参考:http://www.blogjava.net/hellxoul/archive/2014/06/25/415135.html http://blog.haohtml.com/archives/15249 说明:修改机器名字后再安装(为后面集群做准备) vi /etc/sysconfig/network 修改名字 vi /etc/hosts 修改地址映射表,如192.168.1.112   rabbitmq-node1.com rabbitmq-node1 #