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
CodeDeployでAuto Scaling Lifecycleを手軽に利用する
Search
takipone
December 16, 2014
Technology
1
8.4k
CodeDeployでAuto Scaling Lifecycleを手軽に利用する
【AWS勉強会】CM re:Growth 2014 TOKYOで発表したスライドです。
takipone
December 16, 2014
Tweet
Share
More Decks by takipone
See All by takipone
ロールプレイトレーニングでクラウドエンジニアを短期育成した知見を一挙公開 / roll playing training benefits and cases
takipone
0
510
スキル育成に生かすLlamaIndexの活用 /using-llamaIndex-to-enhance-ones-skills
takipone
1
3.2k
DNSにちょっとだけ詳しくなりたい人に贈る少し突っ込んだDNSの話 / devioday1_dns
takipone
2
10k
Amazon VPC Latticeに期待する / look-for-vpc-lattice
takipone
0
1.1k
DevelopersIOのアウトプット文化をハックして人材育成に繋げる話 /deviosapporo2022fall_takipone
takipone
0
910
AWSネットワークリソースをサービスでマルチテナントに 提供するときのスケーラビリティ / nwjaws202112-takipone
takipone
1
700
ネットワークがクラウドに載って変わることと変わらないこと /nwjaws201909-takipone
takipone
0
2k
AWSネイティブなEC/CRMシステム運用に欠かせないログ基盤構築 / cmdevio2018-aws-log-infra
takipone
7
3k
日本🇯🇵でAWS Direct Connect を利用する話/akiba-aws-dx
takipone
1
2.4k
Other Decks in Technology
See All in Technology
AIエージェント時代のエンジニアになろう #jawsug #jawsdays2025 / 20250301 Agentic AI Engineering
yoshidashingo
8
3.4k
依存パッケージの更新はコツコツが勝つコツ! / phpcon_nagoya2025
blue_goheimochi
3
210
デスクトップだけじゃないUbuntu
mtyshibata
0
800
わたしがEMとして入社した「最初の100日」の過ごし方 / EMConfJp2025
daiksy
14
4.6k
設計を積み重ねてシステムを刷新する
sansantech
PRO
0
160
Cracking the Coding Interview 6th Edition
gdplabs
14
28k
AWSではじめる Web APIテスト実践ガイド / A practical guide to testing Web APIs on AWS
yokawasa
7
600
組織におけるCCoEの役割とAWS活用事例
nrinetcom
PRO
4
120
日経のデータベース事業とElasticsearch
hinatades
PRO
0
210
(機械学習システムでも) SLO から始める信頼性構築 - ゆる SRE#9 2025/02/21
daigo0927
0
260
Raycast Favorites × Script Command で実現するお手軽情報チェック
smasato
1
140
生成AI×財務経理:PoCで挑むSlack AI Bot開発と現場巻き込みのリアル
pohdccoe
1
570
Featured
See All Featured
Automating Front-end Workflow
addyosmani
1368
200k
Stop Working from a Prison Cell
hatefulcrawdad
267
20k
Become a Pro
speakerdeck
PRO
26
5.2k
For a Future-Friendly Web
brad_frost
176
9.6k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
33
2.1k
A better future with KSS
kneath
238
17k
VelocityConf: Rendering Performance Case Studies
addyosmani
328
24k
Building a Scalable Design System with Sketch
lauravandoore
461
33k
The Power of CSS Pseudo Elements
geoffreycrofte
75
5.5k
Code Reviewing Like a Champion
maltzj
521
39k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
44
7k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
45
9.4k
Transcript
CodeDeployでAuto Scaling Lifecycleを⼿手軽に利利⽤用する クラスメソッド株式会社 ⼤大瀧 隆太 classmethod.jp 1 DEVIO-‐‑‒MTUP11-‐‑‒TOKYO-‐‑‒010
2014/12/16
classmethod.jp 2 About me • Ryuta Otaki @takipone •
Job title : AWS Consulting Div. Engineer / Trainer • Interest : Network / Deployment Tools • Favorite AWS Services Amazon Route 53 classmethod.jp 2
Agenda • AWS Auto Scalingとは • AWS CodeDeployとは • Auto
Scaling Lifecycleとは • CodeDeployのAuto Scaling対応 • デモ • まとめ classmethod.jp 3
AWS Auto Scalingとは • EC2を⾃自動起動、削除する機能 • AMIからインスタンスを作成し、 グループ単位でインスタンスを管理理 • CloudWatch、ELBと連携
classmethod.jp 4 Auto Scaling group
AWS CodeDeployとは • re:Invent 2014で発表&リリース • 現在はバージニア、オレゴンリージョンのみ classmethod.jp 5
AWS CodeDeploy雑感 • Good☆ – ファイルコピーとスクリプト実⾏行行のみの超シンプ ル構成 – 他のAWSデプロイ系サービスよりも速い –
ローリングアップデート対応 • Bad!! – ChefやAnsibleのような、べき等性や複雑な処理理 はできない – エージェントのインストールが必要 – リージョンごとに構成を区別しなければならない classmethod.jp 6
CodeDeployの記事、いっぱい書いてます! • 特集カテゴリー CodeDeploy | Developers.IO http://dev.classmethod.jp/referencecat/aws-‐‑‒codedeploy/ – [新サービス]
AWS CodeDeployを触ってみた #reinvent – AWS CodeDeploy を使って Rails アプリケーションを デプロイしてみた – AWS CodeDeployでWindowsのCloudWatchカスタム メトリクス設定を⾃自動化する – AWS CodeDeploy の AppSpec を読み解く – re:Invent 2014で発表された11個のAWS新サービスを 140⽂文字でまとめる #reinvent – AWS CodeDeploy Agent をインストールする Recipe を 書いてみた – AWS CodeDeploy + Travis CI でデプロイを⾃自動化する – LambdaでCodeDeployの⾃自動デプロイ機能を実装する classmethod.jp 7
Auto Scaling Lifecycleとは • Auto Scaling配下のインスタンスの状態 を管理理する仕組み classmethod.jp 8
Auto Scaling Lifecycleとは • Auto Scalingの処理理をフックすることで – アプリのセットアップ完了了までELBへの追加を保留留 – ログ退避が完了了までTerminateを保留留
といった、きめ細かい状態管理理が可能 • けど、Auto Scaling APIを叩くロジック実装が 必要で、⾯面倒。 – 参考記事 : 【新機能】Auto Scalingのインスタンス起動/破棄時に初期 処理理/終了了処理理を追加 – LifeCycleHook機能のご紹介 | Developers.IO http://dev.classmethod.jp/cloud/aws/autoscaling-‐‑‒lifecyclehook/ classmethod.jp 9
Auto Scaling Lifecycleとは • Auto Scaling配下のインスタンスの状態 を管理理する仕組み classmethod.jp 10 CodeDeployは、
このPending Stateを ハンドリングしてくれます。
Auto Scalingの Pendingステータス classmethod.jp 11
Demo (暖かい⽬目でご覧ください classmethod.jp 12
CodeDeployの制約 • “最近の”アプリデータをデプロイするので 最低1回、先にデプロイを実⾏行行しなければ ならない • Terminate時のフックは無い • 複数アプリケーションの場合、実⾏行行順は 制御できなさそう
• 起動時の⾃自動実⾏行行はAuto Scalingインス タンスのみ classmethod.jp 13
まとめ • CodeDeployはEC2インスタンスの状態を 考慮してくれるデプロイサービス • ローリングアップデート機能あり • Auto Scaling LifecycleのPending
State を⼿手軽にフックできる⼿手段として有⽤用 • Thank you! classmethod.jp 14