Gerardo Dada is Vice President of Product Marketing for SolarWinds.
Businesses can only progress and perform as quickly as IT enables them to, and these days, technology is a major point of differentiation for any type of company. In response, as a growing number of organizations look to increase agility and performance in the IT department, one movement is changing the way two teams have traditionally collaborated: DevOps. Despite being the industry buzzword of the year, though (well, maybe third after “containers” and “big data”), there exists substantial confusion over what DevOps means and how organizations can take advantage of the movement.
Why is DevOps so hard to define? In part, confusion stems from the fact that DevOps as an idea is growing organically, and the way it is implemented and leveraged continues to evolve. Perhaps more importantly, organizations continue to perceive DevOps as a specific role or set of tools usually exclusive to cloud deployments, rather than a mentality. At its core, DevOps is simply a modern approach to software development—it aims to dissolve the siloes between the development and operations teams and encourage shared accountabilities and processes in order to better understand software performance.
Typically when software is developed, one team will write the code, another team tests it and yet another team deploys or runs the software, all of which translates to conflict between these teams and a much longer update cycle for any piece of software. In a DevOps environment, developers share responsibility for testing and operations; everyone is accountable for performance, and tools and goals are shared. The team is able to manage changes to software more quickly; and in smaller pieces, ultimately resulting in a more efficient, effective and agile IT department with greater quality assurance for the end-user.
Still, for all its benefits, DevOps does have its challenges. Notably, the upheaval a traditional data center will undergo to support a DevOps-centric environment can be potentially detrimental to an organization. Foremost, finding IT professionals with the right skills is extremely difficult. CIOs and other business decision makers may remember a similar experience several years ago when cloud computing exploded into the data center—IT pros with suitable cloud experience were few and far between. In the absence of hiring a DevOps expert, organizations must instead invest in training their existing teams, experiment and feel their way through a newly deployed DevOps environment.
The good news is most organizations are willing to share their own best practices; the bad news is that most development teams are already understaffed and as a result, there is very little time for admins to think about, build, test, optimize and implement all the changes that are required to successfully move to a DevOps process. That includes not only taking the time to learn about the process, but also deciding how to realign existing processes and skills to fit a new DevOps model. One should not underestimate the required change in culture to adopt the new mindset, either.
For most organizations and IT decision makers, these challenges are likely off-putting and intimidating. However, while DevOps may be the operational mentality of the future, its broad implementation within traditional data centers is not urgent. In fact, a successful transition can often take several months. That doesn’t mean organizations can’t start preparing themselves now, however. To help ensure a more seamless move to a DevOps environment down the road, businesses can start by understanding and adopting the underlying principles that make DevOps great:
End-to-End Monitoring and Automation
A DevOps process requires everything to be monitored and automated. Visibility across the application stack and into everything that drives performance is critical for speed and collaboration. The impact of every change should be known. To move faster, code deployments, tests, monitoring, alerts and more should be automated. IT services, too, should embrace self-service for users and focus on what matters.
At the heart of a successful DevOps mentality and process is collaboration. Because the ultimate objective is to provide the end user with peak application performance, silos do not work. If an application is down, everyone has failed. There is no database team. There is no virtualization team. There is no storage team. There is only the development/operations team, and they are responsible for the performance of applications. This requires transparency, visibility, a consistent set of tools and teamwork. Breaking down siloes between traditional data center teams and aligning them behind end user performance goals will help organizations prepare to integrate and manage their development and operations teams down the road.
Speed and Service Orientation
Taking agility one step further, shorter, iterative processes allow teams to move faster, innovate and serve the business more effectively. Development to production cycles go from months to hours. This is a key benefit of DevOps, but it should be noted that despite a focus on speed through “sprint projects,” leveraging a DevOps mentality does not impact an organization’s ability to execute on larger, long-term projects. In addition, there should be no monolithic applications. Everything is a service, from application components to infrastructure. Everything is flexible and ready to scale or change.
Application and End User Focus
For every business preparing to adopt a DevOps mentality, end users and the applications they rely on are the singular focus everyone must align behind. The performance of every line of code and the metrics of each component of the stack are only relevant based on how they affect application performance. Performance needs to be a discipline. The integration of development, operations and QA teams is intended to speed software updates, changes, deployments and time-to-resolution for bugs—all of which deliver a better end-user experience.
There’s no doubt that the concept of DevOps is picking up steam and making its way into the traditional on-premises IT department. Although the transition to a DevOps environment does not take place overnight, and there are significant challenges to be aware of before beginning a transition, by leveraging these principles, businesses can be well on their way to reaping the benefits of an integrated DevOps mentality.
Ultimately, despite being a bit of a difficult term to define, DevOps, a positive organizational movement that will help businesses empower IT departments to innovate, has the potential to change traditional data centers as we know it.
Industry Perspectives is a content channel at Data Center Knowledge highlighting thought leadership in the data center arena. See our guidelines and submission process for information on participating. View previously published Industry Perspectives in our Knowledge Library.