Computing machine system and storage management method

The system simplifies storage management in hybrid clouds by using a management server to automate the setting of storage characteristics and allocation, addressing complexity and ensuring consistent storage settings across multiple locations.

JP2025163613APending Publication Date: 2025-10-29HITACHI VANTARA LTD
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
JP2024067053
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-04-17
Publication Date
2025-10-29

AI Technical Summary

Technical Problem

In a hybrid cloud environment, managing storage characteristics across multiple locations is complex due to different administrators handling container orchestration and storage, leading to manual information exchange, difficulty in reusing application settings, and loss of correspondence between storage servers and volumes during platform recreation.

Method used

A computer system with a management server that stores storage characteristics and connection information for storage areas, allowing compute servers to determine and allocate storage areas based on these characteristics and connection information, simplifying the setting process.

Benefits of technology

Enables easy and appropriate setting of storage characteristics in container execution platforms, facilitating seamless migration and recreation of applications without manual changes.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025163613000001_ABST
    Figure 2025163613000001_ABST
Patent Text Reader

Abstract

To set storage characteristics to a container execution board easily and appropriately.SOLUTION: In a computing machine system 0 equipped with the cloud of multiple bases 10 and a storage management server 60, the cloud of the bases 10 includes a computer server 20 in which a container execution board for executing a container is constructed, and a storage server 40 for providing a storage area for storing data, the storage management server 60 stores storage characteristics of the storage area of the storage server 40 in the cloud of the respective bases, and connection information to the storage area, and the computer server 20 is configured so as to acquire the storage characteristics of the storage area in the bases 10 to which the computer server 20 belongs, and connection information from the storage management server 60, determine the storage area allocated to the container of the container execution board on the basis of the storage characteristics, and allocate the determined storage area to the container on the basis of the connection information.SELECTED DRAWING: Figure 1
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present invention relates to a technique for managing storage servers in a cloud at multiple locations. [Background technology]

[0002] To improve the portability and reduce the load on computer systems, container execution platforms that manage applications as containers and automate operations are becoming widely used. Here, a container is a collection of application execution environments that can be used like individual servers. A container execution platform is a platform for efficiently operating and managing containers, and is realized, for example, by a container orchestration program.

[0003] For example, Patent Document 1 discloses a technology for deploying containers in one cloud (such as virtual machines (VMs)) based on a container policy. The container policy discloses the computing-related qualities, storage-related qualities, and network-related qualities that are to be satisfied by the software and hardware that form the foundation for supporting the execution of the virtual machine. [Prior art documents] [Patent documents]

[0004] [Patent Document 1] U.S. Patent No. 10,579,403 Summary of the Invention [Problem to be solved by the invention]

[0005] In a hybrid cloud environment, storage is managed across multiple locations. It is required to use the storage characteristics set for managing storage in the existing hybrid cloud environment to set the storage characteristics in the container execution platform environment.

[0006] When setting storage characteristics on a container execution platform, the administrator of the container orchestration program and the administrator of the storage are generally different people, so the administrator of the container orchestration program and the administrator of the storage must manually exchange information about the storage server to be set in the container orchestration program, which makes operations complicated.

[0007] Furthermore, when an application operator of a container orchestration program migrates an application between bases, they want to use storage areas with similar storage characteristics at the source and destination bases, but if a storage area with the same storage characteristics does not exist or cannot be used at the destination base, they do not know which storage characteristics to set. Also, if the names of the storage characteristics in the container orchestration program used at the source and destination bases change, application settings and the like cannot be reused and manual file changes are required.

[0008] Furthermore, when the container execution platform is recreated to inherit and use data, the correspondence between the storage server volumes stored in the container orchestration program used to build the container execution platform and the volumes in the container application program is lost. To maintain this correspondence, the application operator of the container orchestration program must remember the correspondence with each storage server volume.

[0009] The present invention has been made in consideration of the above circumstances, and its purpose is to provide a technology that enables easy and appropriate setting of storage characteristics in a container execution platform. [Means for solving the problem]

