Automate Application Upgrade in Azure VMs Sorry if this question is on the wrong Stack Exchange or too vague. I am really new to DevOps and got a big task and don't want to start on the wrong direction.
We have many Linux-based (Redhat) VMs in Azure and we have Splunk installed on them and I am looking for a way to automate Splunk upgrade. 
I don't want to upgrade Splunk every-time there is a new version, but I was wondering if I can selectively upload a new version somewhere in Azure and have a Runbook that detects the new version and execute the Runbook to upgrade the Splunk app on each VM?
Upgrading Splunk requires a custom script (to make sure the new version is compatible with our environment) which makes this automation harder to design I suppose. 
Is there a better way or option to perform Splunk upgrade? Preferably in a rolling fashion.
Any help would be appreciated.
Thanks.
Do you think this might help you?
https://docs.microsoft.com/en-us/azure/automation/update-management/update-mgmt-overview#:~:text=You%20can%20use%20Update%20Management,and%20in%20other%20cloud%20environments.&amp;text=For%20multiple%20Azure%20VMs%20by,page%20in%20the%20Azure%20portal.
If your VM is disposable and you can replace it with a new VM then you can also use VM Image galleryfor Linux where you can have images for a VM or multiple VM types and you can update it at one place using Azure DevOps and then update the underlying VM image
https://docs.microsoft.com/en-us/azure/virtual-machines/linux/image-builder-gallery-update-image-version