pict rider - Fotolia
Developers, operations teams and IT executives have struggled to both precisely define DevOps and, more importantly, apply it to their organizations. In 2019, the term coined by Patrick Debois turns 10, which invites a look at where it is today and where DevOps evolution is headed.
Like most new ideas, DevOps went through a hype cycle. Evangelists exuberantly touted it as the answer to a host of IT woes. When it failed to live up to exaggerated promises, DevOps slipped into seeming irrelevance. Now, the IT industry has reached a renaissance where a deeper understanding of DevOps concepts and a mature set of IT practices and tools have combined to improve productivity, innovation and agility.
DevOps is a concept that primarily deals with organizational structure and culture among developers, operations and other groups, such as security and product owners or business leaders. However, DevOps also refers to the processes spawned from that kind of organization of work and the tooling used to automate and systematize those processes. DevOps evolution today is driven by the development and proliferation of CI/CD, infrastructure as code and containers, as well as PaaS and other cloud services. However, techniques like CI/CD remain relatively unknown compared to the parent concept, and DevOps maturity varies wildly from one region to another -- and even within one company.
How DevOps relies on CI/CD and tools
DevOps maturity can be categorized by software delivery performance, which the above technologies enable.
The DevOps Research and Assessment (DORA) State of DevOps 2018 report categorizes organizations based on their software delivery performance. The scale ranges from highly mature to organizations that could be considered behind the curve when it comes to modern IT capabilities:
- Deployment frequency: from multiple deploys per day to once per month;
- Lead time for changes: from less than an hour to between one and six months;
- Time to restore service: from less than one hour to between a week and a month; and
- Change failure rate: from near 0% to 46%-60%.
About half of the organizations DORA surveyed for the report qualify as high performers that deploy at least once a day, need between a day and a week lead time for changes, take less than one day to restore service after an incident, and have change failure rates of 0% to 15%. DORA also showed a difference between elite performers and low-performing organizations, gaps that starkly illustrate the power of automation and structured CI/CD processes. Elite DevOps organizations, such as those found in online service providers and cloud-native startups:
- have 46 times more frequent code deployment;
- go from code commit to deployment 2,555 times faster;
- have one-seventh the failure rate; and
- recover from incidents 2,604 times faster than low-performing counterparts.
DevOps-focused automation can impart significant competitive advantages to businesses that foster it. In the near-term growth of DevOps, expect a dramatic increase in the use of automation.
I predict 2019 will be an exciting year for CI/CD and DevOps evolution, as more organizations put theory into practice. Automation occurs throughout development, test and deployment, so DevOps trends in 2019 will coalesce around various forms of automation.
Containers enable consistent DevOps toolchains
Containers are the most portable deployment endpoint for DevOps toolchains and will displace VMs for enterprise workloads throughout 2019.
The critical pieces of container infrastructure -- image format, runtime engine, cluster orchestrator -- are standardized. Every enterprise IT infrastructure software provider and major cloud service provider offers a container manager that relies on Kubernetes. Cloud container services, including Amazon Elastic Container Service for Kubernetes, Microsoft Azure Kubernetes Service and Google Kubernetes Engine, will become a preferred destination for new container deployments as organizations see value in outsourcing infrastructure management.
The portability of containers and Kubernetes-based workflows enable organizations to target CI/CD deployments to multiple clouds, which, in turn, will fuel growth in infrastructure-agnostic container management platforms, such as Containership, Nirmata, Platform9 and VMware.
IT organizations that adopt DevOps with container-based deployment set a perfect stage for microservices, which are pieces of code that act and scale independently and interact to create a working application. To enable container-native microservices in production, DevOps organizations will turn to service mesh technologies, prompting rising usage of Istio, Linkerd and Envoy in 2019. Much like Kubernetes cloud services, the cloud-based AWS App Mesh, Azure Service Fabric Mesh and Google Cloud Managed Istio offer enterprises managed options for microservices ops. Service mesh is a young field that will change throughout 2019 and beyond.
As microservices grow and applications are redesigned around cloud services, serverless will also join the deployment picture for more enterprise organizations. Serverless, or function as a service, presents a lightweight, on-demand alternative to VMs and containers.
CI/CD and PaaS to pair up
Organizations using automated CI/CD pipelines will turn to multi-cloud PaaS for their next DevOps evolution.
Cloud Foundry, Red Hat OpenShift and other PaaS stacks encapsulate best practices and sophisticated automation tools into a package that is easy for DevOps organizations to implement and use. PaaS offerings integrate CI/CD tools -- Concourse CI works with Pivotal Cloud Foundry, and OpenShift supports Jenkins, for example -- to enforce structured processes and automation throughout development and operations.
Open source code promises faster dev
DevOps maturity, as described above, stems partially from the speed with which teams can develop new features and update existing ones, as well as fix bugs. DevOps teams will use open source for an increasing share of their application code, as well as automation scripts, in 2019.
"By 2022, over half of the code in 75% of new apps will be from external sources," IDC analyst Al Gillen predicted, driven by a need to increase developer productivity. While I can't vouch for that numerical estimate, I agree with the trend, since the quality, variety and innovation exhibited by the major open source projects increase every year. Expect organizations that rely on open source code to also contribute to projects, creating a virtuous cycle.