ES索引误删的名场面
- ES索引误删的名场面
慌了3秒,果断发个邮件;
01
最近,在版本发布时;
ES线上未备份的索引,被当场「误删」了;
对于新手来说,妥妥的社死名场面;
对于老手来说,慌它3秒表示一下态度;
当时的情况也不复杂;
某「个别」队友在处理动态索引的字段问题时,反复重新构建结构和数据;
为了严谨;
还在自个本地环境不断的测试;
万事皆因忙中错;
忙着忙着,本地环境和线上环境就混了,手一抖,生产环境的数据跟着就没了;
当场傻楞了3秒,接着就是一句国粹脱口而出;
这一幕,属实有点似曾相识;
02
人祸横跳出来的时候;
慌没用,自责没用,甩锅更没用;
有用的操作就是团队静心找补,快速把问题解决好,不然都得跟着耗时间;
【首先】客观的说明一下项目情况;
体量很小的项目,几个「资深」的码农在三心二意应付着,然后就有老六不按常理出牌,事后还狡辩说锻炼了团队的应急能力;
【再来】聊聊当时每个人的应对;
- 项目经理:邮件通知相关人员,版本发布+结构模型和数据升级,并且禁用了相关模块;
- 当事人甲:平复情绪,稳住完成索引上线;
- 围观人甲:拖出线程池脚本,快速完成几千条索引条数据的重建;
- 运维同学:完成服务的最终升级,备份相关索引;
【纵观】全程,主打一手:若无其事,一本正经;
此处,细思极恐;
如果不是项目不值一提,这些个参与者弄不好还值得开会表扬一下;
职场上的队友要都是这般梦幻,一定要珍惜;
03
客观来说,项目本身「规格」很低;
但是,这种有开发介入,发布还在临时调试的情况本身就不常见;
在实际情况中;
虽然版本发布,有严谨的执行步骤,依然避不开个别老六灵光乍现的骚操作;
结果就是,和手搓的BUG正面对线;
这种要是出现在公司系统级的项目中,必然是得祭出点什么,取决于业务模块和影响面;
必须要郑重提醒;
不能轻易用手动的方式执行删除动作,可以用流程管理的方式实现;
这样整体可控,也有利于测试验收;
04
虽然索引删除的场面比较尴尬;
但是经过实践考验的应对流程,值得反思和总结;
不怕一万,就怕下一次的一万;
至于哪里能值得借鉴,这得看实际情况;
关于索引删除和重建的问题,在以前的文章中有提过,这里更多是记录一下处理思路;「参考文尾」

