Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Be a Master Chef: Crafting Recipes for Reliable...
Search
Kumar Abhijeet
November 03, 2023
0
23
Be a Master Chef: Crafting Recipes for Reliable Infrastructure
Kumar Abhijeet
November 03, 2023
Tweet
Share
More Decks by Kumar Abhijeet
See All by Kumar Abhijeet
Multi-Region APIOps with Kong
kumar_abhijeet
0
41
How Patroni solved Database Reliability at Gojek
kumar_abhijeet
0
14
Featured
See All Featured
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
28
9.1k
The Language of Interfaces
destraynor
154
24k
Designing Experiences People Love
moore
138
23k
Facilitating Awesome Meetings
lara
50
6.1k
Product Roadmaps are Hard
iamctodd
PRO
49
11k
Making the Leap to Tech Lead
cromwellryan
133
8.9k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
47
2.1k
Fantastic passwords and where to find them - at NoRuKo
philnash
50
2.9k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
10
740
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
27
2.1k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
131
33k
Fontdeck: Realign not Redesign
paulrobertlloyd
82
5.2k
Transcript
Be a Master Chef Kumar Abhijeet Product Engineer Crafting Recipes
for Reliable Infrastructure
None
Fabricating DBaaS@Gojek DevOps/Ruby Enthusiast Home Gym Owner Musician
A G E N D A Chef - What and
Why How Chef Works Chaos and Standards Solving the chaos puzzle Guiding Principles Future of Chef
Configuration Management Tool Suite Solves the configuration problem in the
IaC ecosystem Automates deployment and server management Mostly used in VM workloads Chef - What?
What does Configuration Management even mean?
Maintaining systems in a desired state Consistent state across all
systems Enforcing policy and standards Avoid outages by eliminating misconfigurations Configuration Management - What?
Why do we need Configuration Management?
Performing System Administration at scale Eliminate human error from systems
Automated Infra == Resilient Infra Cloud adoption and management made easy Configuration Management - Why?
Why are we discussing about Chef in a Ruby Meetup?
How does Chef work?
None
None
Let’s picture an application system
Rails Server VMs Patroni VMs API Traffic LB
None
None
None
Rails Server VMs Patroni VMs API Traffic LB
None
None
None
Rails Server VMs Patroni VMs API Traffic LB
Rails Server VMs Patroni VMs API Traffic LB
None
Load Compile Converge Cleanup Chef - Loading Process
None
Bad Code Good Code
Idempotence Multiple applications of the same action do not have
side effects on the system state Doesn’t get added to the resource collection Convergence Bring the system state in line with a defined policy. Changes are made on the system only if they need to be made. Convergence & Idempotence
Idempotent Convergent Idempotent means not taking actions when they aren't
needed, Convergent means it "settles" on a specific final state. - coderanger(aka Noah Kantrowitz)
Idempotent Convergent
Scalable Easier to rollback Predictable Efficient Convergence & Idempotence -
Why?
None
Data Driven Configurations Manage Systems, not Records Utilize Service Discovery
Extensible Abstractions Guiding Principles
........
........
None
None
None
POSIX Compatible
POSIX and Windows Compatible
None
Cloud Native Movement Mature Container Orchestration Toolings Business Strategy? Better
Alternatives Future of Chef
Thank you! Link to the deck and related resources =>