[0010] In order to achieve the above-mentioned object, one aspect of the computer system is a computer system comprising clouds at multiple locations and a management server, wherein the clouds include a compute server on which a container execution platform for executing containers is constructed, and a storage server that provides a storage area for storing data, and the management server stores the storage characteristics of the storage area of ​​the storage server in the cloud at each location and connection information for the storage area, and the compute server acquires from the management server the storage characteristics and connection information for the storage area at the location to which the compute server belongs, determines the storage area to be allocated to the container in the container execution platform based on the storage characteristics, and allocates the determined storage area to the container based on the connection information. [Effects of the Invention]

[0011] According to the present invention, storage characteristics can be easily and appropriately set in a container execution platform. [Brief explanation of the drawings]

[0012] [Figure 1] FIG. 1 is a diagram showing an overview of a storage characteristic setting process according to an embodiment. [Figure 2] FIG. 2 is a configuration diagram of a computer system according to one embodiment. [Figure 3] FIG. 3 is a configuration diagram of a container compute server according to an embodiment. [Figure 4] FIG. 4 is a configuration diagram of a client server according to an embodiment. [Figure 5] FIG. 5 is a configuration diagram of a storage management server according to an embodiment. [Figure 6] FIG. 6 is a configuration diagram of a storage server according to an embodiment. [Figure 7] FIG. 7 is a configuration diagram of a storage characteristics information table according to an embodiment. [Figure 8] FIG. 8 is a configuration diagram of a storage connection information table according to an embodiment. [Figure 9] FIG. 9 is a configuration diagram of a storage management table according to one embodiment. [Figure 10] FIG. 10 is a diagram illustrating the configuration of a container application-volume correspondence table according to an embodiment. [Figure 11] FIG. 11 is a flowchart of a storage information registration process according to an embodiment. [Figure 12] FIG. 12 is a flowchart of a storage characteristic creation process according to an embodiment. [Figure 13] FIG. 13 is a flowchart of a storage allocation process according to one embodiment. [Figure 14] FIG. 14 is a flowchart of a container execution infrastructure reconstruction process according to an embodiment. [Figure 15] FIG. 15 is a flowchart of a container remote copy process according to an embodiment. [Figure 16] FIG. 16 is a flowchart of a storage characteristics determination process according to one embodiment. DETAILED DESCRIPTION OF THE INVENTION

[0013] The following description of the embodiments will be given with reference to the drawings. Note that the embodiments described below do not limit the scope of the invention as claimed, and not all of the elements and combinations thereof described in the embodiments are necessarily essential to the solution of the invention.

[0014] In the following explanation, various information may be described using the expression "aaa table," but the various information may be expressed using data structures other than tables. To indicate that it is not dependent on the data structure, the "aaa table" can also be called "aaa information."

[0015] In the following description, a "network I / F" may include one or more communication interface devices. The one or more communication interface devices may be one or more communication interface devices of the same type (for example, one or more NICs (Network Interface Cards)), or two or more communication interface devices of different types (for example, a NIC and an HBA (Host Bus Adapter)).

[0016] In the following description, the configuration of each table is an example, and one table may be divided into two or more tables, or all or part of two or more tables may be combined into one table.

[0017] In the following description, the storage device may be a physical non-volatile storage device (for example, an auxiliary storage device), such as a hard disk drive (HDD), a solid state drive (SSD), or a storage class memory (SCM).

[0018] In the following description, the memory may be a volatile memory or a non-volatile memory.

[0019] In the following description, processing may be described with a "program" as the operating entity, but a program is executed by a processor such as a CPU (Central Processing Unit) to perform predetermined processing while appropriately using a storage unit (e.g., memory) and / or an interface (e.g., port), so the operating entity of the processing may also be the program. Processing described with a program as the operating entity may also be processing performed by a processor or a computer having that processor (e.g., a server).

[0020] In the following description, two or more programs may be realized as one program, or one program may be realized as two or more programs.

[0021] In the following description, an ID is used as identification information for an element, but other types of identification information may be used instead of or in addition to the ID.

[0022] In addition, in the following description, when describing elements of the same type without distinguishing between them, common reference numbers will be used, and when describing elements of the same type with distinction between them, the reference numbers of those elements will be used.

[0023] <Summary> FIG. 1 is a diagram showing an overview of one embodiment.

[0024] In this embodiment, the storage information acquisition and setting program P40 of the container compute server 20 acquires storage characteristics and storage information from the storage management table T30 and the container application-volume correspondence table T40, and registers the storage characteristics in the container execution platform constructed by the container orchestration program P20.

