US20210326161A1 - Apparatus and method for multi-cloud service platform - Google Patents

Apparatus and method for multi-cloud service platform Download PDF

Info

Publication number
US20210326161A1
US20210326161A1 US17/166,726 US202117166726A US2021326161A1 US 20210326161 A1 US20210326161 A1 US 20210326161A1 US 202117166726 A US202117166726 A US 202117166726A US 2021326161 A1 US2021326161 A1 US 2021326161A1
Authority
US
United States
Prior art keywords
cloud
service
cloud infrastructure
mcis
information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
US17/166,726
Other versions
US11966768B2 (en
Inventor
Seok-Ho SON
Dong-Jae KANG
Byoung-Seob Kim
Seung-Jo Bae
Ji-hoon SEO
Byeong-Thaek Oh
Kure-Chel LEE
Young-Woo Jung
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Electronics and Telecommunications Research Institute ETRI
Original Assignee
Electronics and Telecommunications Research Institute ETRI
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Electronics and Telecommunications Research Institute ETRI filed Critical Electronics and Telecommunications Research Institute ETRI
Assigned to ELECTRONICS AND TELECOMMUNICATIONS RESEARCH INSTITUTE reassignment ELECTRONICS AND TELECOMMUNICATIONS RESEARCH INSTITUTE ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: KANG, DONG-JAE, KIM, BYOUNG-SEOB, SON, SEOK-HO, BAE, SEUNG-JO, JUNG, YOUNG-WOO, LEE, Kure-Chel, OH, BYEONG-THAEK, SEO, JI-HOON
Publication of US20210326161A1 publication Critical patent/US20210326161A1/en
Application granted granted Critical
Publication of US11966768B2 publication Critical patent/US11966768B2/en
Active legal-status Critical Current
Adjusted expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4411Configuring for operating with peripheral devices; Loading of device drivers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5077Logical partitioning of resources; Management or configuration of virtualized resources
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3006Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is distributed, e.g. networked systems, clusters, multiprocessor systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/301Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is a virtual computing platform, e.g. logically partitioned systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3055Monitoring arrangements for monitoring the status of the computing system or of the computing system component, e.g. monitoring if the computing system is on, off, available, not available
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3409Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
    • G06F11/3428Benchmarking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45504Abstract machines for programme code execution, e.g. Java virtual machine [JVM], interpreters, emulators
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5072Grid computing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/50Network service management, e.g. ensuring proper service fulfilment according to agreements
    • H04L41/5041Network service management, e.g. ensuring proper service fulfilment according to agreements characterised by the time relationship between creation and deployment of a service
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45562Creating, deleting, cloning virtual machine instances
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/4557Distribution of virtual machine instances; Migration and load balancing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45595Network integration; Enabling network access in virtual machine instances
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects

Definitions

  • the present invention relates generally to technology for a multi-cloud service platform and more particularly to software platform technology for effectively operating and managing the resources and services of multiple cloud-computing devices and supporting the operation of applications in a cloud-computing environment.
  • a single cloud or a data center is mainly used.
  • the use of a single cloud may cause problems, such as the risk of service interruption, limited computing resources and services, dependence On a specific cloud service provider, and the like.
  • a single cloud service has a disadvantage in that a user must directly request a cloud to generate a virtual machine (VM), to make a network connection to a VM group, to configure an application runtime environment (application execution environment), to monitor the VM and the execution environment, to perform resource scaling, and the like.
  • VM virtual machine
  • application execution environment application execution environment
  • the number of users of a multi-cloud service based on the use of multiple clouds that is, software development and operation using multiple clouds or multiple cloud service providers
  • the number of businesses using such a multi-cloud service are increasing.
  • cloud services and computing resources for future business require a computing platform based on multiple clouds, which is capable of providing optimal cloud service to users through integrated use of various types of multiple clouds, rather than using a single cloud.
  • Korean Patent Application Publication No. 10-2019-0088594 titled “Method for running cloud-based media service supporting multi-DRM and recording medium for performing the method”, discloses a method for running a cloud-based media service supporting multi-DRM, which is configured such that a content provider is able to apply Digital Rights Management (DRM) technology to multiple media service platforms after purchasing the same, and a recording medium for performing the method.
  • DRM Digital Rights Management
  • An object of the present invention is to enable the resources and services of multiple clouds to be operated and managed in common and to provide an application runtime environment in order flu a user to easily develop and distribute an application
  • Another object of the present invention is to provide interoperating with multi-cloud infrastructure, control and management of multi-cloud infrastructure, and plug-in-based dynamic expansion of a cloud.
  • a further object of the present invention is to provide integrated management for a multi-cloud infrastructure service suitable for user requirements.
  • Yet another object of the present invention is to provide an environment for facilitating the management of a multi-cloud infrastructure service and application and to guarantee the quality and availability thereof.
  • an apparatus for a multi-cloud service platform includes one or more processors and executable memory for storing at least one program executed by the one or more processors.
  • the at least one program may receive a service request from a user client device, generate a multi-cloud infrastructure service using multiple clouds in response to the service request, make the multiple clouds interoperate with multi-cloud infrastructure in order to provide the multi-cloud infrastructure service, and generate a multi-cloud application runtime environment corresponding to the multi-cloud infrastructure service.
  • the at least one program may generate the multi-cloud infrastructure service using computing machines corresponding to the service request, among computing machines included in the multiple clouds.
  • the at least one program may collect static information about specifications of the computing machines and dynamic performance information about the result of a benchmark performed on the computing machines and determine whether the computing machines correspond to the service request based on the collected information.
  • the at least one program may collect information about network latency between the computing machines and select computing machines between Which the network latency is equal to or less than a preset delay time.
  • the at least one program ma make the multiple clouds interoperate with the multi-cloud infrastructure using cloud drivers of the multiple clouds, the cloud drivers complying with a common interface specification.
  • the at least one program may register the cloud drivers of the multiple clouds in a common cloud driver shared library and make the multiple clouds intemperate with the multi-cloud infrastructure using the cloud drivers registered in the common cloud driver shared library.
  • the at least one program may generate the multi-cloud application runtime environment using an application image corresponding to the multi-cloud infrastructure service.
  • a method for a multi-cloud service platform performed by an apparatus for the multi-cloud service platform, according to an embodiment of the present invention includes receiving a service request from a user client device; generating a multi-cloud infrastructure service using multiple clouds in response to the service request; making the multiple clouds interoperate with multi-cloud infrastructure in order to provide the multi-cloud infrastructure service; and generating a multi-cloud application runtime environment corresponding to the multi-cloud infrastructure service.
  • generating the multi-cloud infrastructure service may be configured to generate the multi-cloud infrastructure service using computing machines corresponding to the service request, among computing machines included in the multiple clouds.
  • the multi-cloud infrastructure service may be configured to collect static information about specifications of the computing machines and dynamic performance information about the result of a benchmark performed on die computing machines and to determine whether the computing machines correspond to the service request based on the collected information.
  • generating the multi-cloud infrastructure service may be configured to collect information about network latency between the computing machines and to select computing machines between which the network latency is equal to or less than a preset delay time.
  • making the multiple clouds interoperate with the multi-cloud infrastructure may be configured to make the multiple clouds intemperate with the multi-cloud infrastructure using cloud drivers of the multiple clouds, the cloud drivers complying with a common interface specification.
  • making the multiple clouds interoperate with the multi-cloud infrastructure may be configured to register the cloud drivers of the multiple clouds in a common cloud driver shared library and to make the multiple clouds intemperate with the multi-cloud infrastructure using the cloud drivers registered in the con non cloud driver shared library.
  • generating the multi-cloud application runtime environment may be configured to generate the multi-cloud application runtime environment using an application image corresponding to the multi-cloud infrastructure service.
  • FIG. 1 is a view illustrating an example of a multi-cloud system
  • FIG. 2 is a view illustrating a multi-cloud service platform system according to an embodiment of the present invention
  • FIG. 3 is a block diagram illustrating an apparatus for a multi-cloud service platform according to an embodiment of the present invention
  • FIG. 4 is a view illustrating the process of operating, an apparatus for a multi-cloud service platform according to an embodiment of the present invention
  • FIG. 5 is a view illustrating the relationship between a multi-cloud infrastructure service and multi-cloud infrastructure resources according to an embodiment of the present invention
  • FIG. 6 is a view illustrating an integrated management function for a multi-cloud infrastructure service according to an embodiment of the present invention
  • FIG. 7 is a block diagram illustrating a specific example of the MCIS management unit illustrated in FIG. 3 ;
  • FIG. 8 is a view illustrating an integrated connection function for an MCIS according to an embodiment of the present invention.
  • FIG. 9 is a view illustrating an MCIS integrated optimal deployment scheduling function according to an embodiment of the present invention.
  • FIG. 10 is a view illustrating, MC IS lifecycle states and transition according to an embodiment of the present invention.
  • FIG. 11 is a view illustrating a multi-cloud user environment
  • FIG. 12 is a view illustrating the user environment of the infrastructure interoperating unit illustrated in FIG. 3 ;
  • FIG. 13 is a block diagram illustrating a specific example of the infrastructure interoperating unit illustrated in FIG. 3 ;
  • FIG. 14 is a block diagram illustrating a specific example of the infrastructure interoperating information management unit illustrated in FIG. 13 ;
  • FIG. 15 is a block diagram illustrating a specific example of the infrastructure common control management unit illustrated in FIG. 13 ;
  • FIG. 16 is a block diagram illustrating a specific example of the cloud driver common interface illustrated in FIG. 13 ;
  • FIG. 17 is a block diagram illustrating a specific example of the interoperating history information management unit illustrated in FIG. 13 ;
  • FIG. 18 is a view illustrating a specific example of the cloud driver interface illustrated in FIG. 16 ;
  • FIG. 19 is a view illustrating a new cloud driver management function based on a dynamic plug-in according to an embodiment of the present invention.
  • FIG. 20 is a block diagram illustrating a specific example of the application management unit illustrated in FIG. 3 ;
  • FIG. 21 is as view illustrating a multi-cloud application runtime environment according; to an embodiment of the present invention.
  • FIG. 22 is a block diagram illustrating a specific example of the monitoring unit illustrated in FIG. 3 ;
  • FIG. 23 is a flowchart illustrating a method for a multi-cloud service platform according to an embodiment of the present invention.
  • FIG. 24 is a view illustrating a computer system according to an embodiment of the present invention.
  • FIG. 1 is a view illustrating an example of a multi-cloud system.
  • a user directly requests each cloud to generate a VM, make a network connection to a VM group, configure an application runtime environment, monitor the M and the execution environment, perform resource scaling, and the like.
  • FIG. 2 is a view illustrating a multi-cloud service platform system according to an embodiment of the present invention.
  • the multi-cloud service platform system includes a multi-cloud service platform apparatus 100 , multiple clouds, and cloud-native applications.
  • a user client device 10 may request the multi-cloud service platform apparatus 100 to generate and manage a service.
  • the multi-cloud service platform apparatus 100 may schedule multi-cloud infrastructure resources.
  • the multi-cloud service platform apparatus 100 may request the veneration of a multi-cloud infrastructure service by interoperating with the multiple clouds.
  • the multi-cloud service platform apparatus 100 may collect information acquired by monitoring the multiple clouds,
  • the multi-cloud service platform apparatus 100 may provide an integrated interoperating function for a multi-cloud infrastructure service using load balancing and resource scheduling.
  • the multi-cloud service platform apparatus 100 may support interoperating with infrastructure of the multiple clouds.
  • the multi-cloud service platform apparatus 100 may provide interoperating with various types of cloud infrastructure and plug-in-based dynamic expansion of a cloud.
  • the multi-cloud service platform apparatus 100 may provide uniform control and management for various types of cloud infrastructure.
  • the multi-cloud service platform apparatus 100 may support integrated management for multi-cloud infrastructure services.
  • the multi-cloud service platform apparatus 100 may provide optimal deployment of multi-cloud infrastructure services suitable for user requirements.
  • the multi-cloud service platform apparatus 100 may support single-point management of various cloud infrastructure services.
  • the multi-cloud service platform apparatus 100 may provide integrated interoperating functions (a VPN a load balancer, and the like) for multi-cloud infrastructure services.
  • integrated interoperating functions a VPN a load balancer, and the like
  • the multi-cloud service platform apparatus 100 may support integrated monitoring of the multiple clouds.
  • the multi-cloud service platform apparatus 100 may provide information about various states of multi-cloud infrastructure services and applications.
  • the mufti-cloud service platform apparatus 100 may support integrated management of multi-cloud applications.
  • the multi-cloud service platform apparatus 100 may provide an optimal environment for executing multi-cloud applications and a convenient management environment.
  • the multi-cloud service platform apparatus 100 may guarantee the quality and availability of the multi-cloud applications.
  • the multi-cloud service platform apparatus 100 may provide an open API and tools for common subsystems of multi-cloud services.
  • the multi-cloud service platform apparatus 100 may provide an open API for managing the services and resource s of the multiple clouds,
  • the multi-cloud service platform apparatus 100 may provide a web Ul and a command-line interface (CLI) for use convenience in a multi-cloud environment.
  • CLI command-line interface
  • the multi-cloud service platform apparatus 100 may provide a subsystem structure and microservice-based architecture.
  • FIG. 3 is a block diagram illustrating a multi-cloud service platform apparatus according to an embodiment of the present invention.
  • the multi-cloud service platform apparatus 100 includes an API-processing unit 110 , an API relay unit 120 , an MCIS management unit 130 , an infrastructure interoperating unit 140 , an application management unit 150 , and a monitoring unit 160 .
  • the MCIS management unit 130 , the infrastructure interoperating unit 140 , the application management unit 150 , and the monitoring unit 160 which are individual. subsystems, may provide the core. functions of the platform.
  • the MCIS management unit 130 , the infrastructure interoperating unit 140 , the application management unit 150 , and the monitoring unit 160 may realize the respective subsystems by taking the bun of microservices.
  • the microservice form may be a software architecture that structuralizes individual function modules as independent service units, thereby enabling flexible integration and reduction of development complexity.
  • the MCIS management unit 130 , the infrastructure interoperating unit 140 , the application management unit 150 , and the monitoring unit 160 may manage internal operation information through DB manager 1 130 a, DB manager 2 140 a, DB manager 3 150 a, and DB manager 4 160 a, which are respective operation information managers.
  • the API-processing unit HO may receive a service request from a user client device 10 .
  • the APE-processing unit 110 may provide an open API for using the system, and a web user interface (UI) and a command-line interface (CLI) for management convenience.
  • UI web user interface
  • CLI command-line interface
  • the API-processing unit 110 may provide the functions of a multi-cloud infrastructure service to the user client device 10 through the web UI, the CLI, and the open API.
  • the API-processing unit 110 may provide the functions of a multi-cloud infrastructure service to platforms and software 20 through the open API.
  • the platforms and the software 20 may include a multi-cloud management platform (MCMP), a cloud service brokerage platform (CSB), and the like.
  • MCMP multi-cloud management platform
  • CSB cloud service brokerage platform
  • the API-processing unit 110 nay provide the user interfaces of the platforms.
  • the APE relay unit 120 may provide interoperating and convenience in function expansion by relaying an API between the subsystems.
  • the API relay unit 120 may receive requests for required functions from the subsystems and return the results thereof.
  • the MCIS management unit 130 may generate a multi-cloud infrastructure service (MCIS) using multiple clouds in response to a service request.
  • MCIS multi-cloud infrastructure service
  • the MCIS management unit 130 may enable operation and integrated management of the multi-cloud infrastructure service that supports optimal deployment based on the user requirements.
  • the MCIS management unit 130 may generate a multi-cloud infrastructure service using computing machines corresponding to the service request, among computing machines included in the multiple clouds.
  • VM virtual machine
  • the MCIS management unit 130 may collect static information about the specifications of the computing machines and dynamic performance information about the result of a benchmark performed on the computing machines, and may determine whether the computing machines correspond to the service request based on the collected information.
  • the MCIS management unit 130 may collect information about network latency between the computing machines, and may select computing machines between which the latency is equal to or less than a preset delay time.
  • the infrastructure interoperating unit 140 may make the multiple clouds interoperate with the multi-cloud. infrastructure in order to provide the multi-cloud infrastructure service.
  • the infrastructure interoperating unit 140 may interoperate with heterogeneous infrastructure using plug-ins, and manage and control the same using a consistent method.
  • the infrastructure interoperating unit 140 may make the multiple clouds intemperate with the multi-cloud infrastructure using the cloud drivers of the multiple clouds, which comply with a common interface specification.
  • the infrastructure interoperating unit 140 may register the cloud drivers of the multiple clouds in a common cloud driver shared library, and may make the multiple clouds interoperate with the multi-cloud infrastructure using the cloud drivers registered in the common cloud driver shared library.
  • the application management unit 150 may generate a multi-cloud application runtime environment corresponding to the multi-cloud infrastructure service.
  • the application management unit 150 may support multi-cloud application operation and management for guaranteeing the stability and quality of applications.
  • the application management unit 150 may generate a multi-cloud application runtime environment using an application image corresponding to the multi-cloud infrastructure service.
  • the monitoring unit 160 may provide monitoring of the multi-cloud infrastructure service (N 4 CIS), computing resources included in the MCIS, application workloads, and the application runtime environment.
  • N 4 CIS multi-cloud infrastructure service
  • the monitoring unit 160 may provide monitoring information for optimizing the management of the multi-cloud infrastructure service and the multi-cloud applications.
  • FIG. 4 is a view illustrating the process of operating a multi-cloud service platform apparatus according to an embodiment of the present invention.
  • FIG. 4 it can be seen that the process of operating a multi-cloud service platform apparatus 100 according to an embodiment of the present invention is illustrated.
  • the API-processing unit 110 may receive a service request from a user client device 10 and deliver the same to the API relay unit 120 .
  • the API relay unit 120 may provide a common function for subsystem runtime to the MCIS management unit 130 , the infrastructure interoperating unit 140 , the application management unit 150 , and the monitoring unit 160 .
  • the intra ti interoperating unit 140 may support uniform control and management for the CIS management unit 130 , the application management unit 150 , and the monitoring unit 160 by interoperating with various clouds.
  • the infrastructure interoperating unit 140 may provide an open API to the API-processing unit 110 .
  • the MCIS management unit 130 may provide an MCIS to the application management unit 150 . 4
  • the MCIS management unit 130 may provide an open API to the API-processing unit 110 .
  • the application management unit 150 may provide an open API to the API-processing unit 110 .
  • the monitoring unit 160 may provide MCIS-monitoring information to the MCIS management unit 130 .
  • the monitoring unit 160 may provide application-monitoring information to the application management unit 150 .
  • the monitoring unit 160 may provide an open API to the API-processing unit 110 .
  • FIG. 5 is a view illustrating the relationship between a multi-cloud infrastructure service and multi-cloud infrastructure resources according to an embodiment of the present invention.
  • FIG. 5 it can be seen that the concepts of the multi-cloud infrastructure resources and service to be managed by the MCIS management unit 130 in an integrated manner are illustrated.
  • the multi-cloud infrastructure resource may include cloud infrastructure resources for generating and operating an MCIS provided on multiple clouds.
  • the cloud infrastructure resources may include images, specifications of VMs, networks and resources for accessing to VMs, and the like.
  • the multi-cloud infrastructure service may correspond to a group of one or more cloud infrastructure services (a virtual machine (VM), a container machine (CM), and the like) interconnected for a single purpose (an application service, an application, or the like) on locally isolated multiple clouds.
  • VM virtual machine
  • CM container machine
  • the multi-cloud infrastructure resources may be used for configuring a multi-cloud infrastructure service.
  • User resources may be resources registered in the system for user convenience.
  • the cloud infrastructure resources may be resources of cloud service providers.
  • the multi-cloud infrastructure service may be a logical group of on or more cloud infrastructure services.
  • FIG. 6 is a view illustrating an integrated management function for a multi-cloud infrastructure service according to an embodiment of the present invention.
  • the MCIS management unit 130 may deploy and schedule the optimal MCIR according to various requirements of a user.
  • the MCIS management unit 130 may provision actual 1- Ms through multiple cloud service providers.
  • the MCIS management unit 130 may configure the generated VMs as an MCIS, and may manage the lifecycle of the MCIS.
  • the MCIS management unit 130 may collect static information and dynamic information for an MCIS deployment plan for optimal MCIS deployment and scheduling.
  • the static information may include information that is not frequently changed and that can be collected through metadata.
  • the dynamic information may include information that must be collected through measurement because the information is frequently changed.
  • the MCIS management, unit 130 may optimally deploy VMs based on the static information and the dynamic information, and may support optimal deployment in units of MCISs by considering VMs that are geographically distant from each other across multiple clouds.
  • FIG. 7 is a block diagram illustrating a specific example of the MCIS management unit illustrated in FIG. 3 .
  • FIG. 8 is a view illustrating an integrated connection function tot an MCIS according to an embodiment of the present invention.
  • FIG. 9 is a view illustrating an MCIS integrated optimal deployment scheduling function according to an embodiment of the present invention.
  • FIG. 10 is a view illustrating MCIS lifecycle states and transition according to an embodiment of the present invention.
  • the MCIS management unit 130 may include a namespace management unit 131 , a resource management unit 132 , an MCIS provisioning management unit 133 , an MCIS lifecycle management unit 134 , an MCIS automatic control unit 135 , an MCIS integrated connection management unit 136 , and an MCIS-integrated-management-open-API-runtime-processing unit 1300 .
  • the namespace management unit 131 may assign a namespace to which objects belong using a namespace.
  • the namespace management unit 131 may distinguish these objects by assigning the namespaces.
  • the namespace management unit 131 may logically separate all of the MCIRs and MCISs of a user using namespaces.
  • the namespace management unit 131 may search for and control objects on a namespace basis.
  • the namespace management unit 131 assigns different namespaces for the respective projects of a user, thereby isolating the MCIR and MCIS of each of the projects.
  • the namespace management unit 131 may provide a management function to the user client device 10 such that the user client device 10 is capable of generating, retrieving, or deleting a namespace object.
  • the namespace management unit 131 may generate an information object having a namespace name requested by the user client device 10 and previously generated universally unique identifier (UUID) information using a namespace object generation function.
  • UUID universally unique identifier
  • the namespace management unit 131 may provide a list of all of the namespaces by providing a namespace object retrieval function to the user client device 10 .
  • the namespace management unit 131 may specify a UIID through the name of the namespace.
  • the specified UUID may include basic information that is required in order to request retrieval and control of the MCIR and MCIS.
  • the namespace management unit 131 may retrieve information about an MCIR and an MCIS included in the namespace using a namespace object deletion function.
  • the namespace management unit 131 may not allow the deletion of the namespace.
  • the namespace management unit 131 may delete the namespace only after all of the MCIRs and MCISs assigned to the namespace are deleted.
  • the resource management unit 132 may provide a function capable of managing cloud infrastructure resources, which are used in order for respective clouds to provide infrastructure services, in a centralized manner.
  • the resource. management unit 132 may manage the infrastructure resources of each cloud as the objects to be used for configuring and setting an MCIS.
  • the resource management unit 132 may enable generation, registration, retrieval, and deletion functions for various resource types of the MCIR (images, specifications of VMs, networks, resources for accessing to VMs, and the like).
  • the resource management unit 132 may manage the image resource of a VIM that can be included in the MCIS.
  • the resource management unit 132 may register a VM image in the system.
  • the registered image may become a system object having an identifier.
  • the registered image may be used as a parameter when a VM is generated.
  • the resource management unit 132 may provide the user client device 10 with a management function for registering, retrieving or deleting an image.
  • the resource management unit 132 may manage the specification resource of as VM that can be included in the MCIS.
  • the VM specification resource may be an object corresponding to the specification of a VM defined by a cloud service provider.
  • the resource management unit 132 may receive the registration of a VM specification resource from the user client device 10 .
  • the registered VM specification resource may become a system object having an identifier.
  • the VM specification object corresponding thereto may be multiple objects according to the cloud service providers.
  • the VM specification object may be used as a parameter when a 1 M is generated.
  • the resource management unit 132 may provide the user client device 10 with a management function capable of retrieving and deleting a VM specification resource.
  • the resource management unit 132 may include at least one of the number of vCPUs, a memory size, and a storage size as main specification factors managed by the system.
  • the resource management unit 132 may manage a virtual network resource that can be included in the MCIS.
  • the virtual net, resource may be an object corresponding to a virtual network resource defined by a cloud service provide.
  • the resource management unit 132 may receive, from the user client device 10 , the registration of a virtual network resource provided by the cloud service provider.
  • the registered viii ital network resource may become a system object having an identifier.
  • the virtual network resource may be used as a parameter when a VM is generated.
  • the resource management unit 132 may provide a management function capable of retrieving and deleting a virtual network resource to the user client device 10 .
  • the resource management unit 132 may manage (register, retrieve, or delete) resources required for accessing to VMs included in an MCIS.
  • the resource related to connection with a VM may include a network security group (an item group for designating accessible network ports), an access security key for accessing a VM through a secure shell (SSH), and the like.
  • a network security group an item group for designating accessible network ports
  • SSH secure shell
  • the MCIS provisioning management unit 133 may manage the entire procedure of generating an MCIS.
  • the MCIS provisioning management unit 133 may generate VMs, which are to become components of an Mos, in order to generate an MCIS, configure the settings of the generated VMs, and include the VMs in a logical object, namely the MCIS.
  • the MCIS provisioning management unit 133 may optimally deploy and schedule VMs in order to generate an individual VM, and may select VMs that best match the service requirements for each MCIS, thereby provisioning the optimal MCIS to a user.
  • the MCIS provisioning management unit 133 may check MCIS deployment requirements.
  • the MCIS provisioning management unit 133 may check whether there is an error in the deployment requirements for the MCIS requested by the user client device 10 , and may determine whether provisioning is possible based on the information managed by the MCIS management unit 130 .
  • the MCIS provisioning management unit 133 does not perform MCIS provisioning, and may tell the user client device 10 that provisioning is impossible.
  • the MCIS provisioning management unit 133 may collect MCIS deployment information.
  • the MCIS deployment information may include static information and dynamic information.
  • the static information may include specifications, locations, prices, and the like, and the dynamic information may include performance information and the
  • the MCIS provisioning management unit 133 may collect static information about VM specifications, and may periodically collect dynamic, performance information through a VM benchmark or the like.
  • the MCIS provisioning management unit 133 may provide the collected information as base data for an MCIS optimal deployment scheduling algorithm.
  • the MCIS provisioning management unit 133 may perform MCIS optimal deployment scheduling.
  • the MCIS optimal deployment scheduling a algorithm nay include algorithms for performing optimal deployment based on various factors.
  • the MCIS provisioning management unit 133 may support optimal deployment for each MCIS.
  • the MCIS provisioning management unit 133 collects information about network latency between VMs located across multiple clouds, thereby providing a deployment function such that the network latency between all of the VMs in the MCIS requested by a user is equal to or less than a few milliseconds.
  • the MCIS integrated optimal deployment function may optimally configure an MCIS by including only VMs that satisfy the constraint therein using the information about the network latency between VMs.
  • the MCIS provisioning management unit 133 may provide a VM-specification-based deployment algorithm, a VM-location-based deployment algorithm a VM-price-based deployment algorithm, a VM-performance-based deployment algorithm, VM-composite-condition-based deployment algorithm, and the like depending on the optimal deployment conditions for the respective VMs in order to optimally configure an MCIS.
  • the VM-specification-based deployment algorithm may recommend and deploy VMs based on the specification of a VM requested by the user client device 10 .
  • the VM-location-based deployment algorithm may recommend and deploy optimal VMs in ascending order of distance from the region selected by the user client device 10 .
  • the VIM-price-based deployment algorithm may recommend and deploy VMs that are capable of providing the specification required by the user client device 10 at the lowest cost.
  • the VM-performance-based deployment algorithm may recommend and deploy VMs based on the performance required by the user client device 10 using the information provided through an MCIS deployment information collection function (a performance benchmark or the like).
  • the performance factors of a VM may include computation performance, memory read/write performance, file I/O performance, and the like.
  • the VM-composite-condition-based deployment algorithm is an algorithm that can be used when it is necessary to collectively consider the above-described multiple factors, and may recommend and deploy VMs using the weighted sum of the above-described algorithms (e.g., an equation capable of representing user preferences tot the respective algorithms).
  • the MCIS provisioning management unit 133 may generate an MCIS.
  • the MCIS provisioning management unit 133 may generate an MCIS object, and may generate a VM be included in the MCIS object using the VM generation function of the infrastructure interoperating nun 140 .
  • the MCIS provisioning management unit 133 may generate an MCIS through a generation request step and a generation configuration step.
  • the MCIS provisioning management unit 133 may input generation and access information related to the VMs to the ICIS object and return the result to the user client device 10 .
  • the MCIS lifecycle management unit 134 may provide management and control functions for the lifecycle and state of an MCIS after the MCIS is generated and provisioned to the user client device 10 .
  • the MCIS lifecycle management unit 134 may manage the states (a running state, a suspended state, a terminated state, and the like) of the MCIS lifecycle for each MCIS and VMs included therein.
  • the MCIS lifecycle management unit 134 may check whether the lifecycle state of the MCIS is the same as the lifecycle state of the actual VM managed by a cloud service provider, and may synchronize the lifecycle state of the MCIS and the lifecycle state of the actual VM with each other.
  • the MCIS lifecycle management unit 134 may handle a lifecycle-related control request received from the user client device 10 .
  • the lifecycle states may include transition states and final states.
  • the transition states may include a ‘creating’ state, a ‘suspending’ state, a ‘resuming’ state, a ‘rebooting’ state, and a ‘terminating’ state.
  • the ‘creating’ state may be a state in which creation of an MCIS is in progress.
  • the ‘suspending’ state may be a state in which suspension of an MCIS is in progress
  • the ‘resuming’ state may be a state in which resumption of a suspended MCIS is in progress
  • the ‘rebooting’ state may be a state in which an MCIS is being rebooted.
  • the ‘terminating’ state may be a state in which termination of an MCIS is in progress.
  • the final states may include a ‘running’ state, a ‘suspended’ state, a ‘failed’ state, and a ‘terminated’ state.
  • the ‘running’ state may be a state in which an MCIS is running.
  • the ‘suspended’ state may be a state in which an MCIS is suspended. ( 00217 )
  • the ‘failed’ state may be a state in which. an MCIS is stopped due to an error.
  • the ‘terminated’ state may be a state in which an MCIS is terminated.
  • the MCIS automatic control unit 135 ma automatically control an MCIS based on rules specified by a user.
  • the MCIS automatic control unit 135 may receive a state condition for automatically controlling an MCIS from the user client device 10 , and may suggest a specific action to be automatically performed based on whether the state condition is satisfied or unsatisfied.
  • the MCIS automatic control unit 135 may provide a functional mechanism for satisfying various conditions of the user client device 10 and taking actions.
  • the MCIS automatic control unit 135 may manage requirements for MCIS automatic control.
  • the MCIS automatic control unit 135 may register, retrieve, or delete an MCIS automatic control request from the user client device 10 .
  • the MCIS automatic control unit. 135 may determine a condition for MCIS control.
  • the MCIS automatic control unit 135 may continuously check whether the current state of the MCIS matches the state condition requested by the user client device 10 through monitoring, and may trigger automatic control when it is determined that the current state of the MClS matches the state condition.
  • the MCIS automatic control unit 135 may take an MCIS control action.
  • the MCIS automatic control unit 135 may take the action requested by the user client device 10 when automatic control is triggered.
  • the N 1 CIS integrated connection management unit 136 may support execution of distributed applications based on an MCIS that includes VMs geographically distributed based on multiple clouds.
  • the MCIS integrated connection management unit 136 may provide a uniform subnetwork environment in order to support execution of distributed applications, and may improve the availability of an MCIS by balancing loads between clouds.
  • the MCIS integrated connection management unit 136 may perform an MCIS uniform subnetwork environment configuration function, an MCIS-load-balancing function, and the like.
  • the MCIS integrated connection management unit 136 may receive the selection of at least one of the uniform subnetwork environment configuration function and the load-balancing function from the user client device 10 , and may deploy the MCIS using the function selected by the user client device 10 .
  • the MCIS integrated connection management unit 136 may generate an integrated connection service environment based on the MCIS, the deployment of which is completed.
  • the MCIS-integrated-management-open-API-runtime-processing unit 1300 provides the functions of an MCIS to another subsystem or a user, and may include an open API runtime server therefor.
  • the MCIS-integrated-management-open-API-runtime-processing unit 1300 may include an open API client for using the functions of other subsystems.
  • the MCIS management unit 130 may communicate with the infrastructure interoperating unit 140 in order to generate a VM or resources, and may communicate with the monitoring unit 160 in order to share the current state of an MCIR.
  • the MCIS management unit 130 may use the functions of other subsystems through communication, and may further include a relay in order to relay the communication therebetween.
  • FIG. 11 is a view illustrating a multi-cloud user environment.
  • clouds may be used only by a user having a professional skill to use each cloud infrastructure, or may be used only through an application for each cloud infrastructure or a bespoke program developed by a professional developer.
  • the professional developer requires information about conditions for using different connection and authentication methods and resources, methods for configuring the same, and complicated development and tests using different user APIs for respective clouds.
  • the multi-cloud service development method and the service user environment illustrated in FIG. 11 may be available at the beginning of the use of multi-cloud computing, but when demand for multi-cloud services and the number of users of the multi-cloud services increase, a problem may occur in the process of developing and running the service.
  • FIG. 12 is a view illustrating the user environment of the infrastructure interoperating unit illustrated in FIG. 3 .
  • the infrastructure interoperating unit 140 of the multi-cloud service platform apparatus 100 may solve problems associated with interoperating with heterogeneous cloud infrastructure.
  • the infrastructure interoperating unit 140 may provide a user client device 10 and other subsystems with a uniform interoperating and control management method for different types of cloud infrastructure.
  • the infrastructure interoperating unit 140 may provide uniform control management by providing a common API based on a common interface driver.
  • the infrastructure interoperating unit 140 may enable dynamic addition of a view cloud using a dynamic plug-in, thereby expanding cloud resources.
  • the infrastructure interoperating win 140 may support improvement in the accuracy of selection of cloud infrastructure by providing a history of interoperating with clouds.
  • FIG. 13 is a block diagram illustrating a specific example of the infrastructure interoperating unit illustrated in FIG. 3 .
  • FIG. 14 is a block diagram illustrating a specific example of the infrastructure interoperating information management unit illustrated in FIG. 13 .
  • FIG. 15 is a block diagram illustrating a specific example of the infrastructure common control management unit illustrated in FIG. 13
  • FIG. 16 is a block diagram illustrating a specific example of the cloud driver common interface illustrated in FIG. 13 .
  • FIG. 17 is a block diagram illustrating a specific example of the interoperating history information management unit illustrated in FIG. 13 .
  • FIG. 18 is a view illustrating a specific example of the cloud driver interface illustrated in FIG. 16 .
  • the infrastructure interoperating unit 140 may include an infrastructure interoperating information management unit 141 , an infrastructure interoperating history information management unit 142 , an infrastructure common control management unit 143 , and cloud drivers 144 .
  • the infrastructure interoperating information management unit 141 may manage information about interoperating with different clouds in an integrated manner in a multi-cloud environment, and may manage cloud infrastructure interoperating information based on which connection to various types of cloud infrastructure can be easily and quickly established.
  • the cloud infrastructure interoperating information may include information about cloud drivers, information about cloud infrastructure authentication, information about cloud service regions, and the like.
  • the infrastructure interoperating information management unit 141 may include an interoperating information management open API runtime unit, a cloud driver information management unit, a cloud infrastructure authentication information management unit, a cloud infrastructure region information management unit, a cloud infrastructure connection settings information management unit, and a cloud infrastructure interoperating, information operation management unit.
  • the interoperating information management open API runtime unit may provide an open API runtime server and an open API client in order to provide the function of integrated management of cloud infrastructure interoperating information to a user.
  • the interoperating information management open API runtime unit may provide the function of integrated management of interoperating information to the user client device 10 , which uses a user API based on REST or gRPC.
  • the interoperating information management open API runtime unit may provide cloud driver information, credential information, and region information to the infrastructure common control management unit 143 .
  • the cloud driver information management unit may provide a driver information management function for interoperating with cloud infrastructure
  • the driver information management function may include the functions of registering, providing, modifying, and deleting cloud driver information.
  • the cloud driver information may include a driver name, the name of a cloud service provider (CSP), a driver library path, and the like.
  • CSP cloud service provider
  • the cloud infrastructure authentication information management unit may provide a credential information management function for connection with cloud infrastructure and authentication of cloud infrastructure.
  • the credential information management function may include the functions of registering, providing, modifying, and deleting cloud authentication information.
  • the cloud authentication information may include a credential name, a cloud infrastructure service endpoint, cloud infrastructure credential information, and the like.
  • the cloud infrastructure region information management unit may provide a region information management function for the cloud infrastructure service with which to intemperate.
  • the region information management function may include the functions of registering, providing and deleting cloud region information.
  • the region information may further include zone information.
  • the cloud infrastructure connection settings information management unit may register, provide, modify, delete, and manage cloud connection settings information required for connection with cloud infrastructure.
  • the cloud connection settings information may include the name of cloud connection settings, a cloud driver name, a cloud credential name, a cloud region name, and the like.
  • the cloud infrastructure interoperating information operation management unit may provide the function of managing operation information for integrated management of the cloud infrastructure interoperating information.
  • the cloud infrastructure interoperating information operation management unit may manage operation information included in a DB manager 140 a based on a CB-store.
  • the operation information may include the above-described cloud driver information, credential information, region information, and the like.
  • the infrastructure interoperating history information management unit 142 may collect and provide information about a history of interoperating with various types of cloud infrastructure.
  • the cloud infrastructure interoperating history information may include information about a history of services for connection with cloud infrastructure and a virtual machine and for function calls.
  • the cloud infrastructure interoperating history information may include a response speed, an error message, and the like.
  • the user client device 10 may improve the accuracy of prediction of cloud infrastructure service quality and accuracy in selection of specific cloud infrastructure resources.
  • the infrastructure interoperating history information management unit 142 may provide a cloud infrastructure interoperating history information provision function and a cloud infrastructure interoperating history information collection function.
  • the cloud infrastructure interoperating history information provision function may provide and enable visualization of information about a history of interoperating with cloud infrastructure, and may provide and enable visualization of information about a history of execution of virtual machine commands.
  • the cloud infrastructure interoperating history information collection function may collect information about a history of interoperating with cloud infrastructure and information about a history of execution of virtual machine commands.
  • the infrastructure common control management unit 143 may provide control and management functions using a uniform common API for the multi-cloud infrastructure resources and virtual machines for providing different functions and APIs.
  • the infrastructure common control management unit 143 may provide a cloud driver common interface 143 a and a driver plug-in structure that implements the cloud driver common interface in order to provide uniform control,
  • the infrastructure common control management unit 143 may provide a dynamically expandable library structure that enables interoperating with a new cloud driver during system operation.
  • the infrastructure common control management unit 143 may include a cloud driver management unit, a cloud driver common interface unit, and a virtual machine command remote management unit.
  • the cloud driver management unit may manage the driver of the cloud infrastructure with which to interoperate.
  • the cloud driver management unit ma dynamically load a cloud driver in the form of a shared library into memory using a cloud-driver-loading function.
  • the cloud driver management unit may provide the loaded cloud driver using a cloud driver provision function.
  • the cloud driver management unit may delete the loaded cloud driver from memory using a cloud-driver-unloading function.
  • the cloud driver common interface unit may provide a common interface for uniform control and management of cloud infrastructure resources and virtual machines.
  • FIG. 16 it can be seen that a specific example of the cloud driver common interface unit 143 a is illustrated.
  • the cloud driver common interface unit 143 a may include a cloud driver interface unit, a cloud connection management interface unit, a cloud infrastructure resource interface unit, and a virtual machine lifecycle control interface unit.
  • the cloud driver interface unit may provide cloud driver version information.
  • the cloud driver interface unit may provide a list of functions provided by a cloud driver.
  • the cloud driver interface unit may provide interfaces for generation of a target cloud connection object and cloud connection management.
  • the cloud connection management interface unit may provide information about the current cloud connection state.
  • the cloud connection management interface unit may provide a cloud infrastructure resource control interface.
  • the cloud connection management interface unit may provide a virtual machine lifecycle control interface.
  • the cloud infrastructure resource control interface unit may provide an image resource control interface, a network resource control interface, a Network Interface Card (NIC) resource control interface, a security group resource control interface, a public IP resource control interface., and a keypair resource control interface.
  • NIC Network Interface Card
  • the image resource control interface may enable generation of an image of a target cloud, provision of a list of images and detailed information of the images, deletion of an image, and the like.
  • the network resource control interface may enable generation of a network resource of a target cloud, provision of a list of network resources and detailed information of the network resources, deletion of a network and the like.
  • the NIC resource control interface may enable generation of an NIC resource of a target cloud, provision of a list of NIC resources and detailed information of the NW resources, deletion of an NIC, and the like.
  • the security group resource control interface may enable generation of a security group, such as a firewall of a target cloud, provision of a list of security groups and detailed information of the security groups, deletion of a security group, and the like.
  • the public IP resource control interface may enable generation of a public IP resource of a target cloud, provision of a list of public IP resources and detailed information of the public IP resources, deletion of a public IP, and the like.
  • the keypair resource control interface may enable generation of a keypair resource of a target cloud, provision of a list of keypair resources and detailed information of the keypair resources, deletion of a keypair, and the like.
  • the virtual machine lifecycle control interface unit may provide a list of virtual machines, detailed information on a specific virtual machine, a virtual machine state list, information about the state of a specific virtual machine, and the functions of running and terminating a virtual machine, suspension and resumption of a virtual machine, rebooting a virtual machine, and the like.
  • the virtual machine command remote management unit may provide the function of executing a command in a virtual machine that is run by the user client device 10 .
  • the virtual machine command remote management unit may provide a virtual machine file copy function and a virtual machine internal command execution function.
  • the virtual machine file copy function may copy a specific local file, such as a command, into a virtual machine.
  • the virtual machine file copy function may copy a file present in a virtual machine into local storage.
  • the virtual machine internal command execution function may execute internal commands, such as a utility, a script, or the like, present in a remote virtual machine.
  • the cloud drivers 144 may include a dynamic library that is developed in compliance with a cloud driver common interface specification, and may provide the functions of connecting to a target cloud and controlling the target cloud.
  • the cloud driver may be implemented in the form of a shared library corresponding to a cloud driver common interface.
  • All or some of the functions provided by individual drivers may be provided by the cloud driver common interface.
  • the user client device 10 may check a list of functions provided by the cloud drivers.
  • the user client device 10 may determine whether the driver provides a specific function using the list of functions.
  • the multi-cloud infrastructure platform apparatus 100 may operate multiple cloud drivers in the infrastructure of a single cloud by developing and plugging in the multiple cloud drivers depending on the user application or the purpose of operation.
  • the cloud driver may provide a plug-in-based common API, a common control function, and a cloud infrastructure dynamic expansion function based on dynamic addition of drivers.
  • the plug-in-based common API and the common control function may provide a plug-in mechanism using a driver method in order to provide different cloud infrastructure connection methods and interfaces to the user client device 10 through a common API and a common control function.
  • the driver method may provide a function to the user client device 10 using only a single interface even when different drivers are implemented using the same common interface.
  • the cloud infrastructure dynamic expansion function based on dynamic addition of drivers may provide a cloud infrastructure dynamic expansion function such that interoperating with new cloud infrastructure is possible during system operation without interruption thereof.
  • FIG. 19 is a view illustrating a new cloud driver management function based on a dynamic plug-in according to an embodiment of the present invention.
  • the infrastructure into operating unit 140 may generate a new cloud driver shared library that implements a cloud common interface, and may copy the same into a local file system of the system.
  • the infrastructure interoperating information management unit 141 may register the name path, and the like of a new cloud driver using the cloud driver information management function.
  • the user client device 10 may select a new cloud driver object using the cloud driver management function of the infrastructure common control management unit 143 in order to use new cloud infrastructure.
  • the infrastructure interoperating information management unit 141 may dynamically load a new cloud driver from the new cloud library, corresponding to the selected new cloud driver object, into the cloud driver management unit of the infrastructure common control management unit 143 .
  • the cloud driver interface may call the API of the new cloud driver loaded into the cloud driver management unit.
  • the new cloud driver finally calls the API of the new cloud infrastructure, thereby providing resources and a virtual machine to the user client device 10 .
  • FIG. 20 is a block diagram illustrating a specific example of the application management unit illustrated FIG. 3 .
  • FIG. 21 is a view illustrating a multi-cloud application runtime environment according to an embodiment of the present invention.
  • the application management unit 150 may include an application image management unit 151 , an application runtime environment provisioning management unit 152 , an application runtime environment management writ 153 , and an application-integrated-management-open-API-run time-processing unit 1500 .
  • the application image management unit 151 may provide a function of generating a container environment, in which the source code of an application or the application is distributed, as an image.
  • the application image management unit 151 ma provide the function of storing an app image in application image storage 150 a and the function of loading the image stored in the application image storage 150 a according, to need.
  • the application runtime environment provisioning management unit 152 may generate and manage an MCIS (e.g., a computing-resource pool configured with VMs placed across multiple clouds) using the MCIS management unit 130 , and may generate and deploy an application runtime environment (a container or the like) on the generated MCIS.
  • MCIS e.g., a computing-resource pool configured with VMs placed across multiple clouds
  • the application runtime environment provisioning management unit 152 may bring (pull) the application desired by a user using the application image management unit 151 according to need when a container is generated, and may deploy the corresponding application in the container depending on the image and settings.
  • the application runtime environment management unit 153 may monitor resource usage in the application runtime environment, may use the monitoring information and check the state based on the policy defined by the user, and may take an action according to the policy defined by the user.
  • the poky defined by the user may be a policy in which, when the CPU usage in the application runtime environment is equal to or greater than 95%, expansion is performed so as to execute the. same application in a new execution environment.
  • the application runtime environment management unit 153 may provide a multi-cloud application runtime environment on the multi-cloud infrastructure service (MCIS).
  • MCIS multi-cloud infrastructure service
  • the application runtime environment management unit 153 may deploy an application in the form of an image tan app image) in a container through the application image storage 150 a such that the application is capable of being run in the execution environment over the multi-cloud infrastructure, and may enable operation and management thereof.
  • FIG. 22 is a block diagram illustrating a specific example of the monitoring unit illustrated in FIG. 3 .
  • the monitoring unit 160 may perform monitoring of a multi-cloud infrastructure service (MCIS) and computing resources included in the MCIS.
  • MCIS multi-cloud infrastructure service
  • the monitoring unit 160 may check an MCIS monitoring target list through the MCIS management unit 130 , ma install a monitoring agent in the target MCIS and internal computing resources (e.g., VMs), and may collect and store MCIS-monitoring data using the agent.
  • a monitoring agent in the target MCIS and internal computing resources (e.g., VMs)
  • VMs internal computing resources
  • the monitoring unit 160 may check the workload of an application by monitoring an application runtime environment.
  • the monitoring unit 160 may check a list comprising the execution environments to be monitored (e.g., containers) using the application management unit 150 , and may collect and store monitoring data by installing a monitoring API or a monitoring agent that manages all containers.
  • the execution environments to be monitored e.g., containers
  • the application management unit 150 may collect and store monitoring data by installing a monitoring API or a monitoring agent that manages all containers.
  • the monitoring unit 160 may provide the collected and stored monitoring data using an API, and may provide the sank to a specific external service according to a preset condition.
  • FIG. 23 is a flowchart illustrating a method for a multi-cloud service platform according to an embodiment of the present invention.
  • a user request may be received at step S 210 .
  • a service request may be received from a user client device 10 .
  • an open API for using a system and a web user interface (UI) and a command-line interface (CLI) for management convenience may be provided.
  • the functions of a multi-cloud infrastructure service may be provided to the user client device 10 through the web the CLI, and the open API.
  • step S 210 the functions of die multi-cloud infrastructure service may be provided to a platform and software 20 through the open API.
  • the platform and the software 20 may include a multi-cloud management platform (MCMP) a cloud service brokerage platform (CSB), and the like.
  • MCMP multi-cloud management platform
  • CSB cloud service brokerage platform
  • the user interface of the platform may be provided.
  • interoperating and convenience in function expansion may be provided by relaying an API between subsystems.
  • step S 210 requests for functions required by the subsystems may be received, and the results thereof may be returned.
  • a multi-cloud infrastructure service may be generated at step S 220 .
  • a multi-cloud infrastructure service may be generated using multiple clouds.
  • step S 220 operation and integrated management of the multi-cloud infrastructure service may be provided m a manner tint supports optimal deployment based on user requirements.
  • the multi-cloud infrastructure service may be generated using computing machines corresponding to the service request, among computing machines included in the multiple clouds.
  • the types of the computing machines may include a virtual machine, a container machine, and the like.
  • step S 220 whether the computing machines correspond to the service request may be determined by collecting static information about the specifications o.f the computing machines and dynamic performance information about the result of a benchmark performed on the computing machines.
  • step S 220 information about the network latency between the computing machines is collected, and computing machines between which the network latency is equal to or less than a preset delay time may be selected.
  • interoperating with the multi-cloud infrastructure may be performed at step S 230 .
  • the multiple clouds may be made to intemperate with the multi-cloud infrastructure.
  • interoperating with heterogeneous multi-cloud infrastructure may be performed using a plug-in, and the heterogeneous multi-cloud infrastructure may be managed and controlled in a uniform manner.
  • the multiple clouds may be enabled to interoperate with the multi-cloud infrastructure using the cloud drivers of the multiple clouds, which comply with a common interface specification.
  • the cloud drivers of the multiple clouds are registered in a common cloud driver shared library, and the multiple clouds may be enabled to intemperate with the multi-cloud infrastructure using the cloud drivers registered in the common cloud driver shared library.
  • monitoring; of the multi-cloud infrastructure service and the computing resource included therein may be performed.
  • monitoring information for optimizing management of the multi-cloud infrastructure service may be provided.
  • a multi-cloud application runtime environment may he generated at step S 240 .
  • a multi-cloud application runtime environment corresponding to the multi-cloud infrastructure service may be generated.
  • step S 240 multi-cloud application operation and management for guaranteeing the stability and quality of the application may be supported.
  • the multi-cloud application runtime environment may be generated using an application image corresponding to the multi-cloud infrastructure service
  • monitoring of the application workload and the application runtime environment may be provided.
  • monitoring information for optimizing management of the multi-cloud application may be provided.
  • FIG. 24 is a view illustrating a computer system according to an embodiment of the present invention.
  • the multi-cloud service platform apparatus may be implemented in a computer system 1100 including a computer-readable recording medium
  • the computer system 1100 may include one or more processors 1110 , memory 1130 , a user-interface input device 1140 , a user-interface output device 1150 , and storage 1160 , which communicate with each other via a bus 1120 .
  • the computer system 1100 may further include a network interface 1170 connected to a network 1180 .
  • the processor 1110 may be a central processing unit or a semiconductor device for executing processing instructions stored in the memory 1130 or the storage 1160 .
  • the memory 1130 and the storage 1160 may he any of various types of volatile or nonvolatile storage media.
  • the memory may include ROM 1131 or RAM 1132 .
  • the multi-cloud service platform apparatus may include one or more processors 1110 and executable memory 1130 for storing at least one program executed b the one or more: processors 1110 .
  • the at least one program may receive a service request from a user client device, generate a multi-cloud infrastructure service using multiple clouds in response to the service request, make the multiple clouds interoperate with multi-cloud infrastructure M order to provide the multi-cloud infrastructure service, and generate a multi-cloud application runtime environment corresponding to the multi-cloud infrastructure service.
  • the at least one program max generate the multi-cloud infrastructure service using computing machines corresponding to the service request, among computing machines included in the multiple clouds.
  • the at least one program may determine whether the computing machines correspond to the service request by collecting static information about the specifications of the computing machines and dynamic performance information about a result of a benchmark performed on the computing machines.
  • the at least one program may collect information about network latency between the computing machines, and may select computing machines between which the latency is equal to or less than a preset delay time.
  • the at least one program may make the multiple clouds interoperate with the multi-cloud infrastructure using cloud drivers of the multiple clouds, the cloud drivers complying with a common interface specification.
  • the at least one program may register the cloud drivers of the multiple clouds in a common cloud driver shared library, and may make the multiple clouds interoperate with the multi-cloud infrastructure using the cloud drivers registered in the common cloud driver shared library.
  • the at least one program may generate a multi-cloud application runtime environment using an application image corresponding to the multi-cloud infrastructure service.
  • the present invention may enable the resources and services of multiple clouds to be operated and managed in common, and may provide an application runtime environment in order for a user to easily develop and distribute an application.
  • the present invention may provide interoperating with multi-cloud infrastructure, control and management of multi-cloud infrastructure, and plug-in-based dynamic expansion of a cloud.
  • the present invention may provide integrated management for a multi-cloud infrastructure service suitable for user requirements.
  • the present invention may provide an environment for facilitating the management of a multi-cloud infrastructure service and application, and may guarantee the quality and availability thereof.
  • the apparatus and method for a multi-cloud service platform are not limitedly applied to the configurations and operations of the above-described embodiments, but all or some of the embodiments may be selectively combined and configured, so the embodiments may be modified in various ways.

