Sridhara T V
Dev Ops
Sridhara T V
Technical Challenges
3
Traditional Development
2
Integrated Approach
4
Concepts Technologies
5 DevOps Tools
6
CI / CD
5 DevOps in Cloud
6
DevOps Overview
1
Sridhara T V
What is DevOps
Sridhara T V
DevOps is the philosophy of unifying Development and Operations at
the culture, practice, and tool levels, to achieve accelerated and more
frequent deployment of changes to Production
The term “DevOps” typically refers to the emerging professional
movement that advocates a collaborative working relationship
between Development and IT Operations, resulting in the fast flow of
planned
increasing
work (i.e., high deploy rates), while simultaneously
the reliability, stability, resilience and security of the
production environment
DevOps
Sridhara T V
DevOps refers to a collaborative culture between technical teams
It encompasses much more than just development and operations
extending to QA testing, releases and much more
By aligning goals and sharing strategies, DevOps practices can
improve efficiency and quality of product/code shipped, allowing
businesses to innovate quickly while providing a higher standard of
support
DevOps is about CAMS
Culture
Automation
Measurement
Sridhara T V
Sharing
Traditional IT Problems
Sridhara T V
Development and Operations team work in isolation
Dev team follows a life-cycle model – Waterfall, V, TDD
System Testing is performed after complete development
Team is spending lot of time in design, testing and deployment and less
focus in productization
Most often deployment is a manual process
Development team and Operations team have separate timelines and in
most cases are not in sync
Product is deployed into production few times a year
Dev team is not aware of or does not have access to production
environment
Software Delivery Bottlenecks
Lack of alignment between IT and business goals
Plan and
Measure
Complexity of tools, languages and platforms
Poorly integrated teams across application lifecycle
Lack of automated and scalable testing methods
High cost of setting up and maintaining test environments
Develop
and Test
Application release process is error-prone and slow
Release
and
Deploy
Lack of centralized incident management and monitoring
Slow or unresponsive to customer feedback
Sridhara T V
Monitor
and
Optimize
Challenges
Sridhara T V
Dev and Ops people have conflicting goals
Operations people have bean beaten into defensive mode
Teams are so used to the Dev Vs Ops way of working
Symptoms
Sridhara T V
Defects released into production – causing outage
Inability to diagnose production issues swiftly
Problems appear in some environments only
Blame game – shifting/finger pointing
Long delays while Dev, QA or another team waits on resources or
response from other teams / stake holders
“Manual Error” is a commonly cited root-cause
Release either slip or fail at first attempt
Quality of “personnel-life” issues!
DevOps Culture
DevOps
Culture
Accounta
bility
Trust
Honesty
Sridhara T V
Why DevOps Used
Sridhara T V
Predictability
Reproducibility
Maintainability
Time to market
Greater Quality
Reduced Risk
Resiliency
Cost Efficiency
Breaks larger code base into small pieces
DevOps Life Cycle
Dev
Sridhara T V
Ops
DevOps Stages
Integrate Test Release Deploy
Operate
Monitor
Feedback
Build
Plan Design Code
Continuous Development
Continuous Integration
Continuous Delivery
Continuous Deployment
DevOps
Sridhara T V
Agile with DevOps
Provision
Sridhara T V
Configure Orchestrate Deploy Report Monitor
Design Unit Test Bug Fix Deploy
Business
Case
Features Plan
Go to
Market
Dev Ops
Requirements Use Case
Agile Software
Development
Code Refactor
- Iterative development
- Sprints, Stories, Feedback
- Velocity
- IT Automation
- Continuous Integration
- Continuous Deployment
Business
Agility
IT Agility
Business
Developers
IT Operations
Agile Vs DevOps
Sridhara T V
Agile DevOps
Emphasize breaking down barriers
between developers and management
DevOps is about software deployment
and operation teams
Addresses gap between customer
requirements and development teams
Addresses the gap between
development and Operation team
Focuses more on functional and non-
functional readiness
Focuses operational and business
readiness
Agile development pertains mainly to
the way development is thought out by
the company
DevOps emphases on deploying software
in the most reliable and safest ways
which are not necessarily always the
fastest
Sridhara T V
Agile Vs DevOps
Agile DevOps
Agile development puts a huge emphasis
on training all team members to have
varieties of similar and equal skills. So
that, when something goes wrong, any
team member can get assistance from
any member in the absence of the team
leader
DevOps, likes to divide and conquer,
spreading the skill set between the
development and operation teams. It
also maintains consistent communication
Agile development manages on “sprints”.
It means that the time table is much
shorter (less than a month) and several
features are to be produced and released
in that period
DevOps strives for consolidated
deadlines and benchmarks with major
releases, rather than smaller and more
frequent ones
DevOps Principles
Sridhara T V
Customer-Centric Action
End-To-End Responsibility
Continuous Improvement
Automate everything
Work as one team
Monitor and test everything
Advantages of DevOps
Silo-Free
Faster Release
Lesser Bugs
Lower Cost
Better Quality Continuous
Integration
Automatic
Deployment
Sridhara T V
Optimizing Development and Operations
Sridhara T V
DevOps Adoption Model
ENVIRONMENT
People, Organization, Laws, Regulations, Culture, Competitors
PRINCIPLE
1. Self Directed Team Over
Command and Control
2. Course Correction Over
Perfection
3. Automated Over
Manual
MANAGEMENT
FRAMEWORK
1. People First
2. Org Structure
3. Capability development
4. Budget
5. Risk Managemet
6. Assets Management
7. Change Management
8. Security Management
PRACTICES
1. Infrastructure as Code
2. Dashboard
3. Working Backwords
4. Open Source
5. DevOps skill Metrics
6. Audit automation
7. Self service
VALUE PURPOSE
Continuously deliver customer value in a
sustainable way with improved lead time,
resilience and quality
Sridhara T V
How can we
Improve the
work
What kind of
problems are we
trying to solve
How can we
Develop
People
DevOps Adoption
Sridhara T V
PROCESS
TECHNOLOGY
TIME TO MARKET
COLLABORATION
CUSTOMER
SATISFACTION
PROCESS
ADOPTION
CLOUD ADOPTION
FOUNDATIONAL
Usage by Team
member
Ad-hoc release
Team isolated
Personal feedback
Ad-hoc process
Team working
with VMs
REPEATABLE
Usage by a
department
Periodic Release
Team
Communicative
Service Level
feedback
Inconsistent
process
Department level
RELIABLE
Usage by few
departments
Frequent releases
Team
collaborative
Department level
feedback
Shared process
Few departments
OPTIMIZED
Enterprise wide
usage
Continuous
release
Team unified
Organization level
feedback
Aligned processed
corporate wide
Cloud fully
embraced
How to Implement DevOps
Sridhara T V
Start Small but not too small
Create a culture of Experimentation and Learning
Engineer Resilience and Adaptivity
Get Buy-In from all teams
Eliminate Blame culture
DevOps requires 4 T-s
Teamwork, Tools, Techniques and Tenacity
Get Started with DevOps
Sridhara T V
Target DevOps efforts to the parts of the business that deliver the
most impact
Understand the work that needs to be done in DevOps value streams
Identify DevOps teams and leadership
Build critical mass as you go
Assign members of the dedicated team to be solely allocated to the
DevOps transformation efforts
Get Started with DevOps
Sridhara T V
Have specific, measurable goals for the DevOps team
Select team members who are generalists, who have skills across a
wide variety of domains
Use a common, shared DevOps toolset
Fund services and products, not “projects”
Create loosely coupled architectures
Automate!
DevOps Automation Tools
Sridhara T V
Infrastructure Automation
Configuration Management
Deployment Automation
Performance Management
Log Management
Monitoring
DevOps Tools
Dev Ops
Sridhara T V
DevOps and Cloud - A match made in Heaven
DevOps and Cloud are complementary to each
other
Cloud makes it easy to implement DevOps services
because of inherent abstraction of complexities
Cloud provides added advantage of Agility,
Scalability and On-Demand availability to DevOps
services
A combination of Cloud and DevOps provides a
definite advantage over the competition
Sridhara T V
DevOps Stack on AWS
Code Build Test Deploy Provision Monitor
Code
Commit
Code Pipeline
Elastic Beanstalk
OpsWorks
Elastic Container Service
Code Deploy CloudWatch
CloudFormation
Code Pipeline X-Ray
Sridhara T V
DevOps Stack on Azure
Sridhara T V
Containers
Sridhara T V
A standard way to package an application and all its dependencies so
that it can be moved between environments and run without
changes.
Containers work by isolating the differences between applications
inside the container so that everything outside the container can be
standardized
Containers Vs VM’s
Sridhara T V
Containers are more lightweight and faster
No need to install guest OS
Less CPU, RAM, storage space required
More containers per machine than VMs
Greater portability
Containers are easy to manage as they share a common OS
Share multiple workloads on a single OS
Containers are a better way to develop and deploy microservices
compared with VMs.
Dockers
Sridhara T V
Docker is a platform for developing, shipping and running
applications using container technology
Docker provides a means to package and application with all its
dependencies into standardized unit for software development
It provides isolation, so applications on the same host and stack can
avoid dependency conflict
so you can be sure to have exactly the same
at runtime during development, testing and in
It is portable,
dependencies
production
Docker Use Cases
Sridhara T V
Development Environment
Environments for Integration Tests
Quick evaluation of software
Microservices
Multi-Tenancy
Unified execution environment
dev -> test -> prod (local, VM, cloud)
Sridhara T V
Security in DevOps
Sridhara T V
Base security configurations
Centralized authentication and authorization
Host based firewall rules per role and environment
Validate code against corporate security policies
Centralized audit logs
Automated vulnerability scans
Easier and tested patching
Mitigate insecure configurations
Security Information and Event Monitoring
36

