High Availability (HA) on Amazon RDS
- AWS RDS supports High Availability Architectures, So lets explore options
- Single-AZ Deployment
- Multi-Az Deployment
Note: Install mysql workbench
- Install mysql workbench using chocolatey
choco install mysql.workbench
- To manually install mysql workbench Refer Here
Single AZ Deployment
- If we want to use RDS for some Proof of Concept (POC), deploy development environment or deploy non critical, non production environments, we might not need HA, so in these case we can launch RDS instance in Single AZ

- Lets create a single AZ deployment

- Connecting to mysql db over public network (not recommended)

High AVAILABILITY MULTIPLE AZ (multi Az)
- When we are planning for mission-critical databases for production usage, we want to have High Availability since we cannot afford downtimes
- AWS gives option to deploy a data base in multi-AZ architecture
- We can choose AZ where we want primary database instance to be in, AWS will choose standy instance and storage in other AZ of same region.

- When failover happens, the standby is automatically propagated to the aster and application traffic fails over to the new master/primary.
- In AWS RDS database is exposed using DNS endpoint which is mapped to master and standby instances

Next Steps
- In Reality databases will never be exposed to public networks, so how can i create a private database which is accesible only to my networks in aws
- We need a performing database with decent cpu, ram and storage where can we configure these details
- How i change the size of my database as the load increases
- Will i need to go through all of the ui options to create a database rds or writing some kind of script will be better?
- AWS CLI Refer Here