Abstract

Disclosed herein are an apparatus and method for a multi-cloud service platform. The apparatus includes one or more processors and executable memory for storing at least one program executed by the one or more processors. The at least one program may receive a service request from a user client device, generate a multi-cloud infrastructure service using multiple clouds in response to the service request, make the multiple clouds interoperate with mufti-cloud infrastructure in order to provide the multi-cloud infrastructure service, and generate a multi-cloud application runtime environment corresponding to the multi-cloud infrastructure service.

Description

    CROSS REFERENCE TO RELATED APPLICATION
  • This application claims the benefit of Korean Patent Application No. 10-2020-0046740, filed Apr. 17, 2020, which is hereby incorporated by reference in its entirety into this application.
  • BACKGROUND OF THE INVENTION 1. Technical Field
  • The present invention relates generally to technology for a multi-cloud service platform and more particularly to software platform technology for effectively operating and managing the resources and services of multiple cloud-computing devices and supporting the operation of applications in a cloud-computing environment.
  • 2. Description of the Related Art
  • For cloud ,services and computing resources for business a single cloud or a data center is mainly used. The use of a single cloud may cause problems, such as the risk of service interruption, limited computing resources and services, dependence On a specific cloud service provider, and the like. Also, a single cloud service has a disadvantage in that a user must directly request a cloud to generate a virtual machine (VM), to make a network connection to a VM group, to configure an application runtime environment (application execution environment), to monitor the VM and the execution environment, to perform resource scaling, and the like.
  • Accordingly, the number of users of a multi-cloud service based on the use of multiple clouds (that is, software development and operation using multiple clouds or multiple cloud service providers) and the number of businesses using such a multi-cloud service are increasing.
  • That is, cloud services and computing resources for future business require a computing platform based on multiple clouds, which is capable of providing optimal cloud service to users through integrated use of various types of multiple clouds, rather than using a single cloud.
  • Meanwhile, Korean Patent Application Publication No. 10-2019-0088594, titled “Method for running cloud-based media service supporting multi-DRM and recording medium for performing the method”, discloses a method for running a cloud-based media service supporting multi-DRM, which is configured such that a content provider is able to apply Digital Rights Management (DRM) technology to multiple media service platforms after purchasing the same, and a recording medium for performing the method.
  • SUMMARY OF THE INVENTION
  • An object of the present invention is to enable the resources and services of multiple clouds to be operated and managed in common and to provide an application runtime environment in order flu a user to easily develop and distribute an application
  • Another object of the present invention is to provide interoperating with multi-cloud infrastructure, control and management of multi-cloud infrastructure, and plug-in-based dynamic expansion of a cloud.
  • A further object of the present invention is to provide integrated management for a multi-cloud infrastructure service suitable for user requirements.
  • Yet another object of the present invention is to provide an environment for facilitating the management of a multi-cloud infrastructure service and application and to guarantee the quality and availability thereof.
  • In order to accomplish the above objects, an apparatus for a multi-cloud service platform according to an embodiment of the present invention includes one or more processors and executable memory for storing at least one program executed by the one or more processors. The at least one program may receive a service request from a user client device, generate a multi-cloud infrastructure service using multiple clouds in response to the service request, make the multiple clouds interoperate with multi-cloud infrastructure in order to provide the multi-cloud infrastructure service, and generate a multi-cloud application runtime environment corresponding to the multi-cloud infrastructure service.
  • Here, the at least one program may generate the multi-cloud infrastructure service using computing machines corresponding to the service request, among computing machines included in the multiple clouds.
  • Here, the at least one program may collect static information about specifications of the computing machines and dynamic performance information about the result of a benchmark performed on the computing machines and determine whether the computing machines correspond to the service request based on the collected information.
  • Here, the at least one program ma collect information about network latency between the computing machines and select computing machines between Which the network latency is equal to or less than a preset delay time.
  • Here, the at least one program ma make the multiple clouds interoperate with the multi-cloud infrastructure using cloud drivers of the multiple clouds, the cloud drivers complying with a common interface specification.
  • Here, the at least one program may register the cloud drivers of the multiple clouds in a common cloud driver shared library and make the multiple clouds intemperate with the multi-cloud infrastructure using the cloud drivers registered in the common cloud driver shared library.
  • Here, the at least one program may generate the multi-cloud application runtime environment using an application image corresponding to the multi-cloud infrastructure service.
  • Also, in order to accomplish the above objects, a method for a multi-cloud service platform, performed by an apparatus for the multi-cloud service platform, according to an embodiment of the present invention includes receiving a service request from a user client device; generating a multi-cloud infrastructure service using multiple clouds in response to the service request; making the multiple clouds interoperate with multi-cloud infrastructure in order to provide the multi-cloud infrastructure service; and generating a multi-cloud application runtime environment corresponding to the multi-cloud infrastructure service.
  • generating the multi-cloud infrastructure service may be configured to generate the multi-cloud infrastructure service using computing machines corresponding to the service request, among computing machines included in the multiple clouds.
  • Here, generating, the multi-cloud infrastructure service may be configured to collect static information about specifications of the computing machines and dynamic performance information about the result of a benchmark performed on die computing machines and to determine whether the computing machines correspond to the service request based on the collected information.
  • Here, generating the multi-cloud infrastructure service may be configured to collect information about network latency between the computing machines and to select computing machines between which the network latency is equal to or less than a preset delay time.
  • Here, making the multiple clouds interoperate with the multi-cloud infrastructure may be configured to make the multiple clouds intemperate with the multi-cloud infrastructure using cloud drivers of the multiple clouds, the cloud drivers complying with a common interface specification.
  • Here, making the multiple clouds interoperate with the multi-cloud infrastructure may be configured to register the cloud drivers of the multiple clouds in a common cloud driver shared library and to make the multiple clouds intemperate with the multi-cloud infrastructure using the cloud drivers registered in the con non cloud driver shared library.
  • Here, generating the multi-cloud application runtime environment may be configured to generate the multi-cloud application runtime environment using an application image corresponding to the multi-cloud infrastructure service.
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • The above and other objects, features and advantages of the present invention will be more clearly understood from the following detailed description, taken in conjunction with the accompanying drawings, in which:
  • FIG. 1 is a view illustrating an example of a multi-cloud system;
  • FIG. 2 is a view illustrating a multi-cloud service platform system according to an embodiment of the present invention;
  • FIG. 3 is a block diagram illustrating an apparatus for a multi-cloud service platform according to an embodiment of the present invention;
  • FIG. 4 is a view illustrating the process of operating, an apparatus for a multi-cloud service platform according to an embodiment of the present invention;
  • FIG. 5 is a view illustrating the relationship between a multi-cloud infrastructure service and multi-cloud infrastructure resources according to an embodiment of the present invention;
  • FIG. 6 is a view illustrating an integrated management function for a multi-cloud infrastructure service according to an embodiment of the present invention;
  • FIG. 7 is a block diagram illustrating a specific example of the MCIS management unit illustrated in FIG. 3;
  • FIG. 8 is a view illustrating an integrated connection function for an MCIS according to an embodiment of the present invention;
  • FIG. 9 is a view illustrating an MCIS integrated optimal deployment scheduling function according to an embodiment of the present invention;
  • FIG. 10 is a view illustrating, MC IS lifecycle states and transition according to an embodiment of the present invention;
  • FIG. 11 is a view illustrating a multi-cloud user environment;
  • FIG. 12 is a view illustrating the user environment of the infrastructure interoperating unit illustrated in FIG. 3;
  • FIG. 13 is a block diagram illustrating a specific example of the infrastructure interoperating unit illustrated in FIG. 3;
  • FIG. 14 is a block diagram illustrating a specific example of the infrastructure interoperating information management unit illustrated in FIG. 13;
  • FIG. 15 is a block diagram illustrating a specific example of the infrastructure common control management unit illustrated in FIG. 13;
  • FIG. 16 is a block diagram illustrating a specific example of the cloud driver common interface illustrated in FIG. 13;
  • FIG. 17 is a block diagram illustrating a specific example of the interoperating history information management unit illustrated in FIG. 13;
  • FIG. 18 is a view illustrating a specific example of the cloud driver interface illustrated in FIG. 16;
  • FIG. 19 is a view illustrating a new cloud driver management function based on a dynamic plug-in according to an embodiment of the present invention;
  • FIG. 20 is a block diagram illustrating a specific example of the application management unit illustrated in FIG. 3;
  • FIG. 21 is as view illustrating a multi-cloud application runtime environment according; to an embodiment of the present invention;
  • FIG. 22 is a block diagram illustrating a specific example of the monitoring unit illustrated in FIG. 3;
  • FIG. 23 is a flowchart illustrating a method for a multi-cloud service platform according to an embodiment of the present invention; and
  • FIG. 24 is a view illustrating a computer system according to an embodiment of the present invention.
  • DESCRIPTION OF THE PREFERRED EMBODIMENTS
  • The present invention will be described in detail below with reference to the accompanying drawings. Repeated descriptions and descriptions of known functions and configurations that have been deemed to unnecessarily obscure the gist of the present invention will be omitted below. The embodiments of the present invention are intended to fully describe the present invention to a person having ordinary knowledge in the art to which the present invention pertains. Accordingly, the shapes, sizes, etc. of components in the drawings may be exaggerated m order to make the description clearer.
  • Throughout this specification, the terms “comprises” and/or “comprising” and “includes” and/or “including” specif the presence of stated elements but do not preclude the presence or addition of one or more other elements unless otherwise specified.
  • Hereinafter, a preferred embodiment of the present invention will be described in detail with reference to the accompanying drawings.
  • FIG. 1 is a view illustrating an example of a multi-cloud system.
  • Referring to FIG. 1, it can be seen that, in a general multi-cloud system, a user directly requests each cloud to generate a VM, make a network connection to a VM group, configure an application runtime environment, monitor the M and the execution environment, perform resource scaling, and the like.
  • FIG. 2 is a view illustrating a multi-cloud service platform system according to an embodiment of the present invention.
  • Referring to FIG. 2, the multi-cloud service platform system according to an embodiment of the present invention includes a multi-cloud service platform apparatus 100, multiple clouds, and cloud-native applications.
  • A user client device 10 may request the multi-cloud service platform apparatus 100 to generate and manage a service.
  • The multi-cloud service platform apparatus 100 may schedule multi-cloud infrastructure resources.
  • Here, the multi-cloud service platform apparatus 100 may request the veneration of a multi-cloud infrastructure service by interoperating with the multiple clouds.
  • Here, the multi-cloud service platform apparatus 100 may collect information acquired by monitoring the multiple clouds,
  • Here, the multi-cloud service platform apparatus 100 may provide an integrated interoperating function for a multi-cloud infrastructure service using load balancing and resource scheduling.
  • Here, the multi-cloud service platform apparatus 100 may support interoperating with infrastructure of the multiple clouds.
  • Here, the multi-cloud service platform apparatus 100 may provide interoperating with various types of cloud infrastructure and plug-in-based dynamic expansion of a cloud.
  • Here, the multi-cloud service platform apparatus 100 may provide uniform control and management for various types of cloud infrastructure.
  • Here, the multi-cloud service platform apparatus 100 may support integrated management for multi-cloud infrastructure services.
  • Here, the multi-cloud service platform apparatus 100 may provide optimal deployment of multi-cloud infrastructure services suitable for user requirements.
  • Here, the multi-cloud service platform apparatus 100 may support single-point management of various cloud infrastructure services.
  • Here, the multi-cloud service platform apparatus 100 may provide integrated interoperating functions (a VPN a load balancer, and the like) for multi-cloud infrastructure services.
  • Here, the multi-cloud service platform apparatus 100 may support integrated monitoring of the multiple clouds.
  • Here, the multi-cloud service platform apparatus 100 may provide information about various states of multi-cloud infrastructure services and applications.
  • Here, the mufti-cloud service platform apparatus 100 may support integrated management of multi-cloud applications.
  • Here, the multi-cloud service platform apparatus 100 may provide an optimal environment for executing multi-cloud applications and a convenient management environment.
  • Here, the multi-cloud service platform apparatus 100 may guarantee the quality and availability of the multi-cloud applications.
  • Here, the multi-cloud service platform apparatus 100 may provide an open API and tools for common subsystems of multi-cloud services.
  • Here, the multi-cloud service platform apparatus 100 may provide an open API for managing the services and resource s of the multiple clouds,
  • Here, the multi-cloud service platform apparatus 100 may provide a web Ul and a command-line interface (CLI) for use convenience in a multi-cloud environment.
  • Here, the multi-cloud service platform apparatus 100 may provide a subsystem structure and microservice-based architecture.
  • FIG. 3 is a block diagram illustrating a multi-cloud service platform apparatus according to an embodiment of the present invention.
  • Referring to FIG. 3, the multi-cloud service platform apparatus 100 according to an embodiment of the present invention includes an API-processing unit 110, an API relay unit 120, an MCIS management unit 130, an infrastructure interoperating unit 140, an application management unit 150, and a monitoring unit 160.
  • The MCIS management unit 130, the infrastructure interoperating unit 140, the application management unit 150, and the monitoring unit 160, which are individual. subsystems, may provide the core. functions of the platform.
  • The MCIS management unit 130, the infrastructure interoperating unit 140, the application management unit 150, and the monitoring unit 160 may realize the respective subsystems by taking the bun of microservices.
  • The microservice form may be a software architecture that structuralizes individual function modules as independent service units, thereby enabling flexible integration and reduction of development complexity.
  • The MCIS management unit 130, the infrastructure interoperating unit 140, the application management unit 150, and the monitoring unit 160 may manage internal operation information through DB manager 1 130 a, DB manager 2 140 a, DB manager 3 150 a, and DB manager 4 160 a, which are respective operation information managers.
  • The API-processing unit HO may receive a service request from a user client device 10.
  • Here, the APE-processing unit 110 may provide an open API for using the system, and a web user interface (UI) and a command-line interface (CLI) for management convenience.
  • Here, the API-processing unit 110 may provide the functions of a multi-cloud infrastructure service to the user client device 10 through the web UI, the CLI, and the open API.
  • Here, the API-processing unit 110 ma provide the functions of a multi-cloud infrastructure service to platforms and software 20 through the open API.
  • For example, the platforms and the software 20 may include a multi-cloud management platform (MCMP), a cloud service brokerage platform (CSB), and the like.
  • Here, the API-processing unit 110 nay provide the user interfaces of the platforms.
  • The APE relay unit 120 may provide interoperating and convenience in function expansion by relaying an API between the subsystems.
  • The API relay unit 120 may receive requests for required functions from the subsystems and return the results thereof.
  • The MCIS management unit 130 may generate a multi-cloud infrastructure service (MCIS) using multiple clouds in response to a service request.
  • Here, the MCIS management unit 130 may enable operation and integrated management of the multi-cloud infrastructure service that supports optimal deployment based on the user requirements.
  • Here, the MCIS management unit 130 may generate a multi-cloud infrastructure service using computing machines corresponding to the service request, among computing machines included in the multiple clouds.
  • Here, the types of the computing, machines may include a virtual machine, a container machine, and the like. In the detailed description of the present invention, a virtual machine: (VM) is described as an example of the computing machine.
  • Here, the MCIS management unit 130 may collect static information about the specifications of the computing machines and dynamic performance information about the result of a benchmark performed on the computing machines, and may determine whether the computing machines correspond to the service request based on the collected information.
  • Here, the MCIS management unit 130 may collect information about network latency between the computing machines, and may select computing machines between which the latency is equal to or less than a preset delay time.
  • The infrastructure interoperating unit 140 may make the multiple clouds interoperate with the multi-cloud. infrastructure in order to provide the multi-cloud infrastructure service.
  • Here, the infrastructure interoperating unit 140 may interoperate with heterogeneous infrastructure using plug-ins, and manage and control the same using a consistent method.
  • Here, the infrastructure interoperating unit 140 may make the multiple clouds intemperate with the multi-cloud infrastructure using the cloud drivers of the multiple clouds, which comply with a common interface specification.
  • Here, the infrastructure interoperating unit 140 may register the cloud drivers of the multiple clouds in a common cloud driver shared library, and may make the multiple clouds interoperate with the multi-cloud infrastructure using the cloud drivers registered in the common cloud driver shared library.
  • The application management unit 150 may generate a multi-cloud application runtime environment corresponding to the multi-cloud infrastructure service.
  • Here, the application management unit 150 may support multi-cloud application operation and management for guaranteeing the stability and quality of applications.
  • Here, the application management unit 150 may generate a multi-cloud application runtime environment using an application image corresponding to the multi-cloud infrastructure service.
  • The monitoring unit 160 may provide monitoring of the multi-cloud infrastructure service (N4CIS), computing resources included in the MCIS, application workloads, and the application runtime environment.
  • Here, the monitoring unit 160 may provide monitoring information for optimizing the management of the multi-cloud infrastructure service and the multi-cloud applications.
  • FIG. 4 is a view illustrating the process of operating a multi-cloud service platform apparatus according to an embodiment of the present invention.
  • Referring to FIG. 4, it can be seen that the process of operating a multi-cloud service platform apparatus 100 according to an embodiment of the present invention is illustrated.
  • The API-processing unit 110 may receive a service request from a user client device 10 and deliver the same to the API relay unit 120.
  • The API relay unit 120 may provide a common function for subsystem runtime to the MCIS management unit 130, the infrastructure interoperating unit 140, the application management unit 150, and the monitoring unit 160.
  • The intra ti interoperating unit 140 may support uniform control and management for the CIS management unit 130, the application management unit 150, and the monitoring unit 160 by interoperating with various clouds.
  • Here, the infrastructure interoperating unit 140 may provide an open API to the API-processing unit 110.
  • The MCIS management unit 130 may provide an MCIS to the application management unit 150.4
  • Here, the MCIS management unit 130 may provide an open API to the API-processing unit 110.
  • The application management unit 150 may provide an open API to the API-processing unit 110.
  • The monitoring unit 160 may provide MCIS-monitoring information to the MCIS management unit 130.
  • Here, the monitoring unit 160 may provide application-monitoring information to the application management unit 150.
  • Here, the monitoring unit 160 may provide an open API to the API-processing unit 110.
  • FIG. 5 is a view illustrating the relationship between a multi-cloud infrastructure service and multi-cloud infrastructure resources according to an embodiment of the present invention.
  • Referring to FIG. 5, it can be seen that the concepts of the multi-cloud infrastructure resources and service to be managed by the MCIS management unit 130 in an integrated manner are illustrated.
  • The multi-cloud infrastructure resource (MCIR) may include cloud infrastructure resources for generating and operating an MCIS provided on multiple clouds.
  • The cloud infrastructure resources may include images, specifications of VMs, networks and resources for accessing to VMs, and the like.
  • The multi-cloud infrastructure service (MCIS) may correspond to a group of one or more cloud infrastructure services (a virtual machine (VM), a container machine (CM), and the like) interconnected for a single purpose (an application service, an application, or the like) on locally isolated multiple clouds.
  • The multi-cloud infrastructure resources .may be used for configuring a multi-cloud infrastructure service.
  • User resources may be resources registered in the system for user convenience.
  • The cloud infrastructure resources may be resources of cloud service providers.
  • The multi-cloud infrastructure service may be a logical group of on or more cloud infrastructure services.
  • FIG. 6 is a view illustrating an integrated management function for a multi-cloud infrastructure service according to an embodiment of the present invention.
  • Referring to FIG. 6, it can be seen that functions provided by the MCIS management runt 130 are illustrated.
  • The MCIS management unit 130 may deploy and schedule the optimal MCIR according to various requirements of a user.
  • Here, the MCIS management unit 130 may provision actual 1-Ms through multiple cloud service providers.
  • Here, the MCIS management unit 130 may configure the generated VMs as an MCIS, and may manage the lifecycle of the MCIS.
  • Here, the MCIS management unit 130 may collect static information and dynamic information for an MCIS deployment plan for optimal MCIS deployment and scheduling.
  • The static information may include information that is not frequently changed and that can be collected through metadata.
  • The dynamic information may include information that must be collected through measurement because the information is frequently changed.
  • Here, the MCIS management, unit 130 may optimally deploy VMs based on the static information and the dynamic information, and may support optimal deployment in units of MCISs by considering VMs that are geographically distant from each other across multiple clouds.
  • FIG. 7 is a block diagram illustrating a specific example of the MCIS management unit illustrated in FIG. 3. FIG. 8 is a view illustrating an integrated connection function tot an MCIS according to an embodiment of the present invention. FIG. 9 is a view illustrating an MCIS integrated optimal deployment scheduling function according to an embodiment of the present invention. FIG. 10 is a view illustrating MCIS lifecycle states and transition according to an embodiment of the present invention.
  • Referring to FIG. 7, the MCIS management unit 130 may include a namespace management unit 131, a resource management unit 132, an MCIS provisioning management unit 133, an MCIS lifecycle management unit 134, an MCIS automatic control unit 135, an MCIS integrated connection management unit 136, and an MCIS-integrated-management-open-API-runtime-processing unit 1300.
  • The namespace management unit 131 may assign a namespace to which objects belong using a namespace.
  • Here, when objects having the same name are included in different namespaces, the namespace management unit 131 may distinguish these objects by assigning the namespaces.
  • Here, the namespace management unit 131 may logically separate all of the MCIRs and MCISs of a user using namespaces.
  • Here, the namespace management unit 131 may search for and control objects on a namespace basis.
  • For example, the namespace management unit 131 assigns different namespaces for the respective projects of a user, thereby isolating the MCIR and MCIS of each of the projects.
  • Here, the namespace management unit 131 may provide a management function to the user client device 10 such that the user client device 10 is capable of generating, retrieving, or deleting a namespace object.
  • Here, the namespace management unit 131 may generate an information object having a namespace name requested by the user client device 10 and previously generated universally unique identifier (UUID) information using a namespace object generation function.
  • Here, the namespace management unit 131 may provide a list of all of the namespaces by providing a namespace object retrieval function to the user client device 10.
  • Here, the namespace management unit 131 may specify a UIID through the name of the namespace.
  • The specified UUID may include basic information that is required in order to request retrieval and control of the MCIR and MCIS.
  • Here, the namespace management unit 131 may retrieve information about an MCIR and an MCIS included in the namespace using a namespace object deletion function.
  • Here, when the namespace includes any of an MCIR and an MCIS, the namespace management unit 131 may not allow the deletion of the namespace.
  • Here, the namespace management unit 131 may delete the namespace only after all of the MCIRs and MCISs assigned to the namespace are deleted.
  • The resource management unit 132 may provide a function capable of managing cloud infrastructure resources, which are used in order for respective clouds to provide infrastructure services, in a centralized manner.
  • Here, the resource. management unit 132 may manage the infrastructure resources of each cloud as the objects to be used for configuring and setting an MCIS.
  • Here, the resource management unit 132 may enable generation, registration, retrieval, and deletion functions for various resource types of the MCIR (images, specifications of VMs, networks, resources for accessing to VMs, and the like).
  • Here, the resource management unit 132 may manage the image resource of a VIM that can be included in the MCIS.
  • Here, the resource management unit 132 may register a VM image in the system.
  • The registered image may become a system object having an identifier.
  • Here, the registered image may be used as a parameter when a VM is generated.
  • Here, the resource management unit 132 may provide the user client device 10 with a management function for registering, retrieving or deleting an image.
  • Also, the resource management unit 132 may manage the specification resource of as VM that can be included in the MCIS.
  • The VM specification resource may be an object corresponding to the specification of a VM defined by a cloud service provider.
  • Here, the resource management unit 132 may receive the registration of a VM specification resource from the user client device 10.
  • The registered VM specification resource may become a system object having an identifier.
  • When the specification of the VM to be managed is selected, the VM specification object corresponding thereto may be multiple objects according to the cloud service providers.
  • The VM specification object may be used as a parameter when a 1M is generated.
  • Here, the resource management unit 132 may provide the user client device 10 with a management function capable of retrieving and deleting a VM specification resource.
  • Here, the resource management unit 132 may include at least one of the number of vCPUs, a memory size, and a storage size as main specification factors managed by the system.
  • Also, the resource management unit 132 may manage a virtual network resource that can be included in the MCIS.
  • The virtual net, resource may be an object corresponding to a virtual network resource defined by a cloud service provide.
  • Here, the resource management unit 132 may receive, from the user client device 10, the registration of a virtual network resource provided by the cloud service provider.
  • The registered viii ital network resource may become a system object having an identifier.
  • The virtual network resource may be used as a parameter when a VM is generated.
  • Here, the resource management unit 132 may provide a management function capable of retrieving and deleting a virtual network resource to the user client device 10.
  • Also, the resource management unit 132 may manage (register, retrieve, or delete) resources required for accessing to VMs included in an MCIS.
  • The resource related to connection with a VM may include a network security group (an item group for designating accessible network ports), an access security key for accessing a VM through a secure shell (SSH), and the like.
  • The MCIS provisioning management unit 133 may manage the entire procedure of generating an MCIS.
  • Here, the MCIS provisioning management unit 133 may generate VMs, which are to become components of an Mos, in order to generate an MCIS, configure the settings of the generated VMs, and include the VMs in a logical object, namely the MCIS.
  • Here, the MCIS provisioning management unit 133 may optimally deploy and schedule VMs in order to generate an individual VM, and may select VMs that best match the service requirements for each MCIS, thereby provisioning the optimal MCIS to a user.
  • Here, the MCIS provisioning management unit 133 may check MCIS deployment requirements.
  • Here, the MCIS provisioning management unit 133 may check whether there is an error in the deployment requirements for the MCIS requested by the user client device 10, and may determine whether provisioning is possible based on the information managed by the MCIS management unit 130.
  • Here, when a user requirement that cannot be provisioned is included in the requirements, the MCIS provisioning management unit 133 does not perform MCIS provisioning, and may tell the user client device 10 that provisioning is impossible.
  • Also, the MCIS provisioning management unit 133 may collect MCIS deployment information.
  • The MCIS deployment information may include static information and dynamic information.
  • The static information may include specifications, locations, prices, and the like, and the dynamic information may include performance information and the
  • Here, the MCIS provisioning management unit 133 may collect static information about VM specifications, and may periodically collect dynamic, performance information through a VM benchmark or the like.
  • Here, the MCIS provisioning management unit 133 may provide the collected information as base data for an MCIS optimal deployment scheduling algorithm.
  • Also, the MCIS provisioning management unit 133 may perform MCIS optimal deployment scheduling.
  • The MCIS optimal deployment scheduling a algorithm nay include algorithms for performing optimal deployment based on various factors.
  • Here, the MCIS provisioning management unit 133 may support optimal deployment for each MCIS.
  • Here, the MCIS provisioning management unit 133 collects information about network latency between VMs located across multiple clouds, thereby providing a deployment function such that the network latency between all of the VMs in the MCIS requested by a user is equal to or less than a few milliseconds.
  • Referring to FIG. 9, it can be seen that an example of deployment based on network latency between VMs is illustrated. When network latency equal to or less than 40 milliseconds is set as the acceptable latency in an MCIS, the MCIS integrated optimal deployment function may optimally configure an MCIS by including only VMs that satisfy the constraint therein using the information about the network latency between VMs.
  • Also, the MCIS provisioning management unit 133 may provide a VM-specification-based deployment algorithm, a VM-location-based deployment algorithm a VM-price-based deployment algorithm, a VM-performance-based deployment algorithm, VM-composite-condition-based deployment algorithm, and the like depending on the optimal deployment conditions for the respective VMs in order to optimally configure an MCIS.
  • The VM-specification-based deployment algorithm may recommend and deploy VMs based on the specification of a VM requested by the user client device 10.
  • The VM-location-based deployment algorithm may recommend and deploy optimal VMs in ascending order of distance from the region selected by the user client device 10.
  • The VIM-price-based deployment algorithm may recommend and deploy VMs that are capable of providing the specification required by the user client device 10 at the lowest cost.
  • The VM-performance-based deployment algorithm may recommend and deploy VMs based on the performance required by the user client device 10 using the information provided through an MCIS deployment information collection function (a performance benchmark or the like).
  • For example, the performance factors of a VM may include computation performance, memory read/write performance, file I/O performance, and the like.
  • The VM-composite-condition-based deployment algorithm is an algorithm that can be used when it is necessary to collectively consider the above-described multiple factors, and may recommend and deploy VMs using the weighted sum of the above-described algorithms (e.g., an equation capable of representing user preferences tot the respective algorithms).
  • Also, the MCIS provisioning management unit 133 may generate an MCIS.
  • Here, the MCIS provisioning management unit 133 may generate an MCIS object, and may generate a VM be included in the MCIS object using the VM generation function of the infrastructure interoperating nun 140.
  • Here, the MCIS provisioning management unit 133 may generate an MCIS through a generation request step and a generation configuration step.
  • Here, after all of the VMs requested by the user client device 10 are generated, the MCIS provisioning management unit 133 may input generation and access information related to the VMs to the ICIS object and return the result to the user client device 10.
  • The MCIS lifecycle management unit 134 may provide management and control functions for the lifecycle and state of an MCIS after the MCIS is generated and provisioned to the user client device 10.
  • Here, the MCIS lifecycle management unit 134 may manage the states (a running state, a suspended state, a terminated state, and the like) of the MCIS lifecycle for each MCIS and VMs included therein.
  • Here, the MCIS lifecycle management unit 134 may check whether the lifecycle state of the MCIS is the same as the lifecycle state of the actual VM managed by a cloud service provider, and may synchronize the lifecycle state of the MCIS and the lifecycle state of the actual VM with each other.
  • Here, the MCIS lifecycle management unit 134 may handle a lifecycle-related control request received from the user client device 10,
  • Referring to FIG. 10, it can be seen that an example of the lifecycle states of an MCIS is illustrated. The lifecycle states may include transition states and final states.
  • The transition states may include a ‘creating’ state, a ‘suspending’ state, a ‘resuming’ state, a ‘rebooting’ state, and a ‘terminating’ state.
  • The ‘creating’ state may be a state in which creation of an MCIS is in progress.
  • The ‘suspending’ state may be a state in which suspension of an MCIS is in progress,
  • The ‘resuming’ state may be a state in which resumption of a suspended MCIS is in progress,
  • The ‘rebooting’ state may be a state in which an MCIS is being rebooted.
  • The ‘terminating’ state may be a state in which termination of an MCIS is in progress.
  • The final states may include a ‘running’ state, a ‘suspended’ state, a ‘failed’ state, and a ‘terminated’ state.
  • The ‘running’ state may be a state in which an MCIS is running.
  • The ‘suspended’ state may be a state in which an MCIS is suspended. (00217) The ‘failed’ state may be a state in which. an MCIS is stopped due to an error.
  • The ‘terminated’ state may be a state in which an MCIS is terminated.
  • The MCIS automatic control unit 135 ma automatically control an MCIS based on rules specified by a user.
  • Here, the MCIS automatic control unit 135 may receive a state condition for automatically controlling an MCIS from the user client device 10, and may suggest a specific action to be automatically performed based on whether the state condition is satisfied or unsatisfied.
  • Here, the MCIS automatic control unit 135 may provide a functional mechanism for satisfying various conditions of the user client device 10 and taking actions.
  • Here, the MCIS automatic control unit 135 may manage requirements for MCIS automatic control.
  • Here, the MCIS automatic control unit 135 may register, retrieve, or delete an MCIS automatic control request from the user client device 10.
  • Also, the MCIS automatic control unit. 135 may determine a condition for MCIS control.
  • Here, the MCIS automatic control unit 135 may continuously check whether the current state of the MCIS matches the state condition requested by the user client device 10 through monitoring, and may trigger automatic control when it is determined that the current state of the MClS matches the state condition.
  • Also, the MCIS automatic control unit 135 may take an MCIS control action.
  • Here, the MCIS automatic control unit 135 may take the action requested by the user client device 10 when automatic control is triggered.
  • The N1CIS integrated connection management unit 136 may support execution of distributed applications based on an MCIS that includes VMs geographically distributed based on multiple clouds.
  • Referring to FIG. 8, the MCIS integrated connection management unit 136 may provide a uniform subnetwork environment in order to support execution of distributed applications, and may improve the availability of an MCIS by balancing loads between clouds.
  • Here, the MCIS integrated connection management unit 136 may perform an MCIS uniform subnetwork environment configuration function, an MCIS-load-balancing function, and the like.
  • Here, the MCIS integrated connection management unit 136 may receive the selection of at least one of the uniform subnetwork environment configuration function and the load-balancing function from the user client device 10, and may deploy the MCIS using the function selected by the user client device 10.
  • Here, the MCIS integrated connection management unit 136 may generate an integrated connection service environment based on the MCIS, the deployment of which is completed.
  • The MCIS-integrated-management-open-API-runtime-processing unit 1300 provides the functions of an MCIS to another subsystem or a user, and may include an open API runtime server therefor.
  • Here, the MCIS-integrated-management-open-API-runtime-processing unit 1300 may include an open API client for using the functions of other subsystems.
  • Also, the MCIS management unit 130 may communicate with the infrastructure interoperating unit 140 in order to generate a VM or resources, and may communicate with the monitoring unit 160 in order to share the current state of an MCIR.
  • Here, the MCIS management unit 130 may use the functions of other subsystems through communication, and may further include a relay in order to relay the communication therebetween.
  • FIG. 11 is a view illustrating a multi-cloud user environment.
  • Referring to FIG. 11, in the multi-cloud service user environment, clouds may be used only by a user having a professional skill to use each cloud infrastructure, or may be used only through an application for each cloud infrastructure or a bespoke program developed by a professional developer. The professional developer requires information about conditions for using different connection and authentication methods and resources, methods for configuring the same, and complicated development and tests using different user APIs for respective clouds. The multi-cloud service development method and the service user environment illustrated in FIG. 11 may be available at the beginning of the use of multi-cloud computing, but when demand for multi-cloud services and the number of users of the multi-cloud services increase, a problem may occur in the process of developing and running the service.
  • FIG. 12 is a view illustrating the user environment of the infrastructure interoperating unit illustrated in FIG. 3.
  • Referring to FIG. 12, the infrastructure interoperating unit 140 of the multi-cloud service platform apparatus 100 may solve problems associated with interoperating with heterogeneous cloud infrastructure.
  • The infrastructure interoperating unit 140 may provide a user client device 10 and other subsystems with a uniform interoperating and control management method for different types of cloud infrastructure.
  • Here, the infrastructure interoperating unit 140 may provide uniform control management by providing a common API based on a common interface driver.
  • Here, the infrastructure interoperating unit 140 may enable dynamic addition of a view cloud using a dynamic plug-in, thereby expanding cloud resources.
  • Here, the infrastructure interoperating win 140 may support improvement in the accuracy of selection of cloud infrastructure by providing a history of interoperating with clouds.
  • FIG. 13 is a block diagram illustrating a specific example of the infrastructure interoperating unit illustrated in FIG. 3. FIG. 14 is a block diagram illustrating a specific example of the infrastructure interoperating information management unit illustrated in FIG. 13. FIG. 15 is a block diagram illustrating a specific example of the infrastructure common control management unit illustrated in FIG. 13, FIG. 16 is a block diagram illustrating a specific example of the cloud driver common interface illustrated in FIG. 13. FIG. 17 is a block diagram illustrating a specific example of the interoperating history information management unit illustrated in FIG. 13. FIG. 18 is a view illustrating a specific example of the cloud driver interface illustrated in FIG. 16.
  • Referring to FIG. 13, the infrastructure interoperating unit 140 may include an infrastructure interoperating information management unit 141, an infrastructure interoperating history information management unit 142, an infrastructure common control management unit 143, and cloud drivers 144.
  • The infrastructure interoperating information management unit 141 may manage information about interoperating with different clouds in an integrated manner in a multi-cloud environment, and may manage cloud infrastructure interoperating information based on which connection to various types of cloud infrastructure can be easily and quickly established.
  • The cloud infrastructure interoperating information may include information about cloud drivers, information about cloud infrastructure authentication, information about cloud service regions, and the like.
  • Referring to FIG. 14, the infrastructure interoperating information management unit 141 may include an interoperating information management open API runtime unit, a cloud driver information management unit, a cloud infrastructure authentication information management unit, a cloud infrastructure region information management unit, a cloud infrastructure connection settings information management unit, and a cloud infrastructure interoperating, information operation management unit.
  • The interoperating information management open API runtime unit may provide an open API runtime server and an open API client in order to provide the function of integrated management of cloud infrastructure interoperating information to a user.
  • Here, the interoperating information management open API runtime unit may provide the function of integrated management of interoperating information to the user client device 10, which uses a user API based on REST or gRPC.
  • Here, the interoperating information management open API runtime unit may provide cloud driver information, credential information, and region information to the infrastructure common control management unit 143.
  • The cloud driver information management unit may provide a driver information management function for interoperating with cloud infrastructure,
  • The driver information management function may include the functions of registering, providing, modifying, and deleting cloud driver information.
  • The cloud driver information may include a driver name, the name of a cloud service provider (CSP), a driver library path, and the like.
  • The cloud infrastructure authentication information management unit may provide a credential information management function for connection with cloud infrastructure and authentication of cloud infrastructure.
  • The credential information management function may include the functions of registering, providing, modifying, and deleting cloud authentication information.
  • The cloud authentication information may include a credential name, a cloud infrastructure service endpoint, cloud infrastructure credential information, and the like.
  • The cloud infrastructure region information management unit may provide a region information management function for the cloud infrastructure service with which to intemperate.
  • The region information management function may include the functions of registering, providing and deleting cloud region information.
  • The region information may further include zone information.
  • The cloud infrastructure connection settings information management unit may register, provide, modify, delete, and manage cloud connection settings information required for connection with cloud infrastructure.
  • The cloud connection settings information may include the name of cloud connection settings, a cloud driver name, a cloud credential name, a cloud region name, and the like.
  • The cloud infrastructure interoperating information operation management unit may provide the function of managing operation information for integrated management of the cloud infrastructure interoperating information.
  • Here, the cloud infrastructure interoperating information operation management unit may manage operation information included in a DB manager 140 a based on a CB-store.
  • The operation information may include the above-described cloud driver information, credential information, region information, and the like.
  • The infrastructure interoperating history information management unit 142 may collect and provide information about a history of interoperating with various types of cloud infrastructure.
  • The cloud infrastructure interoperating history information may include information about a history of services for connection with cloud infrastructure and a virtual machine and for function calls.
  • Here, the cloud infrastructure interoperating history information may include a response speed, an error message, and the like.
  • Here, using the cloud infrastructure interoperating history information, the user client device 10 may improve the accuracy of prediction of cloud infrastructure service quality and accuracy in selection of specific cloud infrastructure resources.
  • Referring to FIG. 17, the infrastructure interoperating history information management unit 142 may provide a cloud infrastructure interoperating history information provision function and a cloud infrastructure interoperating history information collection function.
  • The cloud infrastructure interoperating history information provision function may provide and enable visualization of information about a history of interoperating with cloud infrastructure, and may provide and enable visualization of information about a history of execution of virtual machine commands.
  • The cloud infrastructure interoperating history information collection function may collect information about a history of interoperating with cloud infrastructure and information about a history of execution of virtual machine commands.
  • The infrastructure common control management unit 143 may provide control and management functions using a uniform common API for the multi-cloud infrastructure resources and virtual machines for providing different functions and APIs.
  • Here, the infrastructure common control management unit 143 may provide a cloud driver common interface 143 a and a driver plug-in structure that implements the cloud driver common interface in order to provide uniform control,
  • Here, the infrastructure common control management unit 143 may provide a dynamically expandable library structure that enables interoperating with a new cloud driver during system operation.
  • Referring to FIG. 15, the infrastructure common control management unit 143 may include a cloud driver management unit, a cloud driver common interface unit, and a virtual machine command remote management unit.
  • The cloud driver management unit may manage the driver of the cloud infrastructure with which to interoperate.
  • The cloud driver management unit ma dynamically load a cloud driver in the form of a shared library into memory using a cloud-driver-loading function.
  • The cloud driver management unit may provide the loaded cloud driver using a cloud driver provision function.
  • The cloud driver management unit may delete the loaded cloud driver from memory using a cloud-driver-unloading function.
  • The cloud driver common interface unit may provide a common interface for uniform control and management of cloud infrastructure resources and virtual machines.
  • Referring to FIG. 16, it can be seen that a specific example of the cloud driver common interface unit 143 a is illustrated.
  • The cloud driver common interface unit 143 a may include a cloud driver interface unit, a cloud connection management interface unit, a cloud infrastructure resource interface unit, and a virtual machine lifecycle control interface unit.
  • The cloud driver interface unit may provide cloud driver version information.
  • Here, the cloud driver interface unit may provide a list of functions provided by a cloud driver.
  • Here the cloud driver interface unit may provide interfaces for generation of a target cloud connection object and cloud connection management.
  • The cloud connection management interface unit may provide information about the current cloud connection state.
  • Here, the cloud connection management interface unit may provide a cloud infrastructure resource control interface.
  • The cloud connection management interface unit may provide a virtual machine lifecycle control interface.
  • The cloud infrastructure resource control interface unit may provide an image resource control interface, a network resource control interface, a Network Interface Card (NIC) resource control interface, a security group resource control interface, a public IP resource control interface., and a keypair resource control interface.
  • The image resource control interface may enable generation of an image of a target cloud, provision of a list of images and detailed information of the images, deletion of an image, and the like.
  • The network resource control interface may enable generation of a network resource of a target cloud, provision of a list of network resources and detailed information of the network resources, deletion of a network and the like.
  • The NIC resource control interface may enable generation of an NIC resource of a target cloud, provision of a list of NIC resources and detailed information of the NW resources, deletion of an NIC, and the like.
  • The security group resource control interface may enable generation of a security group, such as a firewall of a target cloud, provision of a list of security groups and detailed information of the security groups, deletion of a security group, and the like.
  • The public IP resource control interface may enable generation of a public IP resource of a target cloud, provision of a list of public IP resources and detailed information of the public IP resources, deletion of a public IP, and the like.
  • The keypair resource control interface may enable generation of a keypair resource of a target cloud, provision of a list of keypair resources and detailed information of the keypair resources, deletion of a keypair, and the like.
  • The virtual machine lifecycle control interface unit may provide a list of virtual machines, detailed information on a specific virtual machine, a virtual machine state list, information about the state of a specific virtual machine, and the functions of running and terminating a virtual machine, suspension and resumption of a virtual machine, rebooting a virtual machine, and the like.
  • Referring again to FIG. 15, the virtual machine command remote management unit may provide the function of executing a command in a virtual machine that is run by the user client device 10.
  • Here, the virtual machine command remote management unit may provide a virtual machine file copy function and a virtual machine internal command execution function.
  • The virtual machine file copy function may copy a specific local file, such as a command, into a virtual machine.
  • Here, the virtual machine file copy function may copy a file present in a virtual machine into local storage.
  • The virtual machine internal command execution function may execute internal commands, such as a utility, a script, or the like, present in a remote virtual machine.
  • The cloud drivers 144 may include a dynamic library that is developed in compliance with a cloud driver common interface specification, and may provide the functions of connecting to a target cloud and controlling the target cloud.
  • Referring to FIG. 18, the cloud driver may be implemented in the form of a shared library corresponding to a cloud driver common interface.
  • All or some of the functions provided by individual drivers may be provided by the cloud driver common interface.
  • The user client device 10 may check a list of functions provided by the cloud drivers.
  • Here, the user client device 10 may determine whether the driver provides a specific function using the list of functions.
  • The multi-cloud infrastructure platform apparatus 100 may operate multiple cloud drivers in the infrastructure of a single cloud by developing and plugging in the multiple cloud drivers depending on the user application or the purpose of operation.
  • The cloud driver may provide a plug-in-based common API, a common control function, and a cloud infrastructure dynamic expansion function based on dynamic addition of drivers.
  • The plug-in-based common API and the common control function may provide a plug-in mechanism using a driver method in order to provide different cloud infrastructure connection methods and interfaces to the user client device 10 through a common API and a common control function.
  • The driver method may provide a function to the user client device 10 using only a single interface even when different drivers are implemented using the same common interface.
  • The cloud infrastructure dynamic expansion function based on dynamic addition of drivers may provide a cloud infrastructure dynamic expansion function such that interoperating with new cloud infrastructure is possible during system operation without interruption thereof.
  • FIG. 19 is a view illustrating a new cloud driver management function based on a dynamic plug-in according to an embodiment of the present invention.
  • Referring to FIG. 19 the infrastructure into operating unit 140 may generate a new cloud driver shared library that implements a cloud common interface, and may copy the same into a local file system of the system.
  • The infrastructure interoperating information management unit 141 may register the name path, and the like of a new cloud driver using the cloud driver information management function.
  • The user client device 10 may select a new cloud driver object using the cloud driver management function of the infrastructure common control management unit 143 in order to use new cloud infrastructure.
  • The infrastructure interoperating information management unit 141 may dynamically load a new cloud driver from the new cloud library, corresponding to the selected new cloud driver object, into the cloud driver management unit of the infrastructure common control management unit 143.
  • Here, when the user client device 10 t ills a driver common API through the cloud driver interface, the cloud driver interface may call the API of the new cloud driver loaded into the cloud driver management unit.
  • Here, the new cloud driver finally calls the API of the new cloud infrastructure, thereby providing resources and a virtual machine to the user client device 10.
  • FIG. 20 is a block diagram illustrating a specific example of the application management unit illustrated FIG. 3. FIG. 21 is a view illustrating a multi-cloud application runtime environment according to an embodiment of the present invention.
  • Referring to FIG. 20, the application management unit 150 may include an application image management unit 151, an application runtime environment provisioning management unit 152, an application runtime environment management writ 153, and an application-integrated-management-open-API-run time-processing unit 1500.
  • The application image management unit 151 may provide a function of generating a container environment, in which the source code of an application or the application is distributed, as an image.
  • Here, the application image management unit 151 ma provide the function of storing an app image in application image storage 150 a and the function of loading the image stored in the application image storage 150 a according, to need.
  • The application runtime environment provisioning management unit 152 may generate and manage an MCIS (e.g., a computing-resource pool configured with VMs placed across multiple clouds) using the MCIS management unit 130, and may generate and deploy an application runtime environment (a container or the like) on the generated MCIS.
  • Here, the application runtime environment provisioning management unit 152 may bring (pull) the application desired by a user using the application image management unit 151 according to need when a container is generated, and may deploy the corresponding application in the container depending on the image and settings.
  • The application runtime environment management unit 153 may monitor resource usage in the application runtime environment, may use the monitoring information and check the state based on the policy defined by the user, and may take an action according to the policy defined by the user.
  • For example, the poky defined by the user may be a policy in which, when the CPU usage in the application runtime environment is equal to or greater than 95%, expansion is performed so as to execute the. same application in a new execution environment.
  • Referring to FIG. 21, the application runtime environment management unit 153 may provide a multi-cloud application runtime environment on the multi-cloud infrastructure service (MCIS).
  • Here, the application runtime environment management unit 153 may deploy an application in the form of an image tan app image) in a container through the application image storage 150 a such that the application is capable of being run in the execution environment over the multi-cloud infrastructure, and may enable operation and management thereof.
  • FIG. 22 is a block diagram illustrating a specific example of the monitoring unit illustrated in FIG. 3.
  • Referring to FIG. 22, the monitoring unit 160 may perform monitoring of a multi-cloud infrastructure service (MCIS) and computing resources included in the MCIS.
  • Here, the monitoring unit 160 may check an MCIS monitoring target list through the MCIS management unit 130, ma install a monitoring agent in the target MCIS and internal computing resources (e.g., VMs), and may collect and store MCIS-monitoring data using the agent.
  • Also, the monitoring unit 160 may check the workload of an application by monitoring an application runtime environment.
  • Here, the monitoring unit 160 may check a list comprising the execution environments to be monitored (e.g., containers) using the application management unit 150, and may collect and store monitoring data by installing a monitoring API or a monitoring agent that manages all containers.
  • The monitoring unit 160 may provide the collected and stored monitoring data using an API, and may provide the sank to a specific external service according to a preset condition.
  • FIG. 23 is a flowchart illustrating a method for a multi-cloud service platform according to an embodiment of the present invention.
  • Referring to FIG. 23, in the method for the multi-cloud service platform accordion to an embodiment of the present invention, a user request may be received at step S210.
  • That is, at step S210, a service request may be received from a user client device 10.
  • Here, at step S210, an open API for using a system and a web user interface (UI) and a command-line interface (CLI) for management convenience may be provided.
  • Here, at step S210, the functions of a multi-cloud infrastructure service may be provided to the user client device 10 through the web the CLI, and the open API.
  • Here, at step S210, the functions of die multi-cloud infrastructure service may be provided to a platform and software 20 through the open API.
  • For example, the platform and the software 20 may include a multi-cloud management platform (MCMP) a cloud service brokerage platform (CSB), and the like.
  • Here, at step S210, the user interface of the platform may be provided.
  • Here, at step S210, interoperating and convenience in function expansion may be provided by relaying an API between subsystems.
  • Here, at step S210, requests for functions required by the subsystems may be received, and the results thereof may be returned.
  • Also, in the method for the multi-cloud service platform according to an embodiment of the present invention, a multi-cloud infrastructure service may be generated at step S220.
  • That is, at step S220, in response to the service request, a multi-cloud infrastructure service (MCIS) may be generated using multiple clouds.
  • Here, at step S220 operation and integrated management of the multi-cloud infrastructure service may be provided m a manner tint supports optimal deployment based on user requirements.
  • Here, at step S220, the multi-cloud infrastructure service may be generated using computing machines corresponding to the service request, among computing machines included in the multiple clouds.
  • Here, the types of the computing machines may include a virtual machine, a container machine, and the like.
  • Here, at step S220, whether the computing machines correspond to the service request may be determined by collecting static information about the specifications o.f the computing machines and dynamic performance information about the result of a benchmark performed on the computing machines.
  • Here, at step S220, information about the network latency between the computing machines is collected, and computing machines between which the network latency is equal to or less than a preset delay time may be selected.
  • Also, in the method for the multi-cloud service platform according to an embodiment of the present invention, interoperating with the multi-cloud infrastructure may be performed at step S230.
  • That is, at step S230, in order to provide the multi-cloud infrastructure service, the multiple clouds may be made to intemperate with the multi-cloud infrastructure.
  • Here, at step S230, interoperating with heterogeneous multi-cloud infrastructure may be performed using a plug-in, and the heterogeneous multi-cloud infrastructure may be managed and controlled in a uniform manner.
  • Here, at step S230, the multiple clouds may be enabled to interoperate with the multi-cloud infrastructure using the cloud drivers of the multiple clouds, which comply with a common interface specification.
  • Here, at step S230, the cloud drivers of the multiple clouds are registered in a common cloud driver shared library, and the multiple clouds may be enabled to intemperate with the multi-cloud infrastructure using the cloud drivers registered in the common cloud driver shared library.
  • Here, at step S230, monitoring; of the multi-cloud infrastructure service and the computing resource included therein may be performed.
  • Here, at step S230, monitoring information for optimizing management of the multi-cloud infrastructure service may be provided.
  • Also, in the method for the multi-cloud service platform according to an embodiment of the present invention, a multi-cloud application runtime environment may he generated at step S240.
  • That is, at step S240, a multi-cloud application runtime environment corresponding to the multi-cloud infrastructure service may be generated.
  • Here, at step S240, multi-cloud application operation and management for guaranteeing the stability and quality of the application may be supported.
  • Here, at step S240, the multi-cloud application runtime environment may be generated using an application image corresponding to the multi-cloud infrastructure service,
  • Here, at step S240, monitoring of the application workload and the application runtime environment may be provided.
  • Here, at step S240, monitoring information for optimizing management of the multi-cloud application may be provided.
  • FIG. 24 is a view illustrating a computer system according to an embodiment of the present invention.
  • Referring to FIG. 24, the multi-cloud service platform apparatus according to an embodiment of the present invention may be implemented in a computer system 1100 including a computer-readable recording medium As illustrated in FIG. 24, the computer system 1100 may include one or more processors 1110, memory 1130, a user-interface input device 1140, a user-interface output device 1150, and storage 1160, which communicate with each other via a bus 1120. Also, the computer system 1100 may further include a network interface 1170 connected to a network 1180. The processor 1110 may be a central processing unit or a semiconductor device for executing processing instructions stored in the memory 1130 or the storage 1160, The memory 1130 and the storage 1160 may he any of various types of volatile or nonvolatile storage media. For example, the memory may include ROM 1131 or RAM 1132.
  • The multi-cloud service platform apparatus according to an embodiment of the present invention may include one or more processors 1110 and executable memory 1130 for storing at least one program executed b the one or more: processors 1110. The at least one program may receive a service request from a user client device, generate a multi-cloud infrastructure service using multiple clouds in response to the service request, make the multiple clouds interoperate with multi-cloud infrastructure M order to provide the multi-cloud infrastructure service, and generate a multi-cloud application runtime environment corresponding to the multi-cloud infrastructure service.
  • Here, the at least one program max generate the multi-cloud infrastructure service using computing machines corresponding to the service request, among computing machines included in the multiple clouds.
  • Here, the at least one program may determine whether the computing machines correspond to the service request by collecting static information about the specifications of the computing machines and dynamic performance information about a result of a benchmark performed on the computing machines.
  • Here, the at least one program may collect information about network latency between the computing machines, and may select computing machines between which the latency is equal to or less than a preset delay time.
  • Here, the at least one program may make the multiple clouds interoperate with the multi-cloud infrastructure using cloud drivers of the multiple clouds, the cloud drivers complying with a common interface specification.
  • Here, the at least one program may register the cloud drivers of the multiple clouds in a common cloud driver shared library, and may make the multiple clouds interoperate with the multi-cloud infrastructure using the cloud drivers registered in the common cloud driver shared library.
  • Here, the at least one program may generate a multi-cloud application runtime environment using an application image corresponding to the multi-cloud infrastructure service.
  • The present invention may enable the resources and services of multiple clouds to be operated and managed in common, and may provide an application runtime environment in order for a user to easily develop and distribute an application.
  • Also, the present invention may provide interoperating with multi-cloud infrastructure, control and management of multi-cloud infrastructure, and plug-in-based dynamic expansion of a cloud.
  • Also, the present invention may provide integrated management for a multi-cloud infrastructure service suitable for user requirements.
  • Also, the present invention ma provide an environment for facilitating the management of a multi-cloud infrastructure service and application, and may guarantee the quality and availability thereof.
  • As described above, the apparatus and method for a multi-cloud service platform according to the present, invention are not limitedly applied to the configurations and operations of the above-described embodiments, but all or some of the embodiments may be selectively combined and configured, so the embodiments may be modified in various ways.

