我们只需4/30即可调整Futureestack注册。条款和条件适用。 现在注册

观察McObservface第十集:Gremlins和银行探索走向混乱与塔米布莱恩特

36分钟阅读

在这节课中,Tammy Bryant.,主站可靠性工程师小鬼,谈到专业化混乱的工程事件管理.在她的网站上进一步联系她,tammybutow.com

如果您发现燃烧需要分享您的思想或咆哮,请在devrel@newrelic.com上喷洒它们。虽然您要将所有人发给我们一些字节的所有麻烦,请考虑花点时间让我们知道未来的节目中听到的内容。尽管有全面的燃烧火焰,您将收到回复,请知道我们对您的反馈真诚感兴趣;我们的目标是安抚。跟随我们的讨论:@ObservyMcObserv

乔纳Scheffler:大家好,欢迎回到Observy McObservface,这个播客我们让互联网命名并得到了我们应得的。我叫乔南。我是New Relic开发者关系团队的一员,我每周都会带着一位新嘉宾和最新的可观察性新闻和趋势回来。如果你有什么想法想在节目中听到我的话题,或者你想听到的嘉宾,或者你想作为嘉宾出现,请联系我。我的电邮地址是(jonan@newrelic.com)。您也可以在jonan展示中找到我的Twitter。我们在这里给予他们想要的人。这是人民的可观察性播客。非常感谢你加入我们。欣赏表演吧。

我今天加入了我的客人,Tammy Bryant。你今天过得怎么样,Tammy?

Tammy科比:我很好,谢谢。谢谢你邀请我。

乔纳:谢谢你的到来。终于见到你真的很高兴。我们不得不在几次左右碰到 - 当你住在佛罗里达州时,它很难,一切都很漂亮。难以坐在一个用麦克风[笑]的房间里努力,你不想这样做。所以我想向你介绍我们的听众。也许你可以告诉我们一些关于你是谁以及你在今天在行业的地方结束了。

Tammy:是的,肯定的事情。我的名字是Tammy和我在Gremlin工作作为一个主要的网站可靠性工程师。我已经在这里三年了。我做了很多混乱的工程,这真的很有趣和令人敬畏。我喜欢学习系统。我真的很好奇,渴望学习,也非常雄心勃勃。我总是想了解我如何解决问题,让事情变得更好。而且,在此之前,我工作了dropbox.作为数据库和块存储的Sre Manager。如此大规模的5亿用户,500个卑鄙的数据。而且还在国家澳大利亚银行六年,在网上银行,外汇,交易,抵押贷款中做了很多很酷的东西,几乎所有关键的关键系统。我必须努力解决所有这些。我也在Digitalocean.为其他人运行云,并确保云能够正常运行,为客户提供良好的服务,这是一件非常酷的事情。所以我有很多有趣的东西。是的,我住在佛罗里达,我很喜欢那里。我刚买了两块立式冲浪板。我很喜欢这样,喜欢在不玩电脑的时候去户外探险。

乔纳:所以我想谈谈你最近的经历。Dropbox也对我来说是令人着迷的,DigitaloCean - 我使用所有这些产品。亚博最新版直播当然,我没有在实际工作中与格里姆林林一起玩的机会。和数字沉积,我们每月都使用我的聚会。我将最昂贵的服务器旋转至少两个小时才能设置我们的JITSI服务器。我们拥有自己的视频流媒体。当我再次旋转时,我总是觉得很糟糕,因为我应该给他们更多钱。他们是一家伟大的公司。

Tammy:是的,他们很棒。

乔纳:跟我说说你是什么时候加入格莱姆林的——你到现在已经三个月了。我猜你的动机是非常明智的职业选择去研究混沌工程,这是一门迷人的学科。这是近吗?你就是这样被关进去的吗?

Tammy:是的,当然。回到2015年,我在Dropbox做了很多混乱的工程工作,有一天我发了一条推文。那时候,我从来没有做过任何会议演讲,我在这个行业已经工作了10年,或者超过10年,我想。我坐下来想,“我能分享什么呢?”在经历了这么多年的痛苦之后,我还能说些什么呢?我总是被呼来唤去,随时待命,事情就这样发生了。”然后有人问我,“嘿,你知道,你在Dropbox做这个很酷的混沌工程。你愿意来参加我的会议吗?”他就是Gremlin的创始人,Kolton安德鲁斯.科尔顿,在创立格莱姆林之前,他在netflix.然后亚马逊.所以我接受了他的邀请,那是我在美国的第一次演讲。

乔纳:我想说,Netflix是混沌工程的源头。在那之前,人们肯定是这么做的,但它在那里普及,这很准确吗?

