Airbnb如何保障生产的变化

By: Michael Lin, Toby Mao, Zack Loebel-Begelman

作者Michael Lin,Toby Mao,Zack Loebel-Begelman

Introduction

简介

As Airbnb has grown to a company with over 1,200 developers, the number of platforms and channels for pushing changes to our product — and the number of daily changes we push into production — has also grown tremendously. In the face of this growth, we constantly need to scale our ability to detect errors before they reach production. However, errors inevitably slip past pre-production validation, so we also invest heavily in mechanisms to detect errors quickly when they do make it to production. In this blog post we will cover the motivations and foundations for a system for safeguarding changes in production, which we call Safe Deploys. Two following posts will cover the technical architecture in detail for how we applied this to traditional A/B tests, and code deploys respectively.

随着Airbnb成长为一家拥有1200多名开发人员的公司,向我们的产品推送修改的平台和渠道的数量--以及我们每天推送到生产中的修改数量--也有了极大的增长。面对这种增长,我们不断地需要扩大我们的能力,以便在错误进入生产之前发现它们。然而,错误不可避免地会在生产前的验证中溜走,所以我们也在机制上进行了大量的投资,以便在错误进入生产时快速检测。在这篇博文中,我们将介绍用于保护生产中的变化的系统的动机和基础,我们称之为安全部署。接下来的两篇文章将详细介绍我们如何将其应用于传统的A/B测试,以及代码部署的技术架构。

Continuous Delivery and Beyond

持续交付及其他

Airbnb’s continuous delivery team recently wrote about our adoption of Spinnaker, a modern CI/CD orchestrator. Spinnaker supports Automated Canary Analysis (ACA) during deployment, splitting microservice traffic by request to compare versions of code to see if performance, error rates, or other key metrics are negatively impacted. If metrics for the new version regress, Spinnaker automatically rolls back the deployment, significantly reducing the time to remediate a bad push.

Airbnb的持续交付团队最近写到我们采用了Spinnaker,一个现代CI/CD协调器。Spinnaker在部署过程中支持自动金丝雀分析(ACA),按请求分割微服务流量,以比较代码版本,查看性能、错误率或其他关键指标是否受到负面影响。如果新版本的指标出现倒退,Spinnaker会自动回滚部署,从而大大减少补救错误推送的时间。

ACA at Airbnb has indeed caught a large number of errors early in the deployment process. However, it has a number of limitations:

Airbnb的ACA确实在部署过程的早期发现了大量的错误。然而,它也有一些局限性。

  • Channels: Spinnaker’s ACA tes...

开通本站会员,查看完整译文。

Accueil - Wiki
Copyright © 2011-2024 iteam. Current version is 2.137.1. UTC+08:00, 2024-11-15 10:18
浙ICP备14020137号-1 $Carte des visiteurs$