Lock in $30 Savings on PRO—Offer Ends Soon! ⏳
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
インフラエンジニア歴2ヶ月の私がCDKを使ってECS(Fargate)環境を構築する話 / C...
Search
Takamichi Aso
February 27, 2020
Programming
0
720
インフラエンジニア歴2ヶ月の私がCDKを使ってECS(Fargate)環境を構築する話 / Coral Developers Night AWS LT
Takamichi Aso
February 27, 2020
Tweet
Share
More Decks by Takamichi Aso
See All by Takamichi Aso
開発環境から本番環境までのDocker活用方法 / Fintech Engineer 20210604
unk2072
0
180
WordPressが技術負債になった話 / Coral Developers 20210525
unk2072
3
3.6k
健康第一の話 / Coral Developers Meeting #1
unk2072
0
190
Vue.js + socket.io で簡単に実装できるリアルタイム更新処理 / Coral Developers Night #1
unk2072
0
2.1k
Other Decks in Programming
See All in Programming
TerraformとStrands AgentsでAmazon Bedrock AgentCoreのSSO認証付きエージェントを量産しよう!
neruneruo
4
1.8k
Cap'n Webについて
yusukebe
0
150
AI前提で考えるiOSアプリのモダナイズ設計
yuukiw00w
0
190
Navigating Dependency Injection with Metro
l2hyunwoo
1
190
The Art of Re-Architecture - Droidcon India 2025
siddroid
0
130
マスタデータ問題、マイクロサービスでどう解くか
kts
0
130
Implementation Patterns
denyspoltorak
0
120
フルサイクルエンジニアリングをAI Agentで全自動化したい 〜構想と現在地〜
kamina_zzz
0
300
愛される翻訳の秘訣
kishikawakatsumi
3
350
「コードは上から下へ読むのが一番」と思った時に、思い出してほしい話
panda728
PRO
39
26k
從冷知識到漏洞,你不懂的 Web,駭客懂 - Huli @ WebConf Taiwan 2025
aszx87410
2
3.1k
gunshi
kazupon
1
120
Featured
See All Featured
Ethics towards AI in product and experience design
skipperchong
1
140
Un-Boring Meetings
codingconduct
0
160
Primal Persuasion: How to Engage the Brain for Learning That Lasts
tmiket
0
190
Java REST API Framework Comparison - PWX 2021
mraible
34
9k
Mind Mapping
helmedeiros
PRO
0
39
Public Speaking Without Barfing On Your Shoes - THAT 2023
reverentgeek
1
280
Practical Orchestrator
shlominoach
190
11k
Crafting Experiences
bethany
0
22
The SEO Collaboration Effect
kristinabergwall1
0
310
A brief & incomplete history of UX Design for the World Wide Web: 1989–2019
jct
1
270
技術選定の審美眼(2025年版) / Understanding the Spiral of Technologies 2025 edition
twada
PRO
115
94k
Git: the NoSQL Database
bkeepers
PRO
432
66k
Transcript
Credit Engine, Inc. インフラエンジニア歴2ヶ月の私が CDKを使って ECS(Fargate)環境を構築する話 麻生隆道 1
Credit Engine, Inc. 2 今日話す内容(言いたいこと) • ピンチをチャンスに変えよう • CDKはすごく良い!流行ってほしい!
• レビューしてもらうと安心感があがる
Credit Engine, Inc. 3 自己紹介 クレジットエンジン株式会社 麻生 隆道(あそう たかみち)
たぶんフルスタックエンジニアやってます 趣味はプログラミングですが、最近本業が忙し くてあまり趣味を楽しめていない模様 (でも本業=趣味なので問題ない) 前職は12年ほど組み込みエンジニアやってまし たー
Credit Engine, Inc. Credit Engine の紹介 4 “かす”をかえる。“かりる”をかえる。 ミッション 中小事業者が融資を受ける際には
様々な紙ベースの書類が必要であった オンラインで完結するので簡単に使え 空いた時間で本来の事業に集中できる
Credit Engine, Inc. Credit Engine Platformの紹介 5 ミッション実現のためLENDYで培ってきたノウハウを金融機関などに提供 三菱UFJ銀行 『Biz
LENDING』 みずほ銀行 『みずほスマートビジネスローン』
Credit Engine, Inc. Credit Engine Platformをバージョンアップ 提供先に合わせて簡単にカスタマイズし 素早くサービスを提供できるように構成を見直した 6
Credit Engine, Inc. アプリケーション構成 Nginx API サーバ Postgre SQL socket.io
Redis エンドユーザ画面 バックオフィス画面 7
Credit Engine, Inc. この構成のインフラって誰が作るんだっけ? 昨年から募集出してるけ ど、全然採用できない・・・ 8 誰もいないなら自分でや るしかないでしょ! ということで即席インフラエンジニアが爆誕!
Credit Engine, Inc. まずやったこと • 要求仕様をざっくり整理 • セキュリティ:大事 • 信頼性:これも大事
• パフォーマンス:あんまり大事じゃない • コスト:ほどほどにやればオッケー • どんな構成で実現するか決める • EC2はメンテがめんどくさいので、できるだけマネージドなやつ • dockerベースで構築することは決まっていた • ECS(Fargate)が良さそう! 9 基本的にマネージドなサービスを使って自分で頑張らない!
Credit Engine, Inc. インフラ構成 10 Nginx API サーバ RDS socket.io
Elasti Cache ALB ECS(Fargate) これをコードベースで書いておきたいよね・・・
Credit Engine, Inc. CDKを採用するまでの流れ • CDKが発表されたのはニュースサイトで見ていた • プログラマなら言語で書きたいよね! • まずはどんなものか調べてみよう
• CDKでECS(Fargate)環境を作っているサンプルがあった! https://qiita.com/ytanaka3/items/e755ff4551f01f76c303 • マジかよ!ベストプラクティスな構成が書けるらしいぞ! しかも、CloudFormationで書くより1/10のコード量!いいじゃん! インフラコードを何で書くか? 11
Credit Engine, Inc. 実際やってみて思ったこと CDKを書く言語はどれ? • 最初Python使ってみたけど環境構築すら面倒だった・・・ • 現状だとサンプル数が多いTypescriptを使うべきと判断 スイッチロール+MFAはCDKが対応してない
• 回避策ありました!(リンク先の最後にある小ネタを参照) https://dev.classmethod.jp/cloud/aws/aws-cdk-python-ec2/ 実際のコード量はやっぱり1/10? • 318行で書けました → CloudFormationを出力すると3445行! 12
Credit Engine, Inc. レビューを受けた 副業で手伝ってくれてるインフラエンジニアにレビューしてもらいましたが 基本的には問題なかった!(レビューしてもらうと安心感が上がる) 以下、指摘内容 • CIDRの切り方が大きすぎるので、小さくしたほうが良さそう •
これはデフォルトでは大きすぎるので修正 • Fargateから外部アクセスしないならNAT Gatewayはなくても良さそう • 外部アクセスあったので問題なし • ログ取得用のバケットに582318560864のアクセス権がついてる • ALBのログを取得してたからだったので問題なしでしたが、CDKがちゃんと 仕事してることが分かった! 13
Credit Engine, Inc. 残りやること CloudWatch + SNS による監視・通知を書く オートスケーリングの設定も書く
で、完成の予定 14
Credit Engine, Inc. ちなみに・・・ NAT Gatewayを使わないパターンもやってみました! 【結果:普通に実現できる!】 ただし、ecs-patternsをそのまま使うとサブネットが指定できないので、元のソース を以下から持ってきて、サブネットを指定してあげられるように変更する必要がある (時間あるときにPull
Request書きたいなー) https://github.com/aws/aws-cdk/blob/master/packages/%40aws-cdk/aws-ecs- patterns/lib/fargate/application-load-balanced-fargate-service.ts 15
Credit Engine, Inc. 16 今日話した内容(言いたかったこと) • ピンチをチャンスに変えよう • CDKはすごく良い!流行ってほしい!
• レビューしてもらうと安心感があがる
Credit Engine, Inc. インフラエンジニア募集中です 私達と一緒にオンラインレンディングのスタンダードとなるような仕 組みを作ってくれる、1人目のインフラエンジニアを募集していま す! CDK好きな人、集まれ! 17