Node maintenance without disabling allocations/disable indexing

I have 5 node cluster and each having TBs of data. But as part of firmware upgrade process, i need to takeout the node from cluster. But I can not ask users to disable indexing. I can exclude the maintenance node from Cluster using exclude_ip API. But if I exclude, data on maintenance node will automatically moved/relocated to other nodes. As I have TB's of data on this node, It will take almost 8 to 10 hours. I can not wait until all data moved out from node and I can not disable allocations as data is critical. Any suggestions on this..Thanks

Disabling allocations does not disable your ability to index. It forces the
cluster to stay yellow until you reenable allocations. Note that if you
don't stop indexing and use synced flush then going from yellow to green
after the node starts up will take longer. Even if you can't stop indexing
synced flush should help with your indexes to which you sent directly
indexing.