DevOps brings current buzz in the IT world. In many cases, it means an entirely new mindset that requires both software development and operations teams to collaboratively pay attention to the full cycle of an application or service, coordinating their activities to allow more frequent releases of software code into production.
Today’s marketplace is driven by ever-increasing demands for features, speed and reliability and IT must continuously deliver new value without disruption to customers’ experience. It isn’t limited to surface changes such as one or two processes but, rather, a fundamental shift in the software companies. It is all about building and delivering better quality software and systems that scale, last and more reliably.
The principles that make DevOps work are far from new and SuperAdmins’ experience has shown certain qualities of that mindset. We all know that fixing bugs in production is crazy expensive: 150 times more than earlier in the development lifecycle. The idea about DevOps probably began from companies’ needs to speed up the pace in which they were able to launch their software, so they start to redefine how their teams operate and collaborate.
So, what is DevOps?
“DevOps is the practice of operations and development engineers participating together in the entire lifecycle, from design through the development process to production support.”
DevOps model encompasses:
• Software development
• Technology Operations
• Quality Assurance
For sure these three parts are brought together to ensure continual collaboration in the DevOps model. Key to DevOps’ success is the synchronization of production-ready coding, testing, and deployment.
The benefits of a DevOps approach to software development are both technical and cultural. Learn more >
It’s also important to understand what DevOps is not?
• It’s Not NoOps – We realize some parts of operations need to be automated, which means that either we ops people do some automation development or developers are writing “operations” code or both.
• It’s Not (Just) Tools – DevOps is not just a sum of the tools. It doesn’t mean that tools specifically designed to run systems in accordance with a DevOps mindset aren’t valuable.
• It’s Not (Just) Culture – It’s overblown that DevOps is “just culture”. It consists of items at all levels we list above, but without the tangible body of practice that has emerged around it, is largely useless. You might be able to figure out all those best practices yourself given the cultural direction and lots of time to experiment.
• It’s Not (Just) Devs and Ops – All the participants in creating a product or system should collaborate from the beginning – business, developers and operations folks and all this includes security, network and whoever else.
• It’s Not (Just) A Job Title – Just taking, calling or changing a job title to “DevOps Engineer” doesn’t actually help anything by itself. If you don’t adopt the values and principles, which require a change at an overall system level not simply with a given name, you won’t get all the benefits.
• It’s Not Everything – Sometimes people make grandiose claims that DevOps is about “everything and anywhere”! DevOps plugs into the overall structure of a lot of lean and agile thinking, and there are opportunities for that kind of collaboration throughout an organization, but going and reengineering your business processes isn’t really DevOps by itself. DevOps is best defined as “Agile Software Development” which should similarly work in concert with others working on larger organizations initiatives, but without losing sight of its primary value proposition for the organization.
The modern DevOps world is full of outstanding and unique open-source tools. Here are some of the tools that engineers use to their jobs efficiently and productively:
• Continuous integration (Jenkins, Travis, Teamcity)
• Configuration management (SaltStack, Puppet lab, Chef, Ansible)
• Orchestration (Zookeeper, Noah Mesos, AWS CloudFormation )
• Monitoring (Nagios, Zabbix, Monitis)
• Virtualization and containerization (AWS, Azure, OpenStack, Docker, LXC).
Software isn’t done until it’s successfully delivered to a user and meets their expectations around availability, performance, and pace of change.
“There’s a new trend called “DevOps” that is sweeping the enterprise IT world and its become a life-or-death career situation for many IT departments…Like the manufacturers were in the 1970s and 1980s were fighting for their lives, today’s IT departments are going to fight for their survival.”
Jim Whitehurst (CEO, Red Hat)