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
Cooking operations with Salt
Search
MasahiroIrie
July 27, 2022
Technology
780
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Cooking operations with Salt
MasahiroIrie
July 27, 2022
More Decks by MasahiroIrie
See All by MasahiroIrie
Is that compatibility... actually OK?
mirie_sd
0
55
Expiration of Secure Boot Certificates for vSphere Virtual Machines
mirie_sd
0
990
Making new vExpert badge sticker
mirie_sd
0
550
How to use "VMware"
mirie_sd
0
630
The key to VCP-VCF
mirie_sd
0
2.8k
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
230
Blog vExperts use
mirie_sd
0
230
Talk about TAS before forgetting
mirie_sd
0
270
Other Decks in Technology
See All in Technology
2年前に削除したPHPクラスが、 ある日突然決済をエラーにした
ykagano
1
780
【公開用】AI_Dev_Ex2026_AI_登壇資料
matsuritechnologies
PRO
1
480
SoccerMaster: A Vision Foundation Model for Soccer Understanding
kzykmyzw
0
170
AIが当たり前の組織で エンジニアはどう育つか
nishihira
1
970
データと地図で読む 大井町の「かわるもの、かわらないもの」
yoshiyama_hana
0
150
「顧客の声を聞かなければ何も始まらない」 ── 顧客の声から生まれた『AI返信補助機能』の開発プロセス / AICon2026_shikata_imai
rakus_dev
1
270
2026年のソフトウェア開発を考える(2026/07版) / Agentic Software Engineering 2026-07 Findy Edition
twada
PRO
25
11k
AIツールを導入しても生産性はあがらない? カオナビが直面した 3つの壁と乗り越え方。/ Overcoming 3 Barriers to AI-Driven Productivity at kaonavi
kaonavi
0
170
AI_Dev_Day_製造業領域でのAI活用から見た活用の罠と成功に導く実践知.pdf
kintotechdev
0
160
どこまでAIに任せるか 〜確率論と決定論の境界決定〜
shukob
0
450
AI時代のPlaywright活用(システムテストを自動化する ー 実行エンジンにPla ywrightを選んだ理由)
ynisqa1988
2
940
Amplify Gen2でbackend.tsにCDKを定義する/しない事によるCDKの挙動の違いとユースケース
smt7174
1
490
Featured
See All Featured
How STYLIGHT went responsive
nonsquared
100
6.2k
Code Review Best Practice
trishagee
74
20k
Thoughts on Productivity
jonyablonski
76
5.3k
Bridging the Design Gap: How Collaborative Modelling removes blockers to flow between stakeholders and teams @FastFlow conf
baasie
0
620
We Are The Robots
honzajavorek
0
280
Ten Tips & Tricks for a 🌱 transition
stuffmc
0
150
Building an army of robots
kneath
306
46k
Between Models and Reality
mayunak
4
380
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
420
WCS-LA-2024
lcolladotor
0
750
Git: the NoSQL Database
bkeepers
PRO
432
67k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
47
8.2k
Transcript
2022/7/27 Japan VMUG vExpert が語る #17 @IrieMasahiro Salt で運用に味付けを
自己紹介 入江 正博 @IrieMasahiro • ヴイエムウェア株式会社 テクニカルアカウントマネージャー • Japan VMUG
• vExpert 2019-2022 • 先週 Double VCP になりました (DCV2022 / NV2022) 次は DTM? 先は長い…
アジェンダ • Salt のおさらい • Beacons と Reactor • まとめ
• おまけ ※ 注 本発表内容は発表者個人の調査、検証に基づく見解であり、所属する会社、組織、及び、 その関係者の見解と完全に一致するものではありません。
Salt のおさらい
ここまでやってきた Salt 話 • vExpert Advent Calendar 2021 12/13 投稿分
◦ Salt でサーバに味付けを https://vhoge.hateblo.jp/entry/2021/12/13/090516 • VMware DevOps Meetup #11 ◦ Salt でサーバに味付けを (REM@STER VERSION) https://www.youtube.com/watch?v=vqglTqVghZA https://speakerdeck.com/mirie_sd/cooking-the-server- with-salt-rem-at-ster-version
Salt とは • オープンソースの自動化、構成管理ツール ◦ Ansible, Chef, Puppet の仲間 •
Python で実装 • SaltStack 社が主導で開発 → VMware 社が SaltStack 社を買収(2020/10) ◦ 現在もオープンソースプロジェクトとして開発中 ▪ https://github.com/saltstack/salt • 「サルト」って読みそうだけど「ソルト」
vRealize Automation SaltStack Config 旧 SaltStack Enterprise vRealize のポートフォリオの一つとして取り込み
Salt の構成
Salt の構成 • Master-Minion によるクライアント/サーバ構成 ◦ 管理対象にエージェント (salt-minion) をインストール ◦
単独ホストなら masterless minion 構成も可能 • Master-Minion 間は ZeroMQ による通信 ◦ Minion → Master へ 4505/tcp, 4506/tcp • Minion が導入できない環境には Proxy Minion ◦ Proxy Minion が管理対象に SSH や REST API で操作 • Salt SSH でエージェントレス構成も ◦ ただし、基本的には salt-minion 推奨
Salt の概念・機能 • Grains ◦ Minion で生成されるシステム情報やユーザ定義情報 ◦ 実行対象のフィルタリング条件に •
Pillar ◦ Master で管理される情報、変数や Secret 情報 • State ◦ あるべき構成を記述したファイル ◦ salt が state に従ってサーバ構成を実行 • Remote Execution ◦ Minion にて実行するアドホックな処理
ここでデモ
Salt は構成管理ツール… • ここまでなら構成管理ツール ◦ 細かい差はあれど、他のツールでもできそう • Salt の真価は Beacons
/ Reactor → 今日はこの話 ,j;;;;;j,. ---一、 ` ―--‐、_ l;;;;;; {;;;;;;ゝ T辷iフ i f'辷jァ !i;;;;; ヾ;;;ハ ノ .::!lリ;;r゙ `Z;i 〈.,_..,. ノ;;;;;;;;> そんなふうに考えていた時期が ,;ぇハ、 、_,.ー-、_',. ,f゙: Y;;f. 俺にもありました ~''戈ヽ `二´ r'´:::. `!
Beacons と Reactor
Beacons
Beacons すみません、言いたかっただけです…
Beacons • Minion でイベントを検知し、Master に通知する ◦ 例えば… ▪ ユーザのログイン、特定コマンドの実行 ▪
inotify によるファイル変更 ▪ サービスやプロセスの状態変更 ▪ load avg. や CPU、メモリなどのメトリクス情報 ▪ 他色々 (https://docs.saltproject.io/en/latest/ref/beacons/all/index.html) • 監視する対象を minion の設定に定義 • salt-minion が監視、通知を行う
Salt の構成 • Master-Minion によるクライアント/サーバ構成 ◦ 管理対象にエージェント (salt-minion) をインストール •
Master-Minion 間は ZeroMQ による通信 ◦ Minion → Master へ 4505/tcp, 4506/tcp • Minion が導入できない環境には Proxy Minion ◦ Proxy Minion が管理対象に SSH や REST API で操作 • Salt SSH でエージェントレス構成も ◦ ただし、基本的には salt-minion 推奨 というわけで… Salt の真価を発揮するなら salt-minion は必須!
Beacons 検知サンプル hostname:saltminion01 で nginx サービスが ruuning:false(=stop) にな ったことを検知して Master
に通知
Reactor
Reactor 特に思いつかなかった…
Reactor • 検知した Beacon をトリガーにアクションを実行 ◦ reactor 用の sls を記述
(ex. /srv/reactor/hoge.sls) ◦ どの Minion や何の Beacon かは渡される json から state 内で判断して処理を分岐することが可能 • state を自動で呼び出して実行 ◦ サービスだけの再起動 ◦ 構築用 state に従い、あるべき姿を再構成 ◦ メールや SNMP、Slack などでの通知
ここでデモ
Beacons / Reactor って夢があるよね? • システム監視に ◦ プロセスやサービスの停止を検知してアラート発報 ◦ CPU
やメモリの値を見てアラート発報 ◦ アラートもメール や SNMP、Slack、自前での実装も etc • 障害対応自動化に ◦ システム停止を検知して所定の手順を実行 ◦ なんならシステム丸ごと再デプロイ • バッチ処理の自動化にも? ◦ ファイル出力をトリガーに後続処理 ◦ スケジュール実行も可能 (Beacons とは関係ないけど)
ただの構成管理ツールではなく ,.ィ , - 、._ 、 . ,イ/ l/  ̄ ̄`ヽ!__
ト/ |' { `ヽ. ,ヘ N│ ヽ. ` ヽ /ヽ / ∨ N.ヽ.ヽ、 , } l\/ `′ . ヽヽ.\ ,.ィイハ | _| ヾニー __ _ -=_彡ソノ u_\ヽ、 | \ .  ゙̄r=<‐モミ、ニr;==ェ;ュ<_ゞ-=7´ヽ > . l  ̄リーh ` ー‐‐' l‐''´冫)'./ ∠__ ゙iー- イ'__ ヽ、..___ノ トr‐' / l `___,.、 ./│ /_ . ヽ. }z‐r--| / ト, | ,、 >、`ー-- ' ./ / |ヽ l/ ヽ ,ヘ _,./| ヽ`ー--‐ _´.. ‐''´ ./ \、 \/ ヽ/ -‐ '''"  ̄ / :| ,ゝ=< / | `'''‐- 、.._ / !./l .\ ./ │ _ _,> '´|l. ミ:ゝ、 _/,´\ ./|._ , --、 | i´!⌒!l r:,=i . | | l. / |= ヽ/ | .|l⌒l lニ._ | ゙ー=':| |. L._」 l. | l./ .! / | i´|.ー‐' | / | |. ! l . l. |. .! .| / .!.|"'|. l' │-==:|. ! ==l ,. -‐; l | l. .| / | i=!ー=;: l | l. | | / // l | l .|/ !│ l l、 :| | } _|,.{:: 7 l | l ./ .| |__,.ヽ、__,. ヽ._」 ー=:::レ' ::::::|; 7 . l | l / .|. \:::::\::::: ヽ ::::::!′ :::| .:/ . l | .∨ ! /ヽ::: `::: :::: ... つまり Salt は 統合運用自動化ツールだ ったんだよ!! 言い過ぎ?
まとめ • Salt とは OSS の自動化、構成管理ツール • Beacons と Reactor
でイベントドリブンな 自動化が可能 ◦ Beacons はイベント通知 ◦ Reactor で通知をトリガーに処理を実行 ◦ もはや統合運用自動化ツール? • やはり知名度(情報量)がネックか…? ◦ 個人的には運用全てを All-in-one でやりきらなくてもツールチェインでもい いのではないのかな…とも
おまけ • vRealize Automation SaltStack Config
おまけ • vRealize Automation SaltStack Config ◦ Salt の管理 GUI
(RaaS:Returner as a Service) ◦ アプライアンス VM とは別に RHEL/SLES への手動 インストール(※)も可能 ※ただし非推奨 ◦ salt-master を内包、既存の salt-master をぶらさげ ることも可能 ◦ Master 管理の構成ファイル(State や Pillar 等)の閲覧 編集も可能
おまけ
おまけ
試してないけど…
EOP