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
31
第14回 雲勉LT【オンライン】cdk import を使って既存のAWSリソースをいい感じにコードに落とし込みたい!
iret.kumoben
January 23, 2024
Tweet
Share
More Decks by iret.kumoben
See All by iret.kumoben
第133回 雲勉 【オンライン】今度こそ既存のAWSリソースをいい感じにコードに落とし込みたい!
iret
0
36
第132回 雲勉【オンライン】春の生成AI祭り
iret
1
53
第17回 雲勉LT【オンライン】Amazon Managed Grafanaを使ってCloudWatchログを分析・可視化する
iret
0
39
Amazon Bedrockのロックな使い方を考えたい
iret
0
30
CloudWatch SyntheticsとAmazon Managed Grafanaを連携する
iret
0
23
Amazon SageMaker Canvasで学ぶ機械学習モデルの構築
iret
0
44
ECR経由でのデプロイ通知を考える〜App Runner編〜
iret
0
32
AWSのサーバーレスでとりあえず開発をはじめてみた時に無知ゆえに陥りがちなこと
iret
1
52
第131回 雲勉【オンライン】AWSを9年触ってきて経験した落とし穴、ハマったポイント
iret
8
660
Other Decks in Technology
See All in Technology
Google Cloudを組織(企業)で運用する時のベストプラクティス × 健康の環境分離戦略 #まるクラ勉強会
yasumuusan
0
170
令和版ソフトウェアエンジニアの情報収集術 PHPカンファレンス香川2024
ysknsid25
4
870
AWS CLIの起動が重くてつらいので aws-sdk-client-go を書いた / kamakura.go#6
fujiwara3
5
2.4k
【リラン】AIの光と闇?失敗しないために知っておきたいAIリスクとその対応 ①政府の動き編
tkhresk
0
140
大規模言語モデル (LLM)における低精度数値表現
pfn
PRO
3
810
DevRelによる信頼構築とデータ駆動で変わるエンジニア採用 / DevRel Trust Building to Data Driven Engineering Hiring
bobtani
1
130
AI JIMY - 登壇(インストール編)
hanacchi
0
150
Shinagile 2024
kawaguti
PRO
2
120
Oracle Base Database Service 技術詳細
oracle4engineer
PRO
5
38k
スクラムに出会って「できた」を実感できるようになってきた話 / Scrum makes me feel like I can do it
yayoi_dd
2
110
「できる!」を増やすGitHub Copilot活用法 / How to use GitHub Copilot to expand your possibilities
sansan_randd
1
240
多言語化対応における TypeScript の型定義を通して開発のしやすさについて考えた / TSKaigi TypeScript Multilingualization
nabeliwo
2
380
Featured
See All Featured
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
155
14k
Rails Girls Zürich Keynote
gr2m
91
13k
Ruby is Unlike a Banana
tanoku
96
10k
Become a Pro
speakerdeck
PRO
13
4.6k
Creatively Recalculating Your Daily Design Routine
revolveconf
211
11k
What's new in Ruby 2.0
geeforr
338
31k
Build your cross-platform service in a week with App Engine
jlugia
226
17k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
21
1.6k
Fantastic passwords and where to find them - at NoRuKo
philnash
39
2.5k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
245
20k
Into the Great Unknown - MozCon
thekraken
15
1.1k
GraphQLの誤解/rethinking-graphql
sonatard
56
9.3k
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した後差分を⼿動で埋める地 道な作業が発⽣する • コンソールでぽちぽちした後コードに落としてよしなにしてくれる、といった 使い⽅は期待できなさそう • 既存のリソースから設定を拾うには良さそう