No-Ops? New-Ops? Cloud-Ops!
So we've already heard about DevOps. It's a set of processes and methodology for connecting two areas of the organization often at odds – development and QA on one side, and IT operations on the other. Developers want to release software more frequently; operations professionals want to protect the stability of the infrastructure. Many organizations have already implemented the DevOps approach through a virtual team combining developers, test engineers, release managers, change managers, configuration managers and operations specialists. This approach facilitates the goal of DevOps, achieving the deployment of applications faster and smoother.
Now we have "NoOps". This concept was proposed by Mike Gualtieri from Forrester Research about a year ago. He contends that "The last thing many application developers want to do is have a sit-down with the ops guys."
He established that NoOps should be about improving the process of deploying applications, allowing application developers to deploy without ever having to be in contact with an IT operations professional.
Sounds impossible? A distant future?
Not at all. The cloud is changing everything.
Along Came NetFlix
Now Adrian Cockroft, Cloud Architect at NetFlix, has asserted that NoOps is a reality today. He says "we have hundreds of developers using NoOps to get their code and datastores deployed in our PaaS and to get notified directly when something goes wrong."
Is this the nirvana that Mike Gualtieri envisioned? Did NetFlix eliminate the IT Ops role in deployments?
These are just a few of the questions being thrown around. NoOps has certainly created a new wave of heated discussion. Fierce defenders of NoOps laud the promised agility. Critics dismiss NoOps as a marketing term that misinterprets the true role of IT operations and how IT Ops is critical for supporting today's agile release schedules.
Not Really NoOps
The NoOps vision is really easier said than done. Blogging about the recent heated NoOps debate Mridula Velagapudi notes that "many of our developer friends here would agree that such a thing as NoOps may be possible only till a certain extent in the lifecycle of an application. After certain level of product development, the team would want to ensure that the Ops-part in their SDLC is functioning properly."
Rather than get caught up in the excitement around NoOps, we would say that we are really looking at a state of NewOps, or better put: CloudOps. IT Ops needs to address new challenges created by disruptive technologies and accelerated business demands, and how to best support the overall efforts of the organization.
New Challenges, Complexity, and Dynamics
IT operations aren't really optimized for cloud. The complexity of Cloud computing is outstripping the capabilities of IT Ops. Environments are becoming more complex. With the cloud, their scale is now staggeringly large. This makes diagnosing issues in the environment harder and harder. Specialized skills are required by IT Ops to comprehend critical changes. Zeus Kerravala in NetworkWorld explains the state of IT Ops, saying that "Legacy IT departments are highly engrained in siloes, with storage, network and server operations all having their own, independent operations teams that go about doing their own thing with little thought about how it impacts the other groups."
Cloud, on the other hand, requires a much tighter integration of the IT infrastructure. Virtual machine moves trigger network policy changes and storage movement. Cloud raises the level of agility and flexibility to IT, enabling resources to migrate from one location to the other based on business need. The movement of IT resources must be a coordinated task. This is driving the need for IT operations to not just be aligned with business, but actually truly integrated.
Overwhelming Amounts of Configuration Changes
As in the philosophy of NoOps, when IT operations gives flexibility to teams of developers or QA, the system can quickly come apart. With PaaS and developers working directly on cloud platforms, there are more teams tweaking and changing configurations, compromising the reliability of the system. One request begets another, and users begin to ask for tweaks and changes to be made to the cloud service itself. Once the image has been tweaked, then it can be made available to the next guy that wants the same modification. Rapidly, the volume of changes grows. Even one simple change in how an application is deployed can have far reaching impact. One patch or "minor" release can change hundreds of parameters at a granular level, where any change can have a major impact on overall performance. The higher level of dynamics in the Cloud, along with the extra configuration layers (e.g. virtual machine & host configurations) heightens the complexity and makes the management effort even greater.
So with direct access to release to the cloud platform, users might get what they want, but this may come at the expense of having an effectively working platform.
NetFlix, NoOps and Cloud
Netflix uses many cloud-based services for its developers. Mike Kail, the vice president of IT operations at NetFlix, declared "There's a new world order and if you don't want to be a dinosaur, you support the cloud."
From an operations management standpoint, the Cloud is a complex beast. In Cloud, changes are happening too quickly to maintain a fully documented configuration database. A golden image of the environment can quickly drift away from reality, as 'live' configuration updates are made, without updating the offline golden image.
"There will always be an operations layer," said Mike Kail, NetFlix VP of IT Ops. Rather than fully realizing the grandiose NoOps vision that NetFlix's Cloud Architect Adrian Cockroft described, Kail describes operations as "centralized provisioning and de-provisioning, pointing out that as employees come and go in the workplace, there's a simple way to grant and terminate access to all available resources at Netflix."
IT Ops: Here to Stay
When developers finalize their applications in the cloud, there is pressure to get it into production. Bernard Golden explains in CIO Magazine that "Many of these applications will subtly, even surreptitiously, migrate from development through "trial" to production." He describes how he was "once assigned to lead development of a new release of a product on a crash basis because the previous version — a development prototype never intended for anything but internal testing — had been released and was in customer production use and, as one might expect, wasn't robust enough."
Despite the benefits of independent environment deployment, sometimes things don't always work. That's when IT ops needs to know the baseline configuration for the cloud environment and its' evolution in order to understand what was done. Only with an effective and automated cloud configuration management solution in place, things will stay on target.
NoOps is Not the End of Operations
The pace of change in IT is quickening and time horizons that used to make sense are far too long for IT today. This is definitely the most dynamic time in IT history. Cloud computing is playing a role that will motivate IT organizations to implement better management approaches, with the opportunity to move forward and implement consistent IT practices and processes.
As John Allspaw said, vice president of technical operations for Etsy.com, in response to the NetFlix NoOps assertion: "Like many have pointed out, the issue people have with "NoOps" is the presence of "No" in it. This is because you (and others) are intermingling titles (and therefore organizational groups) with the often blurred domain expertise usually (but not evenly-distributed across a diverse spectrum of organizations) associated with Operations."
AppFog CEO Lucas Carlson said it was a mistake to assume NoOps meant the end of operations. For Carlson, NoOps really means a total separation of development and operations. This way the two groups "can focus on what they're good at, without getting in one another's way."
IT Ops Needs to be Ready for CloudOps
So it will not be a NoOps world but a New Ops one. IT Ops is changing from large organization carrying out time-consuming manual processes to a focused and tight group that has higher-skilled people to design operational environments for cloud. As Bernard Golden concludes "The role of IT operations is definitely evolving rapidly."
What's needed is a new generation of IT Ops professionals equipped with cloud configuration management solutions that can provide users with a contiguous view of hybrid business system environments across physical, virtual and cloud layers. Since IT Ops needs to be prepared to do more with less, IT Ops requires greater insight into cloud configurations and matched with a unified view of traditional data center infrastructures.
A Sampling of the NoOps Debate in The News
- 'NoOps' Debate Grows Heated
- I Don't Want DevOps. I Want NoOps.
- OneOps, TwoOps … Exploring cloud ops
- From DevOps to NoOps: IT operations pros dwindle, developers rise
- Netflix uses lots of cloud services -- but don't call it 'NoOps'
- DevOps Vs. NoOps – The Name Game?
- IT Operations Needs to Evolve to Support Cloud
- IT Operations: Beware the Cloud Boomerang