https://octopus.com/ is a decent option. But, I wrote a windows service that knows how to deploy different types of applications windows service, iis app, scheduled tasks etc.
The service listens for manifest change message on a topic, when a team wants to release a new version of an app, they update the url of the jenkins artifacts in a manifest file in git and publish manifest changed message.
Deployment service on all the servers downloads the latest version of the manifest file and updates or installs apps as needed.
I also wrote a custom prometheus exporter to export health and version of services installed on a box. That allows us to track the deployment status.
This setup has worked super reliability for us, very little maintenance and training required. Since deployment occur in parallel, deployment on hundreds of servers takes only a few seconds.
The service listens for manifest change message on a topic, when a team wants to release a new version of an app, they update the url of the jenkins artifacts in a manifest file in git and publish manifest changed message.
Deployment service on all the servers downloads the latest version of the manifest file and updates or installs apps as needed.
I also wrote a custom prometheus exporter to export health and version of services installed on a box. That allows us to track the deployment status.
This setup has worked super reliability for us, very little maintenance and training required. Since deployment occur in parallel, deployment on hundreds of servers takes only a few seconds.