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:
- Ansible playbooks could be run without installing ansible. Just run a container that runs playbooks.
- 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).