How to build a Highly Available environment on AWS

There are few important things to take care regarding High Availability.
  • Always, run your instances in 2 Availability Zone (that's minimum)
  • if you want 99.99% availability, then 2 AZ with in a region is enough. 
  • For 99.999% availability, AWS recommends implementing your infrastructure in 2 regions. 
We have talked about the usage of Route53 in detail in the following video.


Route53 supports 5 types of routing:
  1. Simple routing 
  2. Weighted round robin 
  3. Latency-based routing 
  4. Health check and DNS failover 
  5. Geo-location routing 

AWS RDS & Read Replica -- Query from Viewers - 004

Friends,
I got few questions related to RDS on this video tutorial


1. So when we create a read replica, can we have read replicas of different flavor from the primary, Mean to ask , If my primary is MYSQL , can i have one of the read replica's as aurora ? is that a good practice to have heterogeneous DBs like that ? 
ANS: It is not possible to have different flavor for all. Only for RDS MySQL they allow to create Aurora as read-replica (this is because AWS wants adoption of Aurora to be more and easier). Also, Aurora is a good engineered version of MySQL. Good practice? - NO

2. The whole intention of creating the read replica is to divert or spread the read traffic evenly, after creating a read replica , does amazon take care of doing the work of balancing the load, or should we connect the respective created read replicas with our instances? i created one read replica , but dint know where to connect the created one to the instance . 
ANS: When you create read replica you get a Endpoint for the same. You will have use this endpoint in your application to send all the READ traffic here. If you have multiple Read Replicas from the same RDS, you can use a custom Load Balancer in front of them as well. 

3. Why is it mandate to enable the back up for read replicas? 
ANS: There is no backup required for Read Replicas. All Read Replica DB instances are created as Single-AZ deployments with backups disabled. All other DB instance attributes (including DB security groups and DB parameter groups) are inherited from the source DB instance, except as specified below.


Important - The source DB instance must have backup retention enabled.

4. While creating a RDS DB, there is an option which says " Publicly accessible " yes or no , normally we keep the DB in the private subnet right ? can you help me with any case scenario where we will expose the DB to the public ?
ANS: "Publicly Accessible" attribute decides whether RDS would be accessible using a PUBLIC IP or not. There could be a case where you want to keep a DB in Public subnet and allow Publicly accessible so that one of your remote office location can upload data (there is no VPN suppose). In this case, in order to keep RDS secure, you will allow only one PUBLIC IP (of your remote office) in the Security Group of RDS.
_________________________________________________
If you have got benefited from KnowledgeIndia, please help us by SHARING this blog post on your Facebook, LinkedIn and Twitter. Thanks a lot.. Happy learning AWS !!!

Selected videos!