Cluster Service Deployment Using Dependency-Based Run Levels

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing cluster systems that support declarative deployment lack a method to determine the deployment order of services based on their dependencies, leading to inefficiencies in service deployment.

Innovation Solution

A method for deploying services in a cluster system that uses a deployment manager to control the order of service deployment based on required run levels, which are determined by the dependency between services, and utilizes a manifest file to manage the deployment process.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If declarative deployment is adopted in cluster systems, then ease of operation is improved, but the ability to control deployment order based on service dependencies is lost

Engineering Contradiction:
Improveease of configurationVSAvoiddeployment order control
Core Design Contradiction:
Ease of operationVSDevice complexity

Solution Approach 1:

The deployment process is segmented into discrete stages corresponding to different run levels. Each service is assigned to a specific run level based on its dependencies, allowing the system to manage complex deployment orders through simple hierarchical segmentation rather than complex inter-service coordination.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system performs preliminary classification of services into different run levels based on their dependency relationships before deployment begins. This preliminary action establishes the deployment order in advance, eliminating the need for complex real-time dependency resolution during the actual deployment process.

Inventive Principle:
Principle #10Preliminary action

2Productivity

If service deployment order is not controlled based on dependencies, then productivity is improved through parallel deployment, but reliability deteriorates due to deployment failures

Engineering Contradiction:
Improvedeployment speedVSAvoiddeployment success rate
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

Different services are assigned different run levels based on their specific dependency requirements. Services with no dependencies can be deployed at lower run levels in parallel, while services with dependencies are assigned to higher run levels. This local differentiation allows maximum parallelization while ensuring reliability.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The system dynamically determines deployment order by evaluating service dependencies and assigning appropriate run levels. Rather than using a fixed sequential order or purely parallel deployment, the system adapts the deployment strategy to the specific dependency structure of the services being deployed.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentEP3920028B1Method for deploying service in cluster system, program, and system
Publication Date: 2025.09.17 KONICA MINOLTA INC
  • EP3920028B1 patent drawingFigure 1
  • EP3920028B1 patent drawingFigure 2
  • EP3920028B1 patent drawingFigure 3

AI summary

To determine a deployment order of services on the basis of the dependency between the services. A method for deploying a service to a cluster system (100) includes: a step of obtaining (S2010) a first run level of a first node (101A); a step of obtaining a second run level of a second node (101B); a step of obtaining (S2010) a required run level for the service; a step of comparing (S2030) the required run level (S2020) with the first and second run levels; a step of determining (S2030) whether or not the service is deployable to each of the first and second nodes (101A, 101B) on the basis of a result of the comparing; and a step of updating at least one of the first and second run levels on the basis of deployment of the service to at least one of the first and second nodes (101A, 101B) (S2040).