[0025] The computer system 0 includes multiple sites (bases) 10 and a storage management server 60. Each site 10 includes a container compute server 20 and a storage server 40. The container compute server 20 and the storage server 40 may each be a physical server or a virtual server configured with virtual machines. The site 10 may be an on-premise cloud or a public cloud. The storage management server 60 may be located within one of the sites 10 or outside the site 10.

[0026] The container compute server 20 includes an application program container P10, a container orchestration program P20, a storage driver container P30, and a storage information acquisition and setting program P40. The storage driver container P30 and the storage information acquisition and setting program P40 are installed for the container orchestration program P20 by, for example, an administrator of the container orchestration program P20.

[0027] During installation, the administrator of the container orchestration program P20 inputs connection destination information into the storage management program P70, information on whether there are any volumes on the storage server 40 that need to be reused to reconfigure the container orchestration program P20, and so on.

[0028] The storage management server 60 manages the storage servers 40 at the multiple sites 10 that make up the hybrid cloud. The storage management server 60 stores the storage characteristics, performance, cost, and connection destination information of these storage servers 40. In the storage management table T30, the storage administrator can set a usage prohibition flag for the storage pool 210 (also simply referred to as the pool 210; an example of a storage area) that is not to be used by the container orchestration program P20.

[0029] The storage server 40 includes a pool 210 managed in a storage management table T30, the storage device 140 that is the source of the pool 210, and a container application-volume correspondence table T40.

[0030] If volume reuse is configured by the administrator of the container orchestration program P20 when the storage information acquisition and setting program P40 is installed, the storage information acquisition and setting program P40 refers to the container application-volume correspondence table T40 and executes the container orchestration program P20 with the configuration of pool 210 usage and the allocation of volumes linked to the volumes to be reused on the storage server 40.

[0031] The storage information acquisition and setting program P40 refers to the storage management table T30 and performs connection settings to the storage server 40 for the pool 210 that can be used from the container orchestration program P20. The storage information acquisition and setting program P40 also acquires the storage characteristics for the pool on the storage management program P70 and sets these storage characteristics as the storage characteristics on the container orchestration program P20.

[0032] When migrating an application program container P10 from one site 10 to another site 10, the operator of the container orchestration program P20 must notify the storage management program P70 of this migration. If there is no storage server 40 with the same storage characteristics at the migration destination site 10, the storage management program P70 searches for a storage server 40 with similar storage characteristics at the migration destination site 10. The storage management program P70 then finds the storage characteristics with the closest characteristics at the migration destination site 10 and causes the storage information acquisition / setting program P40 to set the storage characteristics on the migration destination container orchestration program P20 with the same name as the storage characteristics on the migration source container orchestration program P20.

[0033] <System configuration> FIG. 2 is a configuration diagram of a computer system according to one embodiment.

[0034] The computer system 0 includes one or more client servers 15, a plurality of sites 10, a storage management server 60, and a network 110. Each site 10 includes one or more container compute servers 20 and one or more storage servers 40. The client servers 15, container compute servers 20, storage servers 40, and storage management server 60 are connected via the network 110. The network 110 includes a LAN (Local Area Network) and a WAN (Wide Area Network).

[0035] The container compute server 20 is a server that performs the role of computing applications (also called apps). The container compute server 20 runs a container orchestration program P20 to configure a container execution platform. In the container compute server 20, an application program container P10 is started by the container orchestration program P20. The application program container P10 executes predetermined processing and records data in the storage server 40.

[0036] The client server 15 is a server used by users of container applications, administrators of the container orchestration program P20, administrators of the storage server 40, etc. The client server 15 accepts input of various information for managing the container compute server 20 and the storage server 40, transmits the various information to the container compute server 20 and the storage management server 60 via the network 110, causes them to execute processing, and receives and displays processing results, etc.

[0037] The storage server 40 executes a block storage program P 90 (see FIG. 6) to store various data in the storage device 140 of the storage server 40 and to read out various data from the storage device 140 .

[0038] The storage management server 60 is a server that executes the process of managing the storage servers 40 in each site 10 .

[0039] FIG. 3 is a configuration diagram of a container compute server according to an embodiment.

