部署说明

硬件

server两台:

机器A:64G内存

机器B:32G内存

分片

共12个节点

2个查询节点。10个存储节点

8个主分片

1个复制分片(每一个分片都有一个副本分布在不同的节点上面)

每台机器都挂了6个机械盘每一个盘都是不同的分区。

部署环境用docker weave 来做 elasticsearch cluster

能够參考我的另外一篇博文:

http://blog.csdn.net/mrsunnycream/article/details/50921012

就这样环境默默的部署着。一切都非常顺利。

部署完毕后開始导入数据,导入一部分数据后(因为数据量比較大),就关机下班了。

大约有几十G左右。

第二点上班后要继续导入数据。开机,启动weave,启动Es 集群,

然后查看集群状态:red. 我想了下主分片不可用?不可能啊,是不是有的节点没有增加集群呢,然后查看weave 状态。两台机器都互相Ping一下 weave 转发的路由,一切都是通的,过了一会还是red,不淡定了,查看集群节点数量12个。对啊没错啊,怎么回事呢?然后又去看日志,没有报什么错误。如今真的開始不淡定了。

然后就用 _cat/shards,来查看究竟是哪个分片出问题了。

结果看到7号分片没有挂载到集群里面



出现这个问题感觉非常诡异啊,即使主分片找不到,副本也能顶上去啊。

这个问题发现越来越大了。我勒个乖乖。

每一个节点的数据都是挂载到不痛的机械盘上的也就是不同的分区上面的。

然后就一个一个分区的挨着找,然后查看分区数量也没错。进去分区中看看昨天传送数据的时候七号分片在那个盘上面。当找到第三个分区的时候发现 明明是两个节点的数据挂在这个分区上面怎么这个分区上面有五个节点的数据。哎開始头晕啊。没办法继续找原因吧,可是发现这个分区的两个节点中有七号分片,可是一点数据都没有,又看看其他的几个数据文件夹是正常的,然后紧跟着查看其他分区的情况发现第四个分区也是这种情况,感觉跟发生了灵异事件差点儿相同,命名配置的节点数据都在指定的分区上面(就是Docker挂在不通的文件夹以下),假设把第三个分区和第四分区的文件夹调换一下就应该是正确了。

可是也不能手动的移动文件夹吧,还得找问题出在什么地方吧。

我用了以下的办法

在每一个分区上面建立一个文件,文件名称字就和分区编号一样。紧接着我关机,再次又一次启动机器发现有的文件名称称和自己所在的分区编号不一致(当然经过多次关机和开机測试的)。

我勒个乖乖啊,如今大家可能想到问题的根源了啊。

原来是挂盘出现的问题,最后把原来的盘符名称改成UUID后问题就攻克了。

打开 /etc/fstab这个文件。把上面的/dev 开头的换成以下UUID开头的即可了

先在机器上面运行sudo blkid命令

然后依照相应关系进行替换,例如以下所看到的

stat and raid

/dev/sdb1 /opt/lucy1 ext4 defaults 0 0

/dev/sdc1 /opt/lucy2 ext4 defaults 0 0

/dev/sdd1 /opt/lucy3 ext4 defaults 0 0

/dev/sde1 /opt/lucy4 ext4 defaults 0 0

/dev/sdf1 /opt/raid ext4 defaults 0 0

UUID=aaaaa-aaa-aaaa-aaa-aaaa /opt/lucy1 ext4 defaults 0 0

UUID=bbbbb-bbb-bbbb-bbb-bbbb /opt/lucy2 ext4 defaults 0 0

UUID=ccccc-ccc-cccc-ccc-cccc /opt/lucy3 ext4 defaults 0 0

UUID=ddddd-ddd-dddd-ddd-dddd /opt/lucy4 ext4 defaults 0 0

/dev/sdf1 /opt/raid ext4 defaults 0 0

真是一个悲伤的故事!

。!

