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
第14回 雲勉LT【オンライン】cdk import を使って既存のAWSリソースをいい感じに...
Search
iret.kumoben
January 23, 2024
Technology
0
99
第14回 雲勉LT【オンライン】cdk import を使って既存のAWSリソースをいい感じにコードに落とし込みたい!
下記、勉強会での資料です。
https://youtu.be/xhQOwzPLqLQ
iret.kumoben
January 23, 2024
Tweet
Share
More Decks by iret.kumoben
See All by iret.kumoben
第155回 雲勉 サーバレスアーキテクチャを 用いたコスト重視 AI サービス
iret
0
30
第154回 雲勉 AWS Codeシリーズ盛り上げ隊 ~ Codeシリーズは砕けない ~
iret
0
38
第153回 雲勉 トラシューが秒で終わる新機能 Amazon Q Developer operational investigations
iret
0
52
第150回 雲勉 AWS AppSyncではじめるGraphQL体験
iret
0
44
第151回 雲勉 プロジェクトのドキュメントにおける課題をAmazon Bedrockで解決してみる
iret
0
61
第152回 雲勉 シームレスなマルチリージョンへの移行と検討 ~Amazon EKSとAWS Global Acceleratorを使用した環境〜
iret
0
57
第149回 雲勉 AWS ベストプラクティスの最新と実際 AWS Well-Architected
iret
0
88
第148回 雲勉 Web アプリケーションセキュリティ
iret
0
52
第147回 雲勉 Amazon CloudWatchをウォッチ!
iret
0
66
Other Decks in Technology
See All in Technology
PHPで印刷所に入稿できる名札データを作る / Generating Print-Ready Name Tag Data with PHP
tomzoh
0
180
OPENLOGI Company Profile
hr01
0
60k
Potential EM 制度を始めた理由、そして2年後にやめた理由 - EMConf JP 2025
hoyo
2
1.6k
Iceberg Meetup Japan #1 : Iceberg and Databricks
databricksjapan
0
290
Two Blades, One Journey: Engineering While Managing
ohbarye
3
800
【詳説】コンテンツ配信 システムの複数機能 基盤への拡張
hatena
0
190
JavaにおけるNull非許容性
skrb
1
1.4k
次世代KYC活動報告 / 20250219-BizDay17-KYC-nextgen
oidfj
0
460
RemoveだらけのPHPUnit 12に備えよう
cocoeyes02
0
160
【5分でわかる】セーフィー エンジニア向け会社紹介
safie_recruit
0
18k
抽象化をするということ - 具体と抽象の往復を身につける / Abstraction and concretization
soudai
27
15k
IAMポリシーのAllow/Denyについて、改めて理解する
smt7174
2
180
Featured
See All Featured
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
160
15k
Docker and Python
trallard
44
3.3k
Speed Design
sergeychernyshev
27
800
Art, The Web, and Tiny UX
lynnandtonic
298
20k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
27
1.9k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
30
4.6k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
Fantastic passwords and where to find them - at NoRuKo
philnash
51
3k
Build your cross-platform service in a week with App Engine
jlugia
229
18k
Why Our Code Smells
bkeepers
PRO
336
57k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
10
500
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
233
17k
Transcript
第14回 雲勉LT【オンライン】 cdk import を使って既存のAWSリソースを いい感じにコードに落とし込みたい︕
0.講師⾃⼰紹介 2 • 本⽥ 岳⼠(ほんだ たけし) • クラウドインテグレーション事業部開発第⼆セクション第2開発グループ(⼤阪オフィス) • 40歳からエンジニア(4年⽬)、⾃社開発2社経験してアイレット
• アイレット歴 半年 • スパゲッティコードに対する耐性が強み • 趣味は⼀⼈旅、変なTシャツ・パーカー、猫3匹 • 気になるAWSのサービスはAWS CDK, AWS SAM
アジェンダ 3 0. ⾃⼰紹介 1. どんな場合に有効なの︖ 2. cdk import やってみた
3. 感想・まとめ
本⽇のテーマ 4 既存のAWSリソースをIaCへ
1.どんな場合に有効なの︖ 5
1.どんな場合に有効なの︖ 6 • 既存のインフラをコード化したい • 現在稼働している環境と別の環境を作成したい • 中⾝を完全に把握できているわけではない • ドキュメントで構築の⼿順書はあったものの古くて環境と乖離がある
2. cdk import やってみた 7
2.cdk import やってみた 8 n ⼿順 • AWSリソースの作成(今回はLambdaを作成) • CloudFormationスタック作成
• cdk import • ドリフトの検出、ソースの修正
2.cdk import やってみた 9 n AWSリソースの作成(今回はLambdaを作成)
2.cdk import やってみた 10 n CloudFormationスタック作成 cdk init してそのまま cdk
deploy
2.cdk import やってみた 11 n cdk import リソース作成の際の必須のプロパティについ ては最低限書いておく必要がある。今回は Lambdaの例でruntime,
code, handlerが必 須。他の例ではS3だと何もいらない。 TSで実装したら 型エラーで教えてくれる
2.cdk import やってみた 12 n cdk import 途中Lambdaのロール名と関数名を⼊⼒するように求められた 完了するとドリフトの検出で確認するように勧められている
2.cdk import やってみた 13 n ドリフトの検出、ソースの修正 ドリフトの検出 ↓ ドリフトステータスの確認 ↓
ドリフト結果を表⽰
2.cdk import やってみた 14 n ドリフトの検出、ソースの修正 CDKでデフォルトで設定されるものと コンソールで作成した時に⽣成されるものに差分がある
2.cdk import やってみた 15 n ドリフトの検出、ソースの修正 この差分を埋める修正は⼿作業
2.cdk import やってみた 16 n ドリフトの検出、ソースの修正 CDKのソースで特に記述していないものについてはDefaultの値がセットされて いるので、実際のリソースとの差分が⽣まれるとコードで追記する必要がある
3. 感想・まとめ 17
3.感想・まとめ 18 n 楽ではない • cdk importするための準備が必要になることもある(リソース作成に必須の項 ⽬に関してはコンソールの値と同じものを記述しておくなど) • 結局CDKでのソースと既存のAWSリソースの設定との差分を表⽰するところ以
降は現状ソリューションがないので、cdk importした後差分を⼿動で埋める地 道な作業が発⽣する • コンソールでぽちぽちした後コードに落としてよしなにしてくれる、といった 使い⽅は期待できなさそう • 既存のリソースから設定を拾うには良さそう