The mainframe is like an elephant in many large enterprise data centers: It never forgets data, but it's a large...
obstacle to DevOps velocity that can't be ignored.
For a while, though, enterprises tried to leave mainframes -- often the back-end nerve center for data-driven businesses, such as financial institutions -- out of the DevOps equation. But DevOps for mainframe environments has become an unavoidable problem.
"At companies with core back-end mainframe systems, there are monolithic apps -- sometimes 30 to 40 years old -- operated with tribal knowledge," said Ramesh Ganapathy, assistant vice president of DevOps for Mphasis, a consulting firm in New York whose clients include large banks. "Distributed systems, where new developers work in an Agile manner, consume data from the mainframe. And, ultimately, these companies aren't able to reduce their time to market with new applications."
Velocity, flexibility and ephemeral apps have become the norm in distributed systems, while mainframe environments remain their polar opposite: stalwart platforms with unmatched reliability, but not designed for rapid change. The obvious answer would be a migration off the mainframe, but it's not quite so simple.
"It depends on the client appetite for risk, and affordability also matters," Ganapathy said. "Not all apps can be modernized -- at least, not quickly; any legacy mainframe modernization will go on for years."
Mainframes are not going away. In fact, enterprises plan to increase their spending on mainframe systems. Nearly half of enterprises with mainframes expect to see their usage increase over the next two years -- an 18% increase from the previous year, according to a Forrester Research Global Business Technographics Infrastructure Survey in late 2017. Only 14% expected mainframe usage to decrease, compared to 24% in the previous survey.
Whatever their long-term decision about mainframes, large enterprises now compete with nimble, disruptive startups in every industry, and that means they must find an immediate way for mainframes to address DevOps.
Bridging DevOps for mainframe gaps
Credit bureau Experian is one enterprise company that's stuck in limbo with DevOps for mainframe environments. Its IBM z13 mainframes play a crucial role in a process called pinning, which associates credit data to individuals as part of the company's data ingestion operations. This generates an identifier that's more unique and reliable than Social Security numbers, and the mainframe handles the compute-intensive workload with high performance and solid reliability -- the company hasn't had a mainframe outage on any of its six mainframe instances in more than three years.
However, Experian has also embarked on a series of Agile and DevOps initiatives, and the mainframe now impedes developers that have grown accustomed to self-service and infrastructure automation in production distributed systems.
"IBM has recognized what's happening and is making changes to [its] z/OS and z Systems," said Barry Libenson, global CIO for Experian, based in Costa Mesa, Calif. IBM's UrbanCode Deploy CI/CD tool, for example, supports application deployment automation on the mainframe. "But our concern is there aren't really tools yet that allow developers to provision their own [production infrastructure], or native Chef- or Puppet-like configuration management capabilities for z/OS."
Chef supports z Systems mainframes through integration with LinuxONE, but Experian's most senior mainframe expert frowns on Linux in favor of z/OS, Libenson said. Puppet also offers z/OS support, but Libenson said he would prefer to get those features from native z/OS management tools.
IBM's z Systems Development and Test Environment V11 offers some self-service capabilities for application deployment in lower environments, but Experian developers have created their own homegrown tools for production services, such as z Systems logical partitions (LPARs). The homegrown tools also monitor the utilization of LPARs, containers and VMs on the mainframe, and tools either automatically shut them off once they're idle for a certain amount of time or alert mainframe administrators to shut them off manually.
"That's not the way these systems are designed to behave, and it's expensive. In commodity hardware, I have lots of options, but if I run out of horsepower on the mainframe, buying additional engines from IBM is my only choice," Libenson said. "It's also increasingly difficult for us to find people that understand that hardware."
Experian is fortunate to employ a mainframe expert who doesn't fit the stereotype of a parochial back-end admin resistant to change, Libenson said. But he's not an infinite resource and won't be around forever.
"I tell him, 'If you try to retire before I do, I will kill you,'" Libenson said.
Ultimately, Experian plans to migrate away from the mainframe and has ceased product development on mainframe applications, Libenson said. He estimated the mainframe migration process will take three to five years.
DevOps for mainframe methods evolve
For some companies with larger, older mainframes, even a multiyear mainframe migration is expensive.
Christopher Gardneranalyst, Forrester Research
"One insurance firm client told me it would cost his company $30 million," said Christopher Gardner, an analyst at Forrester Research. "If you don't have a good reason to get off the mainframe platform, there are ways to do a lot of DevOps-specific features."
Mainframe vendors, such as CA, IBM and Compuware, have tools that push DevOps for mainframe closer to an everyday reality. IBM's UrbanCode Deploy agents offer application deployment automation and orchestration workflows for DevOps teams that work with mainframes. The company also recently added support for code deployments to z Systems from Git repositories and offers a z/OS connector for Jenkins CI/CD, as well. In addition to Jenkins, CI/CD tools from Electric Cloud and XebiaLabs support mainframe application deployments.
CA offers mainframe AIOps support in its Mainframe Operational Intelligence tool. And in June 2018, it introduced a SaaS tool, Mainframe Resource Intelligence, which scans mainframe environments and offers optimization recommendations. Compuware has tools for faster updates and provisioning on mainframes and hopes to lead customers to mainframe modernization by example; it underwent its own DevOps transformation over the last four years.
Vendors and experts in the field agree the biggest hurdle to DevOps for mainframe environments is cultural -- a replay of cultural clashes between developers and IT operations, on steroids.
Participation from mainframe experts in software development strategy is crucial, Ganapathy said. His clients have cross-functional teams that decide how to standardize DevOps practices across infrastructure platforms, from public cloud to back-end mainframe.
"That's where mainframe knowledge has the greatest value and can play a role at the enterprise level," Ganapathy said. "It's important to give mainframe experts a better say than being confined to a specific business unit."
Mainframes may never operate with the speed and agility of distributed systems, but velocity is only one metric to measure DevOps efficiency, Forrester's Gardner said.
"Quality and culture are also part of DevOps, as are continuous feedback loops," he said. "If you're releasing bugs faster, or you're overworking your team and experiencing a lot of employee turnover, you're still not doing your job in DevOps."