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
150
AKS と HCP Vault の組み合わせでつまずいた話 / Stumbles with AKS and HCP Vault combination
ののし
September 16, 2023
Tweet
Share
More Decks by ののし
See All by ののし
Azure Developer CLI と Azure Deployment Environment / Azure Developer CLI and Azure Deployment Environment
nnstt1
1
400
Terraform にコントリビュートしていたら Azure のコストをやらかした話 / How I Messed Up Azure Costs While Contributing to Terraform
nnstt1
1
680
進化するクラウド管理 -Azure と Terraform の最新トレンド- / Evolving Cloud Management - Latest Trends in Azure and Terraform
nnstt1
0
35
今から、 今だからこそ始める Terraform で Azure 管理 / Managing Azure with Terraform: The Perfect Time to Start
nnstt1
0
390
HCP Vault Secrets でシークレット管理を始めよう / Getting Started with Secret Management Using HCP Vault Secrets
nnstt1
0
170
HashiCorp Ambassador が予想!Red Hat × HashiCorp の未来 / The Future of Red Hat and HashiCorp
nnstt1
1
200
Terraform を使った Front Door の小ネタ / Terraform for Front Door
nnstt1
0
170
つまずきから学ぶ Backstage の Golden Path 構築
nnstt1
2
1.3k
Azure ユーザに捧げる Terraform Cloud 101 / Terraform Cloud 101 for Azure Users
nnstt1
0
550
Other Decks in Technology
See All in Technology
Snowflake のアーキテクチャは本当に筋がよかったのか / Data Engineering Study #30
indigo13love
0
200
Railsの限界を超えろ!「家族アルバム みてね」の画像・動画の大規模アップロードを支えるアーキテクチャの変遷
ojima_h
3
220
claude codeでPrompt Engineering
iori0311
0
300
エンジニアリングマネージャー“お悩み相談”パネルセッション
ar_tama
1
560
AIを使っていい感じにE2Eテストを書けるようになるまで / Trying to Write Good E2E Tests with AI
katawara
2
980
Building GoReleaser - from shell script to paid product
caarlos0
0
220
Introduction to Sansan, inc / Sansan Global Development Center, Inc.
sansan33
PRO
0
2.7k
RapidPen: AIエージェントによる高度なペネトレーションテスト自動化の研究開発
laysakura
1
360
Microsoft Defender XDRで疲弊しないためのインシデント対応
sophiakunii
3
390
データ戦略部門 紹介資料
sansan33
PRO
1
3.3k
なぜAI時代に 「イベント」を中心に考えるのか? / Why focus on "events" in the age of AI?
ytake
0
110
Data Engineering Study#30 LT資料
tetsuroito
1
520
Featured
See All Featured
The Invisible Side of Design
smashingmag
301
51k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
331
22k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
44
2.4k
GraphQLの誤解/rethinking-graphql
sonatard
71
11k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
30
2.2k
The Pragmatic Product Professional
lauravandoore
35
6.8k
Building Better People: How to give real-time feedback that sticks.
wjessup
367
19k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
8
840
KATA
mclloyd
30
14k
Six Lessons from altMBA
skipperchong
28
3.9k
Bash Introduction
62gerente
613
210k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
138
34k
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 サービスへのプライベート アクセスは(現時点では)難しい