Hi,

I'm about to start a new project and there is a hosting issue that has been discussed about mirroring the servers and having some backup.

A different team is proposing a mirroring option that has server A with one hosting provider and server B with another provider. They are working on a solution that will detect when server A is down so it can redirect to server B.

At first glance I'm not sure that's possible. At least what I think I know is that both servers would need to be within the same network or else, how can one domain work for two different DNS.

I've been doing some research and so far have come empty handed and was wondering if someone here could have some other input regarding this issue we are facing.

Thanks!

Is this webhosting that you are referring to? If so, its easily accomplished with Load Balancing (LB) technologies. For example, most appliance load balancer appliances will host front-end virtual IPs and manage traffic to your back end real servers. If a server, service, or whatever the LB is monitoring goes down, it is intelligent enough to not send traffic to the server that is non responsive.

both servers would need to be within the same network or else, how can one domain work for two different DNS

So, please clarify what you are trying to accomplish here. Are you saying that these computers are part of the same Active Directory domain? what do you mean by two different DNS? Why would they have to be on the same network? Packets can route accross different networks...

Well, I'll try to clarify it a little bit more. (even for me)

Server A (SA) will be with hosting provider A (HPA).
Server B (SB) will be with hosting provider B (HPB).

Each server has the website and the database installed. SA is supposed to be the primary server and SB would just be there as a backup.

First, there should be some sort of process that is updating the database in SB.

So, when, and if, SA goes down, people entering the site should be redirected to SB, that it has, or should have, the database updated, so for visitors this redirection is "transparent".

Our question is if that idea of how it should work can be done through proxys, or load balancers, or just through DNS settings (the domain pointing to several IPs from different servers).

Aside from the load balancing or failover process, lets assume that you already have a solution for your data replication... In any event there are a lot of products out there to handle the real-time data replication...

For load balancing/failover, there are several ways to accomplish this. Each option has its pros and cons.

For example, can you failover with DNS. Load balancing with DNS can be done as well by having two records with the same name pointing to different IPs, but DNS cannot determine when a server has failed so there is no failover in this solution. So forget about load balancing with DNS for now. For failover, you have a record called www.website.com. You currently have this record pointing to the public IP address of server A. Now server A fails, so you need to simply update the www record to point to server B.

DNS option -->

Pros:

  1. Easy to implement
  2. Very low cost
  3. No additional hardware or software required

Cons:

  1. Manual process for failover
  2. Failover is not instant because DNS records are cached. Cached time depends on the TTL value you apply to the www record. You would have to have a very low TTL value for ensuring that all visitors will begin accessing the secondary site.

DNS is not a common approach for failover as you can see due to its limitations. For load balancing, yes its fine. That's called "DNS Round Robin"

Load Balancer Option -->

Pros:

  1. Real time load balancing and/or Failover
  2. Automatic, no manual process required.

Cons:

  1. High cost
  2. Requires technical knowledge to manage appliance
  3. To ensure high availability in your design, at least two LBs are required running in HA mode.
Proxy -->

I dont see how a proxy server would be of help in this scenario.

Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.