AWS RDS - Enhancements

AWS RDS Enhancements: 12/14/2023


RDS is so cool for customers in many ways - We are now in fast agile mode, with script we can spin up multiple databases in no time, HA setups are very easy, no manual errors in setting up parameters etc. 

Few of the enhancement requests that I made recently are - 


1. RDS Custom doesn't have stop functionality. Really?? Any database needs to be stopped for various reason. Kind of puzzled why would AWS release without a feature that every customer would need.


Any organization that has a database will require

-  a basic requirement of Database is stop the DB for brief scream test

-  avoid data written to DB while switching DB to different server

-  avoid incurring cost during weekends for dev/test 

-  It is against pay as you go model of AWS


RDS custom is not customer frienly that doesn't have stop functionality.  

Can AWS take this as serious and get us simple functionality that everyone needs.


2. RDS instances wakes up after 7 days when you stop it. Not sure how aws came up with arbitrary 7 days. It should be customer driven number not AWS. Even if AWS wants to wake up the instance for some reason, it can be atleast 30 days like Mongo Atlas.  If AWS need to start for some patching or update, it can be done without allowing any app connections to the underlying DB and can be brought back down. 


3. TTL for DB's --- Awh!!! what is that? Heard TTL for DNS record but not on RDS, yes, many times on lab environments are created for destoryed more frequently. Was looking for good feature that will benefit many training institutes. While creating any resources if it creates with TTL of say 5 days, automatically resources go to terminated status, no need of extra lambda etc to kill the instances on the accounts. 


4. mTLS for RDS - TLS is pretty easy to setup with RDS, takes lot of administration burden as well in rotating and maintaining certs. however it doesn't support mTLS natively for all engine flavors. mTLS is the way to authenticating both servers and clients who they claim to be with CAs. I have created enhancement request for this.


5. Multi-AZ for Oracle RDS Custom. Multi-AZ comes into play if server or AZ failure occurs, it will bring the DB back online within 2 mins or so. It can be done with Storage layer based real time synchronous replication or Data guard based. While both are protecting data in different AZ, later has avoids physical corruption propagation to different AZ.


6. RDS Custom Scaling down or up changes the IP. whaaat!! yes, thats fine - behind the scenes DNS records are updated to point to new IP. So clients can connect to new Scaled compute of RDS. However this poses a problem to those who has IP based stateful firewalls that filters outbound traffic from RDS instances to external communication or on-premise(North-South) or other VPC East-West Traffic. Manual change on firewall is NOT desired, time consuming/dependency with external team. I created a case to see if they can take out ENI and attach to the new Compute or attach the Same IP after trashing the old Compute. that will solve the problem for all AWS customers. 


7. RDS - In Place Restore/Recovery for corruption, RDS Custom for Oracle doesn't give option to restore in place recovery. ArticleRDS Corruption Protection Mechanisms talks about setting up Database parameters which incurrs performance Penalties. Also it talks about Point In Time Restore before corruption occurred, It is not good to loose data beyond that failure point. Other Option could be AWS can get us Point In Time Mounted replica creation from backup snapshots+Archivelog which will really help in Block Corruption/Data File scenario.Created Case with AWS, lets see if they value the feedback and take it as a feature.


8. RDS Custom for Oracle comes with OEL 7.9; Since it is going to unsupported category, it has to come with OEL 8.x; Similarly noticed that it comes with awscli 1.x version which is very old. created case to correct that as well. 

Which one is best?? Leave your comments. 

No comments: