Highlights features found in Red Hat Insights and Ansible Automation Platform that can be used as part of a self-healing infrastructure.
Walks through an example architecture triggering Advisor events via Insights Notifications service, using a middleware layer for connecting both applications, then launching an automation job template to remediate the detected issue.
Self-healing infrastructure brings together monitoring, streaming, intelligence and automation so that organizations can respond more quickly to datacenter events, reducing operational toil and improving reliability while, to a reasonable degree, minimizing human intervention.
The trigger of events as well as the automation that is applied in response are both part of the story. In this post, we explore how Red Hat Insights and Red Hat Ansible Automation Platform can be used as core components of a self-healing infrastructure.
Introducing Red Hat Insights for analysis
Red Hat Insights is a managed service that continuously analyzes platforms and applications to help enterprises manage hybrid cloud environments. Included with Red Hat subscriptions, Insights uses predictive analytics and deep domain expertise to reduce complex operational tasks from hours to minutes, including helping to identify security and performance risks, tracking licenses, and managing costs.
When an issue is found, Insights Advisor is able to provide remediation steps and, in most cases, a remediation playbook to fix the issue on the targeted system. When this occurs, Insights Notifications can also be set to alert users of the organization via email or forward the details to third-party applications via webhook integration.
Automating with Red Hat Ansible Automation Platform
Red Hat Ansible Automation Platform makes it possible for users across an organization to share, vet, and manage automation content by means of a simple, powerful, and agentless technical implementation. IT managers can provide guidelines on how automation is applied to individual teams.
Meanwhile, automation developers retain the freedom to write tasks that use existing knowledge, without the operational overhead of conforming to complex tools and frameworks. It is a foundation for deploying end-to-end automation solutions, from hybrid cloud to the edge.
Ansible Controller makes it simple to launch playbooks based on defined Job Templates from the Controller’s API. This is the mechanism we invoke as part of our self-healing infrastructure.
Architecting a self-healing infrastructure
With these pieces in place, we can create an event-driven architecture for our self-healing infrastructure. When Red Hat Insights detects an issue, it triggers an event that is forwarded as an action for Ansible Automation Platform to automatically apply remediations.
The message handling, manipulation and forwarding between applications, components, and backend data sources are commonly performed by a middleware layer to speed development and simplify connectivity. There are many types of middleware (e.g., message brokers, enterprise service bus, Integration Platform-as-a-Service, etc.). Examples of such middleware include Red Hat Fuse, IBM AppConnect, Azure Service Bus, or Amazon EventBridge.
Note that this architecture describes an example of a functional integration between Red Hat Insights and Ansible Controller. It is meant to inspire future solutions but does not constitute a Red Hat fully supported reference architecture.
Putting it all together
The following diagram describes the overall architecture and steps for our self-healing infrastructure.
The most important steps are:
System metadata is collected by the Insights client and sent over to the Insights platform for analysis.
Insights Advisor detects a new issue and offers a tailored recommendation. A "New recommendation" event is generated and forwarded to Insights Notification service.
Insights Notifications reacts based on the configuration defined for the organization. In our case, it sends an email to registered users with information about the findings.
It also posts a request to a pre-configured middleware endpoint for processing.
Once processed, the event details are forwarded to an Ansible Controller’s API to launch a Job Template.
The associated Ansible playbook is executed and queries Insights Remediation service’s API to generate a remediation playbook.
In turn, it runs the newly generated remediation playbook on the affected system.
The last step of the playbook is to execute insights client on the system, which causes Insights to emit a "Resolved recommendation" event and close the loop.
Red Hat Insights and Ansible Automation Platform can be used as core components of a self-healing infrastructure. In our example, we achieved this easily by triggering Advisor events ("New recommendation" and "Resolved recommendation") via Insights Notifications service. We used a middleware layer for connecting both applications and launched an automation job template on Ansible Controller to remediate the detected issue.
With this solution in place, we can reduce operations handling and improve reliability. The proposed architecture can be adapted to your own operational workflows and processes. Learn more about self-healing infrastructure in our whitepaper, "Accelerate your path to self-healing IT infrastructure."
Additional information on setting up Red Hat Insights services (e.g., Advisor) can be found in the Insights product documentation, whereas configuration instructions for the Notifications service is available in the Red Hat Hybrid Cloud Console documentation.
About the authors
Jerome Marc is a Red Hat Principal Product Manager with over 15 years of international experience in the software industry spanning product management and product marketing, software lifecycle management, enterprise-level application design and delivery, and solution sales.
With more than 10 years of experience in the software industry, Stefan Bunciak is currently the Product Manager for Red Hat Insights. He completed his master's degree in Informatics at Masaryk University in Brno and is skilled in project and people management, quality engineering, and software development. In his spare time, he plays violin in a folklore band.