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.6k
CodeDeployでAuto Scaling Lifecycleを手軽に利用する
【AWS勉強会】CM re:Growth 2014 TOKYOで発表したスライドです。
takipone
December 16, 2014
Tweet
Share
More Decks by takipone
See All by takipone
OJTに夢を見すぎていませんか? ロールプレイ研修の試行錯誤/tryanderror-in-roleplaying-training
takipone
1
220
ロールプレイトレーニングでクラウドエンジニアを短期育成した知見を一挙公開 / roll playing training benefits and cases
takipone
0
660
スキル育成に生かすLlamaIndexの活用 /using-llamaIndex-to-enhance-ones-skills
takipone
1
3.4k
DNSにちょっとだけ詳しくなりたい人に贈る少し突っ込んだDNSの話 / devioday1_dns
takipone
2
11k
Amazon VPC Latticeに期待する / look-for-vpc-lattice
takipone
0
1.1k
DevelopersIOのアウトプット文化をハックして人材育成に繋げる話 /deviosapporo2022fall_takipone
takipone
0
980
AWSネットワークリソースをサービスでマルチテナントに 提供するときのスケーラビリティ / nwjaws202112-takipone
takipone
1
760
ネットワークがクラウドに載って変わることと変わらないこと /nwjaws201909-takipone
takipone
0
2.1k
AWSネイティブなEC/CRMシステム運用に欠かせないログ基盤構築 / cmdevio2018-aws-log-infra
takipone
7
3.1k
Other Decks in Technology
See All in Technology
Lessons from CVE-2025-22869: Memory Debugging and OSS Vulnerability Reporting
vvatanabe
2
110
「AI2027」を紐解く ― AGI・ASI・シンギュラリティ
masayamoriofficial
0
150
JavaScript 研修
recruitengineers
PRO
6
1.3k
実践アプリケーション設計 ①データモデルとドメインモデル
recruitengineers
PRO
5
1.3k
モダンフロントエンド 開発研修
recruitengineers
PRO
8
5.6k
ヒューリスティック評価を用いたゲームQA実践事例
gree_tech
PRO
0
340
Goss: Faiss向けの新しい本番環境対応 Goバインディング #coefl_go_jp
bengo4com
1
1.4k
小さなチーム 大きな仕事 - 個人開発でAIをフル活用する
himaratsu
0
140
スプリントレトロスペクティブはチーム観察の宝庫? 〜チームの衝突レベルに合わせたアプローチ仮説!〜
electricsatie
1
130
kintone開発チームの紹介
cybozuinsideout
PRO
0
73k
microCMS 最新リリース情報(microCMS Meetup 2025)
microcms
0
330
Vault meets Kubernetes
mochizuki875
0
140
Featured
See All Featured
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.8k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
110
20k
A Tale of Four Properties
chriscoyier
160
23k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
16k
Optimizing for Happiness
mojombo
379
70k
The Power of CSS Pseudo Elements
geoffreycrofte
77
5.9k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
252
21k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
GitHub's CSS Performance
jonrohan
1032
460k
Navigating Team Friction
lara
189
15k
Become a Pro
speakerdeck
PRO
29
5.5k
Designing Experiences People Love
moore
142
24k
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