[0040] The container compute server 20 includes a network interface (NW I / F) 170, a BMC (Baseboard Management Controller) 190, a memory 150, a CPU 160 as an example of a processor, a storage device 140, and an internal bus 180. The network interface 170, the memory 150, the CPU 160, and the storage device 140 are connected via the internal bus 180.

[0041] The network interface 170 is, for example, an interface such as a wired LAN card or a wireless LAN card, and communicates with other devices (for example, the client server 15, other container compute servers 20, the storage server 40, and the storage management server 60) via the network 110.

[0042] The CPU 160 executes various processes in accordance with programs stored in the memory 150 and / or the storage device 140 .

[0043] The storage device 140 is a non-volatile storage medium that stores various data, and may be an HDD, SSD, or SCM.

[0044] The BMC 190 is a device that enables external power control of the device it accommodates (here, the container compute server 20). The BMC 190 operates independently of the CPU 160 and the memory 150, and even if a failure occurs in the CPU 160 or the memory 150, the BMC 190 can accept a power control request from the outside and control the power of the device (turning the power on and off).

[0045] The memory 150 is, for example, a RAM (Random Access Memory), and stores programs executed by the CPU 160 and necessary information. The memory 150 stores an application program container P10, a container orchestration program P20, a storage driver container P30, a storage information acquisition and setting program P40, a storage characteristics information table T10, and a storage connection information table T20. Although not shown, the memory 150 also stores programs necessary for functioning as a server, such as an OS.

[0046] The application program container P10 is a container that executes an application program (also simply called an application or app) that a user wants to use. The application executes various processes using a storage area such as a pool provided by the storage server 40. The application program container P10 is managed by a container orchestration program P20.

[0047] The container orchestration program P20 is executed by the CPU 160 to construct a container execution infrastructure that starts and manages the operation of the application program container P10. All programs running in the container compute server 20 are managed as containers by the container orchestration program P20, for example.

[0048] The storage driver container P30 is a program for using the block storage program P90 running on the storage server 40 from an upper container in a container execution environment constructed by the container orchestration program P20.

[0049] The storage information acquisition and setting program P40 acquires storage characteristics from the storage management server 60 and stores the storage server information and storage characteristics in the storage characteristics information table T10 and storage connection information table T20 so that the application program container P10 can use the storage server 40.

[0050] The storage characteristics information table T10 stores the storage characteristics of each pool used by the application program container P 10. Details of the storage characteristics information table T10 will be described later using FIG.

[0051] The storage connection information table T20 stores information on the connection destination of the storage server 40 used by the application program container P10. Details of the storage connection information table T20 will be described later with reference to FIG.

[0052] FIG. 4 is a configuration diagram of a client server according to an embodiment.

[0053] The client server 15 includes a network interface 170, a BMC 190, a memory 150, a CPU 160, a storage device 140, and an internal bus 180. In this specification, the same components are designated by the same reference numerals, and their description may be omitted. The network interface 170, the memory 150, the CPU 160, and the storage device 140 are connected via the internal bus 180. The client server 15 is also connected to a display 230 that displays various information, and a keyboard 240 that accepts input of various information from the user.

[0054] The memory 150 stores a container orchestration client program P50 and a storage management client program P60.

[0055] The storage management client program P60 acquires and operates information on the container compute server 20 and the storage server 40 via the container orchestration client program P50 or by communicating with the storage management server 60.

[0056] The container orchestration client program P50 interacts with the container orchestration program P20 in accordance with instructions from the storage management client program P60 to obtain and operate information on the container compute server 20.

[0057] FIG. 5 is a configuration diagram of a storage management server according to an embodiment.

[0058] The storage management server 60 includes a network interface 170, a memory 150, a CPU 160, a storage device 140, and an internal bus 180. The network interface 170, the memory 150, the CPU 160, and the storage device 140 are connected via the internal bus 180.

[0059] The memory 150 stores a storage management program P70 and a storage management table T30.

[0060] The storage management program P70 manages the storage characteristics and performance of the storage servers 40 at each site 10, and executes processes such as container remote copy, which will be described later.

[0061] The storage management table T30 stores information such as the storage characteristics and performance of the storage server 40. Details of the storage management table T30 will be described later with reference to FIG.

[0062] FIG. 6 is a configuration diagram of a storage server according to an embodiment.

