A GUIDE ABOUT SELF-HEALING APPLICATIONS WITH ANSIBLE AND DYNATRACE
In this flood i will try to share my knowledge and experience about self healing applications which is very important topic in today’s IT world. Please feel free to contact if you have comments/questions about ansible and dynatrace and integration between them.
No matter in which field we are working in IT world, we are getting involved with more and more complex systems. As size of the IT systems increasing we are also encountering another problem which is giving headache to IT professionals it is complexity!
We keep on changing our infrastructure, our softwares, our systems and toolings to maintain efficiency and flexibility almost everyday. So Enabling the performance and availability of these modern microservice environments is a constant challenge for IT organizations.
In the recent years, IT world started investing on IT automation for provisioning, configuration management and ongoing operations.
In the flood, i will try to explain the outcomes when Ansible automation is extended to the application monitoring platfrom Dynatrace. We will also cover how we can achieve the repeatable and consistent IT systems by applying Ansible Dynatrace integration.
MONITORING AND AUTOMATION
When considering size, complexity and high rate of change of today’s IT environment, the operations team started to give priority to monitor application’s perfoermance and availability. To handle this, most of the operations teams started to use Application Performance Monitoring (APM) platforms. APM platforms are used to detect problems that can impact customer experiences of the applications.
I think all the folks who worked in the operations area will admit that currently, our traditional APM monitoring solutions is not always enough to help keeping our applications running at high performance. When there are problems in our applications, APM platform are designed to alert you about the operator of the problem and modt probably it’s root-cause. Then Operations team should decide about the corrective action and implement this action to the effected system(s).
Is there a way to make operations teams more efficient?
What if common or time-consuming corrective actions could be automated?
A look to Remediation Automation : DYNATRACE
The Dynatrace APM platform provides AI-powered, full stack performance monitoring of microservice environments and its underlying infrastructure. Dynatrace enables insights into your IT operation and detects if areas of your environment do not meet performance or error rate thresholds by an automated baselining.
Once Dynatrace detects abnormal system behavior that affects real users, a problem alert is created that groups all incidents that share the same root-cause.
I will not go through the microservices architecture and explanation of my demo here but just to make DynaTrace clear i took the below snapshot to show : Below is a demo application triggers a Problem alert. Dynatrace detected a degradation in response time, impacting 54 real users and 326 service calls:
As soon as Dynatrace detects a problem within an environment, a problem notification can be sent out to third party systems to notify them about the incidents. Dynatrace allows users to integrate with Ansible Tower as a Notification System, allowing operators to launch Ansible Tower job templates from Dynatrace Problem Notifications.
Our Demo also allows transferring contextual information for the detected problem. This means Ansible job templates can leverage these extra variables for a context-aware and performs better remediation in terms of executing a predefined playbook!!!!
So in our case, we have a template called Integration test in our Ansible Tower environment. In our demo we have passed extra variables awith the job template to eliminate the need for the operator to provide this contextual information.
As you can see, the Dynatrace and Ansible Tower integration is designed to simplify the setup of IT management automation tasks. Furthermore, the integration of Ansible Tower into the Dynatrace Problem Notifications workflow enables self-healing applications by triggering pre-defined, automatable Ansible job templates that are executed by Ansible Tower each time a problem is detected.
I hope it is clear enough to perform self healing applications using Ansible Tower-DynaTrace entegration.