Forum Discussion

Stuart_Weenig's avatar
Icon for Mastermind rankMastermind
10 months ago

Event-driven ansible

Would like to know more about the architecture for this. I assume this would integrate with Ansible Tower/AWX? Is there another component involved? Do we need a lambda function to tie it all together?

What about multi-tenancy? I will have some customers that we’ll use this with and some we won’t. Can we route this through alert rules to determine which alerts go to which Ansible Tower/AWX?

8 Replies

  • Ranjan's avatar
    Icon for Product Manager rankProduct Manager

    @Mark Hensler the Settings v4 roll-out happened without the full coordination of documentation. We are in the process of fixing it in the upcoming sprint.

  • I’ve said it before and I’ll say it again: LM should embrace containerization on the collector. If the collector shipped with the ability to run containers, many problems could be solved:

    1. Ansible playbooks could be run without installing ansible. Just run a container that runs playbooks.
    2. Wanna run a datasource in any language? Just find the appropriate container and provide your script. Need to run Python? No problem and no need to pre-install anything on the collector. Just select the python container and provide your script. The datasource could even have a drop down that lets you select from images available on the docker hub (or your image repo of choice), type in your own image name (provided you’ve built it on the collector), or provide a Dockerfile to build the image at runtime (in case you need python with the requests library). 

    I think a lot of the knowledge around containers at LM is focused around containers that run services that run 24/7. That’s only one use of containers, ephemeral containers is another good use case and would be a great way to instantly expand the supported languages to, well, all of them.

    LM has a lot of knowledge around k8s and that could be leveraged to have containerization available on the collector to simply run adhoc containers for specific collector tasks (even alert/insight responses).  

  • I would still prefer to see a script (ActionSource?) as a step in an escalation chain.  As an MSP, centralized services like Ansible are more difficult to implement at scale.  We’d need to stand up an Ansible deployment for 150 environments.  Whereas, we’ve already got a collector in place, and all of the code exists in the product to make this a (relatively) simple add for LM.