[0063] The storage server 40 includes a network interface 170, a BMC 190, a memory 150, a CPU 160, one or more storage interfaces (Storage I / F) 220, a plurality of storage devices 140, and an internal bus 180. The network interface 170, the memory 150, the CPU 160, and the storage interface 220 are connected via the internal bus 180.

[0064] The storage interface 220 connects the CPU 160 and the storage device 140. The CPU 160 can read and write data from and to the storage device 140 via the storage interface 220. For communication between the CPU 160 and the storage interface 220, FC (Fibre channel), SATA (Serial Attached Technology Attachment), SAS (Serial Attached SCSI), IDE (Integrated Device Electronics), etc. can be used. In this embodiment, a pool 210 is configured based on the storage areas of one or more storage devices 140.

[0065] The memory 150 stores an IO control program P80, a block storage program P90, and a container application-volume correspondence table T40.

[0066] The IO control program P80 accepts data read / write requests from the container compute server 20, and sends and receives data read / write requests to and from the block storage program P90 of the target storage server 40.

[0067] The block storage program P90 saves data to the storage device 140 and reads data from the storage device 140 in accordance with read and write requests from the IO control program P80.

[0068] Next, the detailed configuration of the storage characteristics information table will be described.

[0069] FIG. 7 is a configuration diagram of a storage characteristics information table according to an embodiment.

[0070] The storage characteristics information table T10 manages the storage characteristics of each pool. The storage characteristics information table T10 makes it possible to identify a pool corresponding to the storage characteristics specified by a user of the container orchestration program P20. The storage characteristics information table T10 stores an entry for each storage pool. An entry in the storage characteristics information table T10 includes fields for a pool ID C101 and a storage characteristic C102.

[0071] The pool ID C101 stores identification information (pool ID) that identifies the pool. The storage characteristics C102 stores the storage characteristics of the pool with the pool ID corresponding to the entry. The information in the storage characteristics information table T10 is stored by the storage information acquisition and setting program P40.

[0072] Next, the detailed configuration of the storage connection information table will be described.

[0073] FIG. 8 is a configuration diagram of a storage connection information table according to an embodiment.

[0074] The storage connection information table T20 manages information for connecting to each pool. The storage connection information table T20 stores an entry for each pool. An entry in the storage connection information table T20 includes fields for a pool ID C201, a storage connection destination C202, and an account / password C203. The pool ID C201 stores the pool ID of the pool corresponding to the entry. The storage connection destination C202 stores information about the connection destination of the pool corresponding to the entry. The account / password C203 stores the account name and password for connecting to the connection destination corresponding to the entry. The information in the storage connection information table T20 is stored by the storage information acquisition / setting program P40.

[0075] Next, the detailed configuration of the storage management table will be described.

[0076] FIG. 9 is a configuration diagram of a storage management table according to one embodiment.

[0077] The storage management table T30 manages information about pools in multiple sites 10. The storage management table T30 stores an entry for each pool. An entry in the storage management table T30 includes fields for a site C301, a device ID C302, a pool ID C303, a storage connection destination C304, an account / password C305, performance C306, a cost C307, a use prohibition flag C308, and a storage characteristic C309.

[0078] The site C301 stores identification information of the site 10 in which the pool corresponding to the entry exists. The device ID C302 stores identification information (device ID) of the storage server 40 in which the pool corresponding to the entry exists. The pool ID C303 stores the pool ID of the pool corresponding to the entry. The storage connection destination C304 stores information on the connection destination when connecting to the pool corresponding to the entry. The account / password C305 stores the account name and password when connecting to the pool corresponding to the entry. The performance C306 stores information on the performance of the pool corresponding to the entry. The cost C307 stores the cost of using the pool corresponding to the entry. The cost of the cost C307 is set, for example, by a storage administrator who manages the storage server 40.

[0079] The prohibition flag C308 stores a prohibition flag indicating that the pool corresponding to the entry is prohibited from being used from the container execution environment constructed by the container orchestration program P20. The prohibition flag is set by the administrator of the storage server 40. The storage characteristics C309 stores storage characteristics that are set in the container execution environment for the pool corresponding to the entry.

[0080] Next, the detailed configuration of the container application-volume correspondence table will be described.

