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
Configuration Management Tools
Search
Juanje Ojeda
March 05, 2014
Programming
0
120
Configuration Management Tools
Very basic introduction to the Configuration Management Tools for the group Las Palmas DevOps.
Juanje Ojeda
March 05, 2014
Tweet
Share
More Decks by Juanje Ojeda
See All by Juanje Ojeda
DevOps: A cultural change
juanje
4
260
DevOps isn't just for the Web
juanje
3
310
Other Decks in Programming
See All in Programming
Snowflake x dbtで作るセキュアでアジャイルなデータ基盤
tsoshiro
2
500
cXML という電子商取引の トランザクションを支える プロトコルと向きあっている話
phigasui
3
2.3k
Hotwire or React? ~アフタートーク・本編に含めなかった話~ / Hotwire or React? after talk
harunatsujita
1
110
役立つログに取り組もう
irof
28
9.4k
AI時代におけるSRE、 あるいはエンジニアの生存戦略
pyama86
4
1k
What’s New in Compose Multiplatform - A Live Tour (droidcon London 2024)
zsmb
1
450
Sidekiqで実現する 長時間非同期処理の中断と再開 / Pausing and Resuming Long-Running Asynchronous Jobs with Sidekiq
hypermkt
6
3k
A Journey of Contribution and Collaboration in Open Source
ivargrimstad
0
490
イベント駆動で成長して委員会
happymana
1
270
Jakarta EE meets AI
ivargrimstad
0
120
ペアーズにおけるAmazon Bedrockを⽤いた障害対応⽀援 ⽣成AIツールの導⼊事例 @ 20241115配信AWSウェビナー登壇
fukubaka0825
2
160
Tauriでネイティブアプリを作りたい
tsucchinoko
0
350
Featured
See All Featured
Art, The Web, and Tiny UX
lynnandtonic
297
20k
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.1k
Unsuck your backbone
ammeep
668
57k
Large-scale JavaScript Application Architecture
addyosmani
510
110k
GraphQLとの向き合い方2022年版
quramy
43
13k
Embracing the Ebb and Flow
colly
84
4.5k
Product Roadmaps are Hard
iamctodd
PRO
49
11k
Six Lessons from altMBA
skipperchong
27
3.5k
Facilitating Awesome Meetings
lara
49
6.1k
A Modern Web Designer's Workflow
chriscoyier
693
190k
YesSQL, Process and Tooling at Scale
rocio
168
14k
Building a Scalable Design System with Sketch
lauravandoore
459
33k
Transcript
SCM Software Configuration Management
Captain Obvious alert!
This is why... Let’s talk about the basics
what are Software Configurations ?
The system behavior Hardware configurations System configurations Applications settings Organization
policies
Configurations ≈ Policies The port 80 must be open The
user X must have access MySQL database must be running Ping must be blocked
what does Software Configurations look like?
Configurations
Configurations
Configurations
Configurations
Configurations
Configurations
Configurations
Configurations
what is a SCM system?
SCM Systems Provisioning Change management
SCM on Modern Systems
From 1 machine to many
Working on the wrong server
From 1 sysadmin to many
Who did what?
What do we need? All changes documented All changes must
be repeatable All changes in one place Accesibles for anyone All changes must be traceable
What does traceable mean? What have been changed? When have
been changed? Who made the change?
What do we do? Configuration by hand Wiki One or
few scripts Better scripts + Wiki Better scripts + Git/Svn Custom SCM (script+git+ssh loop)
How is a modern SCM? Declarative Abstract Idempotent Convergent
How is a modern SCM? Declarative Abstract Idempotent Convergent What
NOT How
How is a modern SCM? Declarative Abstract Idempotent Convergent How
it should behave Rely on the tool for the implementation
How is a modern SCM? Declarative Abstract Idempotent Convergent Only
take action if it’s needed
How is a modern SCM? Declarative Abstract Idempotent Convergent Each
resource takes care of itself
Key concepts Modern SCM
Modern SCM’s concepts Resources Nodes/Minions Recipes/Manifests/Playbooks Inventory Roles/Profiles
Some extras do we have time?
Avoid manual processes They are error prone
None
But be careful ;-)
Make Apps SCM friendly Separate data from code Allow to
use ENV variables Set default options But allow overwrite them with conffiles
Do NOT hardcode settings!!! Ever!
Make Apps SCM friendly Use the dependency managers Composer Bundler
Pip npm Maven
Make Apps SCM friendly Use flags to activate features Use
standard formats Think about settings per environment
Recomendations Start small Think in policies not in manual changes
Use Vagrant for developing policies
Recomendations
Popular SCMs CFEngine Puppet Chef Ansible
SCM vs Deploy Tools Debate