2. Once upon a time ...
winning.c
Dev om
s3put
business ssh
ideas !
apache/php
AWS s3
memcached
mysql
Rightscale
3. winning all over the world!
rty,
apache/php
a
rd p
memcached
3 AWS s3 mysql
&eware
m iddl
Rightscale
yuM winning.com
pUppEt
apache/php
memcached
mysql
AWS s3 apache/php
AWS s3 memcached
mysql
Rightscale
tigerblo Rightscale
od.com .com
s3put
ssh wa rlock s3put
4. victims of success
COMPLAINTS
BEGAN TO MOUNT
ANOTHER DEAD
SOFWARE MACHINE ?
DOESN'T WORK
RIGHT !
MY BOXES GOT
CLOBBERED !
GIVE ME MY
ENVIRONMENT!
6. is n”
s io
“A at operations server
templates
i tu TAR
RPM
S
restarts
TAR
TAR
code,
EC2
content pupp
deploys et RS
app RS deployment
devs deployment
S3
yum
repo
Provision-time builds
reconfigs
TAR EXE
TAR AUTO
server
TOOLS
code templates
TAR
RPM
middleware
devs platform CONTROL PROVISION RELEASE
system
eng
7. Organizational model people
Isolate environments between business lines
Producer versus consumer development relationships
Package-based distribution model
“meta-package” to represent software stacks
Business lines control when to adopt new versions from
other groups
8. process
Release Process
apache/php
messaging, memcached
queuing mysql
app middleware 3rd party
yum yum
winning.c rundeck
om
code, "D
content, " e
ote plo
metas om y"
"pr job &
jo "Re
jenkins yum b leas
e"
builds
dev prod
9. process
Deploy methods
manual control
rundeck
#!/bin/bash
ver=$1 #currentVer
deploy=123
s3
yum install app-$ver
rundeck t release=122
ln -nsf /www-$ver /www 3 pu
s
ssh
#!/bin/bash
by poo get currentVer
l cron: 1m
ver=`read currentVer`
yum install app-$ver
by ro
le yuM ln -nsf /www-$ver /www
yuM
autonomous control
10. Tool integration tools
SVN
PROVISIONING
hud agent cfg
yum pup
son repo pet
CONTROL
packages
active users run packages
MONITORING
directory deck
commands
nag splunk
ios
resource model
sys cfg
right instance create
scale
events
new node Node a log data
11. Ops part of the architecture
rundeck
yum puppet
operations middleware tools
web[server array] memcached[server array] mysql
new Rightscale deployment
12. What’s next?
Dashboards
package distribution, inter system architecture
Provisioning
VM image builder, distro management