There is no automatic script, but you can write one. Don't have it issue the set deploy-server command, however. Have it delete $SPLUNK_HOME/etc/system/local/deploymentclient.conf. Put this in an app called "fix_deployclient", but don't deploy it, yet. Create a new app called "all_deployment_client" and add to it the existing $SPLUNK_HOME/etc/system/local/deploymentclient.conf file from one of your forwarders. Set the app to restart splunkd when it deploys. Now deploy all apps to all forwarders. This will move the deployment server config to a custom app. The next time you need to make a config change to your forwarders, modify the all_deployment_client app and re-deploy it. Never use the set deploy-server command again. Why? Because that command puts entries in $SPLUNK_HOME/etc/system/loca/deploymentclient.conf, which overrides all other deploymentclient.conf files, making it impossible to make a change from the DS. Another option is to use your company's management software (Ansible, Puppet, etc.) to change all of the forwarders.
... View more