Claims (14)

What is claimed is:
1. An apparatus for a multi-cloud service platform, comprising:
one or more processors; and
executable memory for storing at least one program executed b the, one or more processors,
wherein the at least one program
receives a service request from a user client device,
generates a multi-cloud infrastructure service using multiple clouds in response to the service request,
makes the multiple clouds interoperate with multi-cloud infrastructure in order to provide the multi-cloud infrastructure service, and
generates a multi-cloud application runtime environment corresponding to the multi-cloud infrastructure service.
2. The apparatus of claim 1, wherein the at least one program generates the multi-cloud infrastructure service using computing machines corresponding to the service request, among computing machines included in the multiple clouds.
3. The apparatus of claim 2, wherein the at least one program collects static information about specifications of the computing machines and dynamic performance information about a result of a benchmark perfumed on the computing machines and determines whether the computing machines correspond to the service request based on the collected information.
4. The apparatus of claim 3, wherein the at least one program collects information about network latency between the computing machines and. selects computing machines between is the network latency is equal to or less than a preset delay time.
5. The apparatus of claim I. wherein the at least one program makes the multiple clouds interoperate with the multi-cloud infrastructure using cloud drivers of the multiple clouds, the cloud drivers complying with a common interface specification.
6. The apparatus of claim 5, wherein the at least one program registers the cloud drivers of the multiple clouds in a common cloud driver shared library and makes the multiple clouds interoperate with the multi-cloud infrastructure using the cloud drivers registered in the common cloud driver shared library.
7. The apparatus of claim 1. wherein the at least one program generates the multi-cloud application runtime environment using an application image corresponding to the multi-cloud infrastructure service.
8. A method for a multi-cloud service platform, performed by an apparatus for the multi-cloud service platform, comprising:
receiving a service request from a user client device;
generating a multi-cloud infrastructure service using multiple clouds in response to the service request;
making the multiple clouds intemperate with multi-cloud infrastructure in order to provide the multi-cloud infrastructure service; and
generating a multi-cloud application runtime environment corresponding to the multi-cloud infrastructure service.
9. The method of claim 8, wherein generating the multi-cloud infrastructure service is configured to generate, the multi-cloud infrastructure service using computing machines corresponding to the service request, among computing machines included in the multiple clouds.
10. The method of claim 9, wherein generating the multi-cloud Infrastructure service is configured to collect static information about specifications of the computing machines and dynamic performance information about a result of a benchmark performed on the computing machines and to determine whether the computing machines correspond to the service request based on the collected information.
11. The method of claim 10., wherein generating the multi-cloud infrastructure service is configured to collect information about network latency between the computing machines and to select computing machines between which the network latency is equal to or less than a preset delay time.
12. The method of claim 8, wherein making the multiple clouds interoperate with the multi-cloud it is configured to make the multiple clouds interoperate with the multi-cloud infrastructure using cloud drivers of the multiple clouds, the cloud drivers complying with a common interface specification.
13. The method of claim 12, wherein making the multiple clouds intemperate with the multi-cloud infrastructure is configured to register the cloud drivers of the multiple clouds in a common cloud driver shared library and to make the multiple clouds intemperate with the multi-cloud infrastructure using the cloud drivers registered in the common cloud driver shared library.
14. The method of claim 8, wherein generating, the multi-cloud application runtime environment is configured to generate the multi-cloud application runtime environment using an application image corresponding to the multi-cloud infrastructure service.
US17/166,726 2020-04-17 2021-02-03 Apparatus and method for multi-cloud service platform Active 2042-07-29 US11966768B2 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020200046740A KR102524540B1 (en) 2020-04-17 2020-04-17 Apparatus and method for multi-cloud service platform
KR10-2020-0046740 2020-04-17

