很久没有写KM了,最近lester这边在梳理CDB这边存在的问题,并推动那些问题解决措施的落地。无疑当前CDB存在比较多的问题,也有很多坑。需要我们运维和开发的同学多思考问题的根源和解决办法,并付诸实践,成为问题的终结者,而不是成为一个会发现问题而不知道解决问题或者只是一个制造问题的人。通过最近对CDB运维兄弟们的观察,发现大家做事情的思路和执行力有了很大的提高。这里通过一个case来分享一下关于做事的一些想法。

事情的起因是由于同事调岗lester这边在接手和梳理内部CDB的相关业务,在接手的过程中遇到了一些坑,其中包括OSS容灾、OSS DB容灾和同步等问题,当主OSS出现硬件故障无法启动,尤其是有一些OSS的机器是比较老的C1机器。当时遇到的一个问题是主OSS所在的服务器硬盘故障,而且里面的数据也无法读取出来。默认CDB的OSS都有备机,但是由于OSS备机的信息是记录在OSS主机的配置文件中,当OSS主机的数据无法读取的时候,压根就不知道备份的机器在哪里。写脚本扫描了半天才找到备机的OSS。经过2个小时的各种配置终于恢复的。心中一万个草泥马奔腾而过。

碰上了这个坑,促使我们运维的同学去深入思考。无疑这种坑的存在是对我们运维不专业的一个嘲讽,这里体现出几个漏洞:

  • OSS配置除了主备外没有做备份,有的OSS连备机也没有。
  • OSS备机不一定OK
  • OSS DB主从没有监控,有的OSS DB没有从DB。

虽然之前CDB的OSS和OSS DB一直在开发的手里,然后毕竟我们是干运维的,我们运维存在的价值就是确保线上稳定运营和数据安全。将这个问题简单讨论后初步确定运维侧需要将CDB的OSS和OSS DB进行备份起来,出现的问题能快速进行修复。

接下来这个大坑就由我们组的zhaodeluo负责牵头搞起,接下来要重点介绍的就是zhaode同学做事情的思路和态度,对于一个可以说是非常小的备份的事情,zhaode同学能从这个坑入手延伸出好几公里,功力深厚令人赞叹,处理问题的思路值得我们所有运维的同学思考和学习。他的处理方式如下:

  1. 统计出CDB所有集群OSS的容灾情况(是否都有从机、从机是否真的生效、OSS的机型、是否过保?)
  2. 统计出CDB所有集群的OSS DB的容灾情况(是否有从DB、从DB同步是否正常)
  3. 写脚本备份CDB所有集群的OSS数据。
  4. 写脚本将CDB所有集群的从DB的同步都监控起来。
  5. 写脚本备份CDB所有OSS DB主库的数据。
  6. 研究CDB集群OSS的搭建、从OSS的搭建,完善之前的安装文档。
  7. 实践CDB集群切换到从OSS的详细操作,并整理成可以操作的详细文档。
  8. 实践在备份完集群主OSS和DB后进行恢复验证,确保备份是有效的。

看完zhaode同学的思路,不得不另我这个工作了8年,自以为解决问题有自己方法论的人感到大吃一惊,不愧是曾经在百度和IBM成长起来的大牛。我从中学到的是一个老员工踏踏实实做事,认认真真地做事的态度。这不就是用心做事最好的诠释么?

经常听人用心做事、用心思考。对应用心做事,无关乎技术、无关乎职级、无关乎岗位,关于的只有你做事的心态。我想对于用心做事的人,事情无大小,当你真正的将心沉浸其中,即使是再小的事情,你也能将它做得出彩。当一个小事你能做得让别人觉得出彩的时候,你将会有更大的舞台。还是那句话,我们的生活是被许许多多平平凡凡的事情包围,当你将平凡的事情做得不平凡,那么你也注定会不平凡。

小小的一个做事的case,加个小班,写出来,和各位CDB开发和运维的同学共勉!

