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
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
490
I Can Be A Speaker, So Can You
elbaschid
0
330
Click - PyCaribbean 2017 - Puerto Rico
elbaschid
0
470
Conferencing - Engineering Meeting
elbaschid
1
51
Show & Tell - PyCon US 2016 Summary
elbaschid
1
110
Click: A Pleasure To Write, A Pleasure To Use
elbaschid
0
690
Hunting for Treasure in Django
elbaschid
1
730
Moby & The Beanstalk
elbaschid
1
540
Docker In Production - A War Story
elbaschid
1
320
Other Decks in Technology
See All in Technology
Amazon EVS で VCF 9.0 / 9.1 のサポート開始まとめ
mtoyoda
0
300
大量データに対しても、生成AIを用いてリーズナブルにデータ加工をしたい!Databricksのai_queryについて調べてみた
kamoshika
1
150
公式ドキュメントの歩き方etc
coco_se
0
110
第67回コンピュータビジョン勉強会CVPR2026読会前編
tsukamotokenji
0
130
SoccerMaster: A Vision Foundation Model for Soccer Understanding
kzykmyzw
0
110
クラウド上のデータ復旧で見落としがちな制約: 医療系 SaaS の BCP 設計から得た教訓
kakehashi
PRO
0
3.6k
AI Agent SaaS を支える自社仮想化基盤への挑戦と実運用 / ai-agent-saas-virtualization
flatt_security
2
3.9k
しくみを学んで使いこなそう GitHub Copilot app
torumakabe
2
250
AI、CDK と協働する Full TypeScript アプリケーション開発 / Full TypeScript Application with AI and CDK
geekplus_tech
2
200
「早く出す」より「事業に効く」 ── 顧客の業務サイクルから逆算するAI時代の二重ループ開発と「変化の設計者」 / devsumi2026
rakus_dev
1
260
ruby.wasmとPicoRuby.wasmに対応した仮想DOMライブラリを作ってる話 #kaigieffect_kaigi
sue445
PRO
0
150
End-to-Endで考える信頼性 —LINEアプリにおけるクライアント開発×SRE連携の実践
maruloop
4
4.3k
Featured
See All Featured
Discover your Explorer Soul
emna__ayadi
2
1.2k
The Limits of Empathy - UXLibs8
cassininazir
1
470
Typedesign – Prime Four
hannesfritz
42
3.1k
Thoughts on Productivity
jonyablonski
76
5.2k
Public Speaking Without Barfing On Your Shoes - THAT 2023
reverentgeek
1
460
Practical Orchestrator
shlominoach
191
11k
Become a Pro
speakerdeck
PRO
31
6k
Visual Storytelling: How to be a Superhuman Communicator
reverentgeek
2
590
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
123
22k
The browser strikes back
jonoalderson
0
1.4k
Reflections from 52 weeks, 52 projects
jeffersonlam
356
21k
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?