Tammy:是的,当然。布鲁斯·黄创建了混沌工程团队。他是第一个在Netflix建立这种练习和该团队的人。它是由他的团队发明的,并通过他们的努力来实现。但是在很多科技公司,初创公司只是没有做这种工作。我认识的原因并正在进行灾难恢复是因为在银行工作了这么长时间,您必须这样做以满足合规条例。您必须卸载整个数据中心,您必须每季度执行它。您必须故障转移所有服务,您需要冗余到位,并且调节器将来检查并确认它有效。所以我喜欢他们在技术空间中开创了这项努力,在启动世界中,试图鼓励人们不仅希望事情是可以的 - 因为他们所说的希望不是一种策略。我真的认为它是由他们创造的。我们实际使用的时候我在澳大利亚国家澳大利亚银行纳布工作混乱猴子.所以这真的很酷。就像我们一样,“哦,这很酷。让我们来吧,“因为我们当时正在搬到AWS。

乔纳:所以混沌猴是一个图书馆。这个项目是对Netflix产生的混乱工程学科的编纂,对吧?《Chaos Monkey》是Netflix的开源作品。

Tammy:是的,没错。而这一想法将随机关闭不同的ECE 2.0:主机。所以这就是它的工作原理,它会根据你可以设置的时间窗口随机选择一个,然后它会这样做。所以我认为这很酷。这意味着您没有拥有他们必须考虑失败的硬代码服务器或服务,因为这些服务器只是将消失,使其更好地为此做好准备。[笑]。

乔纳:真的很简单,当你写代码的时候,你最终得到的静态代码中插入的东西消失了,这是意想不到的,IP地址或该服务器名称,这个主机下降,然后系统会非常意外和不可预知的方式很难解决。我认为混沌工程的价值当然在于它的可靠性,这是非常重要的,但在我看来,真正的价值在于它迫使你提前考虑这些事情,

Tammy:是的。

乔纳:以这种方式设计您的系统。

Tammy:是的。我也爱它。我总是能够做回滚的一个非常重要的粉丝。当你在银行业务工作时,他们确实尝试制作它,以便您可以回滚任何系统,并且您可以做故障转移 - 但这已经很多,发生了很多年的情况,并且发生了很多文化。那只是那里非常正常的东西。但我认为在很多其他类型的公司中,你没有能力这样做。然后我也开始思考 - 我不喜欢修补产品的想法,但我实际上已经在事件上工作,因为你没有什么可以回滚,因为你依赖的东西是不可能回滚的在,例如,AWS及其基础架构及其平台。所以我会给你一个例子,当我在Dropbox工作时,我是2017年伟大的S3中断期间所有Dropbox的事件经理。我们大多数迁移S3.当时,我们还没有移植一个服务缩略图。我们认为他们的数据不存在,但这只是缩略图预览不工作,我们还没有完成S3的迁移。所以人们给Dropbox发支持票,问“我的数据去哪了?”发生了什么?”然后我们就想,“该死!这一事件将成为一堵墙。”它最终运行了5个小时,但我们想,“我们必须马上解决这个问题;否则,客户会非常生气,直到AWS解决这个问题。”所以我们不得不在事故期间从AWS迁移到我们自己的on-prem基础架构。所以就像,“我们在prod上做了一个补丁,因为没有其他选择。” And we got out of the incident in an hour and a half, but that was a stressful incident, definitely.

乔纳:是的。它甚至没有被打破 - 我的意思是,它被打破了 - 但它给你的客户带来了这一印象,导致一个巨大的支持门票,并在一个关键时刻压倒了你的团队。

Tammy:完全是。您不希望您的客户拥有这种糟糕的体验。我们正在考虑我们的监控,从我们的可观察性 - 我们在时间的工作 - 一切工作,我们没有任何数据问题。所以我必须进一步挖掘。我登录并登录了我自己的Dropbox帐户,了解他们所说的尝试和重现自己的超级易于重现,就像x在缩略图上一样。我们就像,“哦,好的。我们需要将此团队连接,让他们介绍,实际上弄清楚了我们如何迁移它。“所以这对我来说是一个非常有趣的例子,在那里没有其他选择,而是在事件期间解决这个问题或等待AWS来解决它,这花了五个小时。所以这只是太久了。你不想等到那很长时间。 You know, I’ve learned a lot over the years and I've definitely changed my mind about how you need to do things. I think, as in working on incidents, I've learned you just gotta be flexible, think on your feet, stay calm, just loop in the right people, have a strategy, work as a team. Like that's the most important thing. [chuckle]

