Transactional SQL Server Container Snapshots for Cross-Cluster Reuse
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current Kubernetes systems lack a solution to create a transactional consistent copy of SQL server application pods for reuse across different clusters, which is essential for secondary workloads like backup, test/dev, and analytics, as existing methods impact production quality of service.
Innovation Solution
A system and method using a CDM tool and backup toolkit to create transactional consistent snapshot copies of SQL server containers, allowing these copies to be reused across different Kubernetes clusters without impacting production workloads, by quiescing and unquiescing databases and utilizing storage system local snapshots.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of manufacture
If local snapshots are created in the same namespace as production persistent volumes, then snapshot creation is simple, but the snapshots cannot be moved to another namespace or cluster without copying the entire set of snapshots which is costly and time-consuming
Solution Approach 1:
The patent segments the snapshot management by creating snapshots in a dedicated namespace separate from production workloads. This allows snapshots to be independently managed, moved, and reused across different Kubernetes clusters without affecting production operations. The snapshot data is divided into portable units that can be transferred independently.
Solution Approach 2:
The patent introduces an intermediary mechanism (external storage system with namespace-agnostic snapshot capabilities) that mediates between production persistent volumes and secondary workloads. This intermediary allows snapshots to be created from production volumes and then consumed by secondary workloads in different namespaces or clusters without requiring full data copying.
2Productivity
If production deployment pods and clusters are used for secondary workloads like backup and test/dev, then resource utilization is maximized, but the quality of service of the production application is negatively impacted
Solution Approach 1:
The patent creates transactional consistent snapshot copies of production data that can be used for secondary workloads. These copies are identical to production data at a specific point in time but can be freely used for backup, test/dev, and analytics without impacting production QoS. The copies enable resource-efficient secondary workloads while preserving production performance.
Solution Approach 2:
The patent adds a new dimension to resource utilization by introducing a dedicated namespace for secondary workloads that operates independently from production workloads. This dimensional separation allows both production and secondary workloads to coexist without resource contention, maximizing overall productivity while maintaining production reliability.
3Device complexity
If there are no default tools to create transactional consistent copies of SQL server pods, then the system architecture remains simple, but dev ops personas lack the capability to create reliable copies for secondary workloads
Solution Approach 1:
The patent implements a universal tool that works across different SQL Server versions and Kubernetes configurations. The tool provides multi-functional capabilities including creating snapshots, ensuring transactional consistency, and enabling cross-cluster portability. This single universal solution replaces the need for multiple specialized tools while maintaining architectural simplicity.
Solution Approach 2:
The patent enables self-service capabilities for DevOps personas through automated tools that handle the complex tasks of creating transactional consistent snapshots. The tools automatically manage the quiescing process, snapshot creation, and consistency verification without requiring deep expertise in SQL Server internals or Kubernetes architecture, making the process accessible to operational personnel.
4Reliability
If the entire set of snapshots must be copied to move them to another cluster, then data integrity is maintained, but the operation becomes very costly and time-consuming
Solution Approach 1:
The patent performs preliminary actions by creating snapshots with portable metadata and structure in advance. The snapshots are prepared with cross-cluster compatibility in mind, including proper namespace labeling and storage system configuration. This preliminary preparation enables rapid migration to different clusters without requiring full data copying, significantly reducing migration time while maintaining data integrity.
Data Source
AI summary
Embodiments for creating transactional consistent snapshot copies of SQL server containers in a Kubernetes system for copy reuse on different clusters to facilitate processing local snapshots for secondary workloads without impacting production quality of service. A copy data management (CDM) tool acts as an orchestrator, while a backup toolkit is deployed in the namespace of the production cluster containers. A container storage interface (CSI) plugin supplies persistent storage to the containers. Before taking a copy, the process posts the toolkit in the container and a quiesce/unquiesce operation is then performed. The databases are first quiesced, the snapshot copy is taken, and then the databases are unquiesced. The toolkit is then removed, thus producing a transactional consistent backup in a different namespace.


