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
91
第133回 雲勉 【オンライン】今度こそ既存のAWSリソースをいい感じにコードに落とし込みたい!
下記、勉強会での資料です。
https://youtu.be/5-RB3kysSV0
iret.kumoben
April 25, 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
エンジニアリング価値を黒字化する バリューベース戦略を用いた 技術戦略策定の道のり
kzkmaeda
6
1.5k
Snowflakeの開発・運用コストをApache Icebergで効率化しよう!~機能と活用例のご紹介~
sagara
1
310
ディスプレイ広告(Yahoo!広告・LINE広告)におけるバックエンド開発
lycorptech_jp
PRO
0
210
【内製開発Summit 2025】イオンスマートテクノロジーの内製化組織の作り方/In-house-development-summit-AST
aeonpeople
1
490
ExaDB-XSで利用されているExadata Exascaleについて
oracle4engineer
PRO
3
160
(機械学習システムでも) SLO から始める信頼性構築 - ゆる SRE#9 2025/02/21
daigo0927
0
240
Perlの生きのこり - エンジニアがこの先生きのこるためのカンファレンス2025
kfly8
1
240
Apache Iceberg Case Study in LY Corporation
lycorptech_jp
PRO
0
260
大規模アジャイルフレームワークから学ぶエンジニアマネジメントの本質
staka121
PRO
3
160
Potential EM 制度を始めた理由、そして2年後にやめた理由 - EMConf JP 2025
hoyo
2
1.6k
LINE NEWSにおけるバックエンド開発
lycorptech_jp
PRO
0
130
システム・ML活用を広げるdbtのデータモデリング / Expanding System & ML Use with dbt Modeling
i125
1
310
Featured
See All Featured
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Facilitating Awesome Meetings
lara
52
6.2k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
133
33k
Typedesign – Prime Four
hannesfritz
40
2.5k
Measuring & Analyzing Core Web Vitals
bluesmoon
6
250
A designer walks into a library…
pauljervisheath
205
24k
Why You Should Never Use an ORM
jnunemaker
PRO
55
9.2k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
45
9.4k
It's Worth the Effort
3n
184
28k
Building a Scalable Design System with Sketch
lauravandoore
461
33k
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.3k
Designing for Performance
lara
604
68k
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 ご清聴ありがとうございました︕