Publications (2)

Publication Number Publication Date
US20210326161A1 true US20210326161A1 (en) 2021-10-21
US11966768B2 US11966768B2 (en) 2024-04-23

Family

ID=

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20210382912A1 (en) * 2020-06-08 2021-12-09 Mongodb, Inc. Cross-cloud deployments
CN115297127A (en) * 2022-07-26 2022-11-04 浪潮软件科技有限公司 Method and device for solving heterogeneous multi-cloud unified scheduling and management
US20220374257A1 (en) * 2020-03-12 2022-11-24 At&T Intellectual Property I, L.P. Application deployment in multi-cloud environment
CN115426292A (en) * 2022-09-01 2022-12-02 在云上(南京)智能科技有限公司 Operation and maintenance system and method suitable for multi-cloud management

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110214124A1 (en) * 2010-02-26 2011-09-01 James Michael Ferris Systems and methods for generating cross-cloud computing appliances
US20130204849A1 (en) * 2010-10-01 2013-08-08 Peter Chacko Distributed virtual storage cloud architecture and a method thereof
US20150261514A1 (en) * 2014-03-11 2015-09-17 Cliqr Technologies Inc. Apparatus, systems and methods for cross-cloud application deployment
US20160294643A1 (en) * 2015-04-03 2016-10-06 Electronics And Telecommunications Research Institute System and method for service orchestration in distributed cloud environment
US20170244613A1 (en) * 2012-09-07 2017-08-24 Oracle International Corporation Declarative and extensible model for provisioning of cloud based services
US20180367632A1 (en) * 2017-06-15 2018-12-20 Electronics And Telecommunications Research Institute Apparatus for providing cloud service using cloud service brokerage based on multiple clouds and method thereof
US20190205182A1 (en) * 2017-12-28 2019-07-04 General Electric Company Unified monitoring interface
US20210382912A1 (en) * 2020-06-08 2021-12-09 Mongodb, Inc. Cross-cloud deployments

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110214124A1 (en) * 2010-02-26 2011-09-01 James Michael Ferris Systems and methods for generating cross-cloud computing appliances
US20130204849A1 (en) * 2010-10-01 2013-08-08 Peter Chacko Distributed virtual storage cloud architecture and a method thereof
US20170244613A1 (en) * 2012-09-07 2017-08-24 Oracle International Corporation Declarative and extensible model for provisioning of cloud based services
US20150261514A1 (en) * 2014-03-11 2015-09-17 Cliqr Technologies Inc. Apparatus, systems and methods for cross-cloud application deployment
US20160294643A1 (en) * 2015-04-03 2016-10-06 Electronics And Telecommunications Research Institute System and method for service orchestration in distributed cloud environment
US20180367632A1 (en) * 2017-06-15 2018-12-20 Electronics And Telecommunications Research Institute Apparatus for providing cloud service using cloud service brokerage based on multiple clouds and method thereof
US20190205182A1 (en) * 2017-12-28 2019-07-04 General Electric Company Unified monitoring interface
US20210382912A1 (en) * 2020-06-08 2021-12-09 Mongodb, Inc. Cross-cloud deployments

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Loutas et al., "Towards a Reference Architecture for Semantically Interoperable Clouds," 2010, IEEE, pgs 143-150. (Year: 2010) *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20220374257A1 (en) * 2020-03-12 2022-11-24 At&T Intellectual Property I, L.P. Application deployment in multi-cloud environment
US20210382912A1 (en) * 2020-06-08 2021-12-09 Mongodb, Inc. Cross-cloud deployments
US11727034B2 (en) * 2020-06-08 2023-08-15 Mongodb, Inc. Cross-cloud deployments
CN115297127A (en) * 2022-07-26 2022-11-04 浪潮软件科技有限公司 Method and device for solving heterogeneous multi-cloud unified scheduling and management
CN115426292A (en) * 2022-09-01 2022-12-02 在云上(南京)智能科技有限公司 Operation and maintenance system and method suitable for multi-cloud management