一个关于运维人员做事的很好的case,拿出来和大家共勉的更多相关文章

  1. linux运维人员成长

    原文地址:https://blog.csdn.net/kwame211/article/details/78059331 初级篇 linux运维人员常用工具拓扑详见: 1rsync工具 很多地方经常会 ...

  2. 编写一个BAT脚本协助运维人员遇到问题时候调测数据库是否有效连接成功的操作攻略

    简单摘要: 1.内网系统出现故障需要排查 2.运维人员不熟悉数据库操作,没法通过连接数据库和执行SQL语句的方式排查数据库及数据是否正常 3.解决方案:编写一个bat脚本,运维人员双击运行即可.   ...

  3. 一切从“简”,解放IT运维人员

    运维人的神技 运维既是个技术活儿也是个苦差事,而运维人员被期望有着无限的技能:主机.存储.网络.操作系统样样精通,而且还要会写SQL.shell.开发语言java..net.python等等,对业务更 ...

  4. Linux运维人员如何学习python编程

    Linux运维人员如何学习python编程 从不会写代码,到自己独立能写代码解决问题 .这个问题很重要!盲目学习所谓的项目,最后 还是不会自己写代码解决问题.首先解决了独立能写代码解决问题,再通过项目 ...

  5. Linux运维人员共用root帐户权限审计

    Linux运维人员共用root帐户权限审计 2016-11-02 运维部落 一.应用场景 在中小型企业,公司不同运维人员基本都是以root 账户进行服务器的登陆管理,缺少了账户权限审计制度.不出问题还 ...

  6. 值得IT运维人员警示的“一件事儿”

    昨天,一个用户打来了紧急求助电话,并且发了邮件,弄得我当时紧张了一下,以为他们那里又出了什么乱子.用户在电话里说:应用系统性能很差,运行很慢,几近“卡死”的感觉,而且重启了多次应用和数据库服务器,最终 ...

  7. 运维人员:走好你的IT运维路

      转自 http://os.51cto.com/art/201303/387120.htm   现阶段,大多数运维人员只是处于被动低效率手工救火的状态,企业对其重视程度不高,导致部分运维人员对自己的 ...

  8. Linux运维人员共用root帐户权限审计(转至马哥Linux运维)

    一.应用场景 在中小型企业,公司不同运维人员基本都是以root 账户进行服务器的登陆管理,缺少了账户权限审计制度.不出问题还好, 出了问题,就很难找出源头.这里介绍下,如何利用编译bash 使不同的客 ...

  9. Linux 之不同运维人员共用root 账户权限审计

    一.为什么? 在中小型企业,公司不同运维人员基本都是以root 账户进行服务器的登陆管理,缺少了账户权限审计制度.不出问题还好,出了问题,就很难找出源头. 这里介绍下,如何利用编译bash 使不同的客 ...

随机推荐

  1. python的__call__、__str__、__repr__、__init__、__class__、__name___、__all__、__doc__、__del__等魔术方法的作用

    python中,一切都是对象 在Python中,所有以“__”双下划线包起来的方法,都统称为“Magic Method”--魔术方法 1.__call__:作用是把类实例变成一个可调用对象 在Pyth ...

  2. 关于BufferedInputStream和BufferedOutputStream的实现原理的理解

    在介绍FileInputStream和FileOutputStream的例子中,使用了一个byte数组来作为数据读入的缓冲区,以文件存取为例,硬盘存取的速度远低于内存中的数据存取速度.为了减少对硬盘的 ...

  3. 数据库学习--wildfly配置postgreSQL数据源

    前言 实验室最近在做一个物品管理系统的小项目,其中涉及到postgreSQL的使用,刚开始部署到wildfly服务器上时遇到了若干问题,终于在导师的讲解下大体上明白了 ,特此记录分享学习一下. 配置数 ...

  4. 计算GPS两点间的距离[单位为:米]

    /**     * 计算GPS两点间的距离[单位为:米]     * @param center GPS当前数据(LonLat对象表示,LonLat.lon表示经度,LonLat.lat表示纬度)   ...

  5. python读写文件write和flush

    打开文件用open,该函数创建一个文件对象,这将用来调用与之关联的其他支持方式. file object = open(file_name [, access_mode][, buffering]) ...

  6. C3:建造者模式 Builder

    将一个复杂对象的创建与表示分离,使得同样的构建过程可以创建不同的表示. 应用场景: A.创建这个对象通常需要较多的参数,才能完整的表示该对象.B.类的各个组成部分的具体实现类或算法经常面临变化,但将他 ...

  7. ListView:聊天界面

    一.最终成型图 二.主界面xml布局 <?xml version="1.0" encoding="utf-8"?> <LinearLayout ...

  8. HDU 3732 Ahui Writes Word(多重背包)

    HDU 3732 Ahui Writes Word(多重背包) http://acm.hdu.edu.cn/showproblem.php? pid=3732 题意: 初始有N个物品, 每一个物品有c ...

  9. Windows web服务器搭建---阿里云

      前提步骤: 1)申请域名---- 阿里云.花生壳.万维网等等. 2)云主机购买-----阿里云.腾讯云.京东云等等. 3)网站备案,此步骤最长. 4)建立网站 5)部署网站 下面主要介绍如何部署网 ...

  10. android ListView滚动条监听判断滚动到底部还是顶部

    代码: lv.setOnScrollListener(new OnScrollListener() { public void onScrollStateChanged(AbsListView vie ...