- Più recenti
- Maggior numero di voti
- Maggior numero di commenti
You don't have to do anything on the app side for failover as it's transparent - the endpoint is the same. AWS handles the DNS name (connection string) to point to the appropriate place - the string doesn't change, so you don't need to manage this. However you want to make sure you don't have a long DNS TTL in clients or the old DNS record will be cached for too long; 60 seconds is appropriate.
When the original rds is back you don't need to do anything. Failback isn't needed as you're still operating at same performance specs as original. If you want though you can manually force a failback or a failover at any time by rebooting the primary instance or making an API call.
Aurora is a very different architecture so high availability is handled differently. It's worth spending 5 minutes here - https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/Concepts.AuroraHighAvailability.html.
Your stored data is safe if an instance fails (but you should still have a backup routine!), but availability during a failure depends on how the RDS instance is configured. With a single-AZ deployment you will have an outage. With Multi-AZ the DB will have a short outage while failing over to the standby.
WIth Aurora databases things are a bit different, but it sounds like you're not asking about that.
Thanks @skinsman for the answer. Some followup questions:
- With Multi-AZ, you mentioned that it will have a short outage while failing over to the standby. Do I have to do anything on the app side (like connecting the app to the standby database).
- What will I have to do when the original rds is back ?
- Not sure why 'things are a bit different' for Aurora. Please describe
Contenuto pertinente
- AWS UFFICIALEAggiornata 2 anni fa
- AWS UFFICIALEAggiornata un anno fa
- Perché non riesco ad accedere o visualizzare i dati di Performance Insights in Amazon RDS per MySQL?AWS UFFICIALEAggiornata 3 anni fa
- AWS UFFICIALEAggiornata 2 anni fa
Thanks for the prompt follow-up response. So multi-az is great for transparent failover. That's great. But how about single-AZ, how will a failure look like ? Eg. if I have a single AZ RDS, and your machine crashed or zone shutdown. How long will it take for AWS to get it back and is that even guaranteed?
Have a look at the RDS SLA - https://aws.amazon.com/rds/sla/. Multi-AZ is 99.95% versus Single-AZ 99.5%. With Single-AZ you have a single point of failure so an outage is possible either because of the instance or AZ. Yes it will be made available again ASAP as AWS are serious about the SLAs. That's guaranteed - the only way you could in theory lose a DB is if there's a major storage issue in EBS (I've never seen it happen), in which case a restore from backup would be needed.