Puppet Enterprise 2019 leads a collection of product updates from the infrastructure automation vendor that can...
help enterprise IT ops pros improve DevOps support.
Puppet hasn't released developer-focused features for its CI/CD tools based on its acquisitions of Distelli and Reflect that are unique, compared with CI/CD competitors such as XebiaLabs, Electric Cloud and CloudBees. In fact, Puppet's pipeline tools still play catch-up with competitors' DevOps pipeline analytics features with Puppet Insights, released to private beta this week. But Puppet Enterprise customers said Puppet Insights will boost continuous deployment for infrastructure code, regardless of whether the tool's features occupy the IT industry's bleeding edge.
"Our DevOps pipeline for Puppet code is stronger than those we have for other internal projects," said Rob Nelson, a Puppet Enterprise user and site reliability engineer (SRE) at a large enterprise in the Midwest that he asked not be named. "Puppet Insights could expand those practices beyond Puppet, where currently they can be difficult to replicate with other things."
Nelson said he plans to look into Puppet's Continuous Delivery for Puppet Enterprise product, released in early 2018, to formalize the Puppet infrastructure-as-code pipeline, as well.
Puppet Bolt integration goes toe-to-toe with Ansible
Outside the CI/CD space, Puppet also made strides in 2018 with infrastructure automation and infrastructure-as-code tools, such as Puppet Enterprise, Puppet Tasks, Puppet Bolt and Puppet Development Kit (PDK), Nelson said. Now, those tools will help his company bridge the gap between legacy environment management practices and DevOps.
For example, Puppet Enterprise 2019 is integrated with Puppet Bolt, the agentless, command-line-based task automation technology that reached version 1.0 this week. This means Puppet Enterprise customers can use Bolt's agentless support for infrastructure through some 5,700 management modules in the Puppet Forge repository. Puppet Enterprise 2019 also now includes the ability to run tasks over Secure Socket Shell and Windows Remote Management directly from the Puppet Enterprise console.
Puppet Tasks uses agents to perform ad hoc management requests, such as server patch updates, that aren't a good fit for regular Puppet runs every 30 minutes. Puppet Bolt agentless support could expand the infrastructure that's addressed through Tasks for Nelson's SRE team, he said.
Puppet Bolt integration could also make Puppet Enterprise more competitive with Red Hat Ansible in environments where users struggle with relatively inflexible Puppet agents and manifests. At this month's AnsibleFest conference in Austin, Texas, for example, one former Puppet user talked about his switch to Ansible after 10 years with Puppet products.
"Puppet was too much work, and it was costing more money," said Michael Raugh, senior systems engineer for ActioNet, an IT services company in Vienna, Va., under contract with the National Oceanic and Atmospheric Administration, in a presentation at AnsibleFest.
"Puppet agents might not have been updated in a few years, or some things didn't get agents," he said.
Puppet code wasn't easy to write, and Ansible code, which is YAML-formatted, was, Raugh added. However, Nelson pointed out that the PDK has matured considerably since 2017, and recent versions simplify Puppet infrastructure code updates.
"In the past, if there was a new version of a Ruby gem, you might add it to solve problems with a few systems, and everything else would break," Nelson said. "Now, PDK just handles it and updates all versions of all dependent gems at once."
Puppet Enterprise roadmap to deepen CI/CD integration
Edwin Yuenanalyst, Enterprise Strategy Group
Puppet officials were vague about details, but said a forthcoming version of Puppet Task Plans later this month will deepen integration between Puppet Enterprise infrastructure automation and the vendor's Distelli-based CI/CD pipeline tools, such as Puppet Pipelines for Containers. Since the Distelli acquisition in 2017, users such as Nelson have awaited Puppet Enterprise support for canary deployments of infrastructure code kicked off by a CI/CD tool.
"There have been hints around it," Nelson said. "If you want to change just two nodes in your infrastructure in response to an application update, or just 2% of your nodes, no one wants to go into 2% of their servers and run commands, but it's better to push [changes] out immediately than wait 30 minutes."
Overall, analysts said Puppet's expansion beyond configuration management tools and into DevOps automation shows promise, while this week's updates reflect a continued focus on its traditional IT operations audience. Puppet Insights, for example, doesn't drill into developer efficiency and code-quality details to the extent that some other DevOps pipeline analytics tools do; it instead focuses on infrastructure metrics, such as build and deployment performance.
"Puppet has the opportunity to offer a unique perspective on DevOps performance that targets operations pros [who] support developer teams," said Edwin Yuen, analyst at Enterprise Strategy Group in Milford, Mass. "That's where people need the most help and where Puppet can help its existing audience make the DevOps transition."
Nelson said he's encouraged to see Puppet broaden its products, without leaving any customers behind.
"These tools give us the option to follow Puppet forward or to hang back," he said. "The new products meet a lot of needs, but it can be difficult to get a grasp on where to start and what to do first."