Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
HashicorpCloudについて.pdf
Search
Atsushi Satou
September 29, 2024
Technology
40
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
HashicorpCloudについて.pdf
Atsushi Satou
September 29, 2024
More Decks by Atsushi Satou
See All by Atsushi Satou
AWS ECSでサービス間通信についておさらい
atsuw0
1
160
図で理解するAWS Network Firewallのアーキテクチャ
atsuw0
0
560
CLIで構築した方が良いもの一覧.pdf
atsuw0
0
200
HCP Terraformを使ったら AWSやGCPの環境構築が捗った話
atsuw0
0
370
HCP Terraform について
atsuw0
0
1.9k
HashicorpCloudについて.pdf
atsuw0
0
47
AWS サーバレス設計 Tips集
atsuw0
0
140
AWS re:Invent 2023 ストレージ EFSレプリケーションのフェイルバック機能を試してみた
atsuw0
0
450
AWS re:Invent 2023 個人的に興味深いもの集
atsuw0
0
140
Other Decks in Technology
See All in Technology
コンテナ運用におけるネットワーク・コンテナコストの削減方法/How to Reduce Network and Container Costs in Container Operations
masakiokuda
2
300
JAWSUG TOHOKU 青森支部 「LoGoチャット」のAWS移行で 乗り越えたこと
taketakekaho
0
340
Kiro Crewで「みのるん式」仕事術やってみた
minorun365
PRO
2
570
パッチ更新でterraform initが落ちた日
grimoh
1
140
DevelopersIO 2026 知識の地図を描く ─ オントロジーとは何か?
ishikawa_satoru
1
1.7k
AI コーディングと人間の認知スループット / CTO Night & Day 2026 Morning Session / AI Coding and Human Cognitive Throughput
prog893
5
1.3k
Conditional PED-ANOVA: Hyperparameter Importance in Hierarchical & Dynamic Search Spaces
pfn
PRO
0
140
M5Stackで作る BLEマウス GPSログの世界
tomokusaba
PRO
0
440
スプシの手作業からの解脱 ~更新はClaude Codeに、見せ方と使い方はGASアプリに任せる~
kentarofujii
0
160
Classmethod Company Deck
satoshi7
1
730
Railsで挑む大量データ永続化 〜600億件を永続化するための設計とボトルネックとの戦い〜
occhi
1
760
Local CI × GitHub Actions
gogutan
3
230
Featured
See All Featured
Applied NLP in the Age of Generative AI
inesmontani
PRO
4
2.5k
The Art of Programming - Codeland 2020
erikaheidi
57
14k
HTML-Aware ERB: The Path to Reactive Rendering @ RubyCon 2026, Rimini, Italy
marcoroth
5
830
How to Align SEO within the Product Triangle To Get Buy-In & Support - #RIMC
aleyda
2
1.8k
Fantastic passwords and where to find them - at NoRuKo
philnash
53
4k
Imperfection Machines: The Place of Print at Facebook
scottboms
270
14k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.9k
Beyond borders and beyond the search box: How to win the global "messy middle" with AI-driven SEO
davidcarrasco
3
280
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
63
46k
Hiding What from Whom? A Critical Review of the History of Programming languages for Music
tomoyanonymous
3
1.4k
Side Projects
sachag
456
43k
GraphQLの誤解/rethinking-graphql
sonatard
75
12k
Transcript
HashiCorp Cloud サービス(Terraform , Vault) について触ってみた 佐藤 淳 勉強会資料
Hashicorp Cloud 今回利用するHashicorp社のサービス ・Terraform Cloud Organizations, Projects, Workspaces Private Registry
・Vault Secrets Terraform Cloudからのシークレット参照
Terraform Cloud (Organizations, Projects, Workspacesについて)
Terraform Cloudとは? ・Organiations … 組織 ・Projects … チームとワークスペースの関連付け ・Workspaces …
terraform plan/apply実行単位 plan/applyが実行されるタイミング → リポジトリへpullreq / mergeでトリガー Terraform Cloud アーキテクチャ
Organizations … 組織単位で作成 Terraform Cloud Organiations
Projects … プロダクト・システム単位で作成 Terraform Cloud Projects
Workspaces … terraform plan/apply実行単位で作成 Terraform Cloud Workspaces
[ハンズオン] ワークスペースの作成
[ハンズオン] ワークスペースの作成
[ハンズオン] ワークスペースの作成
[ハンズオン] ワークスペースの作成
[ハンズオン] HCP Terraform 上でTerraform Plan/Apply GitHubと連携している際、feature→mainへプルリクエストを投げるとplan。 MergeするとApply。 Pull Request Merge
$ terraform plan $ terraform apply
Organizations 〜 Workspacesの作成。Terraform Plan/Applyの実行に ついては↓の記事を是非参考に🙏 https://qiita.com/atw0_0w/items/6b55f671e1088cbc140e
Terraform Cloud (Private Registryについて)
Terraform Cloud Private Registry Private Registry ・プライベートレジストリにモジュールを予め登録することで、複数のワークスペースから呼び出すこ とが可能。 ・バージョンごとに管理可能なため、 任意のバージョンを利用可能。
[ハンズオン]プライベートレジストリの作成 リポジトリ名は terraform-<provider>-<name> とする
[ハンズオン]プライベートレジストリの作成
Private Registryの呼び出し サブモジュールの呼び出し
サブモジュールのテンプレートの格納先 ./modules/<folder_name> 下にテンプレートを作成
Vault Secrets (Terraform Cloudからのシークレット参照)
Vault Secretsとは? マルチプロバイダーにおけるシークレットを 統合管理できるサービス Vault Secrets アーキテクチャ
Vault Secretsとは? マルチプロバイダーにおけるシークレットを 統合管理できるサービス 管理対象は - パスワード - API トークン
- アクセスキー が挙げられる。 Vault Secrets アーキテクチャ
Vault Secrets + HPC Terraform アーキテクチャ 1. Vault Secrets でシークレットを登録
2. HCP Terraform 上のWorkspaces変数にシークレットの値を同期 Sensitive変数として登録 3. Terraform テンプレートのvariable句で 変数を呼び出す
Vault Secrets + HPC Terraform インテグレーション
Vault Secrets + HPC Terraform インテグレーション
Vault Secrets + HPC Terraform シークレット登録 & 同期 Vault Secrets
HCP Terraform Cloud Secrets 登録 HCP Terraform Cloudへ同期
注意点
HPC Terraform とその他CI/CDサービス HPC Terraform ・シンプルに構築可能 ・Terraformバージョン切り替え可能 ・シンプルにPlan/Apply可能 その他(CircleCI, GitHub
Actions 等) ・OrbやDockerfileなど実行環境の構 築は必要 ・指定したTerraformバージョンをイ ンストールするDockerfileなどの定義 ファイルが必要 ・テストやコンプライアンスチェックな ど柔軟なパイプラインが構築可能 → 一長一短なので使い分ける必要あり
まとめ - Terraform Cloud のワークスペースを作成することで、 GitHubにPullreq/MergeするだけでPlan, Applyを実行できる - プライベートレジストリで複数のプロジェクトから呼び出し可能。また、柔軟にモジュー ルのバージョン管理ができる。
- Vault Secrets でマルチプロバイダーでシークレットを管理できる (但しAWS Secrets Managerなどのローテーションによる同期はサポートされてない ) - シンプルなCI/CDをTerraform Cloud で実現できる。より複雑なフローの場合は GitHub ActionsやCircleCIを利用した方がベター.
参考資料 [元記事] - https://qiita.com/atw0_0w/items/6b55f671e1088cbc140e - https://qiita.com/atw0_0w/items/58812c0baf1a0000b757 - https://qiita.com/atw0_0w/items/5f2278dd0074e4c380d1 - https://qiita.com/atw0_0w/items/7d19f3105e55007d1de9
- https://qiita.com/atw0_0w/items/6d07e68db714eb68a5f5 [リポジトリ] - Terraform ワークスペース用 - https://github.com/atsw0q0/test-terraform-cloud - Private Registry用 - https://github.com/atsw0q0/terraform-aws-network-templates - https://github.com/atsw0q0/terraform-aws-webapp-templates
ご清聴ありがとうございました