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
第133回 雲勉 【オンライン】今度こそ既存のAWSリソースをいい感じにコードに落とし込みたい!
Search
iret.kumoben
April 25, 2024
Technology
0
29
第133回 雲勉 【オンライン】今度こそ既存のAWSリソースをいい感じにコードに落とし込みたい!
iret.kumoben
April 25, 2024
Tweet
Share
More Decks by iret.kumoben
See All by iret.kumoben
第132回 雲勉【オンライン】春の生成AI祭り
iret
1
45
第17回 雲勉LT【オンライン】Amazon Managed Grafanaを使ってCloudWatchログを分析・可視化する
iret
0
36
Amazon Bedrockのロックな使い方を考えたい
iret
0
25
CloudWatch SyntheticsとAmazon Managed Grafanaを連携する
iret
0
20
Amazon SageMaker Canvasで学ぶ機械学習モデルの構築
iret
0
35
ECR経由でのデプロイ通知を考える〜App Runner編〜
iret
0
29
AWSのサーバーレスでとりあえず開発をはじめてみた時に無知ゆえに陥りがちなこと
iret
1
50
第131回 雲勉【オンライン】AWSを9年触ってきて経験した落とし穴、ハマったポイント
iret
8
640
第130回 雲勉【オンライン】Step Functions を使ってS3のファイルを操作してみよう
iret
0
36
Other Decks in Technology
See All in Technology
Max out Local LLM in Challenging Environments
sashimimochi
1
120
Amplify 🩷 Bedrock 〜生成AI入門〜
minorun365
PRO
8
830
開発パフォーマンスを最大化するための開発体制
ham0215
7
1.1k
Autonomous Database Cloud 技術詳細 / adb-s_technical_detail_jp
oracle4engineer
PRO
15
35k
Building a RAG-poweredAI chat appwith Python and VS Code
pamelafox
0
160
2023年度にEMとして頑張ったこと
ikefukurou777
0
100
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Musicを例に~
otanet
0
310
Babylon.jsと色々なものを組み合わせる:ブラウザのAPIやガジェットや2D描画ライブラリなど / Babylon.js 勉強会 vol.3
you
PRO
0
160
今日からできる!簡単 .NET 高速化 Tips -2024 edition-
xin9le
7
4k
Android Target SDK 35 (Android 15) 対応の概要
akkie76
0
160
社内アプリで Cloudflare D1を プロダクト運用してみた体験談(Tokyo)
haochenx
0
120
認知症フレンドリーテックとスタックチャン
naokiuc
0
270
Featured
See All Featured
Done Done
chrislema
178
15k
Principles of Awesome APIs and How to Build Them.
keavy
121
16k
Rebuilding a faster, lazier Slack
samanthasiow
74
8.2k
Agile that works and the tools we love
rasmusluckow
325
20k
Fashionably flexible responsive web design (full day workshop)
malarkey
398
65k
What's in a price? How to price your products and services
michaelherold
238
11k
Producing Creativity
orderedlist
PRO
338
39k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
14
1.5k
Web development in the modern age
philhawksworth
203
10k
jQuery: Nuts, Bolts and Bling
dougneiner
59
7.2k
Ruby is Unlike a Banana
tanoku
96
10k
Happy Clients
brianwarren
92
6.4k
Transcript
第133回 雲勉【オンライン】 今度こそ既存のリソースをいい感じに コードに落とし込みたい︕
0.⾃⼰紹介 2 • 本⽥ 岳⼠(ほんだ たけし) • クラウドインテグレーション事業部ソリューション開発セクション第2開発グループ (⼤阪オフィス) •
40歳からエンジニア(4年⽬)、⾃社開発2社経験してアイレット • アイレット歴 10ヶ⽉ • スパゲッティコードに対する耐性が強み • 趣味は⼀⼈旅、変なTシャツ・パーカー、猫3匹 • 気になるAWSのサービスはAWS CDK, AWS SAM
本⽇のテーマ 3 既存のAWSリソースをIaCへ (2024年1⽉の第14回雲勉LTのリベンジ)
アジェンダ 4 0. ⾃⼰紹介 1. 新機能の紹介 2. マネジメントコンソールのIaCジェネレーター (VPC, ELB,
EC2, RDS) 3. cdk migrate --from-scan(API Gateway, Lambda, DynamoDB) 4. 感想・まとめ
1.新機能の紹介 5
1.新機能の紹介 6 今年1⽉の第14回雲勉LTが公開された約10⽇後、既存のAWSリソースからAWS CloudFormation テンプレート、AWS CDKに移⾏する新機能が続々と公開されました(現在はプレビューリリー ス)。
1.新機能の紹介 7 • 既存のAWSリソースからCloudFormationテンプレートを作成することができる︕ • CloudFormationテンプレートからCDKのコードを⽣成することができる︕ • 既存のAWSリソースからCDKのコードを⽣成することができる︕
8 これはやってみるしかない︕
2.マネジメントコンソールのIaCジェネレーター (VPC, ELB, EC2, RDS) 9
2.マネジメントコンソールのIaCジェネレーター 10 AWSのハンズオンで作成したアプリケーションをCDKのコードに マネジメントコンソールのIaCジェネレーターで作成
2.マネジメントコンソールのIaCジェネレーター 11 CloudFormationのマネジメントコンソールにIaCジェネレーターというメニューが追加されてい る。スキャンを⾏うとアカウントにあるAWSリソースをスキャンする。スキャンが終わったらテ ンプレートを作成していく
2.マネジメントコンソールのIaCジェネレーター 12 テンプレートの詳細を指定
2.マネジメントコンソールのIaCジェネレーター 13 スキャンしたリソースを追加 この辺りは⾒づらいが、あらかじめタグを付けておくなどして絞り込みできるようにしておく
2.マネジメントコンソールのIaCジェネレーター 14 関連リソースを追加 今回タグ付けしていなかったセキュリティグループ、サブネットなども候補に上がっている。
2.マネジメントコンソールのIaCジェネレーター 15 テンプレートを作成ボタンをクリックすると、数分後にテンプレートが作成される
2.マネジメントコンソールのIaCジェネレーター 16 CDKタブからテンプレートをダウンロードし、新たにディレクトリを作成して配置する。 ターミナルで新しいディレクトリに移動してステップ2のコマンドを実⾏する。
2.マネジメントコンソールのIaCジェネレーター 17 コマンドを実⾏するとエラー =>VpcId is not a valid property
2.マネジメントコンソールのIaCジェネレーター 18 EC2インスタンスのプロパティにある VpcIdを削除して実⾏
2.マネジメントコンソールのIaCジェネレーター 19 VpcIdを削除して実⾏するとファイルが作成される
3. cdk migrate --from-scan (API Gateway, Lambda, DynamoDB) 20
3. cdk migrate --from-scan 21 AWSのハンズオンで作成したアプリケーションをCDKのコードに 今度は既存のAWSリソースからCDKアプリケーションを作成
3. cdk migrate --from-scan 22 cdk migrate -–from-scanコマンドで実⾏ --from-scanオプションによって既存のAWSリソースから直接CDKのコードを作成する
3. cdk migrate --from-scan 23 CDKアプリケーションが作成されている
3. cdk migrate --from-scan 24 ただし、Lambdaのコードに関してはコンストラクタにS3バケットとキーを指定する形になって いるがcdk deployコマンドを実⾏する前にコードを保存し、そのバケット名とキー名をコンスト ラクタに引き渡す、もしくはプロジェクト内にコードを保存してlambda.Code.fromAssetで指定 する必要がある。cdk
deployを実⾏するとCloudFormationスタックが作成される S3のバケットとキーを指定してコンス トラクタに渡す
3. 感想・まとめ 25
3.感想・まとめ 26 n こういうのを待っていた︕ • まだプレビューリリースということもあって、若⼲スムーズにいかない部分や 使いづらいと感じるところはあるものの、⾮常に直感的な操作で使いやすい • ⾃動で作成された変数名は⻑くなるなど読みやすいコードとは⾔いにくいので 若⼲⼿を⼊れたほうがいいかもしれない
• コンソールでぽちぽちした後コードに落としてちょっとアレンジ、という使い ⽅も⼗分できる
27 ご清聴ありがとうございました︕