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
AKS と HCP Vault の組み合わせでつまずいた話 / Stumbles with A...
Search
ののし
September 16, 2023
Technology
1
110
AKS と HCP Vault の組み合わせでつまずいた話 / Stumbles with AKS and HCP Vault combination
ののし
September 16, 2023
Tweet
Share
More Decks by ののし
See All by ののし
HCP Vault Secrets でシークレット管理を始めよう / Getting Started with Secret Management Using HCP Vault Secrets
nnstt1
0
49
HashiCorp Ambassador が予想!Red Hat × HashiCorp の未来 / The Future of Red Hat and HashiCorp
nnstt1
1
130
Terraform を使った Front Door の小ネタ / Terraform for Front Door
nnstt1
0
94
つまずきから学ぶ Backstage の Golden Path 構築
nnstt1
2
980
Azure ユーザに捧げる Terraform Cloud 101 / Terraform Cloud 101 for Azure Users
nnstt1
0
470
Vault Secrets Operator と HCP Vault を使った AKS のシークレット管理 / AKS secret management using the Vault Secrets Operator and HCP Vault
nnstt1
0
120
Vault Secrets Operator と Dynamic Secrets で安全にシークレットを使おう / Vault Secrets Operator and Dynamic Secrets
nnstt1
4
790
OpenShift を身近に感じる Single Node OpenShift と OpenShift Local / Single Node OpenShift and OpenShift Local that makes OpenShift familiar
nnstt1
1
1k
カンタンお手軽?!k8sから使えるラズパイ分散ストレージ / Raspberry Pi distributed storage from k8s
nnstt1
1
1.5k
Other Decks in Technology
See All in Technology
kargoの魅力について伝える
magisystem0408
0
210
[Ruby] Develop a Morse Code Learning Gem & Beep from Strings
oguressive
1
160
マイクロサービスにおける容易なトランザクション管理に向けて
scalar
0
120
オプトインカメラ:UWB測位を応用したオプトイン型のカメラ計測
matthewlujp
0
170
LINEヤフーのフロントエンド組織・体制の紹介【24年12月】
lycorp_recruit_jp
0
530
10個のフィルタをAXI4-Streamでつなげてみた
marsee101
0
170
生成AIのガバナンスの全体像と現実解
fnifni
1
190
LINEスキマニにおけるフロントエンド開発
lycorptech_jp
PRO
0
330
.NET 9 のパフォーマンス改善
nenonaninu
0
900
Postman と API セキュリティ / Postman and API Security
yokawasa
0
200
AWS re:Invent 2024で発表された コードを書く開発者向け機能について
maruto
0
190
Oracle Cloud Infrastructure:2024年12月度サービス・アップデート
oracle4engineer
PRO
0
180
Featured
See All Featured
Why You Should Never Use an ORM
jnunemaker
PRO
54
9.1k
Building Adaptive Systems
keathley
38
2.3k
Optimizing for Happiness
mojombo
376
70k
Building a Scalable Design System with Sketch
lauravandoore
460
33k
Become a Pro
speakerdeck
PRO
26
5k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
0
98
GraphQLとの向き合い方2022年版
quramy
44
13k
Thoughts on Productivity
jonyablonski
67
4.4k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
29
2k
Practical Orchestrator
shlominoach
186
10k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
26
1.5k
Transcript
AKS と HCP Vault の組み合わせで つまずいた話 Japan Azure User Group
13周年イベント 2023/9/16
自己紹介 Name Taichi Nonoshita X @nnstt1 Company 株式会社エーピーコミュニケーションズ Love 3人の息子たち(3歳・1歳双子)
めざせ Azure 資格全冠! (まだ折り返してない …)
お話しすること・しないこと お話しすること • HashiTalks のセッションを準備するにあ たって Azure でつまずいた経験 お話ししないこと •
AKS の詳しい説明 • HashiCorp Vault の詳しい説明
• HashiCorp が開発しているシークレット管理ツール • 様々な環境で利用可能 ◦ コミュニティ版 Vault ◦ セルフマネージドな
Vault Enterprise ◦ マネージドサービスの HCP Vault ←本日の対象 • Dynamic Secrets という機能が特徴的(個人の感想) ◦ ユーザからのリクエストに応じて Microsoft Entra ID (Azure AD) や Database などに期限付きのユーザを作成 簡単な HashiCorp Vault の説明 とても雑な
• HCP (HashiCorp Cloud Platform) で提供されている Vault のマネージドサービス • HVN
(HashiCorp Virtual Network) を Azure に作成、 ユーザ管理の VNet とピアリングすることで HCP Vault にプライベートアクセス可能 • HCP Vault が Azure に対応したのは 2023/2 HCP Vault とは
• 2023/3 に公開された Vault Secrets Operator により、Kubernetes の シークレットを Vault
で管理することがより簡単になった • Vault Secrets Operator と HCP Vault を使えば AKS のシークレットを 安全に管理できそう HCP Vault で AKS のシークレットを管理
AKS にはシークレット管理の機能があるのでは?
• 既に AKS では Secret Store CSI Driver という機能を使った シークレット管理が提供されている
◦ Key Vault のシークレットを AKS のアプリケーション (Pod) に連携 ◦ Secret リソースとしても作成可能 ◦ Key Vault のシークレット更新も AKS 内に反映 AKS のシークレット管理 Azure Portal での有効化はこちらから
好きなサービス・ツール同士を掛け合わせたい(浪漫) が、つまずきも多い
つまずきポイント 1. HVN を Azure VNet をピアリングできない 2. AKS から
HCP Vault に繋がらない 3. HCP Vault から AKS (Private Cluster) に繋がらない
• 事前に HVN と VNet をピアリングする必要があ る • HCP ポータルでピアリング用
Terraform が表 示されるので実行 ◦ 個人テナントでは ピアリング成功 ◦ 会社テナントでは ピアリング失敗 HVN と Azure VNet をピアリングできない つまずき1
HVN と Azure VNet をピアリングできない • ピアリングの流れ a. HashiCorp 管理のアプリケーション
ID を エンタープライズアプリケーションとして Microsoft Entra ID (Azure AD) に登録 b. サービスプリンシパルに VNet のカスタムロー ル割り当て c. HashiCorp アプリケーションが HVN と VNet をピアリング つまずき1
• ピアリングの流れ a. HashiCorp 管理のアプリケーション ID を エンタープライズアプリケーションとして Microsoft Entra
ID (Azure AD) に登録 b. サービスプリンシパルに VNet のカスタムロー ル割り当て c. HashiCorp アプリケーションが HVN と VNet をピアリング アプリケーション登録の権限不足 アプリケーション管理者 ロールが必要だった つまずき1
• ピアリングもできたので AKS から HCP Vault のプライベート URL にアクセ スさせてみよう
→ 繋がらない AKS から HCP Vault に繋がらない HVN VNet ピアリング プライベート URL へのアクセス =Azure バックボーン経由 パブリック URL へのアクセス =インターネット経由 つまずき2
VNet • ピアリングした VNet とは別に AKS 用の VNet を作成していた •
HVN とピアリングした VNet にAKS を作成することで プライベート URL でアクセス可能になった AKS 作成時の VNet 確認不足 HVN VNet ピアリング 実際の構成 つまずき2
• プライベート AKS クラスタの API サーバはパブリックアクセス不可 • Kubernetes 認証するときに HCP
Vault から AKS に対して通信が発生 • プライベート AKS クラスタを使って認証もセキュアにしよう →繋がらない HCP Vault から AKS (Private Cluster) に繋がらない VNet HVN ピアリング プライベートアクセス失 敗 パブリックアクセスは不可 つまずき3
• HCP Vault はピアリングしているが Azure の名前解決できない ◦ AKS だけでなく他のサービスもアクセス不可 •
プライベート AKS クラスタはプライベート DNS ゾーンに レコードが登録される ◦ プライベート DNS ゾーンの仮想ネットワークリンクも不可 • HashiCorp Consul というサービスディスカバリを使えば HCP Vault から Azure サービスにプライベートアクセス可能? HCP Vault が名前解決できない つまずき3 まだ対処できてません …
まとめ • HCP Vault (HVN) を Azure VNet とピアリングする ときはアプリケーション管理ロールが必要
• AKS を作る際は “新規 VNet” or “既存 VNet” を要確認 • HCP Vault から Azure サービスへのプライベート アクセスは(現時点では)難しい