Cloud DNS and IPtables for RDBMS Failover
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Ensuring high availability and implementing a single endpoint solution for a Relational Database Management System (RDBMS) in a cloud-based computing environment is challenging due to the complexity of traditional approaches, particularly in multi-availability zones where failover mechanisms need to be secure, automatic, and accurate.
Innovation Solution
The solution involves deploying a service cluster with a master and standby RDBMS VM node across different availability zones, using cloud DNS to route requests through forwarding VMs with IPtables that automatically update to redirect traffic to the standby node in case of master node failure, ensuring minimal downtime and maintaining a single endpoint for applications.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If traditional approaches are used to implement a single endpoint solution for RDBMS in cloud environment, then the system can provide basic service functionality, but it cannot meet high availability standards and the implementation becomes overly complex
Solution Approach 1:
The patent introduces forwarding VMs as intermediary components between applications and the RDBMS service. These forwarding VMs receive client connections and forward them to the appropriate master or standby RDBMS VM nodes. This intermediary layer abstracts the complexity of failover mechanisms from applications, providing a simple single endpoint while enabling high availability through automatic failover.
Solution Approach 2:
The system segments the RDBMS service into separate master and standby VM nodes, each running in different availability zones. This segmentation allows independent operation and failure isolation of each node, enabling the system to maintain high availability by switching between segments during failover events without requiring complete system redundancy.
2Extent of automation
If forwarding VMs with IPtables are used to route traffic to master and standby nodes, then automatic failover can be achieved, but the system requires multiple components across different availability zones increasing operational complexity
Solution Approach 1:
The forwarding VMs are configured with IPtables rules that automatically detect master node failures and redirect traffic to standby nodes without manual intervention. The system implements self-service failover where the networking layer automatically adapts to node failures, eliminating the need for manual configuration changes or complex orchestration systems while maintaining automatic failover capability.
3Ease of operation
If a single endpoint DNS name is used to represent the RDBMS service, then applications can connect without knowing about multiple nodes, but the system must implement complex DNS routing and IP address management across availability zones
Solution Approach 1:
The system uses cloud DNS web service to create multiple A records with the same DNS name pointing to different IP addresses of forwarding VMs in different availability zones. This copying of the DNS endpoint across zones allows applications to connect using a single DNS name while the DNS service automatically distributes connections across multiple physical endpoints, abstracting away the complexity of multi-zone architecture from applications.
Data Source
AI summary
A first forwarding VM may execute in a first availability zone and have a first IP address. Similarly, a second forwarding VM may execute in a second availability zone and have a second IP address. The first and second IP addresses may be recorded with a cloud DNS web service of a cloud provider such that both receive requests from applications directed to a particular DNS name acting as a single endpoint. A service cluster may include a master VM node and a standby VM node. An IPtable in each forwarding VM may forward a request having a port value to a cluster port value associated with the master VM node. Upon a failure of the master VM node, the current standby VM node may be promoted to execute in master mode and the IPtables may be updated to now forward requests having the port value to a cluster port value associated with the newly promoted master VM node (which was previously the standby VM node).


