I don’t think it is hacky.
exclude is used to tell the cluster to move the resources on the target machine to others. So it is reasonable if the progress has completed, you can safely include that IP again.
Or if your progress can satisfy the failure tolerance, I think you don’t need to
exclude at all. Just leave the cluster to health. For example, you have a 5 nodes cluster and want to move two nodes to another location. Just shut down those two nodes and create two new ones to join. Although this is somehow unsafe as you may lose data if one additional node fails during the progress.
Another possibility is that you may consider
fdb> help maintenance
maintenance [on|off] [ZONEID] [SECONDS]
Mark a zone for maintenance.
Calling this command with `on' prevents data distribution from moving data away
from the processes with the specified ZONEID. Data distribution will
automatically be turned back on for ZONEID after the specified SECONDS have
elapsed, or after a storage server with a different ZONEID fails. Only one
ZONEID can be marked for maintenance. Calling this command with no arguments
will display any ongoing maintenance. Calling this command with `off' will