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
420
理想の英語力に一直線!最高効率な英語学習のすゝめ
logica0419
6
350
Gophers EX: What We’ve Been Up To in Feb–May 2025 / 2025年2~5月 Gophers EX活動報告書
logica0419
0
75
Gophers EX プロジェクト説明
logica0419
2
34
HA K8s Clusterのスタンダードが覆る!? Cilium 1.18の🔥激アツ🔥新機能
logica0419
0
240
え!! 日本国内でGo言語のバイリンガル勉強会を!?
logica0419
2
330
Golangci-lint v2爆誕: 君たちはどうすべきか
logica0419
1
710
プロポーザル一次〆切に向けて
logica0419
1
75
「海外登壇」という 選択肢を与えるために 〜Gophers EX
logica0419
1
3.2k
Other Decks in Programming
See All in Programming
kiroでゲームを作ってみた
iriikeita
0
160
Constant integer division faster than compiler-generated code
herumi
2
640
tool ディレクティブを導入してみた感想
sgash708
1
100
11年かかって やっとVibe Codingに 時代が追いつきましたね
yimajo
1
260
DataformでPythonする / dataform-de-python
snhryt
0
170
一人でAIプロダクトを作るための工夫 〜技術選定・開発プロセス編〜 / I want AI to work harder
rkaga
12
2.6k
ワープロって実は計算機で
pepepper
2
1.3k
兎に角、コードレビュー
mitohato14
0
110
プロダクトという一杯を作る - プロダクトチームが味の責任を持つまでの煮込み奮闘記
hiliteeternal
0
460
あのころの iPod を どうにか再生させたい
orumin
2
2.4k
CEDEC2025 長期運営ゲームをあと10年続けるための0から始める自動テスト ~4000項目を50%自動化し、月1→毎日実行にした3年間~
akatsukigames_tech
0
130
新世界の理解
koriym
0
130
Featured
See All Featured
The Cult of Friendly URLs
andyhume
79
6.5k
Site-Speed That Sticks
csswizardry
10
770
Build your cross-platform service in a week with App Engine
jlugia
231
18k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
110
20k
Thoughts on Productivity
jonyablonski
69
4.8k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
31
2.2k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
8
880
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
18
1.1k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
251
21k
Large-scale JavaScript Application Architecture
addyosmani
512
110k
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をするので、本格的な実装はそこからかな
夏までには完成させたい と思っています! 応援よろしくお願いします 実装ができたら、是非使ってみて下さい
ありがとう ございました 今後の進捗に乞うご期待!