Continuous Deployment Microservice Configuration with Shared Parent Files
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional technologies for managing microservices configurations in a continuous deployment environment require multiple deployment files to be updated for shared configuration values, leading to cumbersome management and potential errors, especially when dealing with large numbers of business units and microservices.
Innovation Solution
Implement a software configuration management system that maintains a single copy of configuration map representations on a repository like GitHub, using a continuous deployment module to monitor changes and deploy microservices based on the modified configuration files, ensuring that changes affect only relevant applications across multiple namespaces.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If multiple deployment files are updated for shared configuration values across business units, then configuration changes can be applied to all relevant microservices, but the management becomes cumbersome and error-prone
Solution Approach 1:
The patent merges multiple deployment files into a single parent deployment file that contains shared configuration values. This parent file is then referenced by multiple child deployment files for different business units. When a configuration change is needed, only the parent file is updated, and the change automatically propagates to all child deployment files, eliminating the need to manually update multiple files and reducing management complexity while maintaining reliability
Solution Approach 2:
The parent deployment file serves as a universal configuration source that can be referenced by multiple child deployment files across different business units. This universal file contains common configuration values that are shared across multiple microservices and namespaces, allowing a single file to fulfill the configuration management function for multiple applications simultaneously
2Adaptability or versatility
If configuration values are replicated across multiple deployment files, then each microservice can have its own configuration copy, but the number of files to maintain increases significantly
Solution Approach 1:
Instead of replicating configuration values across multiple deployment files, the patent combines them into a single parent deployment file. Child deployment files reference the parent file rather than containing duplicate configuration data. This approach maintains adaptability by allowing each child file to still be customized while dramatically reducing the total quantity of deployment files that need to be created and maintained
Solution Approach 2:
The patent uses a reference-based copying mechanism where child deployment files copy the reference to the parent deployment file rather than copying the actual configuration data. This allows configurations to be shared across multiple files without duplicating the underlying content, reducing file quantity while maintaining the ability to deploy configurations to multiple microservices
3Adaptability or versatility
If deployment files are updated manually for each business unit, then specific configurations can be tailored to each unit, but the time and effort required increases
Solution Approach 1:
The patent performs preliminary action by creating a parent deployment file that contains all shared configuration values before they are needed by individual business units. This parent file is prepared in advance and can be automatically propagated to multiple child deployment files, eliminating the need for manual updates for each business unit while still allowing specific configurations to be tailored when needed
Solution Approach 2:
The system implements feedback mechanisms that automatically detect changes in the parent deployment file and propagate them to child deployment files and corresponding microservices. This automated feedback loop eliminates manual intervention, increases deployment speed, while maintaining the ability to customize configurations for specific business units through the child file structure
Data Source
AI summary
Methods, system, and non-transitory processor-readable storage medium for efficient software configuration management system in a continuous deployment environment are provided herein. An example method includes monitoring, by a continuous deployment module, configuration deployment file changes in a software configuration management system, where the software configuration management system comprises a source repository and a target platform. The continuous deployment module detects modification of a configuration deployment file on the source repository, and deploys at least one microservice application on the target platform based on a directory in the source repository in which the modified configuration deployment file was detected.