Also Published As

Publication number Publication date
KR102524540B1 (en) 2023-04-24
KR20210128722A (en) 2021-10-27

Similar Documents

Publication Publication Date Title
JP6892729B2 (en) Code execution request routing
US20200401454A1 (en) Method and system for modeling and analyzing computing resource requirements of software applications in a shared and distributed computing environment
US11316800B2 (en) Method and system for managing applications
US11553034B2 (en) Server computer management system for supporting highly available virtual desktops of multiple different tenants
US10725752B1 (en) Dependency handling in an on-demand network code execution system
US11321130B2 (en) Container orchestration in decentralized network computing environments
JP6363796B2 (en) Dynamic code deployment and versioning
CN106537338B (en) Self-expanding clouds
US9529613B2 (en) Methods and apparatus to reclaim resources in virtual computing environments
US8141090B1 (en) Automated model-based provisioning of resources
US20080263553A1 (en) Dynamic Service Level Manager for Image Pools
US11556369B2 (en) Virtual machine deployment method and OMM virtual machine
US20190281112A1 (en) System and method for orchestrating cloud platform operations
JP2016103179A (en) Allocation method for computer resource and computer system
US10728169B1 (en) Instance upgrade migration
US20210334126A1 (en) On-demand code execution with limited memory footprint
US20220329651A1 (en) Apparatus for container orchestration in geographically distributed multi-cloud environment and method using the same
US11722553B2 (en) Function manager for an edge compute network
US11573819B2 (en) Computer-implemented method for reducing service disruption times for a universal customer premise equipment, uCPE, device with resource constraint in a network functions virtualization, NFV, network infrastructure
Tang et al. Application centric lifecycle framework in cloud
US20210326161A1 (en) Apparatus and method for multi-cloud service platform
US11966768B2 (en) Apparatus and method for multi-cloud service platform
US11868805B2 (en) Scheduling workloads on partitioned resources of a host system in a container-orchestration system
JP7409504B2 (en) Network virtualization system, virtual resource management device, virtual resource management method and program
US20230308353A1 (en) Apparatus and method for managing multi-cloud computing infrastructure

