elasticsearch 分布式部署

修改配置文件 /config/elasticsearch.yml

我用两台机器,内网地址分别为230 和 231

处理启动报错一:

[2017-01-12T15:55:55,433][INFO ][o.e.b.BootstrapCheck     ] [SfD5sIh] bound or publishing to a non-loopback or non-link-local address, enforcing bootstrap checks
ERROR: bootstrap checks failed
max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]
  • 临时提高了vm.max_map_count的大小,此操作需要root权限:
  sudo  sysctl -w vm.max_map_count=262144
  sysctl -a|grep vm.max_map_count
  • 永久修改vm.max_map_count:

  解决:切换到root用户修改配置sysctl.conf

  vi /etc/sysctl.conf

  添加下面配置:

  vm.max_map_count=655360

  并执行命令:

  sysctl -p

  然后,重新启动elasticsearch,即可启动成功。

处理启动报错二:

  max file descriptors [4096] for elasticsearch process likely too low, increase to at least [65536]

  修改/etc/security/limits.conf文件,添加或修改如下行:

  *        hard    nofile           65536
  *        soft    nofile           65536

处理启动报错三:

  max number of threads [1024] for user [lish] likely too low, increase to at least [2048]

  解决:切换到root用户,进入limits.d目录下修改配置文件。

  vi /etc/security/limits.d/90-nproc.conf

  修改如下内容:

  * soft nproc 1024

  #修改为

  * soft nproc 2048

  补:启动异常: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.1默认bootstrap.system_call_filter为true进行检测,所以导致检测失败,失败后直接导致ES不能启动。详见 :https://github.com/elastic/elasticsearch/issues/22899

  解决方法:在elasticsearch.yml中配置bootstrap.system_call_filter为false,注意要在Memory下面:

  bootstrap.memory_lock: false

  bootstrap.system_call_filter: false

  近日,单台机器,8个节点的es集群,8个节点都正常started了,但是就是无法形成集群,后来看日志,日志中出现一堆的MasterNotDiscoveredException这种异常,完整日志如下:

[2016-04-27 15:08:22,445][DEBUG][action.admin.cluster.health] [es.10.16.66.152.0] no known master node, scheduling a retry
[2016-04-27 15:08:52,457][INFO ][rest.suppressed          ] /_cat/health Params: {h=node.total}
MasterNotDiscoveredException[waited for [30s]]
        at org.elasticsearch.action.support.master.TransportMasterNodeAction$4.onTimeout(TransportMasterNodeAction.java:160)
        at org.elasticsearch.cluster.ClusterStateObserver$ObserverClusterStateListener.onTimeout(ClusterStateObserver.java:239)
        at org.elasticsearch.cluster.service.InternalClusterService$NotifyTimeout.run(InternalClusterService.java:630)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
        at java.lang.Thread.run(Thread.java:745)

  查看了每一个节点的elasticsearch.yml这个文件之后,发现其中只有一个节点的node.master这个配置为true,而其中discovery.zen.minimum_master_nodes这个配置的值却是5,而有资格成为主节点的只有一个,所以永远也形成不了集群啊。

结果就是要么把其他节点的node.master都设置为true,要么discovery.zen.minimum_master_nodes将这个配置改为1。

错误的解决办法均是从网上扒的,看官就不要吐槽了 虽然官网都有相关说明,但有现成的就不愿意看英文文档,谁叫英文不好呢

时间: 2024-11-23 14:41:50

elasticsearch 分布式部署的相关文章

ELK介绍及搭建 Elasticsearch 分布式集群

笔记内容:ELK介绍及搭建 Elasticsearch 分布式集群笔记日期:2018-03-02 27.1 ELK介绍 27.2 ELK安装准备工作 27.3 安装es 27.4 配置es 27.5 curl查看es集群情况 ELK介绍 需求背景: 业务发展越来越庞大,服务器越来越多 各种访问日志.应用日志.错误日志量越来越多,导致运维人员无法很好的去管理日志 开发人员排查问题,需要到服务器上查日志,不方便 运营人员需要一些数据,需要我们运维到服务器上分析日志 为什么要用到ELK: 一般我们需要

elasticsearch 分布式集群搭建

