You are on page 1of 15

Dev Ops Introduction

What is DevOps?
• DevOps = development
& operations

• A Methodology of
Continuous Delivery

• A software development method


that stresses communication,
collaboration and integration
between development and IT
professionals.

• “Streamlining release process” .

1
The adoption of DevOps is driven by factors:

• Use of agile and other development


processes and methodologies

• Demand for an increased rate of production releases


from application and business unit stakeholders

• Wide availability of virtualized and cloud


infrastructure from internal and external providers

• Increased usage of data center automation


and configuration management tools

DevOps 3 Basic Principles


• System thinking

• Amplify feedback loops

• Culture of continual experiment and learning

2
How to Start Adopting DevOps?
• Start Small: Start from experiments
implementing small enhancements.

• Create Champions: Get executive


sponsors; Give credit to people.

• Build Confidence: Identify KPIs to


support the changes.

• Celebrate Success.

Supporting Tools
• Git,Gerrit,Jenkins,Zuul,Devstack
Gate,IRC bots,Puppet etc.

3
How can we get more specific about applying
DevOps principles for our own work?

Common goals of an enterprise DevOps practice

• Increased deployment frequency

• Reduced lead time for changes

• Faster recovery when problems occur

• More robust and better integrated security

• A shift in quality – quality of code, testing, architecture,


“deployability” and culture

• Fast feedback loops and effective communication between


teams and departments

One of the most important tools


of DevOps: Failure
Getting from: To:

Failure is not a cause for blame, it is a vehicle for


change, learning, and improvement.

4
How the DevOps Movement Took Place
• The origins of the DevOps movement took place
around 2009:
• 10+ Deploys Per Day: Dev and Ops Cooperation at Flickr

“presentation. ”
• “Infrastructure as code".

• The Lean Startup.

• Continuous Integration.

• Cloud and Platform as a Service (PaaS) technologies.

Delivery Challenges
• Today’s business and technical needs are pushing
traditional delivery approaches to the breaking point

• Technical Challenges:Scale Complexity Time Pressures


• Technical Trends: SoLoMo

5
Today’s enterprise IT looks like this.

A simplified look at the enterprise

Change Management

Application IT Operations, Production


Development teams Environments, Support

Business Customer

S e c u r I t y, G o v e r n a n c e S e c u r I t y, G o v e r n a n c e

6
A simplified look at the enterprise

The business! (different departments, needs, stakeholders etc.)

The triumphant Agile team! IT Operations!!

Operation
& Data
Systems
Deploy & Support

Security

Customers / end users!!

7
A simplified look at the enterprise

Change Management

Application IT Operations, Production


Development teams Environments, Support

Business Customer

S e c u r I t y, G o v e r n a n c e S e c u r I t y, G o v e r n a n c e

Increasing quality in software and IT


delivery as a product of work
Application Delivery & Cost of Defects

50% of defects introduced here

8
What is DevOps Really?

What is DevOps?
Take 1 of 3:

9
What is DevOps?
Take 2 of 3:
The fundamental principles of DevOps as generally agreed
upon by the most influential early members of the DevOps
community, were summed up in the acronym “CAMS.”

CAMS
• Culture
• Automation
• Measurement
• Sharing

What is DevOps?
Take 2 of 3:
Jez Humble later suggested adding an “L”
to the acronym, changing it to “CALMS.”
We endorse and encourage this addition!

CALMS Jez Humble

• Culture
• Automation
• Lean
• Measurement
• Sharing

10
What is DevOps?
Take 3 of 3: “From the ah-ha to the ka-ching”

Concept / ideation
Value

DevOps is not about IT problems: DevOps is


about business problems.

What is DevOps?
Attribute Key Elements

High-trust, high- Unified mission; aligned incentives across departments and


performance culture teams; little fear/failure/blame, high quality of work life

IT capabilities = strategic Projects, features and work flow through fast cycles times,
assets, not cost centers systems are “anti-fragile,” IT processes & capabilities are aligned
with overarching organizational needs
Highly automated
processes; mature Technical phases of projects supported by common tools and
deployment pipeline automation processes, collaboration replaces handoffs,
codebase/IT infrastructure is agile and functional by default
Continuous delivery of
software and IT value Features, projects and IT work follow a regular, iterative flow.
Cycle time is short, workflow favors small frequent changes
Commitment to
continuous learning Disciplined feedback loops quickly travel back upstream for
& improvement inclusion. Tools for monitoring, measurement and alerting
implemented & effective. Shared knowledge repositories.

11
Continuous Delivery Maturity Matrix

One of the most important tools


of DevOps: Failure
Getting from: To:

Failure is not a cause for blame, it is a vehicle for


change, learning, and improvement.

12
The “Agile Triangle”

Source: Jim Highsmith, Agile Project Management (2nd Edition)

People, teams, technology,


processes and value

13
Reduce Delivery Gaps
• Design and Deployment Planning
• Integrate and automate deployment planning processes
across development & operations
• Ensure asset & configuration details are shared and
synchronized across asset stores.
• Environment Setup, Testing,Deployment and Monitoring
• Leverage integrated tools for discovery & accelerating
provisioning of test lab & production environments.
• Improving test performance by replicating real world
environments - faster testing & problem resolution“ ”
• Issue Identification and Resolution Management
• Resolving problems quicker by sharing problem & ticket information
• Ensuring tracking tools for production problems and
application fixes remain synchronized

Tools for Adopting DevOps

14
Common Attributes of Successful Cultures
• Infrastructure As Code
• Full Stack Automation
• Commodity Hardware and/or Cloud infra
• Reliability in software stack
• Datacenter or Cloud Infrastructure APIs
• Core Infra Services

• Application As Services
• Service Orientation
• Lightweight Protocols
• Versioned APIs
• Software Resiliency (Design for Failure)
• Database/Storage Abstraction

• Dev/Ops/All As Teams
• Shared Metrics/Monitoring
• Incident Management
• Service Owners On-call
• Tight integration
• Continuous Integration
• Continuous Deployment
• GameDay

15

You might also like