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
FastlyとTerraform Cloudで最高な自動化を実現しよう
Search
Kazuto Kusama
March 04, 2023
Technology
0
360
FastlyとTerraform Cloudで最高な自動化を実現しよう
Fastly Yamagoya2022で登壇した資料です
Kazuto Kusama
March 04, 2023
Tweet
Share
More Decks by Kazuto Kusama
See All by Kazuto Kusama
インシデント対応に必要となるAIの利用パターンとPagerDutyの関係
jacopen
0
24
今日からはじめるプラットフォームエンジニアリング
jacopen
8
2.6k
Platform Engineeringで クラウドの「楽しくない」を解消しよう
jacopen
8
720
トラシューアニマルになろう ~開発者だからこそできる、安定したサービス作りの秘訣~
jacopen
4
4.5k
あなたの興味は信頼性?それとも生産性? SREとしてのキャリアに悩むみなさまに伝えたい選択肢
jacopen
7
8.8k
PaaSの歴史と、 アプリケーションプラットフォームのこれから
jacopen
7
2.5k
AI x インシデント管理で拡げるサービスオーナーシップ
jacopen
0
230
間違いだらけのポストモーテム - ホントに役立つレビューはこうだ!
jacopen
7
1.8k
2024/10 PagerDuty機能アップデート
jacopen
1
97
Other Decks in Technology
See All in Technology
Javalinの紹介
notoh
0
110
JSX - 歴史を振り返り、⾯⽩がって、エモくなろう
pal4de
3
960
API の仕様から紐解く「MCP 入門」 ~MCP の「コンテキスト」って何だ?~
cdataj
0
170
「どこにある?」の解決。生成AI(RAG)で効率化するガバメントクラウド運用
toru_kubota
2
450
原則から考える保守しやすいComposable関数設計
moriatsushi
3
450
宇宙パトロール ルル子から考える LT設計のコツ
masakiokuda
2
100
DroidKnights 2025 - Jetpack XR 살펴보기: XR 개발은 어떻게 이루어지는가?
heesung6701
1
120
Claude Code どこまでも/ Claude Code Everywhere
nwiizo
48
29k
Autonomous Database サービス・アップデート (FY25)
oracle4engineer
PRO
2
780
Snowflake Intelligenceで実現できるノーコードAI活用
takumimukaiyama
1
250
ObsidianをMCP連携させてみる
ttnyt8701
2
130
kubellが挑むBPaaSにおける、人とAIエージェントによるサービス開発の最前線と技術展望
kubell_hr
1
320
Featured
See All Featured
Optimizing for Happiness
mojombo
379
70k
Building an army of robots
kneath
306
45k
Raft: Consensus for Rubyists
vanstee
140
7k
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
Automating Front-end Workflow
addyosmani
1370
200k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Art, The Web, and Tiny UX
lynnandtonic
299
21k
Done Done
chrislema
184
16k
Build your cross-platform service in a week with App Engine
jlugia
231
18k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
43
2.4k
4 Signs Your Business is Dying
shpigford
184
22k
Transcript
Copyright © 2021 HashiCorp FastlyとTerraform Cloudで 最高な自動化を実現しよう .
Copyright © 2021 HashiCorp 草間一人 Sr. Solutions Engineer @jacopen Kazuto
Kusama
None
None
会場のみなさんに聞きたい Fastlyといえば何?
会場のみなさんに聞きたい Fastlyといえば何? CDN VCL
会場のみなさんに聞きたい Fastlyといえば何? CDN VCL TLS WAF Compute
めっちゃ便利だけど 設定どうやって管理しよう?
自動化している 自動化していない
で自動化しませんか?
▪ インフラのプロビジョニングツール ▪ 構成をHCL(HashiCorp Configration Language)で コード化 ▪ Infrastructure as
Codeを実現
resource "aws_network_interface" "foo" { subnet_id = aws_subnet.my_subnet.id private_ips = ["172.16.10.100"]
tags = { Name = "primary_network_interface" } } resource "aws_instance" "foo" { ami = "ami-005e54dee72cc1d00" instance_type = "t2.micro" network_interface { network_interface_id = aws_network_interface.foo.id device_index = 0 } credit_specification { cpu_credits = "unlimited" } } Network Interface AMI Instance type Network interfaceと紐 付け
Fastly Terraform Provider
Fastly Terraform Provider Compute@Edge TLS WAF VCL
Customer 何故Terraformで自動化が重要なのか
Customer Backend
Customer Backend Deploy
Customer Backend Log, Metrics Deploy これらの環境をミス無く、効率よく管理
None
Terraform Providers Cloud Network SaaS Orchestrator On-Prem Monitoring
None
None
Terraformは便利、でも・・・ 規模が大きくなればなるほど 悩みも増える
Terraformは便利、でも・・・ バージョン管理 したい Gitにcommitしたら 自動でPlanしたい Stateファイルを 良い感じに管理したい
None
▪ HashiCorpが提供するSaaS ▪ Terraformの最適なワークフローを提供 – 各種VCSとの連携(GitHub, GitLab, Azure DevOps etc..)
– ステートの管理 – 変数の管理 ▪ 有償版のTerraform Cloud Businessもある – Policy as Code – Audit Log – SSO Integration
None
ステートファイルの保存 apply 生成 ステートファイル
ステートファイルの保存 apply 生成 ステートファイル
Gitリポジトリとの連携 push apply
Gitリポジトリとの連携 push apply
Gitリポジトリとの連携 push apply
複数人でTerraform運用 チームが何人になっても Terraformの運用を スケールできる
IaCでよくある悩み Fastly設定のコード化・自動化 詳しくないメンバーが 直接設定を変更してしまう 差分が生まれる
IaCでよくある悩み 差分が生まれる 管理されていない 設定が入っていることによ るセキュリティ問題 気づかずにTerraformを実 行して設定がまき戻る問 題
1. 検知 2. 通知 3. ステート修正 Drift Detection
こういう場合はどうする? https://example.com/ https://example.com/ui https://example.com/api https://example.com/auth On-prem S3 Amplify チームのスケールに 管理が追いつかない
Workspace & terraform_remote_state FastlyをIaCするリポジトリ アプリをIaCするリポジトリ
アプリのIaC リポジトリ & Workspace側 S3 Bucketを作成 & website_endpointをoutput Terraform Cloud上のStateを
terraform-fastly workspaceに共有
FastlyのIaC リポジトリ & Workspace側 Terraform Cloudの terraform-fastly-app workspaceの Stateを使うと宣言 State内の
output(website_endpoint)を backendのaddressに設定
こういう場合はどうする? https://example.com/ https://example.com/ui https://example.com/api https://example.com/auth On-prem S3 Amplify 自分たちのリソースは 自分たちで管理
リモートステートで 緩やかに連携
None
Thank You
[email protected]
www.hashicorp.com