乔纳:是的。我看到很多这样的事件都没有我参与其中。我是说,当你在做DevRel的时候,你发布的大部分东西,如果我的华夫饼机器人停止工作了,除了我,没人会真的生气。我在Heroku而Heroku在工程方面有一个政策——你拥有你所制造的东西。我还会收到一些我没有参加的会议上发布的产品的页面。亚博最新版直播让那些东西活下去绝对是我的责任。这是我职业生涯中第一次携带虚拟寻呼机。在那之前我在New Relic的时候我一直都是这个支持过程的一部分生活的社会,但不像你在那里的那样,你必须保持冷静,并与团队的其余部分合作,并继续前进直到它完成。对这些失败没有第二行防线。你在谈论的这一点,你在哪里响应,经常是,这是页面的结果,对吧?而且我很想知道这是如何在混乱的工程世界中有效的,特别是 - 因为你已经有一些功能,阻止人们吓坏了系统正在染色,当它只是猴子再次发生。

Tammy:是的。在达到您可以安全地练习混沌工程和生产的地步,这是很多不同的提示,这通常是人们的漫长旅程。我会对一些公司说,它需要几年时间才能获得两年,三个,三个,甚至八年,这样的东西。它可能需要很长时间。通常,人们首先在竞争中运行他们的混乱工程攻击,这将是更常见的。所以他们正在部署他们的代码,然后正在运行游戏日。所以那就是你在那里获得一些人在一起来实际能够注射一些失败,也许是数据包丢失/延迟,了解它如何影响系统,从中学习,使您的系统或您的应用程序或您的应用程序或云基础架构更好'重新使用。然后另一件事让人在CI / CD工具链中将其集成在一起。因此,当我部署代码时,我将触发该管道运行。这将自动运行这些特定的混沌工程攻击,然后我们将看到结果是什么。 And they tie that into their monitoring and alerting to see if anything fires that wouldn't usually fire, so that's pretty cool too. But as you move to doing it in production, that's something folks are really careful about how they do it. I've done a lot of chaos engineering in production. I do it all the time at Gremlin—it’s super common, obviously, because we do it all the time, every day. And even before that, at Dropbox, I would run weekly chaos engineering attacks on production for the database machines, because you've got tens of thousands of databases and only four people on call, a lot of automation. I've always worked on teams where I owned everything and I was on call for it at the same time. I haven't worked at a company that wasn't like that. I've done the level where you're also, on top of that, the incident manager on call—so lucky you, you get to be on two on-call rotations, all the services you own and the entire company's rotation. But that's been a really interesting experience for me because frequently injecting failure and production, that's when you really learn and you become confident and, the first time you do it, it's scary. You've got all your dashboards out. You've got all your logs out, your tools to be able to stop any issues that occur. But you know, obviously, you've planned really hard before you do your first chaos engineering attack in production. So you're confident that it will impact the customer. And actually, for me, I've never had anything cause an incident from chaos engineering that hasn't happened to me. So it's more about learning and being able to fix issues. And I like it most for mean time to detection, being able to improve things or gathering evidence so that I can get all the teams to fix issues. You know how we always say, “It's never the network,” but I've definitely used chaos engineering to prove that it is the network. The network engineering team is throttling me and my database traffic. And you need to change that setting, because I'm being throttled and that's why everything's so slow for my backups right now. But you know, they know that's [chuckle] this interesting thing that you can do there.

乔纳:你最终可以把它归咎于网络。我觉得网络对我来说经常是问题,但是就像我在软件中开始的时候一样,我会发现一个错误,我写的任何代码我都没有弄清楚,我会把它归咎于这种语言偶尔。我会就像,“我想我刚刚在Ruby或JavaScript或Python中找到了一个错误,我会去发表GitHub repo。”幸运的是,我的同事们踏入了,就像“好的,让我们仔细地思考它是否在房子里面。”因此,您在生产中使用混沌工程的部分,您将描述它就像一个游戏日志。我错了,有些人只是在那里留出来的印象,就在那里留出来,即在生产系统中有混乱的猴子,你必须在任何时候为你的服务器消失的世界做好准备?

Tammy:是的。所以我们一直在格里蒙都这样做。所以每天都发生。很多客户也这样做。我们还在Dropbox上做到了,它被称为混乱的日子,每周三都将取下随机的不同服务器。所以是的,混乱的猴子就像一个特定主人关机的错误,这就是我们在那里做的。但在过去的几年里,我会说它更进一步了。所以你不只是看到人们关闭主机。他们还在关闭豆荚,Kubernetes上的集装箱,关闭整个Kubernetes部署和服务。然后也做了像黑洞攻击一样的其他东西。 So a black hole is a really cool attack that was recently created and really pioneered by the team at Gremlin and some other companies who really wanted to focus on a non-destructive way to be able to make hosts, pods, regions unavailable. So the idea of a black hole attack when you run it is that, for a period of time, you're just saying you cannot reach these servers, they don't exist. They're now invisible or you can't reach these pods. They're no longer available for you to be able to reach them. And when it does that, it's really cool, right? Because you can run an attack for 30 seconds, 60 seconds, and then just turn it back on. So you can say, “I'm going to make them unavailable for 30 seconds, now they're back.” And you can imagine that that's way less destructive compared to a shutdown like a Chaos Monkey-style one, because if you do that, it's like, “OK, I'm going to shut down all my servers in this whole region, that's going to take time. Then I'm going to bring them all back up.” At some companies, that's going to take hours to bring up all that infrastructure, it will take forever. And to turn all those services, make sure they're all working well. So it's just a nice and less destructive way to do it. So I'm excited about that. And you know, seeing these different types of attacks that have been created with Gremlin, we have 11 different attacks built-in, but there's a lot more that we have on our backlog to build. And then the other interesting thing too is, not just running singular attacks, but we also have a feature called a scenario. So you can chain together multiple different attack types. So for example, I want to reproduce the incident that happened to me in the past; first, I'm going to kill this process. Then I'm going to shut down this server and that's like just two, right? But that's actually more similar to what actually happens in the real world. We might have a process die and then a server goes away. Do we even know that that happened? Or maybe, let's look at spiking the memory or spiking the CPU, spiking the I/O, filling up the disc, but making other things happen too alongside it. So I really like that as well. It's much more like the real world.

