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
CloudFrontの継続的デプロイを試してみたはなし
Search
Takuya Shibata
PRO
April 04, 2024
Technology
1.6k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
CloudFrontの継続的デプロイを試してみたはなし
2024年4月4日に行われたクラメソさっぽろIT勉強会 (仮) #1で発表したスライドです。
Takuya Shibata
PRO
April 04, 2024
More Decks by Takuya Shibata
See All by Takuya Shibata
意外とあった SQL Server 関連アップデート + Database Savings Plans
stknohg
PRO
0
740
AWSのProductのLifecycleについて
stknohg
PRO
0
800
アップデート紹介:AWS Data Transfer Terminal
stknohg
PRO
0
790
Snapshot & Backup
stknohg
PRO
0
4.4k
AWSエンジニアのためのActive Directory入門
stknohg
PRO
1
3.7k
EC2 Image Builder
stknohg
PRO
0
610
Windows on AWS の “基礎”
stknohg
PRO
0
1k
Azure Dedicated Host と2019年10月1日からのライセンス改定のはなし
stknohg
PRO
0
660
Windows on AWS 入門
stknohg
PRO
0
740
Other Decks in Technology
See All in Technology
JAWSUG TOHOKU 青森支部 「LoGoチャット」のAWS移行で 乗り越えたこと
taketakekaho
0
310
re:Invent初参加で変わったこと、2回目にやってみたいこと(JAWS-UG彩の国埼玉 #12)
mhrtech
2
180
オントロジーって 結局なにもの? AI エージェントに「意味」を渡す知識設計の話
greenmidori
0
130
実践!Cloud Run ハンズオン!! / Cloud Run handson
y0hgi
2
270
分析の民主化を支えるメタデータ整備の実践
kakehashi
PRO
4
1.4k
Claude の新機能を、 出た日に触って社内に届けるまで
rfdnxbro
1
160
「Docker Desktop不要の時代」は 来たのか?
ueponx
0
710
[JAWS-UG彩の国埼玉#12]そろそろ準備する?re:Invent2026をやさしく解説 / reinvent2026-sainokuni
sh_fk2
1
310
"優秀な誰か"の下位互換にならないために
yut0naga1_fa
1
1.8k
Optunaの最新リリースv5.0について
pfn
PRO
0
110
AIがコードを書く時代に、エンジニアは何で自分の価値を証明するのか / In an era where AI writes code how do engineers prove their value
carta_engineering
3
1k
Running Kotlin + Quarkus with Lambda
nealle
1
3.4k
Featured
See All Featured
Designing for Performance
lara
612
70k
AI: The stuff that nobody shows you
jnunemaker
PRO
10
1.2k
Deep Space Network (abreviated)
tonyrice
0
370
svc-hook: hooking system calls on ARM64 by binary rewriting
retrage
2
620
Bridging the Design Gap: How Collaborative Modelling removes blockers to flow between stakeholders and teams @FastFlow conf
baasie
0
730
New Earth Scene 8
popppiees
4
2.7k
Future Trends and Review - Lecture 12 - Web Technologies (1019888BNR)
signer
PRO
0
3.8k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
What’s in a name? Adding method to the madness
productmarketing
PRO
24
4.2k
Jess Joyce - The Pitfalls of Following Frameworks
techseoconnect
PRO
1
450
Mobile First: as difficult as doing things right
swwweet
225
10k
Test your architecture with Archunit
thirion
2
2.4k
Transcript
CloudFrontの継続的デプロイを 試してみたはなし 2024.04.04 クラメソさっぽろIT勉強会 (仮) #1 Takuya Shibata 公開版
2 自己紹介 Takuya Shibata • AWS事業本部 コンサルティング部 • ソリューションアーキテクト •
2018年12月入社 • Japan AWS All Certifications Engineer (2023) • ex-APN AWS Top Engineer (2020, 2021) • ex-Microsoft MVP (2016 – 2022)
3 はじめに クラメソさっぽろIT勉強会 (仮) はAWS以外の話題も絶賛募集中です!
4 本日のテーマ 「CloudFrontの継続的デプロイ」
5 CloudFrontの継続的デプロイとは? 2022年11月(re:Inventちょっと前)に登場した新機能 • 2つのCloudFrontディストリビューションを 「Primary (本番)」「Staging (ステージング)」 の形で紐づける •
Staging環境へは「重みベース」「ヘッダベース」 でアクセス可能 • 「昇格」するとStagingからPrimaryへ設定を コピーする しばらく2023年の新機能だと誤解していた…
6 CloudFrontの継続的デプロイとは? 「重みベース」or「ヘッダベース」のアクセス
7 CloudFrontの継続的デプロイとは? 「昇格」時の挙動
8 特徴・注意点 • Stagingにもドメイン名(cloudfront.net)は付くが 名前解決はできない • 名前解決はPrimaryのみ可能 • 昇格はあくまでも Staring
→ Primary への設定コピー • Blue/Greenデプロイメントとは異なる • 昇格時のディストリビューションは通常のデプロイ時と同じ 挙動をする • 昇格時にすべての設定をコピーするわけではない • 少なくとも「説明」「代替ドメイン」「ログ設定」はコピー されない
9 特徴・注意点 • キャッシュ管理はPrimary、Stagingそれぞれ別 • キャッシュの共有、といったことは不可 • その他いくつか機能制限がある • HTTP/3は非サポート
• 高トラフィック時などの特定ケースにおいてすべての リクエストをPrimaryに流すことがある • note株式会社: noteがEKSへの完全移行までにやったこと https://engineerteam.note.jp/n/nd4ef85f85cc0
10 動作確認のために
11 ポートフォリオサイトを作ってみた https://www.shibata.tech/
12 構成図 https://www.shibata.tech/website-architecture
13 気づき 今日までサイト運営して得た気づきを適当に列挙 1. そもそも使いどころが悩ましい • オリジンの種類(アプリケーション、コンテンツ) によってデプロイの在り方は変わりうる • オリジン側で既に継続的デプロイがある場合どうする?
2. 切り戻しをどうすべきかも悩ましい • 変更前の設定で再デプロイするしかないのだが… 自動化しようとすると一気にめんどうくさい感じに 3. キャッシュコントロールは自前で頑張る必要あり • Invalidationをどのタイミングで行うかは利用者次第
14 気づき 今日までサイト運営して得た気づきを適当に列挙 4. リクエストヘッダを改変できるソフトが存外少ない • ModHeaderは(行儀の悪い) アドウェアと化してしまった… • おススメの代替ツールがあれば教えてほしい
5. 地球は広い • 最初S3をバージニア北部にしていたが、キャッシュを 使わない場合のレイテンシーが900ミリ秒程度発生 • 東京リージョンにしたら100ミリ秒未満に • ちゃんとレイテンシー計測サイトの値と同程度だった 他にもたくさんあり、実際に試すことは学びが多い。
15 発表後の追記 発表後のワイガヤタイム(質疑応答)での内容から 1. 使いどころに関して、対オリジンではなくCloudFront 自体の機能テストとデプロイ自動化のために使うもの では? • 確かに!!! •
「CloudFront(自体の)継続的デプロイ」は凄くしっくりくる • 改めてドキュメントを見ると確かに とある。 With Amazon CloudFront continuous deployment you can safely deploy changes to your CDN configuration by testing first with a subset of production traffic.
16 発表後の追記 発表後のワイガヤタイム(質疑応答)での内容から 2. CloudFront Functionsは昇格対象に含まれる? • ビヘイビアの「関数の関連付け」が昇格によりコピーされる • 別名の関数(例えばFunction-v2みたいな別名)をStaging環境に関連付け
れば安全に動作検証は可能 • 実際に試した事はないが、KeyValueStoresも環境を分ければ Staging環境で動作検証可能なはず ← Primary Distributionに関連付けられ動作中 ← Staging Distributionに関連付けて検証可能 (昇格予定)
17 まとめ? どんな技術も 実際に試すことは学びが多いヨ!
None