From Push to Pull: Managing Mutable Infrastructure at a Global Scale
summary
A push-to-pull migration replaces Capistrano/Ansible/Jenkins pipelines with an eventually consistent, declarative system supporting ~5,000 hosts across 12+ data centers and cloud by running a tiny deploy agent on every host that consults Meraki’s version metadata Athena and reports state to a deploy supervisor. Early prototypes were 15 lines of Ruby, v1 ~114 lines; targeted deployments took four rewrites. Alpha/beta rollout found burst load on Athena and validated the 80/20 paved vs unpaved roads approach; the system works and is rolling toward GA.
AI-written summary · about
chapters (12)
- 0:00Introduction and definitions
- 1:18Constraints and evolution
- 4:06The problem with push systems
- 7:31Breaking change budget
- 10:38UX-driven requirements
- 14:38Planning the new system
- 17:01MVP and design philosophy
- 20:23System architecture components
- 25:02Deployment demonstration
- 29:27Alpha phase lessons
- 33:47Beta and maintenance
- 36:15Conclusion and takeaways
related talks
47mDeploying Like a Boss: From 2 Servers to 20,000
22mScalable Deployments...
24mContinuous Deployment at Scale
06mIgnite - Blue Green Deployments Using Terraform + Packer + Jenkins
01h 00mReliability and speed by 'push to main' mentality
45mLarge-Scaled Deploy Over 100 Servers in 3 Minutes
01h 02mThe Road to continuous deployment
51mContinuous Deployment for a Billion Dollar Order System