乔纳:这让我很着迷,这个测试混沌工程的过程。我假设它还暴露了大量分页和警报方面的故障。显然,如果格莱姆林在外面破坏一切却没人听到,对吧,森林里那棵树倒在地上却不发出声音,那是很糟糕的场景,对吧?所以这是一种验证警报和监控的好方法,对吧?

Tammy:是的,没错。这是完全正确的。所以我建议大家在现实生活中做一些事情。我想做的是看看这个问题是否发生,最好先在登台时做。如果该服务不可用,无法访问,您是否真的在监视和仪表盘中看到了一个峰值?你收到警报了吗?你知道有问题在发生吗?很多时候,我认为,人们看不到正在发生的事情,他们的系统存在问题。它是完全看不见的。你如何确保你在监控,你在提醒,尤其是你的提醒是有效的。 If you never ever test it out and validate it and make sure that it does work. So I've seen a lot of interesting things there. That's definitely a great place to start. A simple thing too that I like to do is, if you think about it from like, “All right, what happens if this person's service isn't available, then they have a primary on-call?” But then also, obviously you want to make sure there's a secondary on-call, but even just testing out that flow, first I page the primary anchor, if they don't acknowledge the incident, then it goes to the secondary. How long does it take? Does it take five minutes or an hour? What if the secondary doesn't get paged? Does it then go to the whole team? Does someone acknowledge it? Because that can really wreck your meantime to detection and then also your meantime to resolution, and you can have a one-hour outage just because nobody answered their phone for 45 minutes.

乔纳:是的。那就是我。那就是我不接电话。比如,“天哪,我希望这个页面上还有其他人。”

Tammy:你知道,从真实的经历来说。对吧?(笑)

乔纳:是的。

Tammy:天哪!我见过东西。[笑]。

乔纳:(笑)我看到的所有事件。我听说过,这些术语意味着探测和解决的时间,但我不知道是在什么背景下,所以我很抱歉,但我觉得这些术语,或者那些方法在社区的某些部分已经不受欢迎了。你知道这事吗?如果你听说过人们不喜欢使用这些术语?

Tammy:是的。这很有趣,当我搬到美国而且我在Dimitedocean工作时,这是一大堆银行的六年,我曾经穿着衣服上班。就像你永远不会想象它。

乔纳:哇。

Tammy:我是认真的。我有一个西装,我曾经用丝袜和漂亮的鞋子和东西穿,我坐在我的桌子上,写代码,我就像,“为什么我需要穿着西装写代码?”但是,无论如何,我想我必须这样做,也许每周一次或其他东西去一次会议。

乔纳:(笑)

Tammy:然后我搬到了DigitalOcean。我说:“哇,很酷的创业公司。”然后每个人都跟我说,“哦,你是企业工程师。”我想,“那是什么?”哇。我们是不同类型的人?还有企业工程师,如果你在企业公司工作的话?”我不知道。我说:“我不知道我是企业工程师。”但我认为,当你在那里工作时,你必须报告指标和数字,因为合规和法规。 So I honestly come at it from that. I'm like, “Well, I need to be able to report specific metrics to the government, to talk about uptime of systems and talk about how long it takes us to recover from the customer's perspective.” If internet banking is down or if ATMs are down and people can't access their money for a certain number of minutes, you have to report that. You can't hide it.

乔纳:嗯。

Tammy:是的。这正是我想说的。我想很多时候,人们会希望关注不同的参数或不同类型的内容。我认为这很好。保持创新。有一些行业,你与政府和监管者合作,你不能真正让他们改变他们衡量事物的方式。我也总是从顾客的角度考虑问题。我的个人目标是我能在五分钟内解决任何事件。所以我希望能在五分钟内解决所有问题。探测的平均时间不得超过一分钟。 So how do I detect any incidents occurring in a minute and get it resolved. I don't want to work on incidents that last three days. I just don't want to do that. I've done it before. I don't want to do it anymore.[chuckles].

