Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Salty Servers Taste Better
Search
Seb
July 11, 2013
Technology
210
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Salty Servers Taste Better
Seb
July 11, 2013
More Decks by Seb
See All by Seb
Double Click - Continue Building Better CLIs
elbaschid
0
500
I Can Be A Speaker, So Can You
elbaschid
0
340
Click - PyCaribbean 2017 - Puerto Rico
elbaschid
0
480
Conferencing - Engineering Meeting
elbaschid
1
53
Show & Tell - PyCon US 2016 Summary
elbaschid
1
110
Click: A Pleasure To Write, A Pleasure To Use
elbaschid
0
700
Hunting for Treasure in Django
elbaschid
1
750
Moby & The Beanstalk
elbaschid
1
560
Docker In Production - A War Story
elbaschid
1
320
Other Decks in Technology
See All in Technology
10Xに技術的負債をもたらした「2つの境界の歪み」その構造と解消への営み
10xinc
0
2.4k
Why Agent Cost Needs Observability
nttcom
0
150
事業課題から技術的負債に向き合う
sansantech
PRO
2
2.3k
2026_devsumi_ozono.pdf
o3
3
590
LLMに渡さなかった仕事
nanaism
0
1.4k
特殊変数大全
dak2
0
110
AI coding 整合正規方法
philipz
0
530
Oracle Cloud Infrastructure(OCI):Onboarding Session(はじめてのOCI/Oracle Supportご利⽤ガイド)
oracle4engineer
PRO
2
20k
aws-iot-platform-architecture-use-cases.pdf
ma2shita
0
570
リアーキテクチャ後の障害ゼロを目指したShadow Testingの取り組み
nihonbuson
PRO
1
170
SREへの勘違いに気づいた後の話
tomodakengo
0
150
データ_AIの事業の勝敗をわけるもの
nek0128
1
480
Featured
See All Featured
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
1
830
Dominate Local Search Results - an insider guide to GBP, reviews, and Local SEO
greggifford
PRO
0
340
What the history of the web can teach us about the future of AI
inesmontani
PRO
1
710
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
6.1k
Designing for Timeless Needs
cassininazir
1
490
[RailsConf 2023] Rails as a piece of cake
palkan
59
7k
Future Trends and Review - Lecture 12 - Web Technologies (1019888BNR)
signer
PRO
0
3.8k
Marketing Yourself as an Engineer | Alaka | Gurzu
gurzu
0
310
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
4.9k
Scaling GitHub
holman
464
140k
Why Mistakes Are the Best Teachers: Turning Failure into a Pathway for Growth
auna
0
300
Transcript
Salty Servers Taste Better Sebastian Vetter @elbaschid github.com/elbaschid
Who am I? • I work for Tangent Snowball •
I love Python & Django • I passionate about CI & CD • I hate doing things by hand
Disclaimer • I am not a DevOp • I don't
know much about puppet/chef • This presentation might suck ;)
Who has heard about saltstack?
Why am I talking about salt? Because • it is
awesome! • it is magic! • I love automation! • it is awesome!
What I'll be talking about today • The basics of
salt ... • ... and how to use it everywhere
Check out this freshly squeezed talk
Two Types of Servers
4 Major Parts • Modules • Grains • Salt states
• Pillar
Modules • remote execution • administration from master • run
on selected minions
Grains provide • hostname • OS details • roles of
the host
Grains example {{ grains['oscodename'] }}
Salt states define • installed packages • managed files •
running services • ... and more ...
Salt state examples redis: pkg.installed: - name: redis-server service.running: -
name: redis-server - enable: True - require: - pkg: redis
Pillars • define sensitive data • are selective distribution •
can be used in
Pillar example database: prefixes: - dev - test
Get Pillar data {{ salt['pillar.get']('database:prefixes:dev', None) }}
The master configuration # define the salt state director(y|ies) file_roots:
base: - /srv/salt # define the pillar director(y|ies) pillar_roots: base: - /srv/salt
The minion configuration master: 127.0.0.1
/srv/salt/top.sls • main entry point • one each for pillar
and salt • must be in pillar/salt roots
An example base: '*': - core - python - ssh
- iptables 'coolsite-*': - nginx - supervisor - virtualen 'os:Windows': - destroy
Here comes the magic $ salt '*' state.highstate
What else can you do • share states through gitfs
• handle your cloud with salt-cloud • provision vagrant or docker
Thanks for listening Got Questions?