Masters of Puppet say: There's no magical one-size-fits-all answer to doing DevOpsery
Bigwigs on containers, consulting and the path ahead
Puppetize PDX 2019 Despite standing squarely in the path of the GitLab juggernaut, DevOps automation outfit Puppet is betting that a one-size-fits-all approach will end up fitting nobody particularly well.
While the company extolled the benefits of picking the best tool for each job in the DevOps chain to the 400 attendees at the company's Portland Puppetize PDX event, across the Atlantic GitLab were cheerfully listing its platform's targets (including Puppet) in its drive to create a single DevOps application.
Puppet's take is that the reality of application and infrastructure delivery is a tad messy thanks to the varying needs and problems of customers. There is, to coin a phrase, no one-size-fits-all in the eyes of the automation vendor.
The Register spoke to CEO Yvonne Wassenaar, CTO Deepak Giridharagopal and Field CTO Nigel Kersten about the company's approach to DevOps, the competition and the future.
Wassenaar clambered into the CEO's chair at the beginning of 2019 and set about tinkering with Puppet's direction. "When I got here," she said, "we were more focused on the pipeline side of it, more focused on the CI side, which is very overlapping with Jenkins. And while we were, you know, looking at things that were different, they weren't distinctively different."
Thus the company set about "shifting the focus from the CI part of CI/CD to the CD side".
"It was," Wassenaar said, "a rebalancing back to what really matters to our customers today."
Delivering that rebalancing lay in the hands of Puppet veteran CTO Deepak Giridharagopal, who cheerfully described his own journey from cutting code as an engineer to reviewing documentation as a CTO: "The transition was hard."
Giridharagopal was keen to talk tech, having started with Pascal before playing with various languages up to his current tools of choice: Rust and Go. The core open-source Puppet project, he explained, is written in Ruby while PuppetDB and much of the revenue-generating enterprise components run on a Java Virtual Machine.
The future for Giridharagopal is containers, and the company and community is working to shift the existing core open-source stack into the new world. "We have one that's out there up on GitHub called Pupperware," he told us, "which is the Puppet containerisation project."
"We're also containerising the commercial product as well," he added.
The process has been challenging: "It's also been a very educational case study in the complexity of just how hard it is to make something run in that kind of environment," he sighed, observing that the dream of "put it into containers, put it in a box, and then put a bow on it, and you're done" is great, right up until reality puts in an appearance.
He cited the file system as example of something that had caused headaches: "It might work on Mac, it might work on Linux, but it may not work on Windows..."
And Puppet has never been shy about trumpeting its cross-platform and cross-cloud chops.
Ultimately, Giridharagopal sees containerisation of Puppet as "just a different delivery vehicle" but still, of course, compatible with what has gone before.
That compatibility is key to retaining Puppet's customer base (there are over 40,000 organisations that use the platform), and it is Field CTO Nigel Kersten who spends much of his time with those customers.
"Because Puppet ends up sitting underneath just about everything inside the organisation, we end up having quite complex processes," he explained.
The company will therefore parachute resources into helping customers getting its platform integrated. "We could," said Kersten, "have gone to 80 per cent revenue from services," before cautioning that Puppet remained a "product-first company".
Handy, because new CEO Wassenaar told us: "I'm a big believer, having worked in the software space for a long time, that services should not really be more than 20 per cent of the business."
Tipping a hat to Amazon's work in the area, Kersten added: "There's a certain level of strategic service consulting which involves enabling partners, enabling the whole ecosystem that is much more valuable than the sort of relatively linear return tactical view."
In other words, give customers a helping hand in getting the thing working, and there's a good chance they'll stick around.
As for the future, Wassenaar reckons it lies in vulnerability detection and remediation, or "Find It, Fix It".
"Innovation," she said, like any good CEO would, is what will keep Puppet's existing community on the product and tempt new customers away from the all-in-one platforms being pitched by the likes of GitLab.
And the rest of the competition? Wassenaar acknowledged that though the likes of Ansible were "further ahead in terms of content of what they can use to automate the networks", she added that "we're just at the beginning of that race".
Puppet is betting that customers will balk at the idea of being locked into a single vendor, preferring instead to use its Enterprise product to automate tasks such as infrastructure configuration, deployment while integrating with other vendors for the rest of the toolchain.
The battle lines are drawn, with Puppet and co on one side and developers gluing tools together. On the other side lie the likes of GitLab and the lure of a pain-free, all-in-one approach.
The reality for DevOps practioners, we suspect, lies somewhere in the middle. ®