Performing Infrastructure Migrations at Scale
summary
Airbnb migrates hundreds of legacy services to Kubernetes over a multi-year program, reaching 70% of services in Kubernetes and ~300 critical services in production while still working through the last 30%. Work includes moving infra to infrastructure-as-code, replacing a legacy proxy with Envoy, fixing JVM-in-container memory issues, and automating refactors with automated refactor jobs that open and often merge PRs. CI replacement runs ~90% automatically. The approach prioritizes sequencing, making the new default, stress testing high-load cases, and finishing migrations to avoid added tech debt.
AI-written summary · about
chapters (19)
- 0:00Intro
- 0:53Migrations: Airbnb Case Study
- 4:46Migrations reduce tech debt
- 6:31Migration types
- 9:27Cascading Migrations
- 11:02Simultaneous Migrations
- 13:27Sequenced Migrations
- 16:02Prioritized Migrations
- 17:26that new service mesh you were thinking about
- 17:55Migration at scale
- 24:23Migration overhead what developers want
- 24:54Migration overhead what developers get
- 25:10Unfinished migrations
- 29:26How do we migrate programmatically?
- 29:49The lifecycle of a refactor
- 31:06What do we migrate programmatically?
- 31:54Migration strategy: make one person do it
- 32:15Migration strategy: make devs do all of it
- 32:38Migration strategy: an actual migration program
related talks
35mPerforming Infrastructure Migrations at Scale
20mKeynote: The Challenges of Migrating 150+ Microservices to Kubernetes
38mBuilding the Perfect Infrastructure with Kubernetes
14mMigrating and running production services in Kubernetes
26mThe Road To Cilium: Migrating 150+ Kubernetes Clusters at Airbnb
31mMigrating Legacy Infrastructure to Kubernetes: Olark’s Lessons From the Trenches
32mMigrating 2 million CPU cores to Kubernetes
15mKeynote: The Terrifying Migration of 420 Services to Kubernetes