Legal Events

Date Code Title Description
AS Assignment

Owner name: ELECTRONICS AND TELECOMMUNICATIONS RESEARCH INSTITUTE, KOREA, REPUBLIC OF

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:SON, SEOK-HO;KANG, DONG-JAE;KIM, BYOUNG-SEOB;AND OTHERS;SIGNING DATES FROM 20201216 TO 20201217;REEL/FRAME:055222/0470

STPP Information on status: patent application and granting procedure in general

Free format text: DOCKETED NEW CASE - READY FOR EXAMINATION

STPP Information on status: patent application and granting procedure in general

Free format text: NON FINAL ACTION MAILED

STPP Information on status: patent application and granting procedure in general

Free format text: RESPONSE TO NON-FINAL OFFICE ACTION ENTERED AND FORWARDED TO EXAMINER

STPP Information on status: patent application and granting procedure in general

Free format text: FINAL REJECTION MAILED

STPP Information on status: patent application and granting procedure in general

Free format text: DOCKETED NEW CASE - READY FOR EXAMINATION

STPP Information on status: patent application and granting procedure in general

Free format text: NOTICE OF ALLOWANCE MAILED -- APPLICATION RECEIVED IN OFFICE OF PUBLICATIONS

STPP Information on status: patent application and granting procedure in general

Free format text: PUBLICATIONS -- ISSUE FEE PAYMENT VERIFIED

STCF Information on status: patent grant

Free format text: PATENTED CASE