Object-Oriented Infrastructure-as-Code Platform for Scalable Provisioning
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional infrastructure-as-code (IAC) systems are single-threaded and not scalable, making them inadequate for implementing Internet of Components (IoC) functionalities.
Innovation Solution
An object-oriented infrastructure-as-code platform (OOIACP) is introduced, which uses a declarative configuration language (DCL)-based IAC software tool and a wrapper tool to establish a class hierarchy, set semaphores for resource control, and employ before- and after-hooks to convert requests into DCL requests, enabling object-oriented programming features like Abstraction, Data Hiding, and Polymorphism.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If conventional single-threaded IAC systems are used, then implementation simplicity is maintained, but scalability and parallelism are limited
Solution Approach 1:
The system segments the monolithic IAC process into multiple independent worker processes that can execute in parallel. Each worker handles specific infrastructure provisioning tasks independently, enabling the system to scale horizontally by adding more worker processes without increasing the complexity of individual components.
Solution Approach 2:
A queue-based intermediary mechanism is introduced between the main process and worker processes. Requests are enqueued and workers dequeue tasks for parallel execution, acting as a mediator that coordinates multiple processes while maintaining system organization and preventing chaos despite increased parallelism.
2Reliability
If conventional IAC systems are used, then resource control is simplified, but concurrent access management is inadequate
Solution Approach 1:
Semaphores are introduced as intermediary synchronization primitives that manage concurrent access to shared resources. These semaphore objects act as mediators between multiple worker processes and protected resources, ensuring reliable resource control through structured waiting and signaling mechanisms without requiring complex inter-process communication protocols.
3Adaptability or versatility
If DCL-based IAC tools are used directly, then provisioning functionality is provided, but object-oriented programming features are absent
Solution Approach 1:
A wrapper class layer is introduced as an intermediary between the object-oriented programming interface and the underlying DCL-based IAC tool. The wrapper translates OOP method calls into DCL operations, providing polymorphic behavior and abstraction while maintaining compatibility with existing DCL tools. This mediator layer enables OOP features without requiring fundamental changes to the proven DCL provisioning functionality.
Data Source
AI summary
Novel tools and techniques are provided for implementing object-oriented infrastructure-as-code platform (“OOIACP”) and its functionalities. In various embodiments, an OOIACP may receive a request to perform a function from a requesting device. The OOIACP includes a declarative configuration language (“DCL”)-based infrastructure-as-code (“IAC”) software tool that provides structure and data functionalities and a wrapper tool that provides algorithm and sequence functionalities to the IAC software tool to convert the IAC software tool into an object-oriented programming (“OOP”)-based IAC system. The OOIACP uses a run command to perform the requested function, by identifying classes within a class hierarchy associated with the requested function, and initiating a set of procedures in each identified class. Each class and subclass within the class hierarchy has one or more predefined class behaviors, and each subclass inherits class behaviors of classes to which it belongs and of any intermediate subclasses.


