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
External SecretsのさくらProvider初期実装を担当しています
Search
Takuto Nagami
May 23, 2025
Programming
0
300
External SecretsのさくらProvider初期実装を担当しています
2024/5/23 さくらのテックナイト in 那覇 〜さくらのクラウド編〜にて登壇した際の資料です。
Takuto Nagami
May 23, 2025
Tweet
Share
More Decks by Takuto Nagami
See All by Takuto Nagami
Maintainer Meetupで「生の声」を聞く ~講演だけじゃないKubeCon
logica0419
1
450
理想の英語力に一直線!最高効率な英語学習のすゝめ
logica0419
6
380
Gophers EX: What We’ve Been Up To in Feb–May 2025 / 2025年2~5月 Gophers EX活動報告書
logica0419
0
77
Gophers EX プロジェクト説明
logica0419
2
39
HA K8s Clusterのスタンダードが覆る!? Cilium 1.18の🔥激アツ🔥新機能
logica0419
0
250
え!! 日本国内でGo言語のバイリンガル勉強会を!?
logica0419
2
340
Golangci-lint v2爆誕: 君たちはどうすべきか
logica0419
1
770
プロポーザル一次〆切に向けて
logica0419
1
78
「海外登壇」という 選択肢を与えるために 〜Gophers EX
logica0419
1
3.3k
Other Decks in Programming
See All in Programming
ライブ配信サービスの インフラのジレンマ -マルチクラウドに至ったワケ-
mirrativ
2
270
Zendeskのチケットを Amazon Bedrockで 解析した
ryokosuge
3
230
SOCI Index Manifest v2が出たので調べてみた / Introduction to SOCI Index Manifest v2
tkikuc
1
110
Namespace and Its Future
tagomoris
6
670
🔨 小さなビルドシステムを作る
momeemt
2
620
マイコンでもRustのtestがしたい その2/KernelVM Tokyo 18
tnishinaga
2
2.4k
『リコリス・リコイル』に学ぶ!! 〜キャリア戦略における計画的偶発性理論と変わる勇気の重要性〜
wanko_it
1
620
AIエージェント開発、DevOps and LLMOps
ymd65536
1
370
Google I/O recap web編 大分Web祭り2025
kponda
0
2.9k
兎に角、コードレビュー
mitohato14
0
160
【第4回】関東Kaggler会「Kaggleは執筆に役立つ」
mipypf
0
980
Langfuseと歩む生成AI活用推進
licux
3
320
Featured
See All Featured
Building Applications with DynamoDB
mza
96
6.6k
The Power of CSS Pseudo Elements
geoffreycrofte
77
5.9k
Scaling GitHub
holman
463
140k
Writing Fast Ruby
sferik
628
62k
4 Signs Your Business is Dying
shpigford
184
22k
A better future with KSS
kneath
239
17k
KATA
mclloyd
32
14k
Stop Working from a Prison Cell
hatefulcrawdad
271
21k
The Invisible Side of Design
smashingmag
301
51k
Into the Great Unknown - MozCon
thekraken
40
2k
How GitHub (no longer) Works
holman
315
140k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
126
53k
Transcript
Takuto Nagami X: @logica0419 GitHub: @logica0419 External Secretsの さくらProvider 初期実装を
担当しています
自己紹介 • Takuto Nagami (logica) • 千葉工業大学 情報科学部 情報ネットワーク学科 4年
• ネットワークコンテンツ研究会 所属 ◦ 数人の自宅サーバーをVPNで繋いでクラウド基盤 作ろうとしてます • CNDS本編では、CiliumというCNIに 次のマイナーバージョンで入る新機能に ついてLTをしました
CNDS2025 本編でもLT登壇してました
さくら「13の新機能を追加しました」 • 長野さんのお話で出てきましたね!
シークレットマネージャ • ありがとうございます!!!!!👏👏👏👏👏👏👏👏 ◦ ICTSCという学生向けIT大会でさくらのクラウド上 にK8sクラスタを建てているので、とても嬉しい • これでさくら上に機密情報を移せる!
シークレット管理サービスとK8sを繋ぐ • アプリケーションから直接アクセス: 面倒 & 拡張不可 • 取ってきた情報を、K8sのSecretに変換して使いたい ◦ この需要に応えるのがExternal
Secrets Operator 出典: https://external-secrets.io/
External Secrets Operator • ClusterSecretStore / SecretStoreを作成 ◦ 任意のProvider (使いたい
管理サービス) を指定 • ExternalSecretを作成 ◦ SecretStoreから 機密情報を取ってきて K8sのSecretを自動生成
External Secretsでさくらを使いたい • External Secretsのユーザーによる拡張機構は貧弱 ◦ WebhookProvider ▪ Webhookサーバーに対してシークレットの読み 書きを行う
◦ それ以外はほぼ用意されてない • 新しいクラウドサービスを使いたければ、Providerを公 式で提供すべきという発想だと思う ◦ Providerを作ってExternal Secretsに入れる必要が
長野さんに相談だ • logica: さくら内でProvider作成する予定あります? • 長野さん: 今のところ無い、サービス開発に注力したい • logica: じゃあメンテナンスのことは後々相談するとして
僕が初期実装やるのはどうですか? • 長野さん: ぜひやってください 👌 という流れで僕が初期実装をやることになりました
ひとまずIssueを建てる • External Secretsのメンテナの方も「Providerをメンテ ナンスする人が付けられればいいよ」とのこと
Providerの構造 • apis パッケージ ◦ さくらのシークレットマネージャ向け設定を追加 • esv1.Provider インターフェース ◦
apiで定義した設定から、SecretsClientを作成する ◦ これをExternal Secretsのコア部分に登録 • esv1.SecretsClient インターフェース ◦ 実際にシークレットを読み書きする こんな感じで、かなりシンプルな仕組み
現在の進捗 • apis パッケージ ← 完了 ◦ さくらのシークレットマネージャ向け設定を追加 • esv1.Provider
インターフェース ← ほぼ完了 ◦ apiで定義した設定から、SecretStoreを作成する ◦ これをExternal Secretsのコア部分に登録 • esv1.SecretsClient インターフェース ← 要相談段階 ◦ 実際にシークレットを読み書きする External Secretsのみに依存している部分はほぼできた
SecretStore - さくらに依存する難しさ • シークレットマネージャはつい最近β版が提供開始で、 GoのSDKがまだ出ていない ◦ SDKを優先実装してもらう? ◦ External
Secrets側で仮のSDKを用意する? ◦ HTTPのエンドポイントを直接叩く? • さくらさんのAPI利用の方針に従いたいので、ちゃんと さくらの社員さんと実装方針を共有しておきたい ◦ 来週MTGをするので、本格的な実装はそこからかな
夏までには完成させたい と思っています! 応援よろしくお願いします 実装ができたら、是非使ってみて下さい
ありがとう ございました 今後の進捗に乞うご期待!