Elasticsearch 之 慘痛部署(分片移位)的更多相关文章

  1. elasticsearch+kibana+metricbeat安装部署方法

    elasticsearch+kibana+metricbeat安装部署方法 本文是elasticsearch + kibana + metricbeat,没有涉及到logstash部分.通过beat收 ...

  2. Elasticsearch介绍及安装部署

    本节内容: Elasticsearch介绍 Elasticsearch集群安装部署 Elasticsearch优化 安装插件:中文分词器ik 一.Elasticsearch介绍 Elasticsear ...

  3. mongodb 集群部署--分片服务器搭建

    部署分片服务器 1.分片 为了突破单点数据库服务器的I/O能力限制,对数据库存储进行水平扩展,严格地说,每一个服务器或者实例或者复制集就是一个分片. 2.优势 提供类似现行增·长架构 提高数据可用性 ...

  4. ELK教程1:ElasticSearch集群的部署ELK

    在分布式系统中,应用数量众多,应用调用链复杂,常常使用ELK作为日志收集.分析和展示的组件.本篇文章将讲讲解如何部署ELK,然后讲解如何使用Filebeat采集Spring Boot的日志输出到Log ...

  5. 【分片无法挂载】Elasticsearch分片和副本无法挂载(分片移位)

    部署说明 硬件 服务器两台: 机器A:64G内存 机器B:32G内存 分片 共12个节点 2个查询节点,10个存储节点 8个主分片 1个复制分片(每个分片都有一个副本分布在不同的节点上面) 每台机器都 ...

  6. 谈一谈Elasticsearch的集群部署

      Elasticsearch天生就支持分布式部署,通过集群部署可以提高系统的可用性.本文重点谈一谈Elasticsearch的集群节点相关问题,搞清楚这些是进行Elasticsearch集群部署和拓 ...

  7. elasticsearch 路由文档到分片

    路由文档到分片 当你索引一个文档,它被存储在单独一个主分片上.Elasticsearch是如何知道文档属于哪个分片的呢?当你创建一个新文档,它是如何知道是应该存储在分片1还是分片2上的呢? 进程不能是 ...

  8. Elasticsearch究竟要设置多少分片数?

    0.引言 本文翻译自Elasticsearch20170918热乎的官方博客,原作者:Christian Dahlqvist. 在构建Elasticsearch集群的初期如果集群分片设置不合理,可能在 ...

  9. nutch2.1+mysql+elasticsearch整合linux单机部署

    这次主要介绍下nutch2.1和mysql和elasticsearch的整合,是在单机上运行,并不是分布式部署.1.下载nutch2.1 nutch下载地址:http://labs.mop.com/a ...

随机推荐

  1. codeforces Lightsabers (hard)

    题目大意: 给定每种球的数量,求从中选取k个球有多少种不同的取法,同种球视为相同的. 题解: 多项式(1+x+x^2+...+x^a[1])*(1+x+x^2+...+x^a[2])*(1+x+x^2 ...

  2. JSTL 配置

    pache Tomcat安装JSTL 库步骤如下: 从Apache的标准标签库中下载的二进包(jakarta-taglibs-standard-current.zip). 官方下载地址:http:// ...

  3. python27 mysqldb window install

    https://www.codegood.com/archives/129 下载地址 : https://i.cnblogs.com/Files.aspx

  4. I/O输入系统

    I/O输入系统 计算机有两个主要任务:I/O操作与计算处理.在许多情况下,主要任务是I/O操作.而计算处理只是附带的. 操作系统在计算机I/O方面的作用是管理和控制I/O操作和I/O设备. 概述 对与 ...

  5. CentOS下SWAP分区建立及释放内存详解

    方法一: 一.查看系统当前的分区情况: >free -m 二.创建用于交换分区的文件: >dd if=/dev/zero of=/whatever/swap bs=block_size ( ...

  6. Python之Monitor监控线程(干货)

    在日常工作中常遇到这样的情况,我们需要一个监控线程用于随时的获得其他进程的任务请求,或者我们需要监视某些资源等的变化,一个高效的Monitor程序如何使用python语言实现呢?为了解决上述问题,我将 ...

  7. 写给新员工的十点SQL开发建议

    1.建立自己的知识体系 摘抄一句话你所拥有的知识并不取决于你记得多少,而在于它们能否在恰当的时候被回忆起来: 做笔记: 把笔记放在可以随时被找到的地方.个人的笔记可以放在印象笔记之类工具上,单位上的笔 ...

  8. 洛谷3830 [SHOI2012]随机树 【概率dp】

    题目 输入格式 输入仅有一行,包含两个正整数 q, n,分别表示问题编号以及叶结点的个数. 输出格式 输出仅有一行,包含一个实数 d,四舍五入精确到小数点后 6 位.如果 q = 1,则 d 表示叶结 ...

  9. 使用反射获取类中的属性(可用于动态返回PO类的列,当做表格的表头)

    //利用反射取类中的属性字段 try { Class clazz = Class.forName("houji.bean.model.TaskModel"); Field[] fi ...

  10. poj 3304 判断是否存在一条直线与所有线段相交

    Segments Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 8579   Accepted: 2608 Descript ...