As previous answers also points out the solutions are going to involve either having a private connection between the two data centers or having enough IP addresses to advertise a block from each data center.
Those two options are however not mutually exclusive and there are a few more aspects to keep in mind when configuring this.
How to advertise if you have enough addresses
You'll likely end up deciding to get an IPv6 prefix which is short enough to advertise one half from each data center, which means a /47 or shorter. You then have a choice to make in how to announce this.
- You can announce the two different /48 from the different data centers.
- You can announce a single /47 in both data centers.
- You can do both.
If you announce the two different /48 the traffic will be routed across the internet to the right data center, which keeps things simpler for you. If on the other hand you announce just the /47 in both locations you have to get the traffic to the right data center. This may be desirable if you have a private connection between the data centers that you find to be more reliable than the public internet.
Doing both of the above will serve as a sort of failover. Usually the traffic will go straight to the correct data center. But your private connection will be there as backup. However if other networks think you are sending them too many announcements they may decide to ignore your /48s and use just the /47, and your private connection will see some more traffic.
If you don't have a private connection between the data centers the best choice will most likely be to advertise the two /48 and not advertise an aggregated /47.
All of the above applies to IPv4 as well, just with different prefix lengths.
What to do if you can't get more IPv4 addresses
If you go ahead and advertise a /25 from each data center there is a significant risk the advertisements will just be ignored. Even if it works today there is a risk it will stop working in the future, so you will need a different plan.
If you don't have a private connection between the two data centers there is the possibility to use an IPv4 over IPv6 tunnel between the two data centers as a private connection.
The obvious drawback of the tunnel approach is that the tunnel is not going to be more reliable than the internet connection between the two data centers. And avoiding using the tunnel by only advertising the specific prefixes isn't an option because those specific prefixes would be too long.
An option worth pursuing if you are using the same transit provider at both locations is to advertise both the aggregated /24 and the more specific /25s. What you would need from the transit provider to advertise to the world is the /24. The two /25s you'd only need the transit provider to accept and use within their own network in order for the traffic to be routed to the correct of your two data centers.
Obviously before you do anything like that you'd have to discuss it with your transit provider to ensure that it is a configuration they are willing to support.
Other caveats with a tunnel
Another caveat in case of any tunnel is MTU issues. You need to ensure that you aren't doing something silly on your tunnel which would cause large packets to be silently dropped. Moreover you'd better configure your servers with a low enough MSS that it will work even if the people you are communicating with are silently dropping too big errors. For a setup like the one I describe setting the MSS to 1200 should be safe.
If your setup is going to involve any sort of DSR load balancing it is worth keeping in mind that the load balancing may need a tunnel as well. In that case make sure your DSR load balancer is configured such that the tunneling it is doing will be instead of the tunneling to connect your data centers - not another layer of tunnel on top of it.
Conclusion
The simplest solution is to just get enough IP addresses. But alternatives exist if you absolutely need them.