[0081] FIG. 10 is a diagram illustrating the configuration of a container application-volume correspondence table according to an embodiment.

[0082] The container application-volume correspondence table T40 manages the correspondence between applications (called container applications) executed in containers at a site and the volumes used. The container application-volume correspondence table T40 is referenced by the storage information acquisition and setting program P40 to restore previously used volumes and container orchestrator volumes (PVs) when reconfiguring the container execution environment. An entry in the container application-volume correspondence table T40 includes fields for pool C401, volume C402, container application C403, and container orchestrator volume (PV) C404.

[0083] The pool C401 stores identification information of the pool used by the container application corresponding to the entry. The volume C402 stores a volume assigned to the container application corresponding to the entry. The container application C403 stores identification information of the container application corresponding to the entry. The container orchestrator volume (PV) C404 stores information on the volume (PV: Persistent Volume) used by the container application corresponding to the entry.

[0084] Next, the processing operations in the computer system 1 will be described.

[0085] First, the storage information registration process for registering storage information in the storage management server 60 will be described.

[0086] FIG. 11 is a flowchart of a storage information registration process according to an embodiment.

[0087] First, the storage management client program P60 of the client server 15 (more precisely, the CPU 160 that executes the storage management client program P60) receives an instruction from the storage administrator (storage administrator) to access the storage management program P70 of the storage management server 60, and requests access from the storage management program P70 (S110).

[0088] Next, the storage management program P70 of the storage management server 60 receives an instruction from the client server 15 to register a storage server list by the storage administrator (S120). The storage server list registration includes the pool ID to be registered, storage connection destination, account / password, performance, and cost, and, if the pool is prohibited from use from the container execution platform, the specification of a use prohibition flag and the storage characteristics on the container execution platform.

[0089] Next, the storage management program P70 registers the pool ID, storage connection destination, account / password, performance, and cost information in the storage management table T30 (S130).

[0090] Next, if the storage management program P70 has accepted the storage characteristics, it registers the storage characteristics in the corresponding entry in the storage management table T30 (S140).

[0091] Next, if the storage management program P70 has received the specification of a use prohibition flag, it registers the use prohibition flag in the corresponding entry in the storage management table T30 (S150).

[0092] Next, a storage characteristic creation process for creating storage characteristics for each container compute server 20 will be described.

[0093] FIG. 12 is a flowchart of a storage characteristic creation process according to an embodiment.

[0094] The storage information acquisition and setting program P40 of the container compute server 20 accesses the storage management table T30 of the storage management server 60 and acquires information from the storage management table T30 about pools for which a prohibition flag indicating prohibition of use from the container execution environment is not set (S210).

[0095] Next, the storage information acquisition and setting program P40 adds an entry for each pool to the storage connection information table T20 based on the acquired information for each pool, and sets the pool ID, storage connection destination, and account / password contained in the acquired information in the entry (S220).

[0096] Next, the storage information acquisition and setting program P40 adds an entry for each pool to the storage characteristics information table T10 based on the acquired information of each pool, and sets the pool ID and storage characteristics contained in the acquired information in the entry (S230).

[0097] According to the storage characteristics creation process, the storage administrator can easily and appropriately set the connection information and storage characteristics of the pool registered in the storage management server 60 in the container compute server 20 .

[0098] Next, the storage allocation process for allocating a pool to the application program container P10 will be described.

[0099] FIG. 13 is a flowchart of a storage allocation process according to one embodiment.

[0100] The container orchestration program P20 accepts a selection of storage characteristics to be assigned to the application program container P10 from the user (also called the container user) of the application program container P10 to which the pool is to be assigned, from among the storage characteristics registered in the storage characteristics information table T10 (S310).

[0101] Next, the container orchestration program P20 selects a pool corresponding to the received storage characteristics from the storage characteristics information table T10 (S320).

[0102] Next, the storage driver container P30 allocates the storage area of ​​the pool to the application program container P10 from the storage server 40 using the storage connection destination and account / password of the entry corresponding to the selected pool in the storage connection information table T20 (S330).

[0103] Next, a description will be given of a container execution platform reconstruction process for reconstructing the container execution platform using the container orchestration program P20.

[0104] FIG. 14 is a flowchart of a container execution infrastructure reconstruction process according to an embodiment.

[0105] The container execution platform reconstruction process is executed when an administrator of the container orchestration program P20 wants to reconstruct the container execution platform by reusing a volume that was previously used.

[0106] During installation, the storage information acquisition and setting program P40 receives an instruction from the administrator of the container orchestration program P20 to make previously used volumes available for use (S410).

[0107] Next, the storage information acquisition and setting program P40 acquires information on the correspondence between each container application and volume from the container application-volume correspondence table T40 of the storage server 40 (S420).

[0108] Next, the storage information acquisition and setting program P40 requests the storage driver container P30 to create a volume for the container that is associated with the existing volume based on the acquired information on the correspondence between the container application and the volume, and the storage driver container P30 creates the requested volume for the container (S430).

[0109] According to this container execution platform reconstruction process, the volumes used by the container applications in the container execution platform can be associated with the volumes of the pool that were previously used.

[0110] Next, a container remote copy process for migrating an application program container P10 running at a certain site 10 (migration source site) to another predetermined site 10 (migration destination site) will be described.

[0111] FIG. 15 is a flowchart of a container remote copy process according to an embodiment.

[0112] The storage management program P70 receives a container remote copy instruction from the operator of the container application (S510). Here, the storage management program P70 may also receive the minimum performance requirements (minimum guaranteed performance requirements) that should be guaranteed for the pool used by the container.

[0113] Next, the storage management program P70 determines whether or not storage characteristics have already been set at the migration destination site 10 (S520). As a result, if the storage characteristics have not already been set (S520: No), the storage management program P70 ends processing.

[0114] On the other hand, if the storage characteristics have already been set (S520: Yes), the storage management program P70 determines whether the destination site has the same storage characteristics as the pool used by the container at the source site (S530).

[0115] As a result, if the destination site has the same storage characteristics as the pool used by the container at the source site (S530: Yes), the storage management program P70 determines the same storage characteristics as the storage characteristics in the container orchestration program P20 at the destination site, notifies the storage information acquisition and setting program P40 at the destination site (S540), and proceeds to step S560.

[0116] On the other hand, if the same storage characteristics are not available (S530: No), the storage management program P70 executes the storage characteristics determination process (see FIG. 16) to determine the storage characteristics that are closest to the storage characteristics of the migration source site (S550), and proceeds to step S560.

[0117] In step S560, the storage information acquisition and setting program P40 of the destination site creates (sets) the storage characteristics notified to the container orchestration program P20, and the container orchestration program P20 copies the source application program container P10 and terminates the processing.

[0118] This container remote copy process allows the storage characteristics used by the container at the destination site to be easily and appropriately created in the destination container orchestration program P20, making it possible to execute the application program container P10 at the destination site without changing the settings related to the storage characteristics.

[0119] Next, the storage characteristic determination process in step S550 will be described.

[0120] FIG. 16 is a flowchart of a storage characteristics determination process according to one embodiment.

[0121] The storage management program P70 acquires the performance and cost values ​​of the storage characteristics of the migration source site from the storage management table T30 (S610).

[0122] Next, the storage management program P70 identifies pools at the migration destination site that can use containers from the storage management table T30 as candidates for the migration destination pool, and obtains the performance and cost values ​​of the identified candidate pool (S620).

[0123] If the storage management program P70 has received an instruction for minimum guaranteed performance requirements in step S510, it excludes from the pool candidates any identified pools that do not satisfy the minimum guaranteed performance requirements (S630). This makes it possible to prevent pools that do not satisfy the minimum guaranteed performance requirements from becoming migration destination pools.

[0124] Next, the storage management program P70 calculates the cost ratio and performance ratio for the candidate destination pool (S640), where cost ratio = cost of storage characteristics of the source site / cost of storage characteristics of the destination site, and performance ratio = performance of storage characteristics of the source site / performance of storage characteristics of the destination site.

[0125] Next, the storage management program P70 determines whether or not there are any migration destination pool candidates with cost ratios and performance ratios of 1 or less (S650).

[0126] As a result, if any of the cost ratios and performance ratios are 1 or less (S650: Yes), the storage management program P70 converts the cost ratios and performance ratios that are 1 or less into values ​​obtained by dividing 1 by those values ​​(S660), and proceeds to step S670.

[0127] On the other hand, if there is no cost ratio or performance ratio that is 1 or less (S650: No), the storage management program P70 proceeds to step S670.

