Hello,
We’re using AWX with EC2 inventory for a while (currently AWX 3.0.1.0 but we went through pretty much all previous versions).
We have Overwrite
and Update On Launch
for the update options of the source.
It works impecable when there are very few changes in the infrastructure, except when we renew all the spotfleets (for example) and the change in respect to the amount of hosts it needs to clean up is big (hunderds). Then the first inventory update run after the change takes hours, blocking all other operations… (then next inventory sync go well)
In debug it shows how the whole inventory is done in 5s, but then deleting hosts takes a long time (even the first two hosts are 45 seconds apart).
…
5.724 INFO Loaded 291 groups, 117 hosts…
5.899 DEBUG Deleted host “xxx”
45.383 DEBUG Deleted host “xxx”
71.704 DEBUG Deleted host “xxx”
…
1131.550 INFO Inventory import completed for xxxxxxx in 1129.7s
My question is - is there any way to perform the deletion in a decoupled way? Kind of like eventual consistency (I can live with a wrong count of failed hosts/total hosts for a while, while the jobs can get new inventory.
The way I handle it now, I uncheck Overwrite
to unblock the pipeline and keep running jobs, and when I can, I run manually a inventory sync with a huge timeout. But it’s far from ideal, since I never know when the infrastructure is going to be changed enough to cause trouble…
Thanks for any kind of ideas to address it.
Regards,