乔纳:三天很多。

Tammy:是的。就像我见过的事件一样。我甚至未覆盖的事件已经在那里几年,人们不知道发生了。你知道,这是我在系统中看到的真正的东西。就像“哇,这是一个非常大的问题,我们需要得到这些固定的。”那天我们把它固定了,但多年来就在那里。

乔纳:哇。

Tammy:是的。这里有很多东西。我不是那种会为这类事情争论的人。因为我总是说"我们进去把东西修好吧"让我们做得更好。我们就这么做吧。”

乔纳:我猜你只是采取了更务实的方法,来自银行业。

Tammy:是啊(笑)。

乔纳:是的。这对我来说很有意义。所以我只是想澄清一下,我理解,失宠的条款,这与其说是我们所说的这些东西,只是,“嘿,这些错误的东西来衡量或我们专注于错误的部分是什么导致这一事件,以及它如何被解决,“对吧?

Tammy:我不知道。我实际上没有听到其他人正在寻找测量的辩论。我有一些我在过去几年中衡量的一些东西。所以第一个总是SLA,这是因为他们是服务水平协议,如果你在银行工作,如果你不符合SLA,你会得到罚款。

乔纳:哇。

Tammy:是的,你会赔钱。所以这涉及到真正的金钱。这又是一个疯狂的故事。所以当我第一次遇到严重事故时,当我在澳大利亚国民银行工作时,我接手了抵押贷款经纪业务。这是我几周内的第一次事故。首席技术官来到我的办公桌前,他说,“是的,你刚刚被罚款了,因为抵押贷款经纪公司倒闭了。”事情是这样的,有人向司法特派员投诉。这样罚款就会记在你的名字上他们会记在运行这个系统的人的名字上并且会记在那个系统的值班人员的名字上。在数据库中,我的名字记录在系统中。那时我还不知道什么是无可指责的事后分析之类的,我就想,“哇,我的名字要永远在这个系统里了。 That's crazy.” But that's just how it goes over there, and having the lead of technology coming to your desk to tell you that you now have a fine, and it cost the bank this much money because the system was down for that long. There's just a lot of things that happen that folks don't know about behind the scenes. But, I think I'm just much more thinking about it from that perspective. What is happening for the customer? The fact that someone complained, the fact that there is a fine program when systems aren't running. When I was running mortgage broking, I always used to think someone is trying to process their mortgage because they're trying to buy their dream home. I want to help them get their dream home. If they can't process their mortgage, then someone else is going to get that dream home. And they're not going to get to live where they want to live. And that's my fault. I feel bad about that. I have deep empathy for the actual customers and what they're trying to do. So I definitely come at it from that perspective too. And, you know, I'll just visualize them sitting there with the kids in their truck.

乔纳:(笑)

Tammy:他们的搬家卡车,他们就像。“那个塔米,现在我不能搬到我梦想中的房子了,因为她的系统坏了。”

乔纳:这对你的工作来说可能有点责任太大了,但我欣赏你的方法。这是如此强烈,政府将找到一个银行有停机事件,这将归因于个人工程师负责。

Tammy:是的。因为他们需要在罚款和事件上写上名字,这都是监管和合规的一部分。

乔纳:哇。

Tammy:这就是系统运作的方式。我想很多人都不知道自己是否适合企业领域。总有新的法规出台。现在有一个很大的银行叫做开放银行。所以那必须很快释放。另一件有趣的事情是作为一个工程师在这些系统上工作你必须快速地得到这些新的遵从特性或功能。政府会对你说,“除了你正在做的所有其他工作,你需要做这个我们在这个日期之前决定的新工作。”而且必须这样做,否则你可能会被罚款或类似的事情。因此,在开放银行系统中,你必须让任何客户都可以通过API以一种非常简单的方式查看他们的所有银行账户,他们的信用卡,所有这些信息。这意味着你必须把所有这些都建立起来,让它可用。 And every bank has to do it by a specific date. I think it's like early next year. So it's a big project right now for the banking industry. And obviously you need to make it reliable. So as a reliability engineer, you want to make sure that the data is accurate too. So, to me, it's a really interesting project, because I think that's great from a consumer perspective, being able...

乔纳:哦辉煌…

Tammy:在所有银行同时访问该数据。我喜欢这个概念。这绝对是一个快节奏的世界。这不仅仅是您的时间表,它也是政府的额外时间表,这些时间表被置于您和监管机构。所以你只需要总是在那里脱颖而出。

乔纳:我试着想象这样一个世界在美国实施这样一个项目,这个开放的银行。我觉得政府不太可能只是命令银行他们需要做什么。我认为银行在美国拥有太多的控制权,包括政府。但是在这个过程中,我必须给别人我的用户名和密码,这样他们可以旋转并登录我的网站,有一个10人的团队运行初创公司,你知道,在一个市场小组的小巷里。

