- Newest
- Most votes
- Most comments
Hi, From what I have understood from your question, you might need to setup multi-master R/W nodes DB to get "active-active" replication model. As of today RDS does not support multi-master. Only Aurora supports this but limited only for MySQL that too little old compatible 5.6 version(need to cross check this). Other limitation of aurora multi master is that it is tied to single region(I think us-east-1, us-east-2, us-west-2 as of today) and only 2 AZ. So, basically your R/W instances is placed only in 2 AZ's however the underlying storage can span multi-AZ. I think you can configure MySQL binlog replication between 2 nodes. The main point to note here is - your application needs to implement health checks between 2 nodes, load balance requests(since you can use both endpoints to write) and have logic to switch endpoints if any failure happens in any AZ. Nothing is managed by AWS here. Please go through this blog for more details https://aws.amazon.com/blogs/database/building-highly-available-mysql-applications-using-amazon-aurora-mmsr/
From the referenced blog it seems that you are attempting to create a maintenance environment for some maintenance such as version upgrade? If so you should check out the RDS blue green deployments feature. This is probably what you want. Hth.
https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/blue-green-deployments-overview.html
Hi, thanks for the answer, we are trying to achieve "0 downtime" solution for AWS RDS databases, both, in case of update scenario and database fail over, and this "blue/green" solution does have downtime.
Relevant content
- Accepted Answerasked a year ago
- asked 3 years ago
- AWS OFFICIALUpdated 2 years ago
- AWS OFFICIALUpdated a year ago
- AWS OFFICIALUpdated a year ago
- AWS OFFICIALUpdated 2 years ago
Hi, thanks for the answer, as far as we have found out, Amazon aurora version 1 (the one, which supports Mysql 5.6) has "end of life" date, which is quite soon, so that is out of option. I have tested implementing "active-active" replication using "binlog", using single-az RDS mysql database, and the question, is if "multi-az cluster" and "aurora cluster" has any restrictions, that make the "binlog" replication being setup-ed impossible.
Hey, sorry for late reply. I do not see any restrictions in setting up binlog replication in RDS multi-az or Aurora cluster. But be sure this can take up storage space and can have performance issues if you set up ROW level logging. You can also set up till how long RDS can retain the binary logs. Also you can check binary logs from the writer instance only. You cannot access read only replica instances. Also if you want almost 'zero' downtime, I would recommend to check out Aurora Global Database. The replication is done physically with AWS dedicated infrastructure rather than logical(binlog). https://aws.amazon.com/premiumsupport/knowledge-center/enable-binary-logging-aurora/