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
Abstract Helmfile
Search
Junki Mano
July 29, 2019
Technology
1
95
Abstract Helmfile
Abstraction of Helmfile.
社内LT用に作成したHelmfileの概要資料です/
Junki Mano
July 29, 2019
Tweet
Share
More Decks by Junki Mano
See All by Junki Mano
ソフトウェアアーキテクトって何やるの? ~知っておくと役立つ考え方を共有します~ | 技育祭2022秋
laqiiz
3
2.1k
Goで工場を制御する要であるPLCにアクセスする / go-plc
laqiiz
0
2.4k
Abstract Sentinel
laqiiz
0
100
CNCF
laqiiz
1
100
Local_Kubernetes.pdf
laqiiz
1
97
Abstract GitOps
laqiiz
1
160
公開用_WebDBForum2018_テクノロジーショーケース_業務IoTストリーミング基盤.pdf
laqiiz
1
290
Other Decks in Technology
See All in Technology
明日からできる!技術的負債の返済を加速するための実践ガイド~『ホットペッパービューティー』の事例をもとに~
recruitengineers
PRO
3
400
N=1から解き明かすAWS ソリューションアーキテクトの魅力
kiiwami
0
130
TAMとre:Capセキュリティ編 〜拡張脅威検出デモを添えて〜
fujiihda
2
250
滅・サービスクラス🔥 / Destruction Service Class
sinsoku
6
1.6k
利用終了したドメイン名の最強終活〜観測環境を育てて、分析・供養している件〜 / The Ultimate End-of-Life Preparation for Discontinued Domain Names
nttcom
2
200
一度 Expo の採用を断念したけど、 再度 Expo の導入を検討している話
ichiki1023
1
170
Building Products in the LLM Era
ymatsuwitter
10
5.5k
抽象化をするということ - 具体と抽象の往復を身につける / Abstraction and concretization
soudai
18
7.3k
Helm , Kustomize に代わる !? 次世代 k8s パッケージマネージャー Glasskube 入門 / glasskube-entry
parupappa2929
0
250
「海外登壇」という 選択肢を与えるために 〜Gophers EX
logica0419
0
710
トラシューアニマルになろう ~開発者だからこそできる、安定したサービス作りの秘訣~
jacopen
2
2k
現場で役立つAPIデザイン
nagix
33
12k
Featured
See All Featured
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
160
15k
Building Flexible Design Systems
yeseniaperezcruz
328
38k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.1k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
100
18k
The Language of Interfaces
destraynor
156
24k
Scaling GitHub
holman
459
140k
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.3k
The Straight Up "How To Draw Better" Workshop
denniskardys
232
140k
Six Lessons from altMBA
skipperchong
27
3.6k
Being A Developer After 40
akosma
89
590k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
A Tale of Four Properties
chriscoyier
158
23k
Transcript
Helmfile Future-Daily-Standup-Meeting Kubernetes Ecosystem Study Mano Junki
What Helmfile?
Helmfileとは • KubernetesのパッケージマネージャであるHelmを宣言的に操 るツール • 主な機能 1. Helm Chart のValuesファイルをバージョン管理
2. k8sアプリの変更をCI/CD 3. 継続的に「あるべき状態」に寄せていき、prd/stgなど環境全体の skew(ずれ)を抑制する
Helmfileは何を解決するものか
Helmfileは何を解決するものか • Helmによってk8sアプリをパッケージ化はできたが、インス トール時に指定する設定値によって動作が変わる • 設定値の指定方法が、サービスに寄ってまちまちになりがちで、自動 化が難しかった • skew防止 •
例:デバック用にインセキュアな設定をした。 • ⇨hemlfileを定期実行することで、書かれていない設定は取り除かれる
こういう環境差分の values.yamlなどの管理。 これをデプロイするshell script? → Helmfileで代理 https://medium.com/@naseem_60378/helmfile-its-like-a-helm-for-your-helm-74a908581599
Helmfile Configuration
Helmfile最小構成の例 • prom-norbac-ubuntuというアプリ名で、stable/prometheus のChartでインストール。Chart Valueとして rbac.create=false を指定(残りはChartのデフォルト値)。values.yamlの代替
Helmfile設定項目 以下の3つ 1. release(前ページで説明したので割愛) 2. repositories 3. helmDefaults
repositories • name=HelmのChartリポジトリ名 • url= HelmのChartのリポジトリのURL
helmDefaults • tillerNamespace • HelmのサーバサイドコンポーネントのTillerインストール先のネームスペース • kubeContext • kubeconfigのどのcontextが指すk8sクラスタに接続するかの指定 •
args • helmfileが呼ぶ全helmコマンドに追加する引数 • 略
実行 • helmfile apply • apply all resources from state
file only when there are changes • ⇨単純な適用 • helmfile sync • sync all resources from state file (repos, releases and chart deps) • ⇨定期的にsyncすることで実機との動機が行える
参考 • https://github.com/roboll/helmfile • https://medium.com/@naseem_60378/helmfile-its-like-a- helm-for-your-helm-74a908581599