Tammy:是的。

乔纳:现在有我的用户名和密码…

Tammy:是的,没有遵守,没有规定。这是我刚开始在科技行业工作时想到的一件大事。我当时想,哇,这太不一样了,因为我以前只在银行业工作过。所以,我喜欢这样的想法,“嘿,让我们试着让我们的系统变得非常好。”我还在银行做过一段时间的安全工程师。我也这样做了,这是我的角色的一部分,让我更了解这一点。为网上银行做安全工程确实很酷,但显然我关心人们的隐私,我关心人们的钱不会被偷。我只是觉得这真的很重要。这是一个很大的责任,你需要把它做好。我们在澳大利亚还有一个很酷的东西叫澳大利亚计算机协会.当你加入时,你签了一些你要坚持自己的事情。而且,这些是关心用户,数据隐私和类似的东西。所以我真的很喜欢。我认为这很酷。但澳大利亚非常不同。我没有在美国生活那很长时间,我还在学习它。但是,[笑],有很多。

乔纳:就像你重视安全而不偷窃一样。这是……

Tammy:[笑]

乔纳:说到银行业,就跟美国人一样。对不起,银行家。我只是在和你开玩笑。但是关于法令的部分,你们签署的这份文件,对我来说很有趣因为这是软件社区中争论的一个常见来源人们不喜欢偶尔被称为软件工程师或者其他人不喜欢他们被称为工程师因为像加拿大这样的国家,作为一名工程师意味着你是一个专业组织的一部分。上面有一个小钢圈,是为了纪念一座坍塌的桥,它造成了一群人死亡,同时也提醒人们,这是一项严肃的工作,你实际上承担了很多责任。我想这可能更像加拿大,但我欣赏你的情感。

Tammy:是的,在澳大利亚也很相似。这对你来说就是这样,所以你签了字,说这是一份严肃的工作你有消费者数据,你需要在很多情况下,确保你认真对待它。我认为这很棒。特别是对正在学习的年轻工程师来说,他们会来大学参观并和他们谈论当你进入这些系统时,你所承担的责任的重要性。我觉得这也很酷。对我来说,很明显,这真的激励了我,激励了我想要保持这些系统运行。我想,“如果有人依赖我的系统,我想让他们可以使用它。”我关心这个。我希望他们能够从中获得价值。我觉得如果其他工程师也这样做,现在有很多sre,很多人都关心可靠性,我认为这很好。 That's what folks are motivated by. And the other thing is, it's hard work. It's complicated. You need to know a lot of different things. You need to understand networking and Linux and infrastructure and cloud. There is so much stuff—databases, messaging systems, whatever it is—so many different things. And make sure that everything runs all the time pretty well. It's not going to run 100 percent of the time, but hopefully have some good failover, so you can keep it up and running for people. That's what motivates me and excites me. And the other thing that I think about a lot is, how do we just make the internet more reliable? Because I also like the idea of making the internet accessible and that means making it fast. So not just up and running, but making sure that people can access it wherever they are, even if they have really crummy internet. In Australia, the internet is so bad that you can't do a Zoom call well. You know, it's really really lagging and slow. The latency's horrible. And so I was really inspired to get into the world of performance engineering and making things run better with limited resources, because of coming from Australia and being so far away. So I think that's really cool and it's still a big area to innovate in.

乔纳:绝对的。这将是一个非常有趣的世界,当每个人都能接入宽带互联网,无论他们在哪里。

Tammy:是的。

乔纳:我很高兴看到它。我们之前的讨论提醒了我,我还没有问你们对可观察性的定义。这是我喜欢和所有客人一起做的事,因为他们有点微妙,不同。我知道有很多人在这个行业现在试图想出一个具体的定义,但它们都大约对齐到一件事,在我看来,这不仅仅是知道事情坏了,但是能够理解含义明确为什么,这在所有系统的可见性。但我相信你有一个比我的简单版本更有条理的答案。请问,你如何定义可观察性?

Tammy:我不确定我的答案是否定义明确。对我来说,这也是我仍在尝试探索和理解的东西。我认为利兹福琼斯她在可观察性方面做了惊人的工作。我真的很喜欢她在谷歌的工作,建立了很多不同的有趣的实践。我想我的理想场景是,你可以观察到用户在做什么,他们如何使用你的系统,并能够在任何时候看到系统。我之所以说它有点像x光视觉或类似的东西,只是能够从头到尾地观察一切。为什么这很重要?因为我曾经在这样的系统上工作过,例如,数据库代理没有监视,没有可观察性,什么都没有——您就是看不见。你进入代理,结果谁知道中间发生了什么?这很难知道。所以我不喜欢这样。我喜欢这样的想法,即能够真正地观察事物并一直观察它们,因为这样你就能准确地理解问题所在。 I love that I can then go, “Boom, there's the issue.” Let's pick that out. Let's fix that. And now we're all good. But without that, it's hard. The bits that come in between are especially hard to instrument in a lot of spheres. I think my biggest frustration with this kind of system is when I show up and there's just a circle or a box on the screen that's either green or red and that's supposed to be the information I have to act on. And I'm like, “Well, it's red. We should try turning it off and on again. And then we should delete it and re-create it. And then we should give up forever, because we can never do this again.” Right? I just don't like that. You want to know, “Why is there an issue with the system?”

