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
81
第133回 雲勉 【オンライン】今度こそ既存のAWSリソースをいい感じにコードに落とし込みたい!
下記、勉強会での資料です。
https://youtu.be/5-RB3kysSV0
iret.kumoben
April 25, 2024
Tweet
Share
More Decks by iret.kumoben
See All by iret.kumoben
第149回 雲勉 AWS ベストプラクティスの最新と実態 AWS Well-Architected
iret
0
39
第148回 雲勉 Web アプリケーションセキュリティ
iret
0
30
第147回 雲勉 Amazon CloudWatchをウォッチ!
iret
0
53
第146回 雲勉 BLEAを眺めてCDKの書き方について学ぶ
iret
1
55
第145回 雲勉 Amazon ECSでサービス間通信する方法を調べてみよう
iret
0
51
第144回 雲勉 Amazon Aurora Serverless v2の基礎とアーキの裏側を覗いてみる
iret
0
99
第143回 雲勉 [New Relic]インフラストラクチャ監視と気をつけたいポイント
iret
0
45
第142回 雲勉 AWS Backupの復元テストで自動化できること・できないこと
iret
0
110
第141回 雲勉 Amazon Inspectorによる脆弱性管理~ECR コンテナイメージ編~
iret
0
300
Other Decks in Technology
See All in Technology
re:Invent をおうちで楽しんでみた ~CloudWatch のオブザーバビリティ機能がスゴい!/ Enjoyed AWS re:Invent from Home and CloudWatch Observability Feature is Amazing!
yuj1osm
0
140
小学3年生夏休みの自由研究「夏休みに Copilot で遊んでみた」
taichinakamura
0
190
株式会社ログラス − エンジニア向け会社説明資料 / Loglass Comapany Deck for Engineer
loglass2019
3
32k
スタートアップで取り組んでいるAzureとMicrosoft 365のセキュリティ対策/How to Improve Azure and Microsoft 365 Security at Startup
yuj1osm
0
250
TSKaigi 2024 の登壇から広がったコミュニティ活動について
tsukuha
0
170
[JAWS-UG新潟#20] re:Invent2024 -CloudOperationsアップデートについて-
shintaro_fukatsu
0
130
日本版とグローバル版のモバイルアプリ統合の開発の裏側と今後の展望
miichan
1
150
生成AIのガバナンスの全体像と現実解
fnifni
1
230
ZOZOTOWN の推薦における KPI モニタリング/KPI monitoring for ZOZOTOWN recommendations
rayuron
1
170
事業貢献を考えるための技術改善の目標設計と改善実績 / Targeted design of technical improvements to consider business contribution and improvement performance
oomatomo
0
170
Microsoft Azure全冠になってみた ~アレを使い倒した者が試験を制す!?~/Obtained all Microsoft Azure certifications Those who use "that" to the full will win the exam! ?
yuj1osm
2
130
生成AIをより賢く エンジニアのための RAG入門 - Oracle AI Jam Session #20
kutsushitaneko
4
320
Featured
See All Featured
GraphQLの誤解/rethinking-graphql
sonatard
67
10k
GitHub's CSS Performance
jonrohan
1031
460k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
33
2.7k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
230
52k
Building a Modern Day E-commerce SEO Strategy
aleyda
38
7k
How To Stay Up To Date on Web Technology
chriscoyier
789
250k
Building Your Own Lightsaber
phodgson
103
6.1k
How STYLIGHT went responsive
nonsquared
96
5.2k
Bash Introduction
62gerente
609
210k
Fireside Chat
paigeccino
34
3.1k
Code Reviewing Like a Champion
maltzj
521
39k
Thoughts on Productivity
jonyablonski
68
4.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 ご清聴ありがとうございました︕