Amazon provides three primary services to handle traffic. Amazon Route 53 is a DNS service. AWS Direct Connect is a fast connection to between Amazon cloud and on-premise resources. Elastic Load Balancer (ELB) handles and distributes traffic between different nodes.

Amazon Route 53

Route53 is a DNS Service that provides a reliable and scalable way to route traffic. DNS maps IP to a domain name. Its key features are:

  • global, highly available DNS
  • can be used to register domains
  • uses AWS nameservers
  • supports IPv4 and IPv6
  • supports public (available to the Internet) and private DNS zones (only available within a VPC)
  • automated via API
    • IP addresses are transient as new instances can be created and terminated any time. This allows to maintain a consistent endpoint throughout the changes.
  • health checks
    • configure route 53 set off alarms or other responses when a pre-defined event is occurs
  • supports different routing methods
    • latency: routing based on fastest path
    • geographic: geographic routing, for example all European traffic is routed to London and all North American traffic is routed to New York City
    • failover: if one node fails, go to another pre-defined node
    • weighted set: distribute percentage of traffic to different endpoints
  • built-in integration with other AWS cloud services

To setup:

  1. Login to console
  2. Choose hosted name > DNS resolution strategies
  3. The remaining choices depend on what you are looking to setup

AWS Direct Connect

AWS Direct Connect is used when you have large amounts of data residing outside AWS that needs to be accessed frequently. For example, you application is running on AWS but the database resides on a local server. In this case, direct connect will let the database connect directly to AWS through a virtual interface, thus making the connection faster.

Elastic Load Balancer (ELB)

ELB handles and distributes traffic to your nodes

  • You can route traffic by adding listener, creating rules, and creating target groups.
  • ELB can scale automatically
  • use a single CNAME for all your servers
  • supports HTTP, HTTPS, HTTP/2, and websockets
  • provides load balance metrics, access logs, and health checks
  • support multiple domains with the same load balancer
  • supports path and host-based routing
  • native IPv6 support, AWS WAF, dynamic ports
  • deletion protection and request tracing

To setup ELB,

  1. Login to EC2 console
  2. Click on Load Balancer
  3. Launch application load balancer
  4. Configure Routing
  5. Register targets
  6. Verify operation of the application load balancer