乔纳:确切地。

Tammy:当我在Dropbox时,我认为我的想法真的很酷。所以它很容易看到“这个查询来自哪里?”SQL查询,它是来自API,Web应用程序。所以api dub-dub-dub或桌面客户端是一个标签,另一件事是,“他们在做什么?他们喜欢在他们的帐户中列出他们的物品吗?“

乔纳:哦。

Tammy:是啊,太酷了。然后你会说"在人们做这个特定动作的API中有很多查询问题"这样你就可以追踪回去了。当你调试的时候,这很方便。但这只是一件小事。我们还有很多可以做的来让事情变得更好,但是,你知道,时局艰难。你得有点像侦探,这取决于你的工具有多好。

乔纳:最终你必须对这些事情采取务实的态度,对吧?如果你在这个兔子洞里走得太深,对很多工程师来说,这是一个无穷无尽的乐趣坑。这对我来说很有趣,去跟踪被调用的单个方法,它们花了多长时间,在系统中创建了多少对象等等。但之后你就会被数据淹没。将所有数据集中到一个地方,这样你就能有效地使用数据并获得可见性,这一点非常重要。

Tammy:而有趣的事情也在考虑绩效工程师,他们可以花很多时间专注于此,然后获得一些胜利,能够分享他们的结果并产生重大影响。所以我认为,这对致力于提高性能的人来说真的很酷。我觉得这很棒。你认为这主要是在大公司。如果你想能够制作一些伟大的胜利,这很重要,因为如果你没有奉献时间,你会如何获得这些胜利?这有点艰难。您可以提出一些小的改进,但这就是为什么有人在数据库性能工程中特别惊人。你需要知道很多。

乔纳:是的。

Tammy:不断有新的不同版本出现,新的工具被创造出来。所以你需要时间来完善你的手艺,并真正擅长它。但我认为这是一件伟大的事情。我有点惊讶,这不是一个更受欢迎的角色,因为我们当然有一个伟大的理解,表现如何影响美元,这往往是创造这些职位在这些团队。你可以将一份报告与一个主管联系起来,与一个现有的职位团队联系起来,然后这个团队就存在了。对吧?

乔纳:是的。这真的很有趣。就像你看到业绩工程团队在企业公司真的很大,那就像大量的绩效工程师,那些人都是超级专业化的。也许他们一直在做20多年。我的意思是,我从未在初创公司中使用过绩效工程师。[Chuckles]我认为初创公司在谈到时有点乱。

Tammy:(笑)

乔纳:他们非常幸运能拥有你,我认为你的背景和你对安全的重视。

Tammy:(笑)

乔纳:是的。我们很高兴你在那里。我们差不多了。在你走之前,我很想让你在一年中或迟早回来 - 但是当你回来时,我希望能够指责你对某事做错了。所以我要求你做出预测。这是一个非常卑鄙的方式来解决这个问题。我实际上没有对你那样做到这一点。我只是想知道你的想法可能发生 - 你今天看到有趣的技术吗?在明年,您认为会更受欢迎或不那么受欢迎?

Tammy:我会说一个有趣的人。每个人都将在桌面上具有Linux。(笑)

乔纳:是的。它终于来了。我们一直在等待。

Tammy:为每个人的桌面上的Linux。加入时,每家公司都会为您提供Linux电脑。

乔纳:你知道吗,我还是很相信这个梦。我想我们可以做到,可能明年。我认为……

Tammy:是的。我自己就有几台电脑。我卧室里有一台Linux台式机,一台Mac台式机,两台Linux笔记本电脑。我买了一大堆东西,但我是个超级书呆子,所以我所有的朋友都盯着我看,就像"天哪,苔米"

乔纳:事实上,我很喜欢。我将把它当作你的预测,那就是Linux桌面的一年。但我想听听你的家庭实验室,因为你说过有一个。

