CloudBees Jenkins Enterprise snags raise roadmap questions
CloudBees' Jenkins software is slated for major updates after strong revenue growth in 2017, but customers and partners report struggles with upgrades, pricing and support.
CloudBees enjoyed healthy growth in 2017 and has big plans for 2018, but it must resolve some lingering issues before its customers and partners can look ahead.
Based in San Jose, Calif., the vendor sells CloudBees Jenkins Enterprise software, as well as technical support for big companies that want help running the open source Jenkins CI/CD tool in production. The open source version of Jenkins has monolithic master servers that manage the CI/CD pipeline. Part of the CloudBees Jenkins Enterprise value proposition is to add high availability and scalability features with managed masters, which are centralized Jenkins master servers that oversee a workload delegated to client masters and worker nodes.
CloudBees has clearly made some inroads in DevOps shops with its approach. In February 2018, the privately held company disclosed strong growth for 2017: a 60% increase in overall revenues, 77% higher subscription revenues and a 67% increase in staffing, although it did not specify the raw numbers behind those percentages. But while open source Jenkins is among the most popular DevOps tools, CloudBees' "master of masters" approach to high availability for the tool doesn't appeal to everybody.
"I didn't really like that design," said Richard Fong, software engineering manager at Mitchell International, an auto insurance software company in San Diego. He previously helped manage one of the and largest production Jenkins environments at Yahoo in 2013.* "They should've put more effort into making the master clusterable so it can horizontally scale, instead scaling it by spinning up different clusters for different teams."
Fong evaluated older versions CloudBees Jenkins Solutions -- the umbrella term for all versions CloudBees' Jenkins software, which have been renamed several times in recent years -- but decided to stick with the open source version, rather than pay for CloudBees' software.
CloudBees will ambitiously update its architecture when it integrates CloudBees Jenkins Enterprise with the Kubernetes container orchestration platform, as the company revealed this month. This integration will help CloudBees move away from the "master of masters" approach to scalability and high availability upon which CloudBees Jenkins Enterprise previously relied, and it will lead to a more sophisticated distributed system design for masters in future versions of CloudBees Jenkins Enterprise.
"Kubernetes opens the door to lots of optimization down the road," CloudBees CEO Sacha Labourey said in an interview this month. To boost this effort, the company has hired three Kubernetes open source contributors.
Enterprise IT pros who have embraced CloudBees' software said they would welcome a Kubernetes integration, as well as a scale-out architecture for masters. But these customers and CloudBees' consulting partners have some apprehension about the upcoming changes to the product, given the struggles with the existing container integration in CloudBees Jenkins Enterprise, as well as more general confusion about pricing and tech support.
One enterprise customer remains stymied by an upgrade from a previous iteration of CloudBees Jenkins Platform to the existing version of CloudBees' container support using the Apache Mesos container scheduler in CloudBees Jenkins Enterprise.
"Our two monolithic masters are still there," said Jason Shawn, senior director of DevOps and cloud for Ellucian Co., a Reston, Va., software company that specializes in ERP systems for colleges and universities.
Ellucian has used CloudBees Jenkins Solutions since 2016, and it found valuable advantages in the pipeline-as-code features that came with Jenkins 2.0 support in CloudBees Jenkins Platform. But Shawn has also been eager to add a distributed high-availability architecture for Jenkins masters based on containers. He has worked with CloudBees support engineers to move to managed masters in CloudBees Jenkins Enterprise in recent months, but hasn't yet been able to make the upgrade.
"Perhaps some [other customers] have gotten it to work, but that hasn't been our experience yet," he said.
Shawn said he also asked CloudBees to support container-based deployment of masters on Amazon's Elastic Container Service for Kubernetes (EKS). Labourey said in an emailed statement through a spokesperson this week that CloudBees engineers have beta access to EKS and are working on support for it, but he did not comment on the issues Shawn reported with upgrading to managed masters.
CloudBees Jenkins Enterprise pricing, support deepen concerns
Jason Shawnsenior director DevOps and cloud, Ellucian Co.
CloudBees' record revenue growth reflects market demand for its software, but customers and partners said they've been frustrated at times by confusion around CloudBees' pricing and support. For example, a change in CloudBees' pricing structure last year, from resource- to user-based, was meant to offer a more predictable licensing scheme than pricing by the number of masters and resources used, Labourey said in the interview earlier this month. But customers and partners said the definition of a user under the new pricing scheme was vaguely worded at and difficult to understand.
"It was really quite a slog," said Shawn, who negotiated a CloudBees Jenkins Enterprise licensing deal with the company last year to account for Ellucian's growth. "They're not the only vendor struggling with the right pricing model. But, at , their definition 'user' was nebulous -- basically, 'anyone in the environment who benefits from Jenkins' -- and we would prefer a consumption-based pricing model similar to Amazon's."
The pricing page on the CloudBees website defines a user as "anyone with a login to the CloudBees Jenkins Solutions and/or anyone who commits code to the source code repositories integrated with the CloudBees environment." An older version its pricing information defines a user as "every member your team who builds, commits, tests, deploys or manages software with the help of CloudBees Jenkins Solutions."
"While this was fine for some customers, others were not at ease, so we clarified it in a subsequent iteration," Labourey added in the more recent statement, through a spokesperson. "This is not an issue anymore in our customer discussions."
In the meantime, partners said CloudBees Jenkins Enterprise has become a tougher sell, as competitors such as version-control platform GitHub and project and software management tools vendor Atlassian offer integrations of open source Jenkins into CI/CD pipeline software and services. Because Jenkins is based on plug-ins that support third-party services, the support enterprises get from CloudBees isn't always consistent. CloudBees has a tiered plug-in support policy structure that sometimes means users have to seek out third-party support on their own.
"It's not exactly like the Red Hat business model, where customers have to weigh the cost of support against the cost of maintaining operating system stability and patches," said a West Coast-based CloudBees partner, speaking on the condition of anonymity. "Jenkins has so many third-party plug-ins and is so flexible that you can get into trouble very quickly with support."
As a result, enterprises are more challenged to justify CloudBees Jenkins Enterprise licensing costs than support from companies such as Red Hat, the partner said. Jenkins users will also soon have the option of Kubernetes integration with open source Jenkins thanks to a project the community launched this week, dubbed Jenkins X.
CloudBees Jenkins Enterprise still offers enough value for its cost at Ellucian, Shawn said. He has also evaluated other CI/CD options, such as Travis CI, GoCD and Amazon's native CI/CD services, but he doesn't have any plans to switch providers, he said.
Another bright spot for CloudBees lies in the success of its hybrid consulting business in the last year. Hybrid consulting means CloudBees engineers install and do initial management for CloudBees Jenkins Enterprise while training enterprise DevOps teams to operate it, and they eventually hand over control of the environment to those teams. The partner predicted more of an emphasis on this subscription support model for CloudBees in 2018.
* Information changed after publication