lets shed some lights on application behavior maybe it will help you make your own architecture (and sorry for long post):
The application start by connecting with other nodes in cluster then configure and start Cassandra which act as application memory. All nodes within the same cluster should receive same SIP Server events and then they will decide which node will handle new interaction and save its events into memory (Cassandra), if you want to remove a node from cluster you can just set option
memory ->
active_node ->
false then the node will no longer be considered in the cluster and all new interactions will be divide between the reset of active nodes (gracefully stop application will do the same for couple of minutes based on configuration before stopping node).
If a node receive a new event for processed interaction, it will flag it to indicate it needs further processing and save new events into memory.
Once the interaction is finished and files are linked to interaction the node will check if interaction already exist in database, if yes it will add new phase (a phase is a group of events in sequence) into saved interaction else it will create new interaction, if you have an activity on database you can set option
permanent ->
enabled ->
false at run-time and wait for couple of minutes for application to close all connections to database (data is left in application memory until option return back to true).
So for multi site I think you should have 1 cluster for each site and both linked to same database like below, my only concern interaction doesn't close correctly when transferred to other site, If this happened just contact me.