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
110
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.2k
Goで工場を制御する要であるPLCにアクセスする / go-plc
laqiiz
0
2.5k
Abstract Sentinel
laqiiz
0
120
CNCF
laqiiz
1
120
Local_Kubernetes.pdf
laqiiz
1
110
Abstract GitOps
laqiiz
1
180
公開用_WebDBForum2018_テクノロジーショーケース_業務IoTストリーミング基盤.pdf
laqiiz
1
320
Other Decks in Technology
See All in Technology
研究開発部メンバーの働き⽅ / Sansan R&D Profile
sansan33
PRO
3
17k
新卒から4年間、20年もののWebサービスと向き合って学んだソフトウェア考古学 - PHPカンファレンス新潟2025 / new graduate 4year software archeology
oguri
2
360
データプレーンプログラミングとは? DPU&スイッチASICの開発経験から語る
ebiken
PRO
1
260
Houtou.pm #1
papix
0
660
Zero Data Loss Autonomous Recovery Service サービス概要
oracle4engineer
PRO
2
7.2k
mnt_data_とは?ChatGPTコード実行環境を深堀りしてみた
icck
0
210
技術書典18結果報告
mutsumix
2
180
積み上げられた技術資産と向き合いながら、プロダクトの信頼性をどう守るか
plaidtech
PRO
0
930
ローカル環境でAIを動かそう!
falken
PRO
1
170
CSSDay, Amsterdam
brucel
0
130
オープンソースのハードウェアのコンテストに参加している話
iotengineer22
0
630
Redmineの意外と知らない便利機能 (Redmine 6.0対応版)
vividtone
0
1.2k
Featured
See All Featured
Bash Introduction
62gerente
614
210k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
14
1.5k
A designer walks into a library…
pauljervisheath
205
24k
RailsConf 2023
tenderlove
30
1.1k
BBQ
matthewcrist
88
9.7k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
45
7.3k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
357
30k
VelocityConf: Rendering Performance Case Studies
addyosmani
329
24k
Being A Developer After 40
akosma
91
590k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
34
3k
Intergalactic Javascript Robots from Outer Space
tanoku
271
27k
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