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
Terraform Cloudを使ってみた
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Yohei Okabayashi
January 19, 2024
0
100
Terraform Cloudを使ってみた
Terraform Cloudを個人開発で使ってみた際のメリット・デメリットを簡単にまとめました
Yohei Okabayashi
January 19, 2024
Tweet
Share
More Decks by Yohei Okabayashi
See All by Yohei Okabayashi
MonotaROにおけるGNNによるベクトル検索 〜 ロングテール商品のコールドスタート問題の対応 〜
haru256
2
840
Featured
See All Featured
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
Unlocking the hidden potential of vector embeddings in international SEO
frankvandijk
0
170
How to Build an AI Search Optimization Roadmap - Criteria and Steps to Take #SEOIRL
aleyda
1
1.9k
KATA
mclloyd
PRO
34
15k
What Being in a Rock Band Can Teach Us About Real World SEO
427marketing
0
170
Building an army of robots
kneath
306
46k
Agile that works and the tools we love
rasmusluckow
331
21k
We Analyzed 250 Million AI Search Results: Here's What I Found
joshbly
1
740
The Hidden Cost of Media on the Web [PixelPalooza 2025]
tammyeverts
2
190
Build your cross-platform service in a week with App Engine
jlugia
234
18k
Collaborative Software Design: How to facilitate domain modelling decisions
baasie
0
140
Transcript
Terraform Cloudを 使ってみた Terraform Cloud のメリット・デメリット haru256
• terraform cloud はterraoformを開発しているHashiCorp社が運営するCloud • 主に以下3点のサービスを提供 ◦ tfstateの管理 ◦ terraformの実行環境
◦ terraformのCI/CD環境 • Terraform cloud で terraform が実行されるtriggerは3種類 ◦ CLI-driven: local PC上でterraform commandを実行する ◦ VCS-driven: GithubなどのVCS上でのevent (e.g. PRが作成されたら, main branchに commitされたら...) ◦ API-driven: APIを叩く Terraform Cloud とは
Terraform Cloud とは 出典 CLI-driven VCS-driven デモあり Workload Identityにより 各種CloudのSA権限で実行
terraform実行環境とtfstateは terraform cloud上で一元管理
• terraform実行環境がterraform cloudに集約される ◦ 環境に一貫性がある ◦ tfstateの履歴がわかる ◦ terraform variablesを一元管理できる
◦ tfstateがロックされているかどうかが一目瞭然であり、ロックされている場合、どの jobにより ロックされているかが分かる • terraform plan, applyにおいて、作成・変更・削除される内容が分かりやすい ◦ terraform apply のログがのこり、誰が何のリソースを変更したが分かる • terraformがサポートする専用アプリがあり、 GithubやSlackの連携が容易 ◦ Githubの専用アプリによるGithubとのCI/CD連携が容易 ◦ Slack通知機能があり、Slack WebhookのURLを連携すればapply時に通知される • terraform cloudとGCPなどの他cloudとの連携にworkload identityが使える Terraform Cloud のメリット デモあり
terraform apply のハイライト
terraform apply のハイライト • どういう変更が発生するかを把握しやすい
terraform plan, apply の履歴 • どういう変更があったかがわ かる
terraform variablesを一元管理できる
tfstateの履歴がわかる
VCS-driven により GithubとのCI/CDが簡単にできる Slackとの連携がサポートされてお り、簡単にplan, applyの通知機能が 作れる
• terraform plan, apply時に毎回providerの取得(環境構築)をするので、その分実行に時間 がかかる ◦ Github Acitionのcache機能のように、 providerに変化なければ以前の cacheを使うよ
うにしたいが、そのような機能はなさそう ... • terraform の実行環境がterraform cloudに集約されるため、融通がきかないことがある ◦ 具体的には、workload identityのSAの権限次第ではデッドロック状態に陥る ◦ デッドロック状態に陥ると、一時的に terraform cloudとの連携を切らなければならない(こ れが面倒...) • terraform cloud上のUI操作で作成されたterraform cloudのリソースがtfstateで管理され たりされなかったりする Terraform Cloud のデメリット デモあり
Terraform Cloud の料金体系 • 月に500リソースまでであれば無料 • 以前は、無料枠は1組織に5人までという制約だったが、人数 の制約ではなく、リソース数の制約になった • 詳細はこちら
Terraform Cloud の無料枠ってどのくらい? • 私が個人開発で作成している状況をもとに 500リソースが多いのか少ないのかを把握 • 現在、71リソースを管理 ◦ 1プロジェクトしか管理していない
◦ プロジェクト = Google Cloudの料金 Slack通知機能 • 簡単に500リソース超えそう、、、