Mystery of DevOps
Add to Bookmark Email this Post 4.9K    1

 

What is DevOps?

DevOps can be termed as brothers in conflict or two faces of the same coin. It is the latest trend in software development, where developers work in tandem with operations staff to ensure that software runs efficiently without any glitches. Today, many software development teams are going the DevOps way, which is not only helping organizations cope with the pressure to produce quality code, but also helping them deliver faster.

According to Wikipedia, DevOps is a portmanteau of ‘development’ and ‘operations’ is a concept dealing with other things like software development, operations, and services. It emphasizes communication, collaboration, and integration between software developers and information technology (IT) operations personnel.

Let us look at how Dev and Ops function:

Dev wants:

  • Continuous Change
  • Add new features

Ops want:

  • Continuous Stability
  • Create new services

The Problem

In delivering valuable software to customers, very often development and operations are in conflict with each other. While development wants to deliver its changes (for example, new features) to customers quickly, operations want stability, which means not changing the production systems too often.

The gap between development and operations occurs on different levels:

  • The incentives gap: Result of different goals of development and operations.
  • The process gap: Results from different approaches of development and operations and how to manage changes, bring them to production, and maintain them there.
  • The tools gap: Results from the fact that development and operations often use their own tools to do their work.

As a result, development and operations often act like silos, as they are two distinct teams.

Development and Operations in Conflict

The conflict between development and operations is as follows:

  • Need for change: Development results in change (for example, new features, bug fixes etc). It wants the changes to quickly roll out to production.
  • Fear of change: Once the software is delivered, the operations department avoids making changes to the software to ensure stability.

Is DevOps the Solution?

DevOps links software development to operations. It also bridges the gap between agile software development and operations experiences. All experts have at least a basic understanding of others business subjects.

Devops Business

Why Devops?

Devops

Devops is not a methodology or framework, but is a set of principles to break down silos. Specifically, Devops is all about culture, automation, measurement and sharing (CAMS):

Culture:

In culture, people and process come first.  If you don’t have culture, all automation attempts will be fruitless. Relationship is important in culture. Its functions include:

  • Engage early, engage often
  • Destroy silos
  • Be open to options
  • Stop blaming

Other attributes of culture are:

  • Communicate with peers
  • Involve everyone in core processes and decisions
  • Ask questions
  • Never say never
  • Daily stand-ups (invite everyone)

Automation:

Once you understand your culture, you can start with automation.  Now, you can finalize various tools to achieve automation for Devops.  Tools for release management, provisioning, configuration management, systems integration, monitoring and control, and orchestration become important pieces for Devops.

Why Automation?

  • Machines are really good at doing the same task over and over again
  • Consistent and known state
  • Fast and efficient
  • Saves a lot of time – 10 mins/day = 2.53 days/year

What can be automated?

  • Builds
  • Deployments
  • Testing
  • Monitoring
  • Self-healing
  • System rollouts
  • System configuration

Measurement (Metrics)

If you can’t measure, you can’t improve.  A successful DevOps implementation will measure everything it can as often as it can:

  • Performance metrics, process metrics, and even people metrics.
  • Capture, learn, improve assists in:
  1. Capacity Planning
  2. Trend Analysis
  3. Fault Finding
  • Simple as saving Tomcat access info
  • Plotted on a graph over time

Sharing:

Sharing is the loopback in the CAMS cycle.  Creating a culture where people share ideas and problems is critical. Exposing ideas can create a great open feedback that in the end helps to:

  • Improve
  • Share Ideas
  • Share metrics
  • Ops: Give devs shell access
  • Devs: See what technology can be leveraged

Evolution of Devops

Devops 1

Devops Lifecycle

Devops

Utilizing a DevOps lifecycle, products can be continuously deployed in a feedback loop through:

  • Infrastructure Automation
  • Configuration Management
  • Deployment Automation
  • Infrastructure Monitoring
  • Log Management
  • Application & Performance Management

Reasons to learn Devops

Devops has proved to be an effective practice and helps in increasing a company’s growth:

Technical benefits:

  • Continuous software delivery
  • Less complex problems to fix
  • Faster resolution of problems

Business benefits:

  • Faster delivery of features
  • More stable operating environments
  • More time available to add value (rather than fix/maintain)

Devops tools

1. Operating Systems

  • Linux (RHEL, CentOS, Ubuntu,Debian)
  • Unix (Solaris, AIX, HP/UX, etc.)
  • Windows
  • Mac OS X

2. Infrastructure as a Service

  • Amazon Web Services
  • Rackspace
  • Azure
  • OpenStack

3. Virtualization Platforms

  • VMware
  • VirtualBox
  • Vagrant

4. Containerization Tools

  • LXC
  • Docker

5. Linux OS Installation

  • Kickstart
  • Cobbler

6. Configuration Management

  • Puppet
  • Chef
  • Ansible
  • RANCID

7. Test and Build Systems

  • Jenkins
  • Maven
  • Ant

8. Application Deployment

  • Capistrano

9. Application Servers

  • JBoss
  • Tomcat
  • Jetty
  • Glassfish

10. Web Servers

  • Nginx
  • Apache

11. Queues, Caches, etc.

  • ActiveMQ
  • RabbitMQ
  • Memcache

12. Databases

  • Percona Server
  • MySQL
  • PostgreSQL
  • MongoDB
  • Cassandra
  • Redis
  • Oracle
  • MS SQL

13. Monitoring, Alerting, and Trending

  • New Relic
  • Nagios
  • Graphite
  • Ganglia
  • Cacti
  • PagerDuty

14. Logging

  • PaperTrail
  • Logstash
  • Loggly
  • Splunk

15. Process Supervisors

  • Monit
  • Runit
  • Supervisor
  • God

16. Security

  • Snorby Threat Stack
  • Tripwire
  • Snort

17. Miscellaneous Tools

  • Multihost SSH Wrapper
  • Code Climate

Got a question for us? Mention them in the comments section and we will get back to you. 

Related Posts:

Get Started with DevOps

DevOps Redefining your IT Strategy

Share on
Comments
1 Comment

24 X 7 Customer Support X

  • us flag 1-800-275-9730 (Toll Free)
  • india flag +91 88808 62004