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
CloudFormationとCDKで Cloudflareリソースを 作成してみた
Search
kato
November 20, 2023
Technology
350
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
CloudFormationとCDKで Cloudflareリソースを 作成してみた
kato
November 20, 2023
More Decks by kato
See All by kato
re:Invent 参加してきたよ! CDKでAnthropic Claude 3 Sonnetを使ってSlackに最新Updateを要約通知してくれる What’s New Summary Notifier をデプロイしてチェックしてみる!
yushikatoaws
0
35
Let's relearn CFn Hooks,Guard,CCAPI After AWS re:Invnet 2024
yushikatoaws
0
58
JAWS-UG配信部〜発足からの歩みと感謝
yushikatoaws
0
51
Momentoが考える開発者の未来(前半)
yushikatoaws
1
2k
Momentoが考える開発者の未来(後半)
yushikatoaws
1
1.8k
Calling_Momento_API_with_Amazon_EventBridge_Destinations___Pipes.pdf
yushikatoaws
0
120
前職でSeleniumで自動化していた 情シスが転職先でplaywright を触ってみたのでご紹介
yushikatoaws
0
430
複数リージョン間で利用可能なAWSサービスを比較出来るWebアプリを作ってみた。
yushikatoaws
1
180
認知負荷って何_を知った上で再考する_CloudFormationからCDKへの移行
yushikatoaws
5
2.5k
Other Decks in Technology
See All in Technology
NetBoxを利用した作業効率化の試み_NetDevNight4
tnoha
0
460
サイバー捜査員研修(前半)
nomizone
1
1.6k
【CEDEC2026】『ウマ娘 プリティーダービー』 英語版のキャラクターの方言や口調をローカライズするための創造的アプローチ
cygames
PRO
1
180
初めてのGitHub Actions / GitHub Actions at First
tooppoo
0
140
AIは実装を速くする。では、私たちは何を今作るべきか?-立場を越えてリリースに向き合ったチーム開発の実践 / 20260801 Hiromi Nakaya and Naoki Takahashi
shift_evolve
PRO
3
370
20260608_Codexの可能性_ノンプログラマー向け_大城追記
doradora09
PRO
0
760
新しい SLO が良い感じにハマっている話
z63d
4
2.1k
【5分でわかる】セーフィー エンジニア向け会社紹介
safie_recruit
0
53k
AWS ネットワーク構築でハマった(ハマりかけた) 5選とそこから得た教訓
nagisa53
4
180
JavaScript 研修 (2026)
recruitengineers
PRO
0
280
認知負荷をGemini で溶かす — GKE 基盤「Orbit」における AI エージェントの実践
sansantech
PRO
1
250
Flutterをカメラで動かしたかった話
sony
0
120
Featured
See All Featured
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.5k
The browser strikes back
jonoalderson
0
1.4k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.8k
Beyond borders and beyond the search box: How to win the global "messy middle" with AI-driven SEO
davidcarrasco
3
200
Become a Pro
speakerdeck
PRO
31
6.1k
Java REST API Framework Comparison - PWX 2021
mraible
34
9.6k
Designing for Performance
lara
611
70k
Are puppies a ranking factor?
jonoalderson
1
3.8k
Technical Leadership for Architectural Decision Making
baasie
3
460
Abbi's Birthday
coloredviolet
3
9.1k
What Being in a Rock Band Can Teach Us About Real World SEO
427marketing
0
1.1k
The Curious Case for Waylosing
cassininazir
1
450
Transcript
CloudFormationとCDKで Cloudflareリソースを 作成してみた @Cloudflare Meetup Sapporo Vol. 2 yushi kato
近況: 腰が痛いです 名前 : 加藤 裕士 居住地 : 札幌市中央区 好きなサービス
: CFn・CDK 趣味 : インテリア・音楽 収集 DevTools JAWS-UG 配信部 AWS Multi-Region Comparison Hello, Everyone!
③ ターミナル(SetTypeConfiguration) 操作 MENU ⓪ 前提知識 ①CloudFlare 側でToken 発行 ④
使ってみる ② ロール作成& 有効化&Token をSecrets Manager に格納
CloudFormation レジストリ???
マネコンからだと..
提供リージョン→ 2023 年11 月20 日時点で存在する CloudFormation レジストリの パブリックサードパーティ拡張機能について リソースタイプ↓
Round 1 ①CloudFlare 側でToken 発行
①CloudFlare 側でToken 発行
①CloudFlare 側でToken 発行
Failed.... NANDE YA! API トークン作成時に 以下に入力する値は CFn のIP( 当たり前のミス) ここにローカルのIP
を入れたお疲れ山の私 CFN でも CDK でも
①CloudFlare 側でToken 発行
Round 2 ② ロール作成& 有効化 &Token をSecrets Manager に格納 Fn::ForEachj
組み込み関数を使ったテンプレ例の説明もついでに
② ロール作成& 有効化&Token をSecrets Manager に格納 CloudFormation テンプレートの場合 Fn::ForEach を利用して4
リソースタイプ分の ロールとレジストリのタイプアクティベーション、 シークレット(Token はパラメータで入力) をまとめて作成した例
各Token の入力するパラメーター +4 つの値があるリスト型のパラーメータを用意→ ② ロール作成& 有効化&Token をSecrets Manager に格納
←TypeList パラメータの4 つのテキスト( 黄色) に対応する テキスト( 赤色) をMappings セクションに用意 ②
ロール作成& 有効化&Token をSecrets Manager に格納
←SecretsManager にToken 作成 ←4 つのCFn レジストリタイプを有効化 ② ロール作成& 有効化&Token をSecrets
Manager に格納
←TypeActivation で指定するロールを作成 ※Fn;:ForEach 下にある為4 つ作成される ② ロール作成& 有効化&Token をSecrets Manager
に格納
CDK の場合 ※ 機密情報であるToken は上記に含んでいません。 ② ロール作成& 有効化&Token をSecrets Manager
に格納
Round 3 ③ ターミナル (SetTypeConfiguration) 操作
③ ターミナル(SetTypeConfiguration) 操作
③ ターミナル(SetTypeConfiguration) 操作
Round 4 Player 1 Player 2 Player 3 ④ 使ってみる
④ 使ってみる 値の後に カンマ いらない 値の後に カンマ いらない 論理ID が
Type と 同階層に ある! 論理ID が Type と 同階層に ある! GITHUB 上のDoc にある example がyabai!! type のコロンが 一つ足りない type のコロンが 一つ足りない インデント どうなって んねん.. インデント どうなって んねん.. GetAt に IdAll が ない! GetAt に IdAll が ない! Properties がない Properties がない https://github.com/aws-ia/cloudformation-cloudflare-resource-providers
④ 使ってみる まずCloudflare の コンソール上から← をget Get!!! Get!!!
④ 使ってみる(DNS::Record の例) Succeeded!! Sugeee! ※YAML の例
④ 使ってみる(LoadBalancer::Moniter の例) OK!!
None
WAIT! @cdk-waf-cloudflare??
と飛びついて覗いてみましたが、 このコンストラクト自体が Cloudflare リソースの 作成を含むものではなさそう
None
ちょっとだけお金がかかってる ProcessResourceHandlers
None
そもそもTerraform でCloudflare リソースは作れる ( 下は発表当日にTerraform でR2 にBuckets を作ってみた) [ 参考]https://dev.classmethod.jp/articles/intro-cloudflare-r2-terraform/
こっちはA レコード
③Connpass のCloudflare Meetup にUP された資料は全部目を通した 【この資料の元ネタにしたブログ作成時点の私】 Cloudflare のサービスを殆ど知らない状態 (CFn レジストリで3rdParty
連携を試したかっただけの人) wrangler -h で出てくるコマンドを片っ端から叩いて結果を見てみるに挑戦 Youtube で“Cloudflare” と入力して表示された日本語動画を全部見る サービスを理解し始めてCloudFlare に対するモチベがめちゃ高い( ☜Now!!) やっと時間が出来たし調べてみよう
次回はcdk-tf でAWS とCloudflare を一緒に管理出来ないかや、 cf-terraforming 使ってみた話など身のある話をしたいと思います。 最後に..
Thank You For listening! See You Next Time! この後の発表楽しみにしています。