Is downtime shorter during maintenance window upgrade for multi-AZ than manual patch applying?



Whenever we get message from AWS about critical upgrades to our Multi-AZ MariaDB, we schedule a night where we kick all of our clients from the servers and manually upgrade the database with control before the patching time runs out. The upgrades take sometimes a long time (10 minutes) and both of the instances seem to be down.

However, while reading through documentation, upgrades during maintenance windows should cause "at most short downtime when switching multi-AZ".

Are manual patches more disruptive? Is it better to just rely on automatic upgrades?

asked 7 months ago167 views
1 Answer

When working with Multi-AZ (Multiple Availability Zone) instances, AWS RDS (Relational Database Service) typically minimizes downtime during maintenance by using the standby instance.

When an upgrade is performed, AWS RDS will upgrade the standby instance first, then perform a failover from the primary to the standby. This results in a short period of unavailability, typically lasting a few minutes (often less than 60 seconds), while the failover occurs. Once the failover is complete, your application should reconnect to the new primary instance and continue working as normal.

If you're manually upgrading your instances and both are down at the same time, it sounds like you're not taking full advantage of the Multi-AZ setup. The key advantage of Multi-AZ is that you can have one instance available while the other is being upgraded, and vice versa.

Generally speaking, relying on automatic upgrades during maintenance windows is recommended for most users, as AWS handles the complexity of managing the upgrade process and minimizes downtime. However, there may be circumstances where manual upgrades are preferred, for instance if you have specific requirements around testing the new version, or need to perform the upgrade at a specific time outside of your usual maintenance window.

In your case, it sounds like allowing AWS to manage the upgrades during the maintenance window may be a good fit, as it could reduce your downtime and simplify your upgrade process. You may want to test this during a period of low usage to see how it works for your specific application.

Please note that it's also important to ensure that your application's database connection settings and error handling are properly configured to handle the brief outage that occurs during the failover process.

profile picture
answered 7 months ago

You are not logged in. Log in to post an answer.

A good answer clearly answers the question and provides constructive feedback and encourages professional growth in the question asker.

Guidelines for Answering Questions