DevOps Part I – what is DevOps?
Len Bass
DevOps Part I what is DevOps? Len Bass This project is vital to - - PowerPoint PPT Presentation
DevOps Part I what is DevOps? Len Bass This project is vital to our company. How long will it take? Day 1 2 Its taking too long!!! Day 30 3 You Are Fired ! Day 60 4 Where Does the Time Go? As Software
Len Bass
2
3
4
software development
5
6
committing a change to a system and the change being placed into normal production, while ensuring high quality.*
*DevOps: A Software Architect’s Perspective
7
8
for managing releases.
9
with each other.
activities and recorded accurately in the configuration management system.
Ensure that all release and deployment packages can be tracked, installed, tested, verified, and/or uninstalled or backed out, if appropriate.
Ensure that change is managed during the release and deployment activities.
Record and manage deviations, risks, issues related to the new or changed service, and take necessary corrective action.
Ensure that there is knowledge transfer to enable the customers and users to optimise their use of the service to support their business activities.
Ensure that skills and knowledge are transferred to operations and support staff to enable them to effectively and efficiently deliver, support and maintain the service, according to required warranties and service levels *http://en.wikipedia.org/wiki/Deployment_Plan
10
components that are compatible with each other.
their code
supporting library
technologies
11
development teams do not need to coordinate with each other
12
Len Bass
architecture does not end your problems.
Multiple instances of a service are executing
with new version
VA VB VB VB
UAT / staging / performance tests
3
version A of a service) to a new state (N instances of version B of a service)
(no synchronization among development teams)
(order of minutes)
deployed.
4
provision N instances with version B and then switch to version B and release instances with version A.
5
the client at any particular time.
(additional costs)
available for service at the same time
used.
Update Auto Scaling Group Sort Instances Remove & Deregister Old Instance from ELB Confirm Upgrade Spec Terminate Old Instance Wait for ASG to Start New Instance Register New Instance with ELB
Rolling Upgrade in EC2
6
performing a rolling upgrade
7
activating a new version
version B, activate new code through toggling the feature.
8
9
the code is executed if an external variable is true. Removed code would be the “else” portion.
Uncompleted code is toggled off.
executed.
important.
10
have been installed.
have been replaced. This could be done using registry/load balancer.
11
development team for clients of service A.
12
semantics change.
preserves backwards compatibility.
consistency among various apps that access data.
13
service
between services and persistent data.
14
any logical or performance problems. If not, roll out new version globally. If so, roll back canaries.
in coal mines.
15
their designation.
feature activation synchronization mechanism
making registry/load balancer canary aware.
16
difference or marketing effort. A is one variant and B is the other.
audiences and compare the responses.
17
performance reasons.
problem).
there are multiple factors to consider.
18
needs and allowing independent deployment
backward/forward compatibility.
19
20