Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!


One common public static IP v4 that can switch between servers in 2 different datacenters
New on LowEndTalk? Please Register and read our Community Rules.

All new Registrations are manually reviewed and approved, so a short delay after registration may occur before your account becomes active.

One common public static IP v4 that can switch between servers in 2 different datacenters

edited April 2018 in General

I was wondering if there is anything that can give me one public static IP v4 address that can work on two servers/virtual servers/cloud servers, each in a different datacenter, and switch between them in a matter of minutes or seconds. The floating IP only needs to be attached to one of the servers at any given time.

Amazon appears to have something like that called Elastic IP. They call different datacenters availability zones. You can have one Elastic IP switch between two or more availability zones in the same region.

Digital Ocean floating IP would have been ideal but as far as I can tell it can only failover to virtual servers in the same datacenter. Same with Vultr, same with OVH.

Comments

  • @francisco and his anycast-based stuff

  • Amazon appears to have something like that called Elastic IP. They call different datacenters availability zones

    No, this is layer 2 because the datacenters are physically near. Zones are within the same region and usually city, very few milliseconds away.

    LosPollosHermanos said: and switch between them in a matter of minutes or seconds.

    There is no such thing in reality.

    The smallest BGP routable block is a /24 (255 IPs) & a /48 (65k /64) - anything below this can only be re-routed "local".

    So your traffic still ends up in DC A but is then transported to B. BGP uses the best available path on distance (AS path) and most will slap a latency and location preference on top, but you will always face a certain degree of rerouting (eg. NY + London and all your Comcast traffic ends up in LDN and back to NY, because the drop in LDN is cheaper for someone in the chain).

    Only if the entire block is pulled from A it will solely announce in B, affecting always all IPs in it.

    Thanked by 1BlaZe
  • donlidonli Member

    @LosPollosHermanos said:
    I was wondering if there is anything that can give me one public static IP v4 address that can work on two servers/virtual servers/cloud servers, each in a different datacenter, and switch between them in a matter of minutes or seconds. The floating IP only needs to be attached to one of the servers at any given time.

    Why do you need this? No possibility of a similar DNS-based solution?

  • @donli said:

    @LosPollosHermanos said:
    I was wondering if there is anything that can give me one public static IP v4 address that can work on two servers/virtual servers/cloud servers, each in a different datacenter, and switch between them in a matter of minutes or seconds. The floating IP only needs to be attached to one of the servers at any given time.

    Why do you need this? No possibility of a similar DNS-based solution?

    No, it needs to be layer 2.

  • edited April 2018

    @teamacc said:
    @francisco and his anycast-based stuff

    I know it is possible using Anycast. It looks like BuyVM can do that but the devil may be in the details.

  • FranciscoFrancisco Top Host, Host Rep, Veteran

    @LosPollosHermanos said:

    @teamacc said:
    @francisco and his anycast-based stuff

    I am reading the BuyVM website but it's not 100% clear to me if this is what I want. The main selling point they are talking about is for content delivery. I need it for failover. They do mention they can do that for maintenance purposes which sounds close to what I am looking for. The devil may be in the details.

    You would have to sync your data between locations, we aren't mirroring any customer information between pop's.

    Content delivery is usually a popular thing for anycast since it's usually static content, so not changing much.

    Francisco

    Thanked by 1seed4u
  • WilliamWilliam Member
    edited April 2018

    LosPollosHermanos said: I need it for a service that must be very highly available. Downtime more than a few minutes a year is not an option.

    You seem to not have the budget for that. These enterprise solutions exist (notably Akamai will roll you this perfectly fine), but cost - every nine added exponentially increases the cost.

    You also seem to not have the experience to roll it yourself which might be another idea to hire - anycast is fairly easy set up, and the ideally 2 /24, ASN, and 2 servers do not add up to more than a few hundred dollars per month.

    LosPollosHermanos said: The devil may be in the details.

    It is the rerouting mentioned. There is no way around it below a full routable block, it is simply how BGP works.

  • edited April 2018

    @William said:

    LosPollosHermanos said: I need it for a service that must be very highly available. Downtime more than a few minutes a year is not an option.

    You seem to not have the budget for that. These enterprise solutions exist (notably Akamai will roll you this perfectly fine), but cost - every nine added exponentially increases the cost.

    You also seem to not have the experience to roll it yourself which might be another idea to hire - anycast is fairly easy set up, and the ideally 2 /24, ASN, and 2 servers do not add up to more than a few hundred dollars per month.

    LosPollosHermanos said: The devil may be in the details.

    It is the rerouting mentioned. There is no way around it below a full routable block, it is simply how BGP works.

    I don't have the budget to create my own Anycast network. So the more affordable option is to use someone elses Anycast network.

  • edited April 2018

    @Francisco said:

    @LosPollosHermanos said:

    @teamacc said:
    @francisco and his anycast-based stuff

    I am reading the BuyVM website but it's not 100% clear to me if this is what I want. The main selling point they are talking about is for content delivery. I need it for failover. They do mention they can do that for maintenance purposes which sounds close to what I am looking for. The devil may be in the details.

    You would have to sync your data between locations, we aren't mirroring any customer information between pop's.

    Content delivery is usually a popular thing for anycast since it's usually static content, so not changing much.

    Francisco

    Yes, I will be syncing the data. I already have it up and running and mostly tested out. Everything except the floating public IP part. Right now I have it on three separate public IP's separated by thousands of miles.

  • trewqtrewq Administrator, Patron Provider

    Could always use an Application Load Balancer with AWS. It's designed for this exact scenario.

  • edited April 2018

    @trewq said:
    Could always use an Application Load Balancer with AWS. It's designed for this exact scenario.

    It need to be at layer 2.

  • FranciscoFrancisco Top Host, Host Rep, Veteran

    LosPollosHermanos said: Yes, I will be syncing the data. I already have it up and running and mostly tested out. Everything except the floating public IP part. Right now I have it on three separate public IP's separated by thousands of miles.

    You would have to run 3 VM's (one in each) but past that I got plenty of people that run DNS clusters, etc, on anycast happily.

    If a VM goes offline though (and not the whole datacenter) then you'll have a brownout there. What the super HA people normally do is get 2 VM's in each location and do IP floating between them, and then have the anycast doing the HA/etc on the internet.

    It works well, no real complaints other than "why can't I bring my own subnets yet :(".

    Francisco

  • trewqtrewq Administrator, Patron Provider
    edited April 2018

    @LosPollosHermanos said:

    @trewq said:
    Could always use an Application Load Balancer with AWS. It's designed for this exact scenario.

    It need to be at layer 2.

    You've put yourself in a box then, is layer 2 an actual technical requirement or does it just make things easier? Your requirements are very specific any you'll likely need to roll your own anycast network.

  • edited April 2018

    @Francisco said:

    LosPollosHermanos said: Yes, I will be syncing the data. I already have it up and running and mostly tested out. Everything except the floating public IP part. Right now I have it on three separate public IP's separated by thousands of miles.

    You would have to run 3 VM's (one in each) but past that I got plenty of people that run DNS clusters, etc, on anycast happily.

    If a VM goes offline though (and not the whole datacenter) then you'll have a brownout there. What the super HA people normally do is get 2 VM's in each location and do IP floating between them, and then have the anycast doing the HA/etc on the internet.

    It works well, no real complaints other than "why can't I bring my own subnets yet :(".

    Francisco

    A brownout situation would be very bad and a lot more common than a whole datacenter going down. So I would have to plan for that.

  • edited April 2018

    @trewq said:

    @LosPollosHermanos said:

    @trewq said:
    Could always use an Application Load Balancer with AWS. It's designed for this exact scenario.

    It need to be at layer 2.

    You've put yourself in a box then, is layer 2 an actual technical requirement or does it just make things easier? Your requirements are very specific any you'll likely need to roll your own anycast network.

    I can do it with two or three separate IP addresses if I have to. It would not be as elegant a solution. Would require more setup on the customer end etc.

  • FranciscoFrancisco Top Host, Host Rep, Veteran

    LosPollosHermanos said: A brownout situation would be very bad and a lot more common than a whole datacenter going down. So I would have to plan for that.

    For sure then :)

    Let me know if you have any other questions.

    Francisco

  • edited April 2018

    Every plan and datacenter I selected on BuyVM either said no longer offered or out of stock.

  • @LosPollosHermanos said:
    Every plan and datacenter I selected on BuyVM either said no longer offered or out of stock.

    He only restocks at 1st and 10th of every month.

  • mikecmikec Member

    Have you try DNS with round-robin?

  • edited April 2018

    @mikec said:
    Have you try DNS with round-robin?

    DNS round robin or DNS failover is not an option for a bunch of reasons. On the other hand, if you can failover the IP, then DNS just follows that so layer 2 failover should work well with DNS.

  • edited April 2018

    @Francisco said:

    LosPollosHermanos said: A brownout situation would be very bad and a lot more common than a whole datacenter going down. So I would have to plan for that.

    For sure then :)

    Let me know if you have any other questions.

    Francisco

    Can the anycast be prioritized? So make it always go to New Jersey and if can't reach that then Las Vegas, regardless of the routing. I think I may need that as well because the server is a middleman of sorts. What comes and goes from one server must also be relayed to/from another location. When that 2nd location responds it needs to find it's way back to the same virtual server and not a different virtual server in a different datacenter.

    If I have a unique static public IP on each server that is not anycast in addition to the anycast IP I could probably make it work. I am assuming this has something like that so that I can SSH into each server individually.

  • freerangecloudfreerangecloud Member, Patron Provider

    The poor man's solution could be a Mikrotik VPS with your static IP routed to it, then EoIP tunnels back to your two application servers. You could script some kind of failover action to control which EoIP tunnel the address is routed over. Disadvantage is you still have a single point of failure (the Mikrotik VPS)

    Better solution (but very spendy) would be a proper BGP anycast setup, which would require your own /24 and ASN, along with upstream providers who will do BGP with you.

  • @freerangecloud said:
    The poor man's solution could be a Mikrotik VPS with your static IP routed to it, then EoIP tunnels back to your two application servers. You could script some kind of failover action to control which EoIP tunnel the address is routed over. Disadvantage is you still have a single point of failure (the Mikrotik VPS)

    Better solution (but very spendy) would be a proper BGP anycast setup, which would require your own /24 and ASN, along with upstream providers who will do BGP with you.

    Well, I'd go for the HAProxy with GRE tunnels/IPSec route instead of a Mikrotik VPS route. That's a much more poor man's solution in my books.

    The use of IPSec does not guarantee the preservation of sanity.

  • FranciscoFrancisco Top Host, Host Rep, Veteran

    LosPollosHermanos said: an the anycast be prioritized? So make it always go to New Jersey and if can't reach that then Las Vegas, regardless of the routing. I think I may need that as well because the server is a middleman of sorts. What comes and goes from one server must also be relayed to/from another location. When that 2nd location responds it needs to find it's way back to the same virtual server and not a different virtual server in a different datacenter.

    No. Anycast uses BGP trickery to work. Routes aren't constantly changing for Voxility so there's a super high (99%+) chance that you're always going to end up at the same node.

    Francisco

  • @Francisco said:

    LosPollosHermanos said: an the anycast be prioritized? So make it always go to New Jersey and if can't reach that then Las Vegas, regardless of the routing. I think I may need that as well because the server is a middleman of sorts. What comes and goes from one server must also be relayed to/from another location. When that 2nd location responds it needs to find it's way back to the same virtual server and not a different virtual server in a different datacenter.

    No. Anycast uses BGP trickery to work. Routes aren't constantly changing for Voxility so there's a super high (99%+) chance that you're always going to end up at the same node.

    Francisco

    I never fully understood what anycast does exactly when one of the nodes goes down, can you explain? Either if just a single vps goes down or your whole node goes dark, or the entire network for the place just calls it quits?

  • FranciscoFrancisco Top Host, Host Rep, Veteran
    edited April 2018

    teamacc said: I never fully understood what anycast does exactly when one of the nodes goes down, can you explain? Either if just a single vps goes down or your whole node goes dark, or the entire network for the place just calls it quits?

    If:

    1) A location goes offline, then the route is automagically removed and no traffic will ever arrive at it. Traffic will automagically route to the next closest location.

    2) The vps/node goes offline, then you'll have a brown out as the traffic will arrive at the location and not go anywhere. If this a concern (you need 5 9's and all that) you can opt to get a 2nd (or more) VPS in the same location and use something like keepalived or similar to float the IP between the services

    Francisco

  • edited April 2018

    My understanding is that since the anycast IP is announced at multiple BGP locations, it basically just depends which router your traffic hits first.

    I believe there is a way to prioritize it but I think you have to have your own backbone custom configured for it. I don't think getting your own /24 and having a 3rd party announce it for you is good enough to prioritize unless there is someone who can also offer that as part of their anycast service. If there is such a service it probably wouldn't be cheap.

Sign In or Register to comment.