See what’s new with Puppet Enterprise® 2018.1
We’re excited to announce the upcoming launch of Puppet Enterprise 2018.1 along with the latest additions to our product portfolio. Puppet Enterprise 2018.1 includes enterprise-grade enhancements to help teams improve the way they manage, execute, and orchestrate their infrastructure.
Puppet Enterprise 2018.1 will be available for download 1 May.
Let’s jump into the details.
Announcing enhancements to Puppet Tasks™
Last October we introduced Puppet Tasks, which includes Bolt, our standalone open source task runner and the Task Management capability in Puppet Enterprise. Puppet Tasks gives everyone, whether they have a Puppet agent installed or not, the ability to deploy point-in-time changes on demand. It lets you do things like run a script written in any language across your infrastructure, stop or start a service, upgrade a package, and automate changes that need to happen in a particular order as part of an application deployment. Our goal is to help teams manage more of their infrastructure, including nodes that don’t have an agent running, cloud resources, and network devices.
We have free training on Puppet Tasks available for folks who want to learn more.
Per node RBAC for Tasks
Now in Puppet Enterprise 2018.1, you can use role-based access control (RBAC) to specify who can run which tasks against specific groups of nodes. Because node groups are dynamic when new nodes are provisioned, they’re automatically added to the appropriate groups. Your RBAC policies ensure that specific user roles can execute tasks against the appropriate node groups. For example, as new machines are provisioned, an app developer will have the right permissions to run tasks on their development nodes without accessing nodes in production. This enables Puppet administrators to give more teams self-service access to the infrastructure they’re responsible for.
Extending Puppet Enterprise with Bolt
When we introduced Puppet Tasks last fall, we also introduced Bolt, our open source task runner. Since then, we’ve made some major improvements and have been adding feature releases to Bolt on a weekly basis. Bolt gives you an agentless way to run simple commands or orchestrated workflows across your entire infrastructure. It uses SSH and WinRM to make connections to nodes, and tasks can be run as sudo or any other user.
Bolt now integrates with the Puppet Orchestrator, which is built on our ultra-scalable PCP (Puppet Communications Protocol) transport designed for customers that manage hundreds of thousands of nodes. This allows them to deploy changes instantly and see results in the Puppet Enterprise console faster than an SSH handshake. Let’s say you need to upgrade a package on nodes managed by Puppet Enterprise and nodes where you don’t have an agent installed. You can run the same task across your entire infrastructure using SSH, WinRM and PCP. The combination of agentless transports and our enterprise-grade PCP transport gives you the flexibility to scale automation across all types of infrastructure, from traditional VMs to cloud resources, network devices and more.
To get started with Bolt, go here.
Check out Bolt Task Plans
In Bolt, you can run task plans, which are simply a set of tasks run in a specific sequence as part of an orchestrated deployment. For example, you can automate changes like a database migration or a rolling deployment that requires logic in between steps. If you’re using another tool to do this type of procedural automation, you can save yourself an extra step and do it all with Puppet.
Unlike other tools, you can do complex error handling for more advanced use cases. For example, if a step in your plan fails, you can determine whether to retry the task if it was caused by a timeout error, or stop the plan if it was due to an authentication error. Task plans are ideal for when you need to run multiple tasks or commands procedurally, compute values as an input to a task, or make decisions based on the results of specific steps in the plan.
With the new Puppet Orchestrator integration, you can now run task plans across hundreds of thousands of nodes and see the results in the Puppet Enterprise console. Bolt task plans will show up as jobs in the console alongside the rest of your Puppet runs and tasks and all actions will be tracked by the activity service giving you the auditability you expect from Puppet Enterprise.
For a step-by-step guide for setting up Bolt with the Puppet Orchestrator, check out our documentation.
Inventory file for Bolt
To help manage hosts in your environment with or without the Puppet agent, we’ve added an inventory file to Bolt that stores information about your nodes. For example, you can organize your nodes into groups or set up connection information for nodes or groups of nodes. It’s a great way to store information about your hosts that will be available at run time.
The inventory file is a yaml file stored by default at ~/.puppetlabs/bolt/inventory.yaml.
If you’re using PuppetDB to store information about a portion of your infrastructure, you can use the bolt-inventory-pdb script to generate inventory files based on PuppetDB queries.
If you’d like to use a PQL query to target your infrastructure you can now do that with the Bolt --query flag.
See the full release notes for more information.
Improved support for disaster recovery planning
Puppet Enterprise has long been a core part of disaster recovery planning, making it straightforward to reproduce business critical infrastructure in the event of catastrophe.
With Puppet Enterprise 2018.1, it’s even easier to incorporate Puppet Enterprise into those plans with built-in tools to backup and restore your Puppet deployment. Combined with its high-availability features, Puppet Enterprise is always ready if there’s a problem anywhere in your data center or cloud infrastructure.
Take Puppet further with PDK support
We believe that all Puppet users are and can be Puppet code developers. Even if they’re mostly adopting existing modules, they write and iterate on Puppet code when composing the high-level building blocks that define the state of their infrastructure.
Puppet Development Kit (PDK) was created to give users prescriptive tools and best practices for testing their Puppet code, and it’s now fully supported. It offers a collection of tools in a powerful all-in-one package that helps users develop, test, convert and update modules right from a Windows, Mac or Linux workstation with a simple unified interface; catch issues before Puppet code is applied to live infrastructure; and get going faster with a complete batteries-included Puppet development environment.
2018.1 is the next long-term release
Puppet Enterprise 2018.1 is our newest long-term supported release (LTS), meaning you can expect full support, security updates and bug fixes through May 2020. This version is right for you if you want continued security updates and full support without upgrading your implementation on a frequent basis. 2018.1 ships with a Puppet-based installer making upgrades seamless and easy.
Accessibility, performance and usability improvements
Last, but not least, we’ve added some major improvements to the Puppet Enterprise console to make it accessible to more people, including those who use a screen reader, work exclusively with a keyboard, or see color differently. We want everyone who uses Puppet Enterprise to have the same great experience and we’re planning more accessibility improvements in the future.
Additionally, we’ve also added inline documentation to the console for instant help when you need it. Console workflows have been optimized for faster load times, better performance across large numbers of resources, and expanding out the number of users logged in at once. Since many of our customers use Puppet Enterprise across hundreds of thousands of nodes, scalability is always our top priority.
Try Puppet Enterprise and our other products
If you aren’t currently a Puppet Enterprise user, we offer several ways to get your hands on it and test it for free:
- Download Puppet Enterprise
- Download the Learning VM
- Try it in the cloud with AWS OpsWorks for Puppet Enterprise
Along with Puppet Enterprise 2018.1, we’re also revealing new products and innovations across our portfolio. Check them out: