Link
Embed
Share
Beginning
This slide
Copy link URL
Copy link URL
Copy iframe embed code
Copy iframe embed code
Copy javascript embed code
Copy javascript embed code
Share
Tweet
Share
Tweet
Slide 1
Slide 1 text
Copyright © 2021 HashiCorp FastlyとTerraform Cloudで 最高な自動化を実現しよう .
Slide 2
Slide 2 text
Copyright © 2021 HashiCorp 草間一人 Sr. Solutions Engineer @jacopen Kazuto Kusama
Slide 3
Slide 3 text
No content
Slide 4
Slide 4 text
No content
Slide 5
Slide 5 text
会場のみなさんに聞きたい Fastlyといえば何?
Slide 6
Slide 6 text
会場のみなさんに聞きたい Fastlyといえば何? CDN VCL
Slide 7
Slide 7 text
会場のみなさんに聞きたい Fastlyといえば何? CDN VCL TLS WAF Compute
Slide 8
Slide 8 text
めっちゃ便利だけど 設定どうやって管理しよう?
Slide 9
Slide 9 text
自動化している 自動化していない
Slide 10
Slide 10 text
で自動化しませんか?
Slide 11
Slide 11 text
▪ インフラのプロビジョニングツール ▪ 構成をHCL(HashiCorp Configration Language)で コード化 ▪ Infrastructure as Codeを実現
Slide 12
Slide 12 text
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と紐 付け
Slide 13
Slide 13 text
Fastly Terraform Provider
Slide 14
Slide 14 text
Fastly Terraform Provider Compute@Edge TLS WAF VCL
Slide 15
Slide 15 text
Customer 何故Terraformで自動化が重要なのか
Slide 16
Slide 16 text
Customer Backend
Slide 17
Slide 17 text
Customer Backend Deploy
Slide 18
Slide 18 text
Customer Backend Log, Metrics Deploy これらの環境をミス無く、効率よく管理
Slide 19
Slide 19 text
No content
Slide 20
Slide 20 text
Terraform Providers Cloud Network SaaS Orchestrator On-Prem Monitoring
Slide 21
Slide 21 text
No content
Slide 22
Slide 22 text
No content
Slide 23
Slide 23 text
Terraformは便利、でも・・・ 規模が大きくなればなるほど 悩みも増える
Slide 24
Slide 24 text
Terraformは便利、でも・・・ バージョン管理 したい Gitにcommitしたら 自動でPlanしたい Stateファイルを 良い感じに管理したい
Slide 25
Slide 25 text
No content
Slide 26
Slide 26 text
▪ HashiCorpが提供するSaaS ▪ Terraformの最適なワークフローを提供 – 各種VCSとの連携(GitHub, GitLab, Azure DevOps etc..) – ステートの管理 – 変数の管理 ▪ 有償版のTerraform Cloud Businessもある – Policy as Code – Audit Log – SSO Integration
Slide 27
Slide 27 text
No content
Slide 28
Slide 28 text
ステートファイルの保存 apply 生成 ステートファイル
Slide 29
Slide 29 text
ステートファイルの保存 apply 生成 ステートファイル
Slide 30
Slide 30 text
Gitリポジトリとの連携 push apply
Slide 31
Slide 31 text
Gitリポジトリとの連携 push apply
Slide 32
Slide 32 text
Gitリポジトリとの連携 push apply
Slide 33
Slide 33 text
複数人でTerraform運用 チームが何人になっても Terraformの運用を スケールできる
Slide 34
Slide 34 text
IaCでよくある悩み Fastly設定のコード化・自動化 詳しくないメンバーが 直接設定を変更してしまう 差分が生まれる
Slide 35
Slide 35 text
IaCでよくある悩み 差分が生まれる 管理されていない 設定が入っていることによ るセキュリティ問題 気づかずにTerraformを実 行して設定がまき戻る問 題
Slide 36
Slide 36 text
1. 検知 2. 通知 3. ステート修正 Drift Detection
Slide 37
Slide 37 text
こういう場合はどうする? https://example.com/ https://example.com/ui https://example.com/api https://example.com/auth On-prem S3 Amplify チームのスケールに 管理が追いつかない
Slide 38
Slide 38 text
Workspace & terraform_remote_state FastlyをIaCするリポジトリ アプリをIaCするリポジトリ
Slide 39
Slide 39 text
アプリのIaC リポジトリ & Workspace側 S3 Bucketを作成 & website_endpointをoutput Terraform Cloud上のStateを terraform-fastly workspaceに共有
Slide 40
Slide 40 text
FastlyのIaC リポジトリ & Workspace側 Terraform Cloudの terraform-fastly-app workspaceの Stateを使うと宣言 State内の output(website_endpoint)を backendのaddressに設定
Slide 41
Slide 41 text
こういう場合はどうする? https://example.com/ https://example.com/ui https://example.com/api https://example.com/auth On-prem S3 Amplify 自分たちのリソースは 自分たちで管理 リモートステートで 緩やかに連携
Slide 42
Slide 42 text
No content
Slide 43
Slide 43 text
Thank You
[email protected]
www.hashicorp.com