KR101626067B1 - Apparatus and method for facilitating a transfer of container between slave nodes - Google Patents
Apparatus and method for facilitating a transfer of container between slave nodes Download PDFInfo
- Publication number
- KR101626067B1 KR101626067B1 KR1020150126939A KR20150126939A KR101626067B1 KR 101626067 B1 KR101626067 B1 KR 101626067B1 KR 1020150126939 A KR1020150126939 A KR 1020150126939A KR 20150126939 A KR20150126939 A KR 20150126939A KR 101626067 B1 KR101626067 B1 KR 101626067B1
- Authority
- KR
- South Korea
- Prior art keywords
- container
- containers
- slave nodes
- transfer
- storing
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5061—Partitioning or combining of resources
- G06F9/5077—Logical partitioning of resources; Management or configuration of virtualized resources
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5083—Techniques for rebalancing the load in a distributed system
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Debugging And Monitoring (AREA)
Abstract
Description
The present invention relates to container-based virtualization, and more particularly, to a container management platform.
In recent years, server virtualization technology has been attracting attention as a technology to utilize servers more efficiently, using a virtual machine (for example, a hypervisor). Server virtualization is a technology that allows users to partition and use server resources on a single platform, such as central processing unit (CPU), storage, and I / O. The advantage of server virtualization is that it enables efficient operation of different OS (Operating System) server applications on one system, cost reduction and efficient utilization of server resources. With server virtualization, you can use the system in virtual units without being tied to physical resources such as CPU or server. For example, you could divide a server into multiple servers, use different OSs, or use multiple servers as a single server, thereby increasing resource utilization and greatly improving manageability. .
On the other hand, another technology that utilizes containers as virtualization services is attracting attention. A representative example using container technology is a docker. As a virtualization technology based on container technology, a container is not a virtualization system but a technology that virtualizes the environment in which an application can be run. While hypervisor-based server virtualization virtualizes everything system-wide, the container virtualizes only the application-driven environment that runs on the system. That is, the CPU and the memory area in which the application can operate are virtualized, and the OS or library necessary for driving the application is shared.
In order to run an application in a hypervisor-based virtual system, the application is operated after the virtual system has completely run. However, since the application is partially virtualized on the system, Since the system does not use the resources used when the OS operates, the resource consumption rate is also reduced.
However, when the container failure occurs in the container-based virtualization method, or when the container load is too large to transfer the container to another node, there is a need to newly change the configuration information of the container. For example, when the container is moved from the first node to the second node, the transferred container can not use the existing IP information, so the IP information needs to be newly updated. This is a very troublesome task in terms of the user who is a program developer.
Therefore, there is a need for a new technology that can perform the container transfer according to the convenience of the program developer, who is the user.
The present invention provides a server system that includes a master node and a plurality of slave nodes, and facilitates transfer of the containers among the slave nodes.
In particular, the present invention provides a technique for easily transferring a container without changing the configuration of an existing container when a failure occurs in the active container of the slave node.
According to an aspect of the present invention, there is provided an apparatus for facilitating transfer of a container between slave nodes, including: a plurality of slave nodes each including one or more containers; Wherein the master server includes a virtual container creation and maintenance unit and a container migration control unit for creating and maintaining virtual containers for respective containers in the plurality of slave nodes, Wherein each of the virtual containers is mapped to each of the containers in a one-to-one manner and stores configuration information for each of the mapped containers, and the container transfer control unit performs container transfer using the configuration information .
The master server may further include a status monitoring unit for monitoring the plurality of slave nodes and the plurality of slave nodes in the plurality of slave nodes and the container transfer control unit is connected to the status monitoring unit, And to transfer the active container to another node when a failure occurs or a resource load of the active container is equal to or greater than a threshold value. The master server may further include a snapshot creation and storage unit for creating and storing a snapshot of each of the containers, and the configuration information includes network information and snapshot version information. do.
In order to solve the above problems, a method for performing a container transfer between a plurality of slave nodes including at least one container, The method of claim 1, further comprising: storing configuration information in virtual containers mapped to the respective containers one-to-one; monitoring containers in the plurality of slave nodes and the plurality of slave nodes; And transferring the active container to another node using configuration information stored in the virtual container when a failure occurs or a resource load of the active container is equal to or greater than a threshold value.
The method may further comprise generating and storing a snapshot for each of the containers, wherein the configuration information includes network information and snapshot version information.
According to another aspect of the present invention, there is provided a recording medium on which a computer program for implementing a method performed by a computer is recorded, Storing configuration information for each of the plurality of slave nodes and the plurality of slave nodes in one-to-one mapped virtual containers; monitoring containers in the plurality of slave nodes and the plurality of slave nodes; And transferring the active container to another node using configuration information stored in the virtual container when a failure occurs in the active container or when the resource load of the active container is equal to or greater than a threshold value.
The method may further include generating and storing a snapshot for each of the containers, wherein the configuration information includes network information and snapshot version information.
The present invention stores configuration information for each of containers in a plurality of slave nodes in virtual containers mapped to one-to-one mapped to the respective containers, so that a failure of the container or a resource load of the container , The CPU usage rate or the memory usage rate) is large, the container can be transferred to another node without changing the configuration information of the container, and thereby it is possible to provide an easier development and testing environment to the user program developer .
In addition, according to the present invention, snapshots (backup files) can be created for each container and the snapshots can be managed for each version, it is possible to provide an improved development and test environment for a program developer who is a user.
1 is a diagram illustrating a configuration of a master node and a slave node according to an embodiment of the present invention.
2 is a diagram illustrating a configuration of a virtual container creation and maintenance unit according to an embodiment of the present invention.
3 is a diagram illustrating a configuration of a virtual container according to an embodiment of the present invention.
4 is a diagram illustrating a method for facilitating the transfer of a container between slave nodes according to an embodiment of the present invention.
Hereinafter, an apparatus and method for facilitating the transfer of a container between slave nodes according to the present invention will be described in detail with reference to the accompanying drawings. The embodiments are provided so that those skilled in the art can easily understand the technical spirit of the present invention, and thus the present invention is not limited thereto. In addition, the items represented in the accompanying drawings may be different from those actually implemented in order to easily describe the embodiments of the present invention.
In the meantime, each constituent unit described below is only an example for implementing the present invention. Thus, in other implementations of the present invention, other components may be used without departing from the spirit and scope of the present invention. In addition, each component may be implemented solely by hardware or software configuration, but may be implemented by a combination of various hardware and software configurations performing the same function. Also, two or more components may be implemented together by one hardware or software.
In addition, the expression " comprising " means that the elements are merely referred to as being open-ended representations, and should not be construed to exclude additional elements.
Hereinafter, an apparatus for facilitating transfer of a container between slave nodes will be described with reference to FIG. 1, according to an embodiment of the present invention.
A device for facilitating the transfer of a container between slave nodes according to an embodiment of the present invention includes a
The
On the other hand, each of the slave nodes includes one or more containers. The capacity of the containers may be the same or different. As an example, the
The
The virtual container creation and
The
In response to receiving a control signal from the
The snapshot creation and
The virtual container creation and
FIG. 2 is a diagram illustrating a configuration of a virtual container creation and
The virtual container creation and
3 shows a specific configuration of the virtual container 1 (200-1).
The virtual container 1 includes a container identifier field for identifying a container mapped to the virtual container 1, a network information field including network information such as IP information, and a snapshot created by the snapshot creation and
Thus, through the container identifier field, each virtual container can be mapped one-to-one to each container stored in the slave node,
Further, by maintaining the network information (e.g., IP information) corresponding to the mapped container through the network information field stored in the virtual container, even if the container is transferred to another node, And,
In addition, by maintaining the generated snapshot version list through the snapshot version information field stored in the virtual container, if the user program developer wishes to return to the previous snapshot version, he or she can return to the previous snapshot version I will.
4 is a diagram illustrating a method for facilitating the transfer of a container between slave nodes according to an embodiment of the present invention.
In step S11, configuration information for each of the containers in the plurality of slave nodes is stored in the virtual containers mapped one-to-one to the respective containers.
In step S12, containers in a plurality of slave nodes and a plurality of slave nodes are monitored.
It is determined in step S13 whether a failure has occurred in the active container or whether the resource load of the active container is equal to or greater than a threshold value. Here, the resource load includes the CPU utilization rate or the memory utilization rate, and the threshold value can be set to various values by the administrator.
If a failure occurs in the active container or if the resource load of the active container is equal to or greater than the threshold value, the process proceeds to step S14, otherwise the process proceeds to step S15 and ends.
In step S14, the container in which the failure occurs or the active container whose resource load is equal to or higher than the threshold value is transferred to another node.
On the other hand, when the transfer to another node is made in step S14, the virtual container stored in step S11 is utilized, so that the transfer of the container between the slave nodes can be simply completed without changing the system configuration.
Meanwhile, the above-described series of steps may be implemented by a computer program.
In this way, when a container failure occurs in a container-based virtualization method or when a container has a large resource load, it is necessary to transfer the container to another node, thereby eliminating the need to newly change the configuration information of the container .
The embodiments of the present invention described above are disclosed for the purpose of illustration, and the present invention is not limited thereto. It will be apparent to those skilled in the art that various modifications and variations can be made in the present invention without departing from the spirit and scope of the invention.
100: master node
105: virtual container creation and maintenance unit
110:
115: Container transfer control section
120: Snapshot creation and storage unit
200, 300, 400 and 500: Slave node
200-1, 200-2, .., 200-N: Virtual Container
Claims (11)
A plurality of slave nodes each comprising one or more containers; And
And a master server for managing the plurality of slave nodes,
The master server
A virtual container creation and maintenance unit for creating and maintaining virtual containers for respective containers in the plurality of slave nodes; And
A container transfer control unit,
Wherein each of the virtual containers is mapped to each of the containers in a one-to-one manner and stores configuration information for each of the mapped containers,
Wherein the container transfer control unit performs the container transfer using the configuration information.
An apparatus for facilitating transfer of a container between slave nodes.
Wherein the master server further comprises a status monitoring unit monitoring the plurality of slave nodes and the containers in the plurality of slave nodes,
An apparatus for facilitating transfer of a container between slave nodes.
Wherein the container transfer control unit is connected to the status monitoring unit and transfers the active container to another node when a failure occurs in the active container or when the resource load of the active container is equal to or larger than a threshold value doing,
An apparatus for facilitating transfer of a container between slave nodes.
Wherein the master server further comprises a snapshot creation and storage unit for creating and storing a snapshot for each of the containers,
An apparatus for facilitating transfer of a container between slave nodes.
The configuration information includes network information and snapshot version information.
A device for facilitating transfer of a container between slave nodes
Storing configuration information for respective containers in a plurality of slave nodes in virtual containers mapped on a one-to-one basis in each of the containers;
Monitoring containers in the plurality of slave nodes and the plurality of slave nodes; And
And transferring the active container to another node using configuration information stored in the virtual container when a failure occurs in the active container or a resource load of the active container is equal to or greater than a threshold value,
Wherein the storing, monitoring and relocating are performed by a master server,
A method for performing a transfer of a container between a plurality of slave nodes including one or more containers.
After the storing step,
Further comprising creating and storing a snapshot for each of the containers, wherein creating and storing the snapshot comprises:
A method for performing a transfer of a container between a plurality of slave nodes including one or more containers.
The configuration information includes network information and snapshot version information.
A method for performing a transfer of a container between a plurality of slave nodes including one or more containers.
The method
Storing configuration information for respective containers in a plurality of slave nodes in virtual containers mapped on a one-to-one basis in each of the containers;
Monitoring containers in the plurality of slave nodes and the plurality of slave nodes; And
And transferring the active container to another node using a configuration information stored in the virtual container when a failure occurs in the active container or a resource load of the active container is equal to or greater than a threshold value,
Wherein the storing, monitoring and relocating are performed by the computer in the master server,
A recording medium on which a computer program is recorded.
The method further comprises creating and storing a snapshot for each of the containers after the storing step, wherein the step of creating and storing the snapshot is performed by the computer in the master server Performed,
A recording medium on which a computer program is recorded.
The configuration information includes network information and snapshot version information.
A recording medium on which a computer program is recorded.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020150126939A KR101626067B1 (en) | 2015-09-08 | 2015-09-08 | Apparatus and method for facilitating a transfer of container between slave nodes |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020150126939A KR101626067B1 (en) | 2015-09-08 | 2015-09-08 | Apparatus and method for facilitating a transfer of container between slave nodes |
Publications (1)
Publication Number | Publication Date |
---|---|
KR101626067B1 true KR101626067B1 (en) | 2016-05-31 |
Family
ID=56099314
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020150126939A KR101626067B1 (en) | 2015-09-08 | 2015-09-08 | Apparatus and method for facilitating a transfer of container between slave nodes |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101626067B1 (en) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101807806B1 (en) | 2017-05-02 | 2017-12-11 | 나무기술 주식회사 | Application containerization method on cloud platform |
US10671728B2 (en) | 2017-01-19 | 2020-06-02 | Foundation Of Soongsil University-Industry Cooperation | Mobile device for analyzing malicious code using a container platform, system for analyzing malicious code in a mobile device using the same, and method for analyzing malicious code using the same |
CN112214321A (en) * | 2020-10-10 | 2021-01-12 | 中国联合网络通信集团有限公司 | Node selection method and device for newly-added micro service and micro service management platform |
KR20220059053A (en) | 2020-11-02 | 2022-05-10 | 주식회사 나눔기술 | High-speed snapshot controller and method for container cluster-based backup recovery |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009116859A (en) | 2007-09-30 | 2009-05-28 | Symantec Corp | System for and method of migrating one or more virtual machines |
-
2015
- 2015-09-08 KR KR1020150126939A patent/KR101626067B1/en active IP Right Grant
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009116859A (en) | 2007-09-30 | 2009-05-28 | Symantec Corp | System for and method of migrating one or more virtual machines |
Non-Patent Citations (2)
Title |
---|
'가장 빨리 만나는 Docker', pyrasis.com 웹사이트 (출처: http://pyrasis.com/book/DockerForTheReallyImpatient/Chapter09) |
'간편한 백업, 복원 및 독 노동자 컨테이너 마이그레이션', websetnet 웹사이트 (출처: http://websetnet.com/ko/easy-backup-restore-and-migrate-container-in-docker) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10671728B2 (en) | 2017-01-19 | 2020-06-02 | Foundation Of Soongsil University-Industry Cooperation | Mobile device for analyzing malicious code using a container platform, system for analyzing malicious code in a mobile device using the same, and method for analyzing malicious code using the same |
KR101807806B1 (en) | 2017-05-02 | 2017-12-11 | 나무기술 주식회사 | Application containerization method on cloud platform |
WO2018203635A1 (en) * | 2017-05-02 | 2018-11-08 | 나무기술 주식회사 | Method for containerizing application on cloud platform |
CN112214321A (en) * | 2020-10-10 | 2021-01-12 | 中国联合网络通信集团有限公司 | Node selection method and device for newly-added micro service and micro service management platform |
CN112214321B (en) * | 2020-10-10 | 2023-06-16 | 中国联合网络通信集团有限公司 | Node selection method and device for newly added micro service and micro service management platform |
KR20220059053A (en) | 2020-11-02 | 2022-05-10 | 주식회사 나눔기술 | High-speed snapshot controller and method for container cluster-based backup recovery |
KR102402709B1 (en) | 2020-11-02 | 2022-05-27 | 주식회사 나눔기술 | High-speed snapshot controller and method for container cluster-based backup recovery |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10133619B1 (en) | Cluster-wide virtual machine health monitoring | |
US10678457B2 (en) | Establishing and maintaining data apportioning for availability domain fault tolerance | |
US8473959B2 (en) | Methods and apparatus related to migration of customer resources to virtual resources within a data center environment | |
EP2979183B1 (en) | Method and arrangement for fault management in infrastructure as a service clouds | |
CN101118521B (en) | System and method for spanning multiple logical sectorization to distributing virtual input-output operation | |
US8832498B1 (en) | Scalable codebook correlation for cloud scale topology | |
CN108270726B (en) | Application instance deployment method and device | |
US20150309896A1 (en) | Method, System, and Apparatus for Cloud Application Redundancy | |
US10289441B1 (en) | Intelligent scale-out federated restore | |
US20120303594A1 (en) | Multiple Node/Virtual Input/Output (I/O) Server (VIOS) Failure Recovery in Clustered Partition Mobility | |
US10649855B2 (en) | Network configuration method to allow access to the backup and restores to Mtrees on a clustered backup appliance | |
WO2015172107A1 (en) | Mechanism for providing external access to a secured networked virtualization environment | |
US9792150B1 (en) | Detecting site change for migrated virtual machines | |
KR101626067B1 (en) | Apparatus and method for facilitating a transfer of container between slave nodes | |
US20240201846A1 (en) | Systems and Methods for Regenerating a Terminated Application Instance of a Containerized Application | |
KR20070085283A (en) | Apparatus, system, and method for facilitating storage management | |
US20120151095A1 (en) | Enforcing logical unit (lu) persistent reservations upon a shared virtual storage device | |
US10536518B1 (en) | Resource configuration discovery and replication system for applications deployed in a distributed computing environment | |
US20190278483A1 (en) | Implementing hierarchical availability domain aware replication policies | |
US20200042619A1 (en) | System and method for high replication factor (rf) data replication | |
WO2015157682A1 (en) | Mechanism for providing real time replication status information in a networked virtualization environment for storage management | |
US8661089B2 (en) | VIOS cluster alert framework | |
US20210224121A1 (en) | Virtual machine-initiated workload management | |
US20200310658A1 (en) | Machine learning for local caching of remote data in a clustered computing environment | |
US10853178B1 (en) | Code function checkpoint and restore |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
N231 | Notification of change of applicant | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20190620 Year of fee payment: 4 |