For high availabilty, a live system hosted in the Elastic Cloud consists of several identical live servers. These live servers deliver the same content. They are located behind a load balancer that acts as the entrance point for HTTP requests, distributing them equally to the live servers. If a live server fails, the load balancer is notified in order to stop forwarding requests to the failed server. A new EC2 instance is automatically created as a replacement for the one that stopped working.
Mostly, not one but several domains or subdomains are hosted in the Cloud for every customer (e.g. customer.com and www.customer.com). All HTTP requests directed to the customer’s domains and subdomains are intended to be handled by the load balancer.
According to the rules of the DENIC, a German 2nd-level domain needs to be bound to an IP address (this is done using an A record). However, since the load balancer, as opposed to the EC2 instances, does not have a fixed IP address but one that changes occasionally, the primary domain (such as customer.de) is bound to an EC2 instance. This instance redirects all requests to a subdomain (e.g. www). This subdomain is bound to the load balancer’s host name by means of a CNAME record in the DNS. The host name of the load balancer never changes.
Additional subdomains can also be bound to the load balancer using a CNAME record.
No, additional primary domains are assigned to the same instance as the first primary domain. Redirection or VirtualHost settings in the web server ensure that the proper rails application responds to incoming requests.
In this case a new instance is created. To this instance, the IP address of the unresponsive instance is assigned.
Yes, up to a predefined total number of instances.
Normally, it takes approximately 20 to 45 minutes for an EC2 instance to be ready. It will be created timely so that the increasing number of requests can be handled properly.