灾难恢复与您
您的团队是否制定了灾难恢复计划?DR计划到底是什么?
在这个世界上,坏事时有发生:龙卷风摧毁数据中心,笔记本电脑坏掉,办公楼受损。
和我一起学习预测和减轻灾难的实用指南。
你的老板会感谢你的!
视频记录
你好SwampUP。我叫瓦莱丽·雷加斯,今天我要和大家谈谈灾难恢复。这不会是一个详尽的谈话。显然,这是一个25分钟的会话,但它应该为您提供一个很好的起点,并且在编写灾难恢复计划时需要考虑一些事情。我将从介绍我自己开始。我和我最好的朋友迈克尔结婚了,我们有三个很棒的孩子。他一直在软件行业工作,当我想转行的时候,他鼓励我去一个编程训练营。你知道,从那个新兵训练营开始,我就在DevOps实习,最近刚加入SalesForce的一个DevOps团队。
这很有趣。很有趣。我有世界上最酷的姐妹。我学柔道已经20多年了。这是我的爱。所以我引用了很多柔道的例子,让我来介绍一下,关于我的一个有趣的事实下面那张穿着奇装异服的女孩的照片,那是我妹妹,那是我主持她的婚礼。
我是被任命的牧师,如果有人想要世俗的婚礼,我是你的女孩。我说的够多了。
我们来谈谈什么是灾难恢复计划?这句话你听过很多次了。至少我是这么做的,但我并不是百分之百确定到底需要覆盖什么,这应该是什么?让我们开始吧。这一切都是关于预测可能发生的最坏的事情,并提前减轻它们。
现在,这个话题真的触动了我的灵魂。事实上,当我在上一家公司被分配创建一个DR计划时,有几个人基本上说,Valarie,你是激怒了谁才被困在这个计划里?我想,伙计,我有复杂的创伤后应激障碍,思考可能出错的事情是我的果酱。因为我一直在思考可能发生的事情,以及我如何先发制人地解决它,这很好。我喜欢这样,我的大脑就是这样工作的。所以当我意识到这一点时,我很兴奋,所有的一切都是在考虑什么可能出错,我们必须做什么才能把我们的产品带给最终用户,比如这个过程不会出错,你知道,很顺利100%的正常运行时间,这是我们的目标。
保持准备。酷。所以说到你的DR计划,我们我要谈谈计划的内容,但要记住,一个没人看到的计划,就像不存在一样。所以它需要广泛使用,这取决于你的公司规模,你的团队规模。
你是否只是为一个大组织中的一个小团队写这个计划?或者你是一家初创公司,这是面向所有人的?这将决定你如何让每个人都能使用它。一旦每个人都可以使用它,你想要经常练习,我们会更多地讨论这个,比如这个看起来像什么,用不同的场景,我们会讲到,但是记住,未经检验的计划就像不存在一样。再说一遍,我要说很多次,重点是要思考如何在事情坏掉之前解决问题。我们从哪里开始呢?
我们从哪里开始呢?因为我的意思是,我有点不知所措。整个过程让我有点不知所措。所以我们将讨论你的产品,IT问题,服务器问题,这些事情,因为我猜对大多数人来说,如果你正在制定一个DR计划,主要是要把你的产品送到最终用户那里。
然而,当我写计划的时候,我不是在一家初创公司,而是在一家非常大的公司的子公司我们要像创业公司一样运作。还有几个……
我不知道只是软件之外的东西我写在我的计划中,这可能与你有关所以我们要简单谈谈其他一些事情如果你没有一个办公室经理来负责DR计划更多的,你知道,与办公室有关的事情,你可以被评估,在你的团队中脱颖而出,在你的老板面前脱颖而出。而且,你知道,也要想想那些事情。
所以以人为本。任何在现实生活中认识我的人,都是以人为本。谁该对此负责呢?
这是一个非常重要的部分,因为即使你有一个很棒的计划,经过了彻底的测试和排练,每个人都知道,一切都很好。你必须指定谁来做这些事情,他们做什么,所以我们会稍微讨论一下。你需要一支急救队。所以你可以根据,你的公司,你的角色,你的工作,你在写什么来选择?
您是否希望按角色、按名称委派职责?如果你在一家小公司,员工流失率很低,团队关系很紧密,一段时间内没有人要离开,你可能会说,嘿,罗伯,你负责这个,莎拉负责这个,加布里埃尔负责这个。很好,这可能对你的团队有用。或者你可能会说,工程经理对此负责。
首席后端工程师对此负责。这取决于你的团队、你的公司以及什么对你有用。但是你想要具体一点。
就像你知道,如果你在公共场合有人心脏病发作,你永远不会说"有人打911 "你会尴尬地和一个人进行眼神交流然后说"你,打911 "否则没人会这么做。
顺便说一下,我有心理学学位。对,DR计划也是一样,你总是想要非常明确谁做什么,并指定一个备份,因为人们生病了,在计划重新制定之前就离开了。你需要后援总是有原因的。
现在,关于你的备份,需要考虑的是确保计划中的每个人都能获得履行职责所需的一切。那看起来像什么?也许您的备份通常不需要云提供商中的特定权限集。如果它们是您的DR计划的备份,则它们需要具有履行其职责所需的任何权限。如果我们谈论的是办公室后勤之类的事情,在我以前的公司,有几个房间可能只有三个人有钥匙。好吧,如果你要指定一个可能需要进入那个房间的后备人员,他们可能应该有一张钥匙卡,或者至少在办公室的某个地方应该有一张应急钥匙卡。想想这些事情,确保你让谁去做这些事情都有他们需要的工具和途径去做这些事情。
领导,谁来做这个?所以对于每一种不同的情况,或者潜在的灾难,你要非常清楚谁宣布发生了灾难,谁负责说,好吧,我们现在开始实施这个,这可能会根据团队规模,公司规模而有所不同,你知道,你的DR计划有多广泛,但要非常具体。
你想成为…再说一次,这可以按角色划分,可以是你想要的任何方式,但你需要确保人们知道谁负责说,好吧,这是一场灾难,我负责,我在运行,让我们这样做。
谁拥有每一步?这又回到了……在一群人中,如果你说,嘿,一群人完成一项任务,很可能没有人会去做。但如果你说你做这个,你做这个,你做这个,你更有可能得到回应,所以要非常非常细致地说明谁做什么,或者至少是谁在指导什么过程,并确保有人做。这是一个有趣的问题,当我开始写我的文章时,我并没有想到,但是谁在什么时候和媒体交谈?根据你公司的规模,你的团队和你写的东西,你可能要考虑在什么时候中断,什么时候,你知道,用户无法访问你的产品需要有人发布公告?这怎么可能呢?那会是什么样子?
你是否提前写好公告,这样就可以随时修改,谁来负责?
只是需要考虑一下。所以,不管你在写什么计划,不管里面有什么内容,如果人们不沟通,那就是一个问题。我们要稍微讲一下这个。我不知道你们所有人的情况,但在过去的几年里,我在不同的时间在这种情况下,我是否会懈怠?
我用谷歌聊天吗?我是不是用了别的软件?我们是发短信还是发邮件?我们在做什么?我猜在你们公司,你们有很多不同的沟通方式。在DR计划中,你可能需要考虑的一件事就是我所说的标准使用顺序。
所以基本上,当事情出错时,我们首先通过我们的寻呼系统进行沟通,然后是Slack,然后是电子邮件,然后是手机,就像指定每个人应该预期的沟通方式一样。假设Slack宕机了,你已经知道了第二,然后是第三等沟通方式,所以人们知道应该打开什么,关注什么,去哪里寻找他们的队友。
你不仅要考虑你的队友和公司的员工,当你写计划的时候,你也要考虑到服务提供商和供应商。假设你正在写的东西,你知道,与你实际的办公大楼有关,你的水线破裂了,对吧?
你的房子是谁的?你的维修人员是谁?谁该对此负责呢?谁是负责叫水管工的大楼管理员?你是谁,对吧?这些都是你想写进你的计划的事情。所以如果发生了什么事,不一定是在你这边,但可能是谷歌云的问题,你会联系谷歌云的谁?比如,你应该联系谁?
因为如果真的有紧急情况,你肯定不想通过标准的客户服务渠道。所以要好好想想。你有任何依赖,你知道,很明显,任何为你提供服务的人,他们都是依赖的,考虑到这一点。最重要的是,要定期更新。我在不同的地方读到,你知道,你每季度,每个月更新你的计划,不管是什么,没有正确的答案,我只想说,没有正确的答案。
看看你的团队,看看你的公司,看看你的需求,看看你实际遇到问题的频率,然后提出问题有一个时间表,并坚持下去,把它放在日历自动ping,谁负责更新它。
我们将以这个频率更新这是要更新的东西的清单。非常喜欢清单。记住这一点。好吧,我们来谈谈。发生了什么?我们试图减轻的是什么?再说一次,这不是一个详尽的清单,但这些只是一些更频繁出现的事情。我要提一下,当我最初写这篇文章的时候,我向社区里的所有人发出了一份调查问卷,询问他们关于出错的可怕故事,所以我们将要谈论的所有事情都出错了,或者有人回应了。所以我们将从使用的硬件和产品开始,这是第三方的。hth华体会最新官方网站所以你会想要盘点所有的东西,对吧?
你会想知道,而不仅仅是…假设你在一个小团队中,你不想说,我们有10台电脑,你想说,我们有4台惠普,这是它们的模型,等等……你知道,我们有这六台MacBook pro,这是它们的序列号,如果我们的硬件出了问题,这是我们打电话给谁,对吧?也许你所在的公司有一个办公室经理,如果你的电脑完全坏了,你就和他谈谈,或者你在一个非常大的组织里,有一整个团队的人你必须以一种特定的方式联系他们。
知道,你知道,如果你有预置服务器,谁制造了它们,它们的序列号是什么,如果有硬件问题你打电话给谁?这些都是重要的事情。然后你要继续思考,如果有什么坚固的东西坏了,我们要替换它,对吧?也许你在这样的公司工作,如果你的电脑坏了,他们会把它报废,重新开始,然后有人会给你寄来一台闪闪发光的新电脑。酷。顺便说一下,恭喜你,你的公司做得很好。或者可能有一个翻新或修理的过程,或者你寄出去,他们又寄回来。
如果你要把替换计划写进你的计划中,那就制定一个预算,和任何你需要的人讨论这个问题,这样你就知道你的限制是什么,如果发生了什么事情,应该去哪里,如果你有整个服务器机架的问题,我们怎么替换这些吗?我们给谁打电话?我们在做什么?
有什么计划吗?让我们讨论一下自动故障转移和站点切换。所以这可能是最大的一块,因为我有很多恐怖的故事走了进来,说了很多,你知道的,我们有这个问题,我们有备份站点,但它没有自动走过去,我们不知道如何处理数据,你知道的,暂停和重新思考,创建一个计划,这样如果发生,你有一个备份网站几乎自动,你将它自动,我的意思是,很明显,人类会参与其中,但你要尽可能地减少产品宕机的时间。
如果您有一个镜像站点,需要频繁地签入和更新,那么请在您的计划中加入一个时间表,用于下沉数据库、维护镜像站点和倒挂站点。还要经常演练站点切换,对吗?所以这看起来就像你指定谁负责站点切换,你制定一个时间表,他们会去做,你要有很好的文件记录它是如何进行的,任何出错的地方,一切都很顺利。然后在网站开通后进行事后分析,我们需要改进什么?我们怎样才能使它更快呢?
我们怎样才能让它简单一点呢?因为当真正糟糕的事情发生时,很明显,你没有。你知道,计划时间,我和Salesforce的一位SRS交谈过,他是一个很棒的家伙,他说,是的,他们有一个固定的时间表,这很好,在网站切换之前的几天,我们做清单,清单,清单,网站切换,检查文件,事后分析。
非常高效的系统,当不好的事情发生时,处理得更快。你肯定想监控异常流量,显然你无论如何都想这样做,但很多可怕的故事发生在软件上,那里的流量峰值是不寻常的,没有人真正注意到,因为它有点……基本上DDoS攻击正在发生,没有人注意到,因为它们总是有峰值。这些都是你想要写的东西。如果你看到不寻常的交通,你该怎么做?你能多快做出反应?
另一件我没有想到的事情是,你们的版本控制,对吧?你想在你的计划中写一个固定的时间表,为特定的人从你的仓库中提取,在特定的时间表?我为什么这么说?有几个人分享了他们遇到的问题……这是Bitbucket GitHub和GitLab,它们不是一个组织,但它们会随机中断一天。好吧,我想我们都慢下来了。
现在,如果这不是什么大事,你不需要把它写进去。但如果你不断地交互和推送代码,如果你需要,你知道,需要能够不断地与你的版本控制系统交互,你可能会想,好吧,你是这个存储库的代码所有者,请每天早上都拉代码。同样,这并不总是必需的,但需要考虑,因为版本控制可能会出错。
数据库,我把这个留到这一节的最后,因为我的天哪,对我来说,最糟糕的事情就是数据丢失。对吧?就像一旦它消失了,它就消失了。这就是为什么你总是有备份和简报什么的。但数据丢失对我来说是最大的问题因为作为用户,我是说,想想当你打开你的亚马逊应用时,对吧?
作为用户,如果我打开那个应用,什么都没发生,它就退出了,这有问题。我有点恼火。几分钟后就回来。我相信他们能站起来。酷。但是,如果它工作得很好,但是我看不到我去年订购的任何东西,我很生气,对吧?所以,是的,我们认为我们开始谈论一点关于全镜像恢复站点。这一点非常重要。当你有一个镜像站点时,或者当你遇到问题时你需要考虑如何处理数据下沉,对吧?举个例子,如果你在做一个站点切换的实践运行,你要考虑什么时候切断用户创建更多数据或与数据交互的能力?
你打算什么时候把它切断,这样你就能沉浸在开关里了,对吧?你肯定不希望在转换过程中丢失任何东西。在紧急情况下。如何处理切断数据以便访问完全镜像站点?这些都是你一定要写进去的。我们要怎么处理这件事?对吧?我们不希望我们的用户在切换时与坏掉的旧版本交互。
把它写下来。想想看。
是的,确实有很多关于数据丢失的恐怖故事,我的意思是,有些事情你可以计划,有些事情你不能,对吧?我记得是几年前,一个公用事业工人在亚马逊的一个大数据中心外剪了一条线。你猜怎么着?这是个问题。你不能为那做计划。你无法计划如果一只蝴蝶在密尔沃基扇动翅膀。这对我的软件有什么影响?但你可以说的是,好吧,让我们假设我们的任何一个数据中心都可能出现问题。
我们有广泛可用的数据吗?我们是否一直在后退和反思?我们的恢复站点是否随时准备就绪?越接近越好。这些都是你可以控制的。更重要的是,团队中的每个人都知道灾难来袭时到达现场是什么样子吗?然后继续努力吗?所以,是的,我的意思是,如果你只是在做直接的产品灾难恢复,这真的是你想要的肉和土豆。
但如果你想为公司增加价值,或者你在一家小公司工作,我们将简单地谈谈一些事情。第一,好吧,我在2020年1月写了灾难恢复计划。
我是个书呆子,从感恩节开始就一直关注BBC世界新闻的冠状病毒。所以我感觉有什么东西要来了。我没有预见到2021年还会遥远,但我觉得有什么东西要来了。
这是一件大事,也让我被嘲笑为危言耸听但如果你不能在办公室工作,会发生什么,对吧?
谢谢你,大流行。那看起来像什么?所以有几个选择,对吧?假设你因为流感大流行而不能在办公室工作。好吧,希望我们不会再遇到这样的问题了。但也许可以写进计划里。从大多数人都在办公室工作,或者是一种灵活的安排,过渡到每个人都是100%虚拟的,会是什么样子?
你如何确保所有员工都有在家工作所需的一切?这是需要考虑的但如果你不能在办公室工作因为水管破裂或火灾损坏或正在进行熏蒸或任何与拥有一栋建筑有关的事情,你想考虑一个备用地点吗?所以对于像SalesForce这样的公司来说,这并没有什么意义。
当我们在办公室的时候,有很多员工……但如果你在创业公司,后备地点是什么样子的呢?这看起来像出租共享办公空间吗?如果你是一个非常小的团队,那看起来像不像,你们10个人去一个人的家里?你需要亲自来吗?这些是你可能想要考虑的事情,特别是因为我很抱歉,我们经历了这场大流行,我们在七年前就被警告过了。现在它发生了。我的意思是,我希望在我有生之年不要再发生这种事,但它可能会发生,我们可能要考虑一下。安全问题。现在,这就是我经常被称为危言耸听的地方。但这是值得思考的问题。
我住在美国,我有上学的孩子。所以我确实会考虑主动射击的情况。如果你在办公室工作,尤其是没有严格安全措施的办公室,我的上一间办公室,就像一种生活-工作-娱乐的空间,在那里真的任何人都可能随时走进来。你是怎么做的?这是需要考虑的事情,你知道,很明显,有很多不同的事情要做,你知道,主要是隐藏,逃跑。最坏情况下的战斗,但这些都是需要考虑的事情。如果我们怀疑这栋楼里发生了什么,我们该躲在哪里?谁负责检查每个人?
如果可以的话,谁负责报警呢?比如,所有这些你可能需要考虑的事情。同样,这取决于,你在哪里工作,如果你在为疾控中心做软件,你猜怎么着?炸弹威胁是家常便饭。
另一件事可能永远不会发生,但你可能会我想在它发生之前好好想想。火。你有指定的逃生通道吗?你练习过吗?我知道,作为一个成年人,做消防演习听起来很俗气,我甚至不鼓励你做躲到桌子下面的动作。但我要说的是,如果大楼发生火灾,每个人都知道紧急出口在哪里,以便尽快逃离大楼吗?
办公室里的每个人都知道指定的开会地点吗?这样你就可以清点一下人数,确保每个人都安全离开?一些值得思考的事情。然后比最后那些令人沮丧的人更有可能。人的问题,对吧?让我们来谈谈集体疾病,特别是在一个小团队中,或者在一个团队中,你的代码所有者只是主题专家,可能没有那么多人能够完成他们的任务。
如果有一半的队员生病了怎么办?你们有保险吗?你有没有人通过交叉训练来学习这些技能?需要考虑的事情。如果所有人同时兑现专利商标权呢?现在很明显,如果你所在的公司需要获得专利商标权的批准这是可以减轻的,但是如果你在一家专利商标权不受限制的公司工作,而且你已经长大了,该走就走,如果出现问题,而一半的团队都在度假怎么办?有相应的协议吗?每个人都知道他们应该做什么吗?需要考虑的事情。然后是延伸叶。现在这个,作为一个在我上一家公司工作时经历过怀孕的人,这是值得考虑的事情,你知道,人们会遇到车祸,人们会生孩子,人们会为了照顾年长的家庭成员,人们可能有很多理由需要延长假期。
所以要批判性地审视你的团队,是否有一个或几个人,如果他们突然离开三个月,你的团队将如何适应?你会怎么处理?有什么协议?你是受过交叉训练的人吗?现在有了产假或陪产假,你应该知道,嘿,这是即将到来的尽管我们都看过那个节目“我不知道我怀孕了”,它发生了,伙计们,它发生了。但是你应该能够为此做好计划,并且说,好吧,你知道,这位先生要休产假去见他的新宝宝,耶。
我们需要培训谁来确保他不在的时候,我们有足够的报道?只是一些值得思考的事情。这是随机的建议。这基本上就是调查中人们说的引起我共鸣的事情,对吧?我觉得值得分享的东西,或者只是,随便找个地方。所以,并非所有的依赖项都是相等的。有些事情会出错,有些事情会破裂,有些过程会不起作用,这些都是至关重要的任务,没有它们你就无法正常工作。有些事可以等一天再做。然后有些东西要花一个星期,不管怎样,把这些潜在的问题去掉,比如,这有多重要,对吧?
有多重要?我们把这个纳入计划,好吗?所以,如果你在看某些场景,你正在分诊,好吧,这是第一级,这首先重要,我们稍后会解决这个问题,这现在很重要。想想看。这是一个非常重要的问题,尤其是对像我这样患有复杂创伤后应激障碍的人来说。不是所有的灾难都是一样的,对吧?所以,你知道,我谈到了一个问题,你知道,潜在的数据丢失,然后我谈到了一个活跃的枪手情况,你猜怎么着?即使生活在美国,其中一种的可能性也比另一种大得多。所以,你知道,是的,你可能会对一些,你知道,一些孤立的情况,一些可能出错的小众的事情表示赞同,但要知道,你可能不想在那上面花太多时间。
让我们花更多的时间来规划站点切换,让我们花更多的时间来创建更新和维护镜像站点的时间表,对吗?并不是所有的事情都有同样的可能性。我一开始就提到过,我要再钻一遍。测试,测试很重要,对吧?所以你有这些计划,也许是一年一次的消防演习,或者任何时候,你知道,有一些新员工,消防演习。然后,站点切换,可能是一个月一次,一个月两次,这取决于你的软件,以及它有多重要,你的用户每天24小时都能访问,无论什么有意义,无论你计划什么潜在的灾难,无论什么,你都必须测试它,它必须有一个固定的间隔,每个人都必须参与测试。
我喜欢用意想不到的障碍来测试这个计划。这听起来很疯狂,但是我刚入职的时候我们在我的老公司做过一个训练,你知道,我刚入职,他们想知道会发生什么。我当时正在开发的软件与自然灾害密切相关,所以我们的使用肯定会出现高峰。在飓风季节,我们想看看这个产品的用户峰值是什么样的?我们能处理好吗?所以我们有了一个假飓风。这很好,他们让我一个对软件一无所知的人,扮演保险理算员的角色,我只是试着尽可能的迟钝,做一些愚蠢的事情,然后对此感到愤怒,因为我在客户服务部门工作过,我知道那是怎么回事。但是,是的,比如用一些奇怪的事情来测试这个计划,比如……特别是如果你在一个小团队中,也许是人最擅长切换站点的人坐在外面,让不太有经验的人来运行这个站点并观看。就像学徒一样,对吧?
加入一些小问题来测试你的计划。让自己紧张一下,然后再测试一次。我的意思是,绝大多数人,我想几乎每个回应的人都提到了一些事情,要么是我们测试得太频繁,要么是因为我们测试得不够,这就是发生的事情。你知道,我喜欢它,你知道,我曾经做过保护工作,我必须做射击认证,我的射击教练会让我们,你知道,拔枪要非常慢,因为慢就是平滑,平滑就是快速。所以通过测试,慢慢地测试,在可控的情况下,你会在这个过程中变得平稳,这样当你必须快速行动时,你就可以。就是这样。厄运和阴郁。我不想当黛比·唐纳,但事情总是出错。事实证明,事情出了问题,而我却不知道但我越是做好准备,就越能意识到可能出错的地方,以及出错时该怎么做,这对我来说非常欣慰。所以我希望你已经对你可以写进DR计划的东西有了一点点的了解,
我想说,我相信IBM有一种免费的DR规划模板,做得很好。所以你可能想调查一下。但是,总的来说,我希望您觉得自己已经有了一个很好的起点,可以开始编写灾难恢复计划,这将为您的团队和公司增加价值,并促进您的职业发展。一如既往,请随时联系我。我喜欢与社区联系,我希望你的反馈。
非常感谢你来到SwampUP。
这是我在现实生活中从未参加过的最喜欢的会议。
我希望你们和我一样喜欢它。
谢谢。