[0128] In step S670, the storage management program P70 calculates the cost ratio x performance ratio for each pool candidate, and determines the pool with the smallest value as the pool with storage characteristics closest to the storage characteristics of the source pool, and determines the storage characteristics of this pool as the storage characteristics for the corresponding pool in the destination container orchestration program P20.

[0129] According to this storage characteristic determination process, it is possible to determine storage characteristics that are close to the storage characteristics of the migration source pool as the storage characteristics to be created in the container orchestration program P20.

[0130] The present invention is not limited to the above-described embodiment, and can be modified appropriately without departing from the spirit of the present invention.

[0131] For example, in the above-described embodiments, some or all of the processing performed by the CPU may be performed by a hardware circuit. Also, the programs in the above-described embodiments may be installed from a program source. The program source may be a program distribution server or a recording medium (e.g., a portable recording medium). [Explanation of symbols]

[0132] 0...Computer system, 10...Site, 15...Client server, 20...Compute server, 40...Storage server, 60...Storage management server, 110...Network, 140...Storage device, 150...Memory, 160...CPU, 170...Network interface, 180...Internal bus, 190...BMC

Claims

1. A computer system including a cloud of multiple locations and a management server, The cloud includes a compute server on which a container execution platform for executing containers is built, and a storage server that provides a storage area for storing data, the management server stores storage characteristics of storage areas of storage servers in the cloud at each base and connection information to the storage areas; The compute server includes: acquiring, from the management server, storage characteristics and connection information of the storage area at the base to which the compute server belongs; determining a storage area to be allocated to the container in the container execution platform based on the storage characteristics; Allocating the determined storage area to the container based on the connection information. Computer system.

2. The connection information is The storage server provides the storage area. The storage server provides the storage area. The storage area includes a destination for connecting to the storage server, and an account and password to be used when connecting to the storage server.

2. The computer system of claim 1.

3. The management server When migrating the container from the cloud at the migration source site to the cloud at the migration destination site different from the migration source site, it is determined whether or not a storage area with the same storage characteristics as the storage area used by the container at the migration source site exists in the cloud at the migration destination site; If it exists, the existing storage area is set as the storage characteristics in the container execution platform of the migration destination cloud.

2. The computer system of claim 1.

4. The management server storing performance and cost information in the storage area; If there is no such storage area, a storage area with storage characteristics similar to those of the storage area used by the container is identified based on the performance and cost of the storage area, and the storage area is set in the container execution platform of the migration destination cloud with the same storage characteristics as the storage area used by the container.

4. The computer system according to claim 3.

5. The management server A storage area having storage characteristics similar to those of the storage area used by the container is identified based on a performance ratio between the performance of the storage area at the migration source site and the performance of the storage area at the migration destination site, and a cost ratio between the cost of the storage area at the migration source site and the cost of the storage area at the migration destination site.

5. The computer system according to claim 4.

6. The management server or the storage server storing information about volumes of the storage server that were used by applications in previously existing containers; The compute server includes: Based on the volume information, the volume used by the storage server is assigned to the application of the container to be reconstructed.

2. The computer system of claim 1.

7. The management server storing a storage area to be prohibited from use; The management server If no such storage area exists, a storage area having storage characteristics similar to those of the storage area used by the container is identified from among storage areas whose use is not prohibited.

4. The computer system according to claim 3.

8. The management server Accept the minimum performance requirements to be guaranteed, If no such storage area exists, a storage area with storage characteristics similar to those of the storage area used by the container is identified from among storage areas that satisfy the performance requirements.

4. The computer system according to claim 3.

9. A storage management method for a computer system including a cloud of multiple locations and a management server, comprising: The cloud includes a compute server on which a container execution platform for executing containers is built, and a storage server that provides a storage area for storing data, the management server stores storage characteristics of storage areas of storage servers in the cloud at each base and connection information to the storage areas; The compute server includes: acquiring, from the management server, storage characteristics and connection information of the storage area at the base to which the compute server belongs; determining a storage area to be allocated to the container in the container execution platform based on the storage characteristics; Allocating the determined storage area to the container based on the connection information. Storage management methods.

Citation Information

Patent Citations

  • Policy based provisioning of containers

    US10579403B2