部署说明

硬件

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. git commit 含有中文的代码,提示Warnning:Your console font probably doesn't support Unicode.......

    git 提交代码是会遇到以下问题, git commit 代码时提示: Warning: Your console font probably doesn't support Unicode. If ...

  2. 阿里云PolarDB及其共享存储PolarFS技术实现分析(下)

    上篇介绍了PolarDB数据库及其后端共享存储PolarFS系统的基本架构和组成模块,是最基础的部分.本篇重点分析PolarFS的数据IO流程,元数据更新流程,以及PolarDB数据库节点如何适配Po ...

  3. swift写一个简单的列表unable to dequeue a cell with identifier reuseIdentifier - must register a nib or a cla

    报错:unable to dequeue a cell with identifier reuseIdentifier - must register a nib or a class for the ...

  4. vmware的vmdk格式虚拟机转换为qcow2格式

      今天应其他部门的需求,把一个笔记本里的vmware的window2008的虚拟机转换为qcow2格式,在公司服务器上运行. 第一次做,用了许多时间 首先: 虚拟机的镜像分为多个vmdk文件,所以我 ...

  5. PHP “引号兄弟”

    PHP的string最大可以达到2GB,不过很少会用到这么大的字符串. 单引号: 定义一个字符串最简单的方式是使用单引号,而在单引号字符串中要想表达一个单引号,需要在她的前面加个反斜线(\)来进行转义 ...

  6. Opencv学习笔记——视频进度条的随动

    1. CvCapture结构体: CvCapture是一个结构体,用来保存图像捕获的信息,就像一种数据类型(如int,char等)只是存放的内容不一样,在OpenCv中,它最大的作用就是处理视频时(程 ...

  7. BZOJ 2286 [Sdoi2011]消耗战 ——虚树

    虚树第一题. 大概就是建一颗只与询问有关的更小的新树,然后在虚树上DP #include <map> #include <ctime> #include <cmath&g ...

  8. [BZOJ4779] [Usaco2017 Open]Bovine Genomics(hash + 二分)

    传送门 网上的题解: 枚举左端点,二分右端点位置,最后所有左端点的答案取最小值 我的题解... 二分答案,枚举左端点,看看是否有解.. 好像和上面是反的,但是思路没问题 过程用hash判重 #incl ...

  9. 刷题总结——支线剧情(bzoj3876费用流)

    题目: [故事背景] 宅男JYY非常喜欢玩RPG游戏,比如仙剑,轩辕剑等等.不过JYY喜欢的并不是战斗场景,而是类似电视剧一般的充满恩怨情仇的剧情.这些游戏往往 都有很多的支线剧情,现在JYY想花费最 ...

  10. 解决 sqlalchemy 报错:(1193, "Unknown system variable 'tx_isolation'")

    1出现此报错的原因是使用的mysql8.0 以前用的是:tx_isolation 现在用是: transaction_isolation a.通过升级 sqlalchemy 的方法可以解决此问题, p ...