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
Introduction to Chef
Search
Mehdi Lahmam B.
May 12, 2012
Technology
240
3
Share
Introduction to Chef
A quick introduction to Chef
Mehdi Lahmam B.
May 12, 2012
More Decks by Mehdi Lahmam B.
See All by Mehdi Lahmam B.
Beyond code: Becoming a Product Engineer
mehlah
0
53
Possible to measure developer productivity?
mehlah
0
60
PG FDW FTW
mehlah
0
190
Product culture
mehlah
0
94
OpenAPI and AsyncAPI specifications as contracts
mehlah
0
690
Technical Debt
mehlah
1
310
Data informed growth
mehlah
0
270
Serverless Ruby and AWS Lambda
mehlah
0
190
Middleware all the things
mehlah
2
880
Other Decks in Technology
See All in Technology
Agentic AI時代における メルカリのAIガバナンスとガードレール実装
naoichihara
15
14k
データ基盤構築・運用の現場から 〜 Snowflake Intelligence 導入で変わった、データ活用の未来 〜
wonohe
0
180
Generative UI × A2UI で AI エージェントを作った話 AI-DLC も使ってみた!
kmiya84377
1
160
Python開発環境にハーネス適用を検討する
yuuka51
1
510
AI時代に求められる思考のパラダイムシフト
nrinetcom
PRO
1
150
組織の中で自分を経営する技術
shoota
0
150
サプライチェーン攻撃への備えについて考えている #湘なんか
stefafafan
3
2.4k
AIコーディングエージェントの活用で、コードは静かに肥大化した
yosukeshinoda
1
360
long-running-tasks
cipepser
2
340
ジュニアエンジニアはSREとどう向き合うべきか
nrinetcom
PRO
1
120
実践 TanStack Start ― 新規プロダクトを開発して確立した、サーバーとクライアント境界の設計パターン / Practical TanStack Start Server-Client Boundary Patterns
kaminashi
2
320
イベントストーミングとKiroの仕様駆動開発で実現する要件の認識合わせプロセス
syobochim
5
410
Featured
See All Featured
Getting science done with accelerated Python computing platforms
jacobtomlinson
2
210
Believing is Seeing
oripsolob
1
130
Writing Fast Ruby
sferik
630
63k
Git: the NoSQL Database
bkeepers
PRO
432
67k
Jamie Indigo - Trashchat’s Guide to Black Boxes: Technical SEO Tactics for LLMs
techseoconnect
PRO
0
140
Navigating the Design Leadership Dip - Product Design Week Design Leaders+ Conference 2024
apolaine
1
320
The Organizational Zoo: Understanding Human Behavior Agility Through Metaphoric Constructive Conversations (based on the works of Arthur Shelley, Ph.D)
kimpetersen
PRO
0
340
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
The Language of Interfaces
destraynor
162
26k
A better future with KSS
kneath
240
18k
A Soul's Torment
seathinner
6
2.8k
Building Better People: How to give real-time feedback that sticks.
wjessup
370
20k
Transcript
Chef cd ~/scripts && find . -type f -name "*.sh"
-exec rm -rf {} \;
@mehlah
You’ve got a cloud. Now what ?
a ruby-based system integration framework designed to bring the benefits
of configuration management to your entire infrastructure Chef is
Huh ?
a Configuration management system a System integration platform an API
for your entire infrastructure
1st release Jan 15, 2009 Initial commit Mar 05, 2008
Chef Solo
Awesome!
Awesome! Bummer! We’ve only scratched the surface
Chef Server
source: http://wiki.opscode.com/display/chef/Architecture+Introduction
source: http://wiki.opscode.com/display/chef/Architecture Server Architecture
Disclaimer: The previous slide is here only to add an
engineering touch to this talk. You can safely ignore it !
In plain words 1. Clients talks to a Chef server,
and asks for their configuration. 2. Clients run ruby code on themselves, to converge to the aimed configuration
A lot of layers in Chef have attributes : Environments,
Nodes, Roles and Cookbooks.
Chef groups Nodes into Environments. You can have as many
environments as you like. Nodes have one or more Roles applied to them. A Role is comprised of one or more Cookbooks.
Cookbooks are comprised of one of more Recipes, Templates, Files
and more.
Tadaaaaa!
Cool stuffs
{ "id": "mehlah", "name": "Mehdi Lahmam B.", "uid": "2001", "group":
"www-data", "home": "/home/mehlah", "roles": [ "unix", "sudo" ], "ssh_keys": [ "akeystring" ] } Data bags
Search search(:node, "*:*") {|n| nodes << n } through Data
Bags, Roles, Nodes and more... knife search role "name:production*" knife search node 'platform:ubuntu' knife search admins 'id:christophe' search(:node, 'dmi_system_manufacturer:Dell*').each do |node| puts node[:dmi][:system][:serial_number] + "\t" + node[:fqdn] end Examples XJS1NF1 www1.example.org XJS1NF2 www2.example.org XJS1NF3 www3.example.org
Not so cool stuffs
None
Thanks!
Typeface: Arvo Notes on design Colors: #FF9900 #3299BB #424242 #E9E9E9