Hello,
With the later versions of AWX we moved to receptor (automation mesh).
I am trying to understand how artifacts (playbooks, inventories) are copied from controller to execution nodes.
Does receptor copy them ?
Regards.
RH
Hello,
With the later versions of AWX we moved to receptor (automation mesh).
I am trying to understand how artifacts (playbooks, inventories) are copied from controller to execution nodes.
Does receptor copy them ?
Regards.
RH
Here is a rough overview as I understand it. Open to anyone else’s comments.
Hello,
With the later versions of AWX we moved to receptor (automation mesh).
In kubernetes, the connection between job pods and the control plane is not really a mesh. The control pods use the receptor kubernetes work type to connect directly to the kubernetes api and launch a pod. So maybe we can call it an “automation strand” or “automation string” since there are just the control pod and the job pod concerned. The other control plane pods who are not the “controller” for the job know nothing about that job pod.
I am trying to understand how artifacts (playbooks, inventories) are copied from controller to execution nodes.
When starting the job, the control plane pod does the project update/inventory update etc. It creates an archive with all the things that ansible-runner needs (“the private data directory”) to start the job. It then sends this over a tcp connection it has with the worker container in the job pod. Then the job runs. The worker container archives the job events and sends them back to the control plane, where events get processed and written to the database. The inventory/playbook/etc is not sent back, because there is no need to send it back.
Hi,
Good question. To echo the previous answer, this is done via the ansible-runner transmit|worker|process commands, which AFAIU, use receptor underneath. This is described at https://ansible-runner.readthedocs.io/en/2.1.1/remote_jobs/
I have not dug into the actual specifics though, I am interested in getting more information as well.
Cheers,
Vincent