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
20240510_山形_AWSCDKを使ってみた.pdf
Search
ちばたかふみ
November 26, 2024
18
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
20240510_山形_AWSCDKを使ってみた.pdf
ちばたかふみ
November 26, 2024
More Decks by ちばたかふみ
See All by ちばたかふみ
202601216_SaaSはサーバーレスなのか
takachiba
0
48
20251011_ソラカメで簡単導入!店舗在庫の見える化と省力化
takachiba
1
110
サメの話(仮
takachiba
0
160
2024年JAWS-UG東北まとめ_山形版
takachiba
0
74
2024年JAWS-UG東北まとめ-弘前開催版-
takachiba
0
200
クラウドではじめる動画配信入門 AWS編
takachiba
1
220
AWSCDKを使ってみた
takachiba
0
62
AmazonQを使ってみた
takachiba
0
23
AmazonQを使って見積もりを作ろうとしてみた_Elemental MediaConvert編
takachiba
0
170
Featured
See All Featured
DevOps and Value Stream Thinking: Enabling flow, efficiency and business value
helenjbeal
1
230
What the history of the web can teach us about the future of AI
inesmontani
PRO
1
610
AI Search: Implications for SEO and How to Move Forward - #ShenzhenSEOConference
aleyda
1
1.3k
End of SEO as We Know It (SMX Advanced Version)
ipullrank
3
4.2k
SERP Conf. Vienna - Web Accessibility: Optimizing for Inclusivity and SEO
sarafernandez
2
1.5k
How to train your dragon (web standard)
notwaldorf
97
6.7k
How to Talk to Developers About Accessibility
jct
2
230
Claude Code のすすめ
schroneko
67
230k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
34
2.8k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.8k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
The AI Search Optimization Roadmap by Aleyda Solis
aleyda
1
5.9k
Transcript
AWS CDKを使ってみた スターブリッジいわて株式会社 v1.4p ちば たかふみ
自己紹介 1 名前 ちば たかふみ 出身 岩手県奥州市 住まい 岩手県花巻市 活動
東北/いわて/Game 趣味 国内旅行 サッカー観戦 ベガルタ仙台 サウナ/温泉 キャンプ バイク/ツーリング HONDA CT125 スキー
自己紹介 2 S〇y (2008~2013) 携帯電話PF開発 複合機PF開発 Windowsアプリ開発 スターブリッジいわて (2023~) 放送局向け動画配信系システム開発
Jス〇リーム(2013~2022) 動画配信プラットフォーム開発 動画プレイヤー開発 CDN開発 公営ギャンブル動画配信システム開発 放送局向け動画配信システム開発
所属 3 社名 スターブリッジいわて株式会社 所在地 事業所 : 岩手県花巻市松園町一丁目6-1 代表者 茂庭裕之
設立 2012年3月12日 ビジョン ✓ 岩手/地方の産業の課題を最新のITとリアル(現場力)の両面からビジネ スで解決し、質の高い雇用を生み出す。 ✓ 一次、二次、三次産業の全般の変革に貢献する存在になる。 事業内容 ✓ クライアントワーク ➢ 地元企業様のITの顧問・コンサルティング事業 ➢ 大手企業様プロジェクトのPM、コンサルティング、エンジニアリング ➢ 新規事業立上げ支援、立上げ代行サービス事業 ✓ 自社サービス運営 ✓ 岩手県産品EC・卸・小売り事業 ご契約いただいている岩手県内企業様業種 ➢ 製造業、建設業、旅館業、食品加工業、飲食業、青果市場、仲卸業、 花巻市役所 等々
今日のおはなし 4 AWS CDKを使ってみた
システムの開発が進むにつれ、以下のリソースが増えてきた。 • API Gatewey • EventBridge • Lambda • StepFunctions
デプロイが大変。 • 手作業によるコードの反映漏れ • 権限設定の漏れ • リリース対象が多く作業時間が増えてきている 最近の困りごと 5
• AWS Cloud Development Kit 略して CDK • プログラミング言語を用いて AWSのリソースを定義することができる
簡単にいうとTerraformのAWS特化版 – JavaScript – TypeScript – Python – Java – C# – Go • 仕組みとしてはプログラミング言語で AWSのリソースを定義するとCloudFormationのリソースとして AWS上にデプロイできる AWS CDKとは 6
1. CDKのコマンドでプロジェクトを作る 2. ソースコードでAWSのリソースを定義する 3. CDKのコマンドでAWS上にデプロイする CDKの使い方 7
from constructs import Construct from aws_cdk import ( Stack, aws_lambda
as _lambda, aws_apigateway as apigw, ) class CdkWorkshopStack(Stack): def __init__(self, scope: Construct, id: str, **kwargs) -> None: super().__init__(scope, id, **kwargs) my_lambda = _lambda.Function( self, 'HelloHandler', runtime=_lambda.Runtime.PYTHON_3_7, code=_lambda.Code.from_asset('lambda'), handler='hello.handler', ) apigw.LambdaRestApi( self, 'Endpoint', handler=my_lambda, ) サンプルコード(python) 8 Amazon API Gateway AWS Lambda リリースするAWSのサービスのライブラリをインポート Lambdaの設定を定義 APIGatewayの設定を定義
LambdaのソースコードやCDKのコードを Gitで管理することにより コミット→自動デプロイ の仕組みを作ることができる Gitとの連携 9 AWS Cloud Development Kit
(AWS CDK) AWS Cloud Development Kit (AWS CDK) AWS CodePipeline Actions
まとめ ⚫ メリット ⚫CDKを使うことによりAWSのリソースもソースコードで 管理できるようになる ⚫CloudFormationを直接メンテするよりも見やすく扱い やすい(と思う) ⚫GitHubActionsやCodePipelineと連携することにより Gitリポジトリの更新をきっかけに自動デプロイすること ができる
⚫ デメリット ⚫一度手動で環境構築をしてからCDKでコード化する必 要がありそう ⚫AWSの知識はある程度必要 10
参考資料 • AWS CDK Workshop https://cdkworkshop.com/ja/ 11
さいごに 12 ありがとうございました!