- 【1】快速下线相关功能模块,问题影响面广会增加复杂度,当时绝对在5分钟内下线;
- 【2】索引数据是基于消息队列调度的,并且可以暂停流程执行,方便处理索引结构;
- 【3】基于线程池高效的实现索引数据恢复,(没实际对比过,经常倒腾数据用顺手的工具脚本);
- 【4】运维进行索引备份,增强数据安全;
BUG对线过程,半个小时内就处理完毕了;
这里对于团队的人来说,每个人都迅速找准解决问题的切入点,顺畅的合作,准确并高效的解决;
项目负责人说,他那会去给客户道歉的话都想好了;
可惜,没给他兜底表演的机会;
05
最后总结两句;
虽然发布故障有点出其不意,但是团队在处理上还算体面妥当;
所以,魔幻的职场不重要,重要的是有魔幻的队友。
ES索引误删的名场面的更多相关文章
- Docker搭建EFK日志收集系统,并自定义es索引名
EFK架构图 一.EFK简介 EFK不是一个软件,而是一套解决方案,并且都是开源软件,之间互相配合使用,完美衔接,高效的满足了很多场合的应用,是目前主流的一种日志系统. EFK是三个开源软件的缩写,分 ...
- 数据源、数据集、同步任务、数据仓库、元数据、数据目录、主题、来源系统、标签、增量识别字段、修改同步、ES索引、HBase列族、元数据同步、
数据源.数据集.同步任务.数据仓库.元数据.数据目录.主题.来源系统.标签. 增量识别字段.修改同步.ES索引.HBase列族.元数据同步.DS.ODS.DW.DM.zk集群地址 == 数据源 数据源 ...
- 这么简单的ES索引生命周期管理,不了解一下吗~
对于日志或指标(metric)类时序性强的ES索引,因为数据量大,并且写入和查询大多都是近期时间内的数据.我们可以采用hot-warm-cold架构将索引数据切分成hot/warm/cold的索引.h ...
- Elasticsearch必知必会的干货知识二:ES索引操作技巧
该系列上一篇文章<Elasticsearch必知必会的干货知识一:ES索引文档的CRUD> 讲了如何进行index的增删改查,本篇则侧重讲解说明如何对index进行创建.更改.迁移.查询配 ...
- kibana添加ES索引403错误解决
kibana添加ES索引时发现kibana添加索引不生效,没有创建成功只是一闪而过 查看控制台发现报错403 解决办法: curl -XPUT -H "Content-Type: appli ...
- 使用es索引遇到的问题记录
1设置es索引的运行内存: 直接在启动文件里面改就好,启动命令是elasticsearch.bat,用notepad++编辑这个文件,里面添加这样的一行:SET ES_HEAP_SIZE=10g即可 ...
- 创建es索引{"acknowledged"=>true, "shards_acknowledged"=>false}
创建es索引{"acknowledged"=>true, "shards_acknowledged"=>false} [2018-05-19T13: ...
- How to reduce Index size on disk?减少ES索引大小的一些小手段
ES索引文件瘦身总结如下: 原始数据:(1)学习splunk,原始data存big string(2)原始文件还可以再度压缩倒排索引:(1)去掉不必要的倒排索引信息:例如文件位置倒排._source和 ...
- 创建es索引-格式化和非格式化
创建es索引-格式化和非格式化 学习了:https://www.imooc.com/video/15768 索引有结构化和非结构化的区分: 1, 先创建索引,然后POST修改mapping 首先创建索 ...
- Elasticsearch之重要核心概念(cluster(集群)、shards(分配)、replicas(索引副本)、recovery(据恢复或叫数据重新分布)、gateway(es索引的持久化存储方式)、discovery.zen(es的自动发现节点机制机制)、Transport(内部节点或集群与客户端的交互方式)、settings(修改索引库默认配置)和mappings)
Elasticsearch之重要核心概念如下: 1.cluster 代表一个集群,集群中有多个节点,其中有一个为主节点,这个主节点是可以通过选举产生的,主从节点是对于集群内部来说的.es的一个概念就是 ...
随机推荐
- C# 异步执行操作
为了方便测试异步,先加个计时 计时相关(可以直接跳过该部分) //开始计时 Stopwatch stopwatch = new Stopwatch(); stopwatch.Start(); // 停 ...
- 后端常用的Linux命令大全,建议收藏
引言 作为一名后端工程师,使用终端是一种常见的做法,也是你应该学习的技能.许多命令和实用程序可以帮助你在使用 Linux 时更有效地完成任务. 基本 Linux 命令 如果你想使用 Linux 操作系 ...
- 一个颜值功能双在线的Zookeeper可视化工具
大家好,我是 Java陈序员,今天给大家介绍一个颜值功能双在线的 Zookeeper 可视化工具. 项目介绍 PrettyZoo 是一个基于 Apache Curator 和 JavaFX 实现的 Z ...
- 「sdoi2019 - D2T2」移动金币
对 @command_block 没有 implementation 做法的细化.理论来说可以通过,但因为我实现得较劣无法通过.:( 把金币中的空隙看作石子,就是一个阶梯 Nim 的模型(有总共 \( ...
- 「note」原根照抄
阶(multiplicative order) \(\textbf{Def.}\):\(\delta_m(a)\) 为最小的 \(n\) 使得 \(a^n\equiv 1\pmod m\),其中 \( ...
- 在线问诊 Python、FastAPI、Neo4j — 创建 节点关系
目录 关系:症状-检查 关系:疾病-症状 代码重构 relationship_data.csv 症状,检查,疾病,药品,宜吃,忌吃 "上下楼梯疼,不能久站,感觉有点肿"," ...
- Python 实现Word转PDF
通过将 Word 文档转换为 PDF,您可以确保文档在不同设备上呈现一致,并防止其他人对文档内容进行非授权修改.此外,在你需要打印文档时,转换为PDF还能确保打印输出的准确性.本文将介绍如何使用Pyt ...
- 其它——paramiko模块的使用
文章目录 paramiko 一 介绍 二 通过用户名密码方式远程执行命令 三 通过用户名密码方式上传下载文件 四 通过公钥私钥远程执行命令 五 通过公钥私钥远程上传下载文件 六 通过私钥字符串远程连接 ...
- Go语言系列——11-数组和切片、12-可变参数函数、13-Maps、14-字符串、15-指针、16-结构体、17-方法、18-接口(一)、19-接口(二)、19-自定义集合类型、20-并发入门
文章目录 11-数组和切片 数组 数组的声明 数组是值类型 数组的长度 使用 range 迭代数组 多维数组 切片 创建一个切片 切片的修改 切片的长度和容量 使用 make 创建一个切片 追加切片元 ...
- 自学一周python做的一个小游戏《大球吃小球》
需求 1,显示一个窗口. 2,我们要做到的功能有鼠标点击屏幕生成小球. 3,生成的小球大小随机,颜色随机,向随机方向移动,速度也随机. 4,大的球碰到小球时可以吃掉小球,吃掉后会变大. 5,球碰到边界 ...