devops-intro-181227144342.pptx devops ppt document

  • 1.
    Sridhara T V DevOps Sridhara T V
  • 2.
    Technical Challenges 3 Traditional Development 2 IntegratedApproach 4 Concepts Technologies 5 DevOps Tools 6 CI / CD 5 DevOps in Cloud 6 DevOps Overview 1 Sridhara T V
  • 3.
    What is DevOps SridharaT V DevOps is the philosophy of unifying Development and Operations at the culture, practice, and tool levels, to achieve accelerated and more frequent deployment of changes to Production The term “DevOps” typically refers to the emerging professional movement that advocates a collaborative working relationship between Development and IT Operations, resulting in the fast flow of planned increasing work (i.e., high deploy rates), while simultaneously the reliability, stability, resilience and security of the production environment
  • 4.
    DevOps Sridhara T V DevOpsrefers to a collaborative culture between technical teams It encompasses much more than just development and operations extending to QA testing, releases and much more By aligning goals and sharing strategies, DevOps practices can improve efficiency and quality of product/code shipped, allowing businesses to innovate quickly while providing a higher standard of support
  • 5.
    DevOps is aboutCAMS Culture Automation Measurement Sridhara T V Sharing
  • 6.
    Traditional IT Problems SridharaT V Development and Operations team work in isolation Dev team follows a life-cycle model – Waterfall, V, TDD System Testing is performed after complete development Team is spending lot of time in design, testing and deployment and less focus in productization Most often deployment is a manual process Development team and Operations team have separate timelines and in most cases are not in sync Product is deployed into production few times a year Dev team is not aware of or does not have access to production environment
  • 7.
    Software Delivery Bottlenecks Lackof alignment between IT and business goals Plan and Measure Complexity of tools, languages and platforms Poorly integrated teams across application lifecycle Lack of automated and scalable testing methods High cost of setting up and maintaining test environments Develop and Test Application release process is error-prone and slow Release and Deploy Lack of centralized incident management and monitoring Slow or unresponsive to customer feedback Sridhara T V Monitor and Optimize
  • 8.
    Challenges Sridhara T V Devand Ops people have conflicting goals Operations people have bean beaten into defensive mode Teams are so used to the Dev Vs Ops way of working
  • 9.
    Symptoms Sridhara T V Defectsreleased into production – causing outage Inability to diagnose production issues swiftly Problems appear in some environments only Blame game – shifting/finger pointing Long delays while Dev, QA or another team waits on resources or response from other teams / stake holders “Manual Error” is a commonly cited root-cause Release either slip or fail at first attempt Quality of “personnel-life” issues!
  • 10.
  • 11.
    Why DevOps Used SridharaT V Predictability Reproducibility Maintainability Time to market Greater Quality Reduced Risk Resiliency Cost Efficiency Breaks larger code base into small pieces
  • 12.
  • 13.
    DevOps Stages Integrate TestRelease Deploy Operate Monitor Feedback Build Plan Design Code Continuous Development Continuous Integration Continuous Delivery Continuous Deployment DevOps Sridhara T V
  • 14.
    Agile with DevOps Provision SridharaT V Configure Orchestrate Deploy Report Monitor Design Unit Test Bug Fix Deploy Business Case Features Plan Go to Market Dev Ops Requirements Use Case Agile Software Development Code Refactor - Iterative development - Sprints, Stories, Feedback - Velocity - IT Automation - Continuous Integration - Continuous Deployment Business Agility IT Agility Business Developers IT Operations
  • 15.
    Agile Vs DevOps SridharaT V Agile DevOps Emphasize breaking down barriers between developers and management DevOps is about software deployment and operation teams Addresses gap between customer requirements and development teams Addresses the gap between development and Operation team Focuses more on functional and non- functional readiness Focuses operational and business readiness Agile development pertains mainly to the way development is thought out by the company DevOps emphases on deploying software in the most reliable and safest ways which are not necessarily always the fastest
  • 16.
    Sridhara T V AgileVs DevOps Agile DevOps Agile development puts a huge emphasis on training all team members to have varieties of similar and equal skills. So that, when something goes wrong, any team member can get assistance from any member in the absence of the team leader DevOps, likes to divide and conquer, spreading the skill set between the development and operation teams. It also maintains consistent communication Agile development manages on “sprints”. It means that the time table is much shorter (less than a month) and several features are to be produced and released in that period DevOps strives for consolidated deadlines and benchmarks with major releases, rather than smaller and more frequent ones
  • 17.
    DevOps Principles Sridhara TV Customer-Centric Action End-To-End Responsibility Continuous Improvement Automate everything Work as one team Monitor and test everything
  • 18.
    Advantages of DevOps Silo-Free FasterRelease Lesser Bugs Lower Cost Better Quality Continuous Integration Automatic Deployment Sridhara T V
  • 19.
    Optimizing Development andOperations Sridhara T V
  • 20.
    DevOps Adoption Model ENVIRONMENT People,Organization, Laws, Regulations, Culture, Competitors PRINCIPLE 1. Self Directed Team Over Command and Control 2. Course Correction Over Perfection 3. Automated Over Manual MANAGEMENT FRAMEWORK 1. People First 2. Org Structure 3. Capability development 4. Budget 5. Risk Managemet 6. Assets Management 7. Change Management 8. Security Management PRACTICES 1. Infrastructure as Code 2. Dashboard 3. Working Backwords 4. Open Source 5. DevOps skill Metrics 6. Audit automation 7. Self service VALUE PURPOSE Continuously deliver customer value in a sustainable way with improved lead time, resilience and quality Sridhara T V How can we Improve the work What kind of problems are we trying to solve How can we Develop People
  • 21.
    DevOps Adoption Sridhara TV PROCESS TECHNOLOGY TIME TO MARKET COLLABORATION CUSTOMER SATISFACTION PROCESS ADOPTION CLOUD ADOPTION FOUNDATIONAL Usage by Team member Ad-hoc release Team isolated Personal feedback Ad-hoc process Team working with VMs REPEATABLE Usage by a department Periodic Release Team Communicative Service Level feedback Inconsistent process Department level RELIABLE Usage by few departments Frequent releases Team collaborative Department level feedback Shared process Few departments OPTIMIZED Enterprise wide usage Continuous release Team unified Organization level feedback Aligned processed corporate wide Cloud fully embraced
  • 22.
    How to ImplementDevOps Sridhara T V Start Small but not too small Create a culture of Experimentation and Learning Engineer Resilience and Adaptivity Get Buy-In from all teams Eliminate Blame culture DevOps requires 4 T-s Teamwork, Tools, Techniques and Tenacity
  • 23.
    Get Started withDevOps Sridhara T V Target DevOps efforts to the parts of the business that deliver the most impact Understand the work that needs to be done in DevOps value streams Identify DevOps teams and leadership Build critical mass as you go Assign members of the dedicated team to be solely allocated to the DevOps transformation efforts
  • 24.
    Get Started withDevOps Sridhara T V Have specific, measurable goals for the DevOps team Select team members who are generalists, who have skills across a wide variety of domains Use a common, shared DevOps toolset Fund services and products, not “projects” Create loosely coupled architectures Automate!
  • 25.
    DevOps Automation Tools SridharaT V Infrastructure Automation Configuration Management Deployment Automation Performance Management Log Management Monitoring
  • 26.
  • 27.
    DevOps and Cloud- A match made in Heaven DevOps and Cloud are complementary to each other Cloud makes it easy to implement DevOps services because of inherent abstraction of complexities Cloud provides added advantage of Agility, Scalability and On-Demand availability to DevOps services A combination of Cloud and DevOps provides a definite advantage over the competition Sridhara T V
  • 28.
    DevOps Stack onAWS Code Build Test Deploy Provision Monitor Code Commit Code Pipeline Elastic Beanstalk OpsWorks Elastic Container Service Code Deploy CloudWatch CloudFormation Code Pipeline X-Ray Sridhara T V
  • 29.
    DevOps Stack onAzure Sridhara T V
  • 30.
    Containers Sridhara T V Astandard way to package an application and all its dependencies so that it can be moved between environments and run without changes. Containers work by isolating the differences between applications inside the container so that everything outside the container can be standardized
  • 31.
    Containers Vs VM’s SridharaT V Containers are more lightweight and faster No need to install guest OS Less CPU, RAM, storage space required More containers per machine than VMs Greater portability Containers are easy to manage as they share a common OS Share multiple workloads on a single OS Containers are a better way to develop and deploy microservices compared with VMs.
  • 32.
    Dockers Sridhara T V Dockeris a platform for developing, shipping and running applications using container technology Docker provides a means to package and application with all its dependencies into standardized unit for software development It provides isolation, so applications on the same host and stack can avoid dependency conflict so you can be sure to have exactly the same at runtime during development, testing and in It is portable, dependencies production
  • 33.
    Docker Use Cases SridharaT V Development Environment Environments for Integration Tests Quick evaluation of software Microservices Multi-Tenancy Unified execution environment dev -> test -> prod (local, VM, cloud)
  • 34.
  • 35.
    Security in DevOps SridharaT V Base security configurations Centralized authentication and authorization Host based firewall rules per role and environment Validate code against corporate security policies Centralized audit logs Automated vulnerability scans Easier and tested patching Mitigate insecure configurations Security Information and Event Monitoring
  • 36.