elasticsearch环境搭建及单节点搭建可参考我的上一篇:http://www.cnblogs.com/xuwenjin/p/8745624.html 本文以Elaticsearch 6.2.2 版本为基础,讲解Elasticsearch三个节点的分布式部署.核心配置的含义以及分布式部署遇到的坑 楼主是在一台机器上配置的,所有下面的network.host全部配置同一IP 1.配置节点 1.1配置主节点: #集群名称 cluster.name: xwj #节点名称 node.name: m

Zabbix基于Proxy分布式部署实现Web监控

前言 在日常运维工作中,难免会遇到这样或那样的故障,如何能在第一时间发现故障,并及时定位故障原因,保证业务不受影响,我想这应该是做好一个运维必须要掌握的技能.但人力不可能实时掌控系统的变化,于是监控系统应运而生,监控便是运维的眼睛,把监控和性能管理做好后,运维就是一件很轻松的事情.目前比较流行的开源监控工具有Cacti.Nagios(Icinga).Zabbix等.本文带来的是Zabbix基于Proxy分布式部署实现Web监控. Zabbix 简介 Zabbix是一个基于Web界面提供分布式系统

Apache/nginx转发设置-分布式部署(转)

转自http://blog.csdn.net/fujianianhua/article/details/8062234 Apache转发设置 1.  Weblogic安装 Weblogic8和Weblogic10默认安装,选择完全安装即可,如果是Weblogic9则选择自定义安装,勾选WebService plugin 2.apache服务器安装 安装说明详见文档<Apache服务器搭建说明.doc> 版本对应关系: Weblogic版本   Apache版本 weblogic8     Ap

【G】开源的分布式部署解决方案(二) - 好项目是从烂项目基础上重构出来的

G.系列导航 [G]开源的分布式部署解决方案 - 预告篇 [G]开源的分布式部署解决方案(一) - 开篇 [G]开源的分布式部署解决方案(二) - 好项目是从烂项目基础上重构出来的 分析目前项目结构 眼前出现这么一坨坨的文件夹,相信很多人已经看不下去了.是的,首先就是要把它给做掉. 按照这个项目文件夹的命名意图,大概可以划分如下: 1.Business:业务代码 2.Data:数据访问 3.Helpers:辅助类(通用类库之类的) 4.Models:各种模型(包括视图模型) 5.theme:皮肤

Hadoop2经典分布式部署模式

Hadoop2经典分布式部署模式 基于QJN的HA模式的分布式部署,不含Federation模块的实践是一个经典的Hadoop2的高可用的分布式部署模式. 1.准备测试环境 准备4台PC服务器做Hadoop2部署 ip hostname namenode fc datanode rm nodemanage QJN 10.71.84.237 hadoop201 Y Y Y Y Y Y 10.71.84.223 hadoop202 Y Y Y Y Y Y 10.71.84.222 hadoop203

Apache Spark探秘:三种分布式部署方式比较

目前Apache Spark支持三种分布式部署方式,分别是standalone.spark on mesos和 spark on YARN,其中,第一种类似于MapReduce 1.0所采用的模式,内部实现了容错性和资源管理,后两种则是未来发展的趋势,部分容错性和资源管理交由统一的资源管理系统完成:让Spark运行在一个通用的资源管理系统之上,这样可以与其他计算框架,比如MapReduce,公用一个集群资源,最大的好处是降低运维成本和提高资源利用率(资源按需分配).本文将介绍这三种部署方式,并比

EF之MSSQL分布式部署一:EFContext自定义数据库链接

不废话,上代码: 来源:http://bbs.csdn.net/topics/390823046 原文地址:EF之MSSQL分布式部署一:EFContext自定义数据库链接 /// <summary> /// 得到Entity的连接字符串 /// </summary> /// <param name="edmxFullName">Edmx的包括命名空间的全名称</param> /// <param name="server

分布式部署网站---文件系统的存储--ftp上传图片到指定文件服务器

问:通常一个网站程序发布在一个iis服务器上,但是如果要分布式部署网站.文件系统该如何存储呢? 答:通常的就是给网站文件系统一个子域名.比如 https://images.web.com. 网站程序内部通过代码调用ftp服务器-每次用户上传文件直接上传到相应imags域名对应的目录. 问:如果网站的图片,文件部署在子域名 网站该如何调用呢? 答:在视图模板里面 直接读取配置的images 域名  程序如下... public class AppConfig { /// <summary> //