What is DevOps?
-
Upload
mesut-guenes -
Category
Software
-
view
1.416 -
download
1
description
Transcript of What is DevOps?
What is DevOps?
Why DevOps?
Benefits of DevOps Teams
Releasing Software
Time spent deploying new software releases:
Improve Deployments
Here are some common things that DevOpsteams do to improve software releases:• Increase efficiency – less waste• Decrease time to commit software changes• Automate tests• Identify defects/issues quickly• Automate the build process• Simplify the deployment process• Make deployments reproducible• Automate as much as possible
Welcome Continuous Integration
Principles of Continuous Integration
• Maintain a code repository• Automate the build• Make the build self-testing• Everyone commits to the baseline every day• Every commit (to baseline) should be built• Keep the build fast• Test in a clone of the production environment (ElasticBox)• Make it easy to get the latest deliverables• Everyone can see the results of the latest build• Facilitate automated deployments
How CI Improves Efficiency
• Simplify Merges• Rapid Feedback
• Identify problems early• Makes bugs easier to find
• Reduce bug accumulation• Visibility (team and stakeholders)• Builds Automated
• minimizes manual intervention• plug-ins (i.e. for static code analysis, gathering metrics)
• Precursor to Continuous Delivery & Deployment
And…Continuous Delivery/Deployment
Keys to Continuous Delivery
• Process should be automated• Reduces the number of features introduced per release,
minimizing shock to users• Will reduce the standard release cycle• Changes approach to releasing software from an event to a
non-event• Helps to avoid off-hour, high risk, expensive deployments• Know your rollback plan (do you rollback or roll forward only)• Build in health checks
Potential Concerns to Implementing Continuous Delivery - Data
CI/CD Tools
The Reality Check –IT does not enable the business, it is the business
84%
Global executives believe
innovation is extremely
important to their growth
strategies
94%
Are unsatisfied
with their
innovation
performance
Business Places Strict Demands of IT – Is IT Ready?
CIO
• Stability• QoS
Innovation
•Speed
Development
Operations
• Risk• Capex vs.
Opex
Agility Efficiency
Innovation
Efficiency
Agility
Is PaaS the holy grail?
• Agility• Simplicity• Enable
innovation
Platform-as-a-Service
Today, less than 5% of business Applications run on PaaS
• Vendor Lock-In• Immature• Not enterprise-
ready
PaaS is a journey…
…you need an actionable path TODAY to enable innovation in the face of constant change.
Application evolution
Yesterday•Waterfall development•Weeks to provision•Static resources •Limited change windows •$100k+ of compute•Limited number of users, in business hours
Tomorrow•Agile development•Continuous deployment•Dynamic resourcing•Spans across data centers and clouds•Friction of compute costs•Millions of users with 24x7 access
Web Server
App Server
Database
Internet/FirewallEnd Users Lan/network Web front-end Services Middleware
Private
Public
Public
Web Server
Message Q
Database
In Memory Cache
App Server
App Server
How to get there – Cloud is driving innovation
“Respondents are satisfied that
virtualization is reducing data
center floor space, energy cost
and thermal output. However,
expectations for an overall
reduction in hardware capital
expenditure and increased
application deployment speed
and efficiency have not been
fully met”
Cloud is accelerating innovation—The number of Applications moving to IaaS is more than doubling each year.
The “Cloud operating model” enabling efficiency and agility
App release, Performance, Availability, Usage, Cost,
Cloud Ops
(Infra Ops)Infrastructure Performance,
Capacity, Config, Security
Storage
NW
Storage
NW
PublicPrivate
App Ops
ComputeCompute
Infrastructure Service Health and
Cost
Utilization and App Visibility
Dev Ops
DevOps is a response to the interdependence of
software development and IT operations.
Result of organizations that could not tolerate the
ramifications of two camps with different MBOs-P
rod
uctio
n
-Han
do
ff
-Package
-Test
-Dep
loy
-Stage
-Package
-Bu
ild
-Co
de
-Design
-Req
uirem
ents
OperationsDevelopment
DevOps
Aligned IT
OperationsManaging Innovation
DevelopmentDelivering Innovation
CIOEnabling Innovation
• Innovation• Change
•Risk•Capex vs. Opex
• Stability• QoA
Innovation
Efficiency
Agility
Traditional Deployment & Configuration Tools Break in the Cloud
Complex and time consuming
• Bottom up thinking
• Vertical and static approach
• On going management is procedural and
reactive
Proliferation of IT assets
• Lack of standardization increases
permutations of software components
Not cloud aware
• Each deployment plan is tied to a specific
infrastructure service
Deploy OS
Configure OS
Deploy MW
ConfigureMW
OS
OS
OS
OSOS
Immutable Application Management – New approach
IT Developers
“Write code, not tickets”
• Friction-free deployment
• Latest high productivity frameworks
• Choice of application services
• Platform Agnostic (You don’t see)
Boost application velocity
IT Operations
“IT as a service provider”
•More responsive to developers
•Elastic and dynamically scalable•Change aware•Digest future cloud advances
My take a NEW Engineering Team’s perspective on the Cloud
A fresh look at today’s Application Landscape
Written in diverse frameworks and languagesTraditional (Java, .Net) and Modern Frameworks
Developed with ‘agile’ or ‘iterative’ methodologiesApps released early and often
Deployed on virtual and cloud infrastructureSpan across Private, Public and Hybrid Clouds
Private Clouds
Public/Private/Hybrid Cloud
Public Clouds
Enabling the lifecycle for any app, anywhere
ANY type of app
ProvisionSecure
MonitorUpdate
Public
Private
Custom IaaS
PaaS
Custom PaaS
Impact of Cloud and DevOps, on the Provisioning Process
Traditional app provisioning
4 days to 8 weeks
Setup Infrastructure
• Configure N/w and Storage
• Deploy and Configure OS
Setup Application Middleware
• Deploy and configure application middleware
• Connect it to Database
DeployApplication
• Development
• Test
• Production
What app provisioning should be …
Minutes
An application architect uses a self-serve application provisioning portal to fully provision & update applications across Amazon Web Services by calling
the necessary APIs – Such As Cloud Formation
Impact of Cloud and DevOps, on Monitoring and Maintenance
Process
Traditional app monitoring/updates
MonitorDeploy
Trouble shoot
War room
Guess?
FixFalse start
Update
Time Accuracy
What app monitoring/updates should be…
Optimize
MonitorDeployBuild
Continuous, factual data about application performance
Time Accuracy
A Model Driven Approach to Application Provisioning
Catalog of Application
Services (Cloud Formation And Boxes)
Web Server
Application Server
Messaging
In-memory database
OS
OS
OS
DB
OS
Application Blueprint
Prod
Test
Deployment Profiles
Deployments
Dev
Application Blueprint
Architect
Cloud Admin
Deployment
Profile
(dev)
Application Binaries
Application Stack - (Middleware, OS)
Deployment
Profile
(test)
App Dev, QA, Release
Public
AWS
Private
AWS CloudEC2
Box Catalog
Standardized configurations of OS, Middleware and Databases
Logical Application Topology with Application Policies, ConfigurationsPre-instrumented with App Monitoring
Deployment
Profile
(prod)
Collaborative Platform for various roles
Standardized Configuration = ElasticBox Delivers Continues Deployment and Standards across App Environments
Ongoing Updates : Model driven App Management
Application BlueprintApplication Binaries
Application Stack - (Middleware, OS)
Update
Profile
Make a change – code, config, scale-out
Deployment
Change
ChangeChange
ChangeChange
Deployment
Analyze impact & auto-generate flow with dependencies
Performance Monitoring
OS
OS
OS
OSOS
Application Health
Application Infrastructure
Monitors infrastructure/middleware
Collects thousands of metrics across all tiers – web, app, messaging, DB.
Code
Instruments the application code to easily detect “bad code”that impacts application performance
Avg Hits/Minute,
Avg Latency, Errors
Avg Network
Latency
Queue Size,
Enqueue Count
Thread Pool, JDBC
Pool, Number of JVM
Servlets, beans
Code latency
Network Transactions
Automatically traces transactions
Measures transaction times –Latency, Usage, and Throughput
In Conclusion…..
Any Questions?