Get Puppet Enterprise First 10 nodes are free!
Try it now
Request a demo
Automate IT and infrastructure, manage complex workflows, and mitigate risk at scale.
Try the full-featured Puppet Enterprise for free on 10 nodes.
Puppet Comply Find and prevent compliance failures
Compliance Enforcement Modules Remediate to stay in compliance
Continuous Delivery for Puppet Enterprise Build, test, and deploy infrastructure as code faster and easier
Content & Modules Pre-built scripts to automate common tasks
CentOS EOL Here’s how to secure your CentOS infrastructure – even after EOL.
Find thousands of component modules built by the community and guidance on using them in your own infrastructure.
Visit Puppet Forge >>
Open Source PuppetPerfect for individuals and small infrastructure
BoltAutomate tasks in orchestration workflows
See all open source projects >>
Contribute to open source projects >>
Stephen K. Potter
Event-driven automation can turn repetitive, manual, daily tasks into something that you set and forget. It’s a great way to trigger automatic events and prevent human error.
In this blog, we'll explore a few event-driven automation programming examples, from sending an email to a certain group of users when a file has been uploaded to a server to generating reports.
Table of Contents:
Event-driven automation is a programming automation that reacts to triggers like tickets, incidents, Git events, changes in system state, and more. When an event is detected, event-driven automation initiates scripts, workflows, and more response mechanisms.
Event-driven automation is really one piece of a larger IT automation strategy. The goal of event-driven automation is to minimize manual interference and improve scalability and overall compliance.
An event that triggers an action within a system can come from locations and other services like:
The response to any event from one of these services can be customized according to need. For example, if there is a security or a compliance breach, an instance could be automatically shut down while it waits for analysis.
Events can also trigger communications to an individual or team. If a security breach is detected, for example, this can be shared via Slack or Microsoft Teams for instance to raise the alarm.
The most important piece of event-driven automation is that it works within the provider tools and application programming interfaces (APIs) that your system is already using. Ideally, this automation can trigger responses across different tools and services to ensure that everything is working in harmony.
There are three main parts to an event-driven response:
The benefits of event-driven automation overlap with those of automation in general. It’s a function that you don’t have to think about or actively manage in order to see the benefits.
Examples of event-driven automation include automatic resource scaling, logging, alerts, remediation, and more in response to specific events in a system.
Heading back to our formula of Event > Action > Result, let’s look at a common example of a system outage within an organization.
We’ll say that in this example company operates a call center where it’s business critical for the computer system to function for the support technicians to help out customers.
Security incidents don’t wait for you to get ready for them. They happen when your IT team is already putting out fires, prepping for audits, trying to roll out updates, and so much more.
Event-driven automation can help harden IT systems to make sure that when security-related incidents do happen, like compliance drift or a tool like Splunk reports an issue, then the event-drive response can be triggered to either alert your team or put a different API into action.
Here are a few examples how event-driven automation can harden your overall security strategy:
The role in helping with event-driven workflows isn’t a new feature or function within Puppet — it’s been a part of the Puppet DNA since the very beginning.
Puppet’s implementation of APIs is agnostic, which means that it works with all of the other software programs you’re already using. An example of this would be ServiceNow, where there is a plugin to connect to Puppet through an API to execute an appropriate automated orchestration and complete a workflow, whether there is a human on the other end.
There are modules within the Puppet Forge that can start, stop, or restart a service like a web server. The Puppet API interface places the actions for event-driven workflows in a platform designed and driven for configuration management actions. When an event is detected through any third-party system that the web server has an issue, Puppet acts as the action engine with an appropriate orchestrated response. For instance, the event monitoring system can call the Puppet API orchestration interface in the event of an outage, and have Puppet restart the server automatically. Once completed, the orchestration within Puppet can notify the event monitoring system the server is back online.
One of our customers uses Puppet to provision their server. They use an API to automate the process of provisioning, which in turn calls on Puppet to complete the provisioning steps once the automation is complete. It’s a one-two step process that is completely managed through event-driven automation, saving their team valuable time.
Put Puppet to work in your infrastructures event-driven automation workflows — test out a free trial of Puppet to see it in action:
Put Puppet’s event-driven automation to work in your infrastructure with a free trial:
TRY PUPPET FOR EVENT-DRIVEN AUTOMATION
Stephen K. Potter is a Senior Manager of Sales Engineering for Puppet by Perforce