The document outlines an event called RSUnlocked that discusses hybrid cloud, DevOps, and configuration management tools like Chef, Puppet, and Salt. It provides an agenda for the event with sessions on topics like everything as code, deployment strategies, tooling, recipes, manifests, states and how to use Chef, Puppet and Salt. Key takeaways are that hybrid cloud is a good fit, it gives developers power and freedom, and developers driving innovation.
14. 3 MYTHS
OF PUBLIC CLOUD
• All apps run best in the public cloud
• It’s always cheaper to run on public cloud
• Everything can be automated in a public cloud/(So
who needs support?)
#RSUnlocked
15. HYBRID CLOUD: THE RIGHT FIT
FOR ENTERPRISE
PUBLIC CLOUD
PRIVATE CLOUD
DEDICATED
SERVERS
Security
Security
Performance
Performance
Reliability
Reliability
Per Unit Cost
Per Unit Cost
Utility Billing
Utility Billing
Speed
Speed
MUTLI-TENANT &
GENERALIZED
SINGLE TENANT
& SPECIALIZED
Lowest Total Cost? Depends on your needs.
#RSUnlocked
16. The changing
priorities of IT
59%
DELIVER APPS FASTER
48%
BETTER ALIGN WITH BUSINESS
44%
EXPAND USE OF AGILE
INCREASE INNOVATION
38%
http://www.serena.com/index.php/en/solutions/app-dev-delivery/infographic-application-development-priorities-2013/
#RSUnlocked
21. KEY TAKEAWAYS
• Hybrid Cloud is the right fit
• Hybrid Cloud gives Developers the most power and freedom
• Developers with power drive innovation
#RSUnlocked
44. RECIPE
!
!
template
"/etc/margarine/logging.ini"
do
source
"logging.erb"
mode
0600
owner
"root"
group
"root"
end
!
artifact_deploy
"margarine"
do
version
"1.0.0-‐alpha"
artifact_location
"https://github.com/raxsavvy/margarine/archive/
1.0.0_alpha.tar.gz"
deploy_to
"/srv/www/margarine"
owner
"root"
group
"root"
action
:deploy
end
#RSUnlocked
45. RECIPE
!
!
template
"/etc/margarine/logging.ini"
do
source
"logging.erb"
mode
0600
owner
"root"
group
"root"
end
!
artifact_deploy
"margarine"
do
version
"1.0.0-‐alpha"
artifact_location
"https://github.com/raxsavvy/margarine/archive/
1.0.0_alpha.tar.gz"
deploy_to
"/srv/www/margarine"
owner
"root"
group
"root"
action
:deploy
end
#RSUnlocked
46. RECIPE
!
!
template
"/etc/margarine/logging.ini"
do
source
"logging.erb"
mode
0600
owner
"root"
group
"root"
end
!
artifact_deploy
"margarine"
do
version
"1.0.0-‐alpha"
artifact_location
"https://github.com/raxsavvy/margarine/archive/
1.0.0_alpha.tar.gz"
deploy_to
"/srv/www/margarine"
owner
"root"
group
"root"
action
:deploy
end
#RSUnlocked
132. !
Using Rackspace to scale
!
Dirk Hoerig
@commercetools
@sphereio
dirk@commercetools.com
133. eCommerce Platform-as-a-Service
!
‣ Flexible eCommerce Framework for Web, Mobile, App and
Store
‣ Cloud service with auto-scaling capabilities for demanding
brands and merchants
‣ Made for international roll-outs
‣ Low TCO because of real Cloud and SaaS architecture
‣ SLA with 99,8% availability guaranteed
134. 2007
What we did first:
‣ Multi-Tenant architecture
‣ Extension layer for custom code, objects, integrations, ...
‣ Housing partner for core services (Internet, power supply,
security, space, ...)
‣ Purchased hardware directly
Image Source: http://godandlove.files.wordpress.com/2012/04/desert-002.jpg
135. This is how we started: First Blade Installation
140. Step 2: Automation with DevOps Process
LB
A1
A2
A3
A4
A5
Cloud
DB
Dedicated
DB
...
An
141. Step 3: Auto-Scale through Rackspace API
LB
‣ One command line call to setup new nodes
‣ Full automated node bootstrapping and provisioning
‣ Adding new nodes to F5 Loadbalancer in less than 15 Minutes
A1
A2
A3
A4
A5
Cloud
DB
Dedicated
DB
...
An
153. The big picture
!
!
Jenkins:
Compile
Unit Tests
Package as DEB
!
!
!
!
!
GitHub
UserVoice
JIRA
PagerDuty
...
Mission
Control
DEB repo
robut
CI
robut
Staging
robut
Production
154. System automation - bootstrapping
!
‣ Bootstrap cloud servers
with http://fog.io
‣ We build nodes from scratch based on
standard distro image
157. BTW: Quality matters
!
‣ All this works only when you can trust your
security net = automated tests
!
‣ No explicit QA team, task whatever
‣ Let all involve in the story
we use cucumber for specifying
‣ web
‣ command line
‣ API
158. What to take home
!
‣Using Cloud requires
‣product design and architecture
‣organisational change (agile)
‣infrastructure
‣support
‣If we can do it, you can, too
‣Do it for your business, not because of it!
Data Source: eMarketer 2012
159. !
SPHERE.IO - from developers to developers!
Try: admin.sphere.io
‣ 60 days for free!
‣ no cc required
‣ #holyshit
191. Lint Testing
White Box
Smoke Testing
Black Box
R
U
S
N
E
S
E
A
U
Q
TY
LI
Integration Testing
Acceptance Testing
Unit Testing
Behavior Driven Development
#RSUnlocked
Functional Testing
Test Driven Development
192. Lint Testing
White Box
Smoke Testing
Functional Testing
Black Box
S
E
E
C
R
U
N
S IDE
N F
E N
O
C
Integration Testing
Unit Testing
Behavior Driven Development
#RSUnlocked
Test Driven Development
Acceptance Testing
237. Lint Testing
White Box
Smoke Testing
TY
LI
Black Box
R
U
S
N
E
S
E
A
U
Q
Integration Testing
Acceptance Testing
Unit Testing
Behavior Driven Development
#RSUnlocked
Functional Testing
Test Driven Development
238. Lint Testing
White Box
Smoke Testing
Functional Testing
Black Box
S
E
E
C
R
U
N
S IDE
N F
E N
O
C
Integration Testing
Unit Testing
Behavior Driven Development
#RSUnlocked
Test Driven Development
Acceptance Testing
250. BUILD A SOLUTION
•
Think API.
•
Think layers (Modules).
•
Think infrastructure as code.
•
Message Queues are your friend.
•
Use SaS where possible.
•
Don’t forget about security.
•
Use Hybrid model depending on use case.
#RSUnlocked
251. BUILD A SOLUTION
Business Goals
Technology requirements
•
Global distributed video transcoding and delivery
•
Staging and Production environments. Ability to
deploy on demand.
•
Ability to process different types of videos.
•
Provide regional support.
•
Premium service processing for higher paying users.
•
Use Continuos Integration and delivery.
•
Mobile gateway.
•
Scale well. Terabytes of storage.
•
Youtube integration.
Provide reports on usage and types of devices that
are accessing them.
•
Security controls for the billing system.
Billing System.
•
Real time monitoring.
•
•
•
Publish metrics on processing times
#RSUnlocked