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
Adam Kentosh - 12-factor assessment
Search
DevOpsDays Ohio
November 19, 2015
Technology
0
250
Adam Kentosh - 12-factor assessment
DevOpsDays Ohio
November 19, 2015
Tweet
Share
More Decks by DevOpsDays Ohio
See All by DevOpsDays Ohio
Gene Pavell - Change Management Does Not Have To Be Horrible
devopsdaysohio
0
150
Carmen DeArdo - The Nationwide DevOps Journey
devopsdaysohio
0
380
Monica McJunkin - Driving DevOps with Data
devopsdaysohio
0
140
Other Decks in Technology
See All in Technology
ObservabilityCON on the Road Tokyoの見どころ
hamadakoji
0
110
クロスアカウントな RDS Snapshot Export による カジュアルなデータ集約の仕組み / 202501-finatext-technight-lt
wa6sn
1
120
Site Reliability Engineering on Kubernetes
nwiizo
6
3.7k
ソフトウェアアーキテクトのための意思決定術: Software Architecture and Decision-Making
snoozer05
PRO
8
1.7k
TSのコードをRustで書き直した話
askua
4
980
プロダクト価値を引き上げる、「課題の再定義」という習慣
moeka__c
0
160
Tokyo RubyKaigi 12 - Scaling Ruby at GitHub
jhawthorn
2
130
財務データを題材に、 ETLとは何であるかを考える
shoe116
5
1.9k
TypeScriptでモジュラーモノリスやってみた
diggymo
0
110
Enhancing SRE Using AI
yoshiiryo1
1
120
FinJAWS_reinvent2024_recap_database
asahihidehiko
2
310
サーバレスの未来〜The Key to Simplifying Everything〜
kawaji_scratch
2
330
Featured
See All Featured
Being A Developer After 40
akosma
89
590k
How to Ace a Technical Interview
jacobian
276
23k
Adopting Sorbet at Scale
ufuk
74
9.2k
Thoughts on Productivity
jonyablonski
68
4.4k
Designing for humans not robots
tammielis
250
25k
Building Adaptive Systems
keathley
39
2.4k
Practical Orchestrator
shlominoach
186
10k
Large-scale JavaScript Application Architecture
addyosmani
510
110k
Into the Great Unknown - MozCon
thekraken
34
1.6k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
127
18k
Raft: Consensus for Rubyists
vanstee
137
6.7k
The Pragmatic Product Professional
lauravandoore
32
6.4k
Transcript
CLOUD IS ABOUT HOW COMPUTING IS DONE, NOT WHERE Pivotal
TWELVE-FACTOR APP ASSESSMENT
TWELVE-FACTOR APP ASSESSMENT CLOUD-NATIVE APPLICATION ASSESSMENT ▸ Based on twelve-factor
app methodology ▸ Answers questions around what to migrate
TWELVE-FACTOR APP ASSESSMENT TWELVE-FACTOR APP ▸ Methodology for building cloud-native
web apps
TWELVE-FACTOR APP ASSESSMENT SCORING ▸ Evaluate an app against each
of the twelve-factors ▸ Assign a score of 0-1 for each
TWELVE-FACTOR APP ASSESSMENT I. CODEBASE ▸ Version controlled, one-to-one correlation
Example: Multiple codebases is a distributed system, not an app score = .6
TWELVE-FACTOR APP ASSESSMENT II. DEPENDENCIES ▸ Explicitly declare and isolate
dependencies EXAMPLE: Pip + wget for external dependency score = .7
TWELVE-FACTOR APP ASSESSMENT III. CONFIG ▸ Store config in the
environment EXAMPLE: Using java system properties score = .5
TWELVE-FACTOR APP ASSESSMENT IV. BACKING SERVICES ▸ Treat backing services
as attached resources EXAMPLE: Accessing local file system score = .4
TWELVE-FACTOR APP ASSESSMENT V. BUILD, RELEASE, RUN ▸ Strict separation
between build, release, and run EXAMPLE: Build rpm, run with startup script score = .8
TWELVE-FACTOR APP ASSESSMENT VI. PROCESSES ▸ Processes are stateless and
share nothing. EXAMPLE: Sticky sessions score = 0
TWELVE-FACTOR APP ASSESSMENT VII. PORT BINDING ▸ Export services via
port binding EXAMPLE: local MTA instead of a smarthost score = .2
TWELVE-FACTOR APP ASSESSMENT VIII. CONCURRENCY ▸ Scale out via the
process model EXAMPLE: JVM with large block of system resources score = .3
TWELVE-FACTOR APP ASSESSMENT IX. DISPOSABILITY ▸ The entire process is
disposable EXAMPLE: Web processes stop listening score = 1
TWELVE-FACTOR APP ASSESSMENT X. DEV/PROD PARITY ▸ All environments are
as similar as possible. EXAMPLE: Using Redis and MySQL but deploy oracle in prod score = .7
TWELVE-FACTOR APP ASSESSMENT XI. LOGS ▸ Treat logs as event
streams Logging to local file but using Splunk score = .4
TWELVE-FACTOR APP ASSESSMENT XII. ADMIN PROCESSES ▸ Run admin/management tasks
as one-off processes EXAMPLE: SSH to create Tomcat symlink score = .2
TWELVE-FACTOR APP ASSESSMENT SCORING Sum Sum of Squares 0.6 0.6
0.7 0.7 0.5 0.5 0.4 0.4 0.8 0.8 0 0 0.2 0.2 0.3 0.3 1 1 0.7 0.7 0.4 0.4 0.2 0.2 5.8 3.72
TWELVE-FACTOR APP ASSESSMENT SCORING ▸ Sum of squares
TWELVE-FACTOR APP ASSESSMENT BUSINESS OBJECTIVES ▸ Can take business objectives
into consideration.
TWELVE-FACTOR APP ASSESSMENT GAP ANALYSIS ▸ Identify quick wins and
long polls
TWELVE-FACTOR APP ASSESSMENT CONTACT INFORMATION ▸ Adam Kentosh ▸
[email protected]