Virtualized System Configuration Schema for Default State Management
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current configuration management systems in virtualized computing environments cannot track and revert configuration tasks performed by users, especially at scale, due to the lack of persistence for configuration actions, leading to difficulties in managing complex systems with numerous configurations.
Innovation Solution
Implementing a configuration schema that classifies properties as either configuration or state, with vital and cached states, and using a key-value store to persist and manage configurations through API calls, allowing for the combination of default and user-defined configurations, and enabling the retrieval and resetting of default configurations.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Loss of information
If configuration actions are not persisted in a traditional system, then the system maintains simplicity in its persistence layer, but the ability to track and revert configuration tasks is lost
Solution Approach 1:
The configuration schema segments properties into distinct categories: configuration properties (user-provided), vital state (must persist), and cached state (optional persistence). This segmentation enables selective persistence of only necessary configuration data, tracking configuration tasks without requiring complete system state persistence, thus resolving the contradiction between information retention and system complexity
Solution Approach 2:
The configuration schema is defined upfront before the system runs, pre-classifying all properties into configuration or state categories. This preliminary classification establishes a clear framework for what should be tracked and persisted, enabling configuration task tracking from the outset without adding complexity during system operation
2Loss of information
If all configuration properties are persisted, then complete configuration history is available, but storage requirements and system complexity increase
Solution Approach 1:
Different persistence policies are applied to different types of properties based on their classification in the configuration schema. Configuration properties and vital state properties are persisted to disk, while cached state properties are kept in memory without disk persistence. This local differentiation of persistence quality ensures complete configuration history is available for actionable data while minimizing storage requirements by excluding transient cached data
3Ease of operation
If a configuration schema is implemented to classify properties, then configuration management becomes systematic and reversible, but the initial system setup and schema definition complexity increases
Solution Approach 1:
The configuration schema serves multiple functions simultaneously: it classifies properties into configuration and state categories, defines persistence policies, establishes data types and validation rules, and provides the foundation for configuration tracking and reversal. This multi-functionality consolidates what could be separate complex systems into a single unified schema, improving ease of operation while managing overall complexity
Solution Approach 2:
The system transitions from a traditional approach where all properties are treated uniformly to a parameterized approach where each property has defined attributes (type, persistence requirement, defaults). This parameterization enables systematic configuration management through the schema, making operations easier despite the initial setup complexity by providing a consistent framework
Data Source
AI summary
A virtualized computing system includes a plurality of hosts, each of which is configured with a virtualization software for supporting execution of virtual machines therein. A method of managing a configuration of a system service in the virtualized computing system includes: upon receiving an application program interface (API) call to operate on a configuration object for a system service that is backed by a configuration schema of the system service, updating a database in accordance with the configuration schema to update or store the configuration of the system service. The system service executes with a configuration that is a combination of a default configuration that is defined in a default configuration schema of the system service and the configuration stored in the database.


