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
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Cooking the server with Salt (REM@STER Version)
Search
MasahiroIrie
December 15, 2021
Technology
710
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Cooking the server with Salt (REM@STER Version)
MasahiroIrie
December 15, 2021
More Decks by MasahiroIrie
See All by MasahiroIrie
Is that compatibility... actually OK?
mirie_sd
0
80
Expiration of Secure Boot Certificates for vSphere Virtual Machines
mirie_sd
0
1.3k
Making new vExpert badge sticker
mirie_sd
0
670
How to use "VMware"
mirie_sd
0
760
The key to VCP-VCF
mirie_sd
0
3k
Now is the time to check the vSphere Security Configuration and Hardening Guide
mirie_sd
0
1.3k
Using vROPs API with Swagger
mirie_sd
0
240
Cooking operations with Salt
mirie_sd
0
790
Blog vExperts use
mirie_sd
0
230
Other Decks in Technology
See All in Technology
Reactの設計論
uhyo
12
4.5k
20260912_スクラムにジェネラリストは必要か
ryugen04
0
150
「重なり」は迎える側がつくる ― 人もAIエージェントも歓迎するプロダクトエンジニアリング ―
go0517go
PRO
0
270
Amazon Quick on DesktopがIAM Identity Centerで動かない理由
yukiogawa
0
130
ASTを使って影響範囲を特定する
nealle
0
130
作り直せるコードは迅速に 作り直せないDBは慎重に - AI時代のプロダクトエンジニアが「判断の不可逆性」で開発速度を変える話
kinosuke01
0
280
Driving AI Adoption Using In-House GPUs to Serve Qwen
po3rin
2
470
omasushiというライブラリを作った
polidog
PRO
0
160
こんなアーキテクチャ図は嫌だ BEYOND THE TIME: 半年後の自分へ贈る15のメッセージ / 15 of Anti-pattern in AWS Architecture Diagrams
naospon
3
290
OpenTelemetry eBPF Instrumentationの舞台裏 / Behind the Scenes of OpenTelemetry eBPF Instrumentation
ymotongpoo
3
450
Bet AI Day 2026丨AIによって本質に戻るシステムリスク管理
layerx
PRO
0
1.3k
GoにおけるFFIのこれまでとこれから
goccy
4
1.5k
Featured
See All Featured
Six Lessons from altMBA
skipperchong
29
4.5k
KATA
mclloyd
PRO
35
15k
[SF Ruby Conf 2025] Rails X
palkan
2
1.4k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
123
22k
Lightning talk: Run Django tests with GitHub Actions
sabderemane
0
250
Being A Developer After 40
akosma
91
590k
A designer walks into a library…
pauljervisheath
211
25k
Reality Check: Gamification 10 Years Later
codingconduct
0
2.3k
Neural Spatial Audio Processing for Sound Field Analysis and Control
skoyamalab
0
480
Self-Hosted WebAssembly Runtime for Runtime-Neutral Checkpoint/Restore in Edge–Cloud Continuum
chikuwait
0
780
Imperfection Machines: The Place of Print at Facebook
scottboms
270
14k
Beyond borders and beyond the search box: How to win the global "messy middle" with AI-driven SEO
davidcarrasco
3
240
Transcript
2021/12/15 VMware DevOps Meetup #11 @IrieMasahiro Salt でサーバに味付けを (REM@STER Version)
自己紹介 入江 正博 @IrieMasahiro • 某情報通信系企業 クラウド/インフラコンサルタント • VMUG 仮想インフラ部会 •
vExpert 2019-2021
本発表は… • vExperts Advent Calendar 2021 12/13 投稿 “Salt でサーバに味付けを”の使い回しリマスター
◦ https://adventar.org/calendars/6689 • こぼれネタやデモを添えて
本旨アジェンダ • Salt とは • Salt のアーキテクチャ ◦ Master -
Minion ◦ Salt SSH ◦ デモ 1 • Salt の機能 ◦ Grains ◦ Remote Execution ◦ State ◦ Pillar ◦ デモ 2 • まとめ
Salt とは
Salt とは • オープンソースの自動化、構成管理ツール ◦ Ansible, Chef, Puppet の仲間 •
Python で実装 • SaltStack 社が主導で開発 → VMware 社が SaltStack 社を買収 ◦ 現在もオープンソースプロジェクトとして開発中 ▪ https://github.com/saltstack/salt
時は2020年10月 VMware社によるSaltStack 社の買収完了を発表
vRealize Automation SaltStack Config 旧 SaltStack Enterprise vRealize のポートフォリオの一つとして取り込み
Salt って有名なの? • 歴史は結構長い ◦ 2011 年初版リリース、Ansible (2012 年)より前 •
自分は割と最近に初めて知った… ◦ Ansible, Chef, Puppet は聞いたことあったけど… ◦ 世の中的には有名?
Google トレンド調べ • Salt, Ansible, Chef, Puppet で調査 • 過去
5 年分
Google トレンド調べ • Salt, Ansible, Chef, Puppet で調査 世界的に大人気ではないか!(白目)
Google トレンド調べ2 • この結果、絶対ノイズ混ざってるだろ… ◦ Salt とか Chef とか料理の話かと ◦
Puppet も… ※ 一般的なイメージ • カテゴリを”コンピュータ”で絞ってやり直し
Google トレンド調べ2 • カテゴリを”コンピュータ”で絞ってやり直す やっぱり圧倒的ではないか!(白目)
Salt はググラビリティが低い… • コンピュータで Salt というと暗号化の話が… • 何となくお察しの通り、知名度はそこまでない? ◦ “SaltStack”
で検索 ↓ 多分こんなものかと ※ 個人の感想です
Salt のアーキテクチャ
Salt の構成
Salt の構成 • Master-Minion によるクライアント/サーバ構成 ◦ 管理対象にエージェント (salt-minion) をインストール ▪
対象は Linux / Windows / UNIX などサーバ系が中心に • Master-Minion 間は ZeroMQ による通信 ◦ Minion → Master へ 4505/tcp, 4506/tcp • Minion が導入できない環境には Proxy Minion ◦ vCenter や NW 機器など、汎用的な OS 以外の環境 ◦ Proxy Minion が管理対象に SSH や REST API で操作
Minion のインストール面倒… • そんなあなたに Salt SSH • エージェント (salt-minion) 不要の構成
◦ Master から ssh 接続でゴニョゴニョしてくれる ▪ Master での対象ホスト指定 (/etc/salt/roster) ▪ Salt SSH 用のユーザ + sudo 用 NOPASSWD ▪ Salt SSH 用公開鍵 (/etc/salt/pki/master/ssh/salt-ssh.rsa.pub) • Minion に比べるとモッサリ感… ◦ 基本的には salt-minion 推奨 ▪ 初回の salt-minon インストール時に ▪ どうしても Minion が使えない場合に
ここでデモ
Salt の機能
Grains • 管理対象のハードや OS 、ネットワークなど、 あまり変更されない静的に近い情報 ◦ Minion で生成される情報 •
Master から参照が可能 • システム情報だけでなく、ユーザ任意の値も可能 ◦ サーバグルーピングやメタ情報の付与 → タスク実行時の対象ホスト指定の条件フィルタに
Remote Execution • 指定した管理対象でコマンドを実行 ◦ pssh とか Fabric と同じようなもの •
汎用的な操作や API を叩くようなものは Execution Module として用意されている ◦ https://docs.saltproject.io/en/latest/ref/modules/all/index.html#all-salt-modules ◦ 足りなければ独自拡張も可能
State • 構成をファイルに記述 (/srv/salt) • Salt がファイル内容に従って処理を実行 • 構成を記述するファイルが State
と呼ばれる ◦ パッと見 YAML 形式 ◦ Jinja2 テンプレートなので制御を仕込むことも可能 • どの Minion にどの State を適用するかも記述 ◦ top.sls に Minion 名や Grain での条件指定と適用する State 名のマッピング記述
Pillar • 変数や Secret をファイルに記述 (/srv/pillar) • Master 上で定義、格納して管理 ◦
Grains と Pillar の違い • Grains は Minion 上で生成、管理 • Pillar は Master 上で生成、管理 • State からは実行時に Pillar を参照 ◦ {{ pillar[‘hoge’] }} で参照 • State と同様に top.sls で Minion やグループ毎に 値の定義が可能
ここでデモ
まとめ • Salt とは OSS の自動化、構成管理ツール • Master-Minion のクライアント/サーバ型 ◦
Salt SSH によるエージェントレスも可 • State と Remote Execution による構成管理 ◦ Minion 上の Grains に静的情報 ◦ Master 上の Pillar に変数やシークレット情報 • 他にも beacon や reactor、salt-runner など ◦ 機会があればそのウチ…(まだ触ってない) • 知名度(情報量)がネックか…?
ところで vRealize Automation SaltStack Config Download 不可能なので何も試せず… そのウチ試用できればなぁ…
EOP