Tammy:我不知道该称之为实验室还是随处可见的科技。我真的很喜欢电脑。我从小就很喜欢电脑,所以它其实也很有趣。当我还在上大学的时候,他们发了这封邮件说,“嘿,你愿意在这家建立网站之类的公司做兼职吗?”我说,“是的,当然。”所以我去了那里,我告诉他们我的技能,他们说,“哇,你是一个硬件人员。然后,因为我告诉他们,我从12岁起就开始制造电脑。我要告诉他们我的酷劲儿,我的粉丝,我做的所有好吃的东西。他们说:“哇,这太疯狂了,我们很久没见过像你这样的人了。”但说实话,我小时候自己组装电脑的原因是,能理解电脑的工作原理很酷,而且更有趣。 And then I would build these sweet computers with pink lights and see-through mice with really cool stuff. So now it's just a lot of experimenting with different things and seeing what I like the most—but I'd say I'm less fancy these days. I want to be able to experiment. That's probably my main reason that I have [an interest in] different types of technology. And my other thing that I love to do—one of my personal favorite hobbies—is to set myself challenges to be able to break different software as fast as possible. So I'll be like, “I'm going to try this new piece of software and I'm going to try and break it.” And my record for breaking things is within a minute—that's the fastest, but then the longest it took me to figure out how to break something was three weeks. And I was

还是会想,“天哪,为什么我还没断呢?”通常,在我找到某种可靠性和脆弱性之前,平均需要一两个小时。”是的,这花了我很长时间。终于到达了那里。

乔纳:这是惊人的。跟我说说这些项目。我试着想象这是什么感觉你在谈论一些新的框架或者Kubernetes之类的东西,你试图打破它。你想破坏什么?

Tammy:是啊,可能是任何不同类型的事情。所以有时它可能是一个数据库软件。我做了一些工作MongoDB,蟑螂,许多不同类型的技术。我之所以特别关注这个问题,也是因为当我在dropbox工作的时候,我团队中的一个工程师,他经常发现mySQL的问题,然后把它们记录到社区中,并修复它们。和很多人在可靠性和耐久性问题,这让我回想起我的时间作为一个安全工程师你做错误赏金就像所有的时间,“我发现一个错误在您的软件,然后你得到钱,“就像一个很酷的事情你可以做。但这通常不是关于可靠性或持久性,而是关于是否能够被黑客攻击或窃取数据。这就是为什么我要讲这个。通常我会找到一些问题,比如Amazon的EKS之类的问题。然后我会分享这些,然后他们会给我回信,说:“嗯,太好了,谢谢你告诉我们这些,如果你有什么其他的东西,也和我们分享吧。”所以只要在公司之间建立通路,就能说,“嘿,这是我发现的东西,这是如何解决它的想法。我们就这么做吧。”所以,是的,我喜欢这个想法,分享——这很有趣。

乔纳:我真的很感谢你在那里的工作。我希望有可靠的奖励,让我们开始吧。

Tammy:这不是很酷吗?

乔纳:每个人都要发送Tammy检查,我们只需称之为赏金。

Tammy:(笑)

乔纳:再次感谢你参加我们的节目。对于那些在职业生涯早期就开始倾听并渴望有一天能成为你的人,你有什么话要对他们说吗?

Tammy:是的。我一直都能见到年轻人。我实际上昨天对那里的学生昨天谈了一下,而且很有趣地见到每个人。而我问他们的问题是,“谁是肾上腺素瘾君子,任何人都进入极端运动,任何人都兴奋地呼叫,致力于关键系统,致力于事件,建筑系统,然后保持它们并跑步?”“一间房间说,”是的!“,我认为这是超酷的。但是我对房间的另一半说,“你知道,即使你对它感到兴奋 - 或者如果你害怕它或者你对此感到紧张,因为这是一个大责任 - 我最大的责任提示是好奇,了解系统,花时间,找到伟大的导师,如果你刚刚开始,你会有一个伟大的,真棒的职业生涯。我喜欢在技术中工作,我发现它如此酷。那里有很多不同的行业,但我很高兴我挑选了这个 - 是的,我只是将永远在这里做。所以那很酷。 [chuckles] I hope they will too, maybe we'll work on a team together [chuckles].

乔纳:我期待着看到人们陷入这个行业。我认为这将是一个非常有趣的十年。

Tammy:是的。我也这么认为,肯定的。

乔纳:再次感谢您的光临。我真的很感谢你的时间,我特别期待你在一年后带着我们新的Linux台式机回来。(两个都笑了起来)

Tammy:我喜欢它。

乔纳:好吧。祝你愉快。谢谢你,塔米。

Tammy:太感谢了。

非常感谢您收看我们的下一集《观察麦考夫脸》这个播客可以在Spotify和iTunes上下载,在任何有好的播客出售的地方都可以下载。请记得订阅,这样你就不会错过任何一集了。如果你有想在节目中听到的话题或嘉宾的想法,请联系我。我的电子邮件地址是jonan@newrelic.com.您也可以在jonan展示中找到我的Twitter。Developer.newrelic.com提供了今天的剧集与许多其他可爱的讨论作品。停下来检查一下。太感谢了。祝你有美好的一天。