3. So Their Services Are Deployed
on CloudStack
Gunicorn
PostgreSQL
Hadoop
ActiveMQ
Nginx
MongoDB
Logstash
Graphite
Jenkins
Nagios
4. The Business
Is Doing
Great, Thx
(esp. Cat
paper crafts),
But…
Rolling out new
code is Painful
http://www.interestingtopics.net/storage/5762c0bec0add88fae0c3958d61effe1.jpg
5. The Business
Is Doing
Great, Thx
(esp. Cat
paper
crafts), But…
MTTR is… mehhh
Mehhh
http://fineartamerica.com/featured/wooly-sheep-ramona-johnston.html
9. Infra
Upgrade
• Trigger: Critical
updates, patches, et
c.
• Flow: Take down
relevant
processes, one by
one, apply
patch, and
reconnect to cluster.
In some cases
restarts server
10. Code Push
(or more
generally, CD
)
• Trigger: CI server,
Manual
• Flow: Canary,
Red/Black, A/B…
– In general – Partial
deploy, verify, rollback /
complete deploy
11. Node Failure
• Trigger: #$%@
happens…
• Flow: Detect, provision
VM, attach
storage, add to
network, reconfigure
app (load balancer in
case of web serve, DB
connection in case of
database, etc.)
26. OpsWorks –
We Can Do
Better!
• Integrated with
CloudStack (and
other clouds)
• Custom
Workflows
• Not limited to
Chef
• Open Monitoring
and Policies
Goals:Why Workflows are critical part of automation of applications on the cloudClarify the need for something like OpsWorksWhy do we think this OpsWorks is needed in addition to other projects
They do it manually, pushing code to git, then compiling
One of their servers failed last week, and it took almost a day to configure and bring up a new server. They use a certain CM tool, Still better than the week it took the time before, but that’s doesn’t cut it
They also realized that in order to run well in the cloud they need DevOps and automationWhat are the options
The building blocks are triggers and workflowsTriggers because triggers need to be automated as well as events resulting from policies / integrationetcWorkflows – because these are complex multi-step processesLet’s have a look at few typical use cases
Great at creating resources, basic integration with Chef / puppet for swconfig, basic built in monitoring and alarming, moving to ceilometer in Havana
Env setup is not automated SW infra setup is good but has no startup orchestration
Env setup is not automated SW infra setup is good but has no startup orchestration
Healthnmon is more geared toward cloud resource monitoring and is has more opinionated domain model, ceilometer seems to be picking momentum and