Container transfer device, container transfer method, and container transfer program
By using technical means of queuing mode and queue sending mode during container transfer, the problem of data loss in container transfer is solved, and data loss-free transfer and processing continuity is achieved.
Patent Information
- Application Number
- CN202280097200.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2022-06-26
- Publication Date
- 2025-02-28
AI Technical Summary
During the container transfer process, it is difficult for the prior art to complete the container transfer without losing data, resulting in interruption and loss of data processing.
By introducing queueing mode and queue sending mode in the action mode of the transfer source agent, data is temporarily saved and sent out after the transfer destination container is started, and the data is sent to be updated at the same time, thereby realizing loss-free transfer of data.
A container transfer without losing data during container transfer is realized, ensuring the continuity and integrity of data processing.
Smart Images

Figure CN119547051A_ABST
Abstract
Description
Technical Field
[0001] The present disclosure relates to the transfer of software containers. Background Art
[0002] In recent years, in embedded devices, Open Source Software (OSS) is sometimes used in product development. In addition, there are embedded devices to which third-party applications can be added after the product is purchased.
[0003] When unimportant applications such as OSS and additional applications perform abnormal operations, they may occupy hardware resources and system resources, thereby affecting the operations of important applications.
[0004] In order to prevent such a problem, there is a method of containerizing each unimportant application software.
[0005] This method can suppress the influence of resource occupation caused by abnormal operation of unimportant applications, and realize stable operation of important applications.
[0006] Generally, an application is often composed of multiple functions. As specific examples of functions, an application is a cloud communication function, an AI anomaly detection function, and a database function. AI is the abbreviation for artificial intelligence.
[0007] When an application is containerized, instead of containerizing the entire application, each function is containerized, thereby making it possible to suppress the influence of abnormal operation for each function.
[0008] When such an application is executed on a device, multiple containers are executed in the device, and functions are called mutually between the containers. An example of such a mechanism is Representational State Transfer (REST).
[0009] Here, there is a need to transfer (migrate) a container in operation to another device due to insufficient memory of the device, device maintenance, device upgrade, etc.
[0010] When moving a container, it is necessary to temporarily stop the container and transfer the required data.
[0011] Patent Document 1 discloses a method for shortening container stop time by transferring differences between container images.
[0012] However, even if this method is used, the container stop time is not zero. Therefore, when a request or data is sent from another container to the stopped container, the request or data will not be accepted by the destination container.
[0013] In addition, for the collection of sensor data, there is a demand to continuously process the collected data in the container without losing the collected data even during the transfer of the container.
[0014] Prior art literature
[0015] Patent Literature
[0016] Patent Document 1: Japanese Patent Application No. 2019-530072 Summary of the invention
[0017] Problem that the invention aims to solve
[0018] An object of the present disclosure is to enable the transfer of containers without losing data during the transfer of the containers.
[0019] Means used to solve problems
[0020] The container transfer apparatus of the present disclosure transfers a container for data processing from a transfer source device to a transfer destination device.
[0021] The migration source device is a device on which the migration source container and the migration source agent perform actions.
[0022] The transfer destination device is a device on which the transfer destination container and the transfer destination agent operate.
[0023] The container transfer device comprises: a first conversion unit, which converts the action mode of the transfer source agent from a transfer mode to a queue mode, in which data sent from a request source container requesting the data processing is received, and the received data is transferred to the transfer source container as a request destination container, and in which the data is not transferred but saved in the queue mode; a second conversion unit, which, after the action mode of the transfer source agent is converted to the queue mode and the transfer destination container is started, converts the action mode of the transfer source agent to a queue sending mode, in which the saved data is sent to the transfer destination agent; and a sending destination changing unit, which, after the sending of the saved data is completed, causes the request source container to change the sending destination of the data from the transfer source agent to the transfer destination agent.
[0024] Effects of the Invention
[0025] According to the present disclosure, it is possible to transfer a container without losing data during the transfer of the container. BRIEF DESCRIPTION OF THE DRAWINGS
[0026] Figure 1 This is a diagram showing the configuration of the information processing system 100 in the first embodiment.
[0027] Figure 2 This is a diagram showing the structure of the migration source device 200 in the first embodiment.
[0028] Figure 3 This is a diagram showing the structure of the migration management unit 230 in the first embodiment.
[0029] Figure 4 This is a diagram showing the structure of the transfer destination device 300 in the first embodiment.
[0030] Figure 5 This is a schematic diagram of the container transfer method in the first embodiment.
[0031] Figure 6 This is a schematic diagram of the container transfer method in the first embodiment.
[0032] Figure 7 This is a schematic diagram of the container transfer method in the first embodiment.
[0033] Figure 8 This is a schematic diagram of the container transfer method in the first embodiment.
[0034] Fig. 9 This is a flowchart of the container transfer method in the first embodiment.
[0035] Fig.10 This is an operation sequence diagram of the information processing system 100 in the first embodiment.
[0036] Fig.11 This is an operation sequence diagram of the information processing system 100 in the first embodiment.
[0037] Fig.12 This is an operation sequence diagram of the information processing system 100 in the first embodiment.
[0038] Fig.13 This is a hardware configuration diagram of the migration source device 200 in the first embodiment.
[0039] Fig.14 This is a hardware configuration diagram of the migration destination device 300 in the first embodiment. DETAILED DESCRIPTION
[0040] In the embodiments and the drawings, the same or corresponding elements are marked with the same reference numerals. The description of the elements marked with the same reference numerals as the elements in the description is appropriately omitted or simplified. The arrows in the figures mainly show the flow of data or the process flow.
[0041] Implementation method 1.
[0042] based on Figures 1 to 14 , to illustrate how to transfer containers for data processing.
[0043] In the first embodiment, the “container” refers to a software container or a functional block equivalent to a software container.
[0044] Furthermore, the term “agent” refers to a software agent or a functional block equivalent to a software agent.
[0045] ***Structure description***
[0046] based on Figure 1 Explanation of the structure of the information processing system 100
[0047] The information processing system 100 includes a migration source device 200 and a migration destination device 300 .
[0048] The transfer source device 200 and the transfer destination device 300 communicate with each other via the network 101 .
[0049] The IP addresses of the transfer source device 200 and the transfer destination device 300 are different from each other. IP is an abbreviation of Internet Protocol.
[0050] The migration source device 200 has a request source container 110 , a migration source agent 120 , and a migration source container 130 .
[0051] The request source container 110 is a container that sends data and requests processing for the data.
[0052] The migration source agent 120 is an agent that receives data from the request source container 110 before migration and transfers the received data to the migration source container 130 .
[0053] The migration source container 130 is a request destination container before migration.
[0054] The request destination container is a container that processes the data sent from the request source container 110 .
[0055] The transfer destination device 300 has a transfer destination agent 140 and a transfer destination container 150 .
[0056] The migration destination agent 140 is an agent that receives data from the request source container 110 after migration and transfers the received data to the migration destination container 150 .
[0057] The transfer destination container 150 is a request destination container after transfer.
[0058] The transfer source device 200 functions as a container transfer apparatus.
[0059] The container transfer device transfers the container on which data is being processed from the transfer source device 200 to the transfer destination device 300 .
[0060] exist Figure 1In the figure, the solid arrows represent the data flow before the transfer, the dotted arrows represent the data flow after the transfer, and the single-point dashed arrows represent the data flow during the transfer.
[0061] based on Figure 2 The structure of the migration source device 200 will be described.
[0062] The migration source device 200 is a computer including hardware such as a processor 201, a memory 202, an auxiliary storage device 203, a communication device 204, and an input / output interface 205. These hardware are connected to each other via signal lines.
[0063] The processor 201 is an IC that performs calculation processing and controls other hardware. For example, the processor 201 is a CPU.
[0064] IC is the abbreviation of Integrated Circuit.
[0065] CPU is the abbreviation of Central Processing Unit.
[0066] The memory 202 is a volatile or nonvolatile storage device. The memory 202 is also called a main storage device or a main memory. For example, the memory 202 is a RAM. The data stored in the memory 202 is saved in the auxiliary storage device 203 as needed.
[0067] RAM is the abbreviation of Random Access Memory.
[0068] The auxiliary storage device 203 is a nonvolatile storage device. For example, the auxiliary storage device 203 is a ROM, an HDD, a flash memory, or a combination thereof. The data stored in the auxiliary storage device 203 is loaded into the memory 202 as needed.
[0069] ROM is the abbreviation of Read Only Memory.
[0070] HDD is the abbreviation of Hard Disk Drive.
[0071] The communication device 204 is a receiver and a transmitter. For example, the communication device 204 is a communication chip or a NIC. The communication of the transfer source device 200 is performed using the communication device 204.
[0072] NIC is the abbreviation of Network Interface Card.
[0073] The input / output interface 205 is a port connected to an input device and an output device. For example, the input / output interface 205 is a USB terminal, the input devices are a keyboard and a mouse, and the output device is a display. The input / output interface 205 is used to perform input and output of the migration source device 200.
[0074] USB is the abbreviation of Universal Serial Bus.
[0075] The migration source device 200 includes elements such as a container unit 210, an agent unit 220, and a migration management unit 230. These elements are implemented by software.
[0076] The container part 210 executes the request source container 110 and the migration source container 130 .
[0077] The agent part 220 executes the migration source agent 120 .
[0078] The migration management unit 230 performs container migration.
[0079] The auxiliary storage device 203 stores a migration source program that causes the computer to function as the container unit 210, the proxy unit 220, and the migration management unit 230. The migration source program includes a container migration program that causes the computer to function as the migration management unit 230.
[0080] The transfer source program is loaded into the memory 202 and executed by the processor 201 .
[0081] The auxiliary storage device 203 also stores an OS. At least a part of the OS is loaded into the memory 202 and executed by the processor 201 .
[0082] The processor 201 executes the OS and executes the transfer source program.
[0083] OS is the abbreviation of Operating System.
[0084] The input and output data of the migration source program is stored in the storage unit 290 .
[0085] The memory 202 functions as the storage unit 290 . However, a storage device such as the auxiliary storage device 203 , a register in the processor 201 , or a cache memory in the processor 201 may function as the storage unit 290 instead of or together with the memory 202 .
[0086] The migration source device 200 may include a plurality of processors instead of the processor 201 .
[0087] The migration source program can be recorded (stored) in a computer-readable form on a nonvolatile recording medium such as an optical disk or a flash memory.
[0088] based on Figure 3 , the structure of the transfer management unit 230 is explained.
[0089] The migration management unit 230 includes a migration destination generating unit 231 , a first converting unit 232 , a migration source stopping unit 233 , a volume migration unit 234 , a migration destination activating unit 235 , a second converting unit 236 , and a transmission destination changing unit 237 .
[0090] based on Figure 4 , the structure of the transfer destination device 300 is explained.
[0091] The migration destination device 300 is a computer including hardware such as a processor 301, a memory 302, an auxiliary storage device 303, a communication device 304, and an input / output interface 305. These hardware are connected to each other via a signal line.
[0092] The processor 301 is an IC that performs calculation processing and controls other hardware. For example, the processor 301 is a CPU.
[0093] The memory 302 is a volatile or nonvolatile storage device. The memory 302 is also called a main storage device or a main memory. For example, the memory 302 is a RAM. The data stored in the memory 302 is saved in the auxiliary storage device 303 as needed.
[0094] The auxiliary storage device 303 is a nonvolatile storage device. For example, the auxiliary storage device 303 is a ROM, an HDD, a flash memory, or a combination thereof. The data stored in the auxiliary storage device 303 is loaded into the memory 302 as needed.
[0095] The communication device 304 is a receiver and a transmitter. For example, the communication device 304 is a communication chip or a NIC. The communication of the transfer destination device 300 is performed using the communication device 304.
[0096] The input / output interface 305 is a port connected to an input device and an output device. For example, the input / output interface 305 is a USB terminal, the input devices are a keyboard and a mouse, and the output device is a display. The input / output interface 305 is used to perform input / output of the transfer destination device 300.
[0097] The transfer destination device 300 includes elements such as a container unit 310 and an agent unit 320. These elements are implemented by software.
[0098] The container unit 310 generates and executes the migration destination container 150 .
[0099] The agent unit 320 generates and executes the transfer destination agent 140 .
[0100] The auxiliary storage device 303 stores a transfer destination program for causing the computer to function as the container unit 310 and the proxy unit 320. The transfer destination program is loaded into the memory 302 and executed by the processor 301.
[0101] The auxiliary storage device 303 also stores an OS. At least a part of the OS is loaded into the memory 302 and executed by the processor 301 .
[0102] The processor 301 executes the OS and executes the transfer destination program.
[0103] The input and output data of the migration destination program is stored in the storage unit 390 .
[0104] The memory 302 functions as the storage unit 390 . However, a storage device such as the auxiliary storage device 303 , a register in the processor 301 , or a cache memory in the processor 301 may function as the storage unit 390 instead of or together with the memory 302 .
[0105] The migration destination device 300 may include a plurality of processors instead of the processor 301 .
[0106] The migration destination program can be recorded (stored) in a computer-readable form on a nonvolatile recording medium such as an optical disk or a flash memory.
[0107] ***Action description***
[0108] The operation process of the migration management unit 230 corresponds to the container migration method. In addition, the operation process of the migration management unit 230 corresponds to the process of processing based on the container migration program.
[0109] based on Figures 5 to 8 , an overview of the container transfer method is described.
[0110] Figure 5 The status of the information processing system 100 before the migration is shown.
[0111] In the migration source device 200 , the request source container 110 , the migration source agent 120 , and the migration source container 130 are executed.
[0112] The request source container 110 has transmission destination information 111. The transmission destination information 111 indicates the transfer source agent 120 as the transmission destination of the data. The agent is distinguished by, for example, a port number or a URL. URL is an abbreviation of Uniform Resource Locator.
[0113] The transfer source agent 120 has a queue 121 .
[0114] The migration source container 130 has a volume 131 and a mirror 132. The volume 131 is prepared in a readable and writable storage area and is mainly used to read and write data for data processing. The mirror 132 is prepared in a read-only area and stores libraries and programs used for data processing.
[0115] The request source container 110 sends a packet to the transfer source agent 120. The packet includes a request for data processing and processed data.
[0116] The transfer source agent 120 receives packets sent from the request source container 110 , adds the received packets to the queue 121 , takes out the packets in the order in which they were added, and transfers them to the transfer source container 130 .
[0117] The migration source container 130 receives the packet transferred from the migration source agent 120 and processes the data in the received packet according to the request in the received packet.
[0118] Figure 6 The status of the information processing system 100 during the transition (1) is shown.
[0119] The migration source agent 120 receives the packet transmitted from the request source container 110 , stores the received packet in the queue 121 (queues), and does not transfer the packet to the migration source container 130 .
[0120] The transfer source container 130 is stopped.
[0121] In the transfer destination device 300, the transfer destination agent 140 and the transfer destination container 150 are generated.
[0122] The transfer destination agent 140 has a queue 141. The queue 141 is equivalent to the queue 121.
[0123] The migration destination container 150 includes a volume 151 and an image 152. The volume 151 corresponds to the volume 131. The image 152 corresponds to the image 132.
[0124] Figure 7 The status of the information processing system 100 during the transition (2) is shown.
[0125] The transfer destination container 150 is activated.
[0126] The transfer source agent 120 sends the packets stored in the queue 121 to the transfer destination agent 140 in the order in which they were stored.
[0127] The transfer destination agent 140 receives packets transmitted from the transfer source agent 120 , adds the received packets to the queue 141 , takes out the packets in the order in which they were added, and transfers them to the transfer destination container 150 .
[0128] The transfer destination container 150 receives the packet transferred from the transfer destination agent 140, and processes the data in the received packet according to the request in the received packet.
[0129] Figure 8 The status of the information processing system 100 after the migration is shown.
[0130] The transmission of the packet from the transfer source agent 120 to the transfer destination agent 140 is completed.
[0131] The request source container 110 updates the transmission destination information 111 to the transmission destination information 112. The transmission destination information 112 shows the transfer destination agent 140 as the transmission destination of the data.
[0132] The request source container 110 sends a packet to the transfer destination agent 140 .
[0133] The transfer destination agent 140 receives packets transmitted from the request source container 110 , adds the received packets to the queue 141 , takes out the packets in the order in which they were added, and transfers them to the transfer destination container 150 .
[0134] The transfer destination container 150 receives the packet transferred from the transfer destination agent 140, and processes the data in the received packet according to the request in the received packet.
[0135] based on Figures 9 to 12 , the process of the container transfer method is explained.
[0136] Fig. 9 A flow chart showing a container transfer method.
[0137] Figures 10 to 12 An operation sequence diagram of the information processing system 100 is shown.
[0138] Before the start of container migration, the operation mode of the migration source agent 120 is the transfer mode.
[0139] The transfer mode is an operation mode of receiving data transmitted from the request source container 110 and transferring the received data to the request destination container. In this case, the request destination container is the migration source container 130. In addition, the data is included in the packet.
[0140] The migration source container 130 is in operation.
[0141] Next, the process after the start of container transfer will be described.
[0142] In step S110 , the transfer destination generation section 231 causes the transfer destination device 300 to generate the transfer destination container 150 and the transfer destination agent 140 .
[0143] The migration destination container 150 is generated as follows.
[0144] The migration destination generation unit 231 transmits a container generation request including the image 132 of the migration source container 130 to the migration destination device 300 .
[0145] The container unit 310 receives the container generation request and generates the migration destination container 150 using the image 132 .
[0146] However, the container unit 310 does not activate the transfer destination container 150. In other words, the transfer destination container 150 is stopped.
[0147] The transfer destination agent 140 is generated as follows.
[0148] The transfer destination generation section 231 receives a proxy generation request from the transfer destination device 300 .
[0149] The agent unit 320 generates the transfer destination agent 140, activates the transfer destination agent 140, and sets the operation mode of the transfer destination agent 140 to the transfer mode.
[0150] In step S120 , the first transition unit 232 transitions the operation mode of the transfer source agent 120 from the transfer mode to the queuing mode.
[0151] The queue mode is an operation mode in which data is stored without being forwarded.
[0152] The operation mode of the migration source agent 120 is changed as follows.
[0153] The first transition unit 232 instructs the proxy unit 220 to change the operation mode to the queuing mode.
[0154] The agent unit 220 changes the operation mode of the migration source agent 120 to the queuing mode according to the instruction.
[0155] During the queuing mode, the migration source agent 120 stores the data sent from the request source container 110 in the queue 121 .
[0156] In step S130 , the transfer source stopping unit 233 stops the transfer source container 130 .
[0157] The migration source container 130 stops as follows.
[0158] The transfer source stopping unit 233 instructs the container unit 210 to stop the transfer source container 130 .
[0159] The container unit 210 stops the transfer source container 130 according to the instruction.
[0160] In step S140 , the volume migration unit 234 migrates the volume 131 from the migration source container 130 to the migration destination container 150 .
[0161] Volume 131 is transferred as follows.
[0162] The volume migration unit 234 transfers the volume 131 of the migration source container 130 to the migration destination device 300 .
[0163] The container unit 310 receives the volume 131 , and uses the volume 131 to update the volume 151 of the migration destination container 150 .
[0164] In step S150 , the transfer destination activation unit 235 activates the transfer destination container 150 .
[0165] The transfer destination container 150 is activated as follows.
[0166] The migration destination activation unit 235 sends a container activation request to the migration destination device 300 .
[0167] The container unit 310 receives the container activation request and activates the migration destination container 150 .
[0168] The transfer destination container 150 is in operation.
[0169] In step S160 , the second transition unit 236 transitions the operation mode of the transfer source agent 120 from the queuing mode to the queue sending mode.
[0170] The queue sending mode is an operation mode in which the stored data is sent to the transfer destination agent 140 .
[0171] The operation mode of the migration source agent 120 is changed as follows.
[0172] The second transition unit 236 instructs the proxy unit 220 to change the operation mode to the queue sending mode.
[0173] The proxy unit 220 changes the operation mode of the migration source proxy 120 to the queue sending mode according to the instruction.
[0174] During the queue sending mode, the migration source agent 120 sends the data stored in the queue 121 to the migration destination agent 140 in the order in which the data was stored.
[0175] Furthermore, when receiving data from the request source container 110, the migration source agent 120 adds the received data to the queue 121. The added data is sequentially transmitted to the migration destination agent 140.
[0176] When all the data stored in the queue 121 is sent and the queue 121 becomes empty, the proxy unit 220 notifies the migration management unit 230 of the completion of sending.
[0177] After that, when receiving data from the request source container 110, the migration source agent 120 adds the received data to the queue 121. The added data is sequentially transmitted to the migration destination agent 140.
[0178] In step S170 , the transmission destination changing unit 237 causes the request source container 110 to change the transmission destination of the data from the migration source agent 120 to the migration destination agent 140 .
[0179] The destination of data transmission is changed as follows.
[0180] The transmission destination changing unit 237 instructs the container unit 210 to change the transmission destination to the transfer destination agent 140 .
[0181] The container unit 210 changes the destination indicated by the destination information 111 from the transfer source agent 120 to the transfer destination agent 140 in accordance with the instruction.
[0182] After step S170, the container transfer is completed.
[0183] After the container migration is completed, the source container 110 is requested to send data to the migration destination agent 140 .
[0184] The migration destination agent 140 receives data from the request source container 110 , and transfers the received data to the migration destination container 150 .
[0185] The transfer destination container 150 receives data from the transfer destination agent 140 and processes the received data.
[0186] ***Description of Embodiments***
[0187] The migration management unit 230 may be provided in the migration destination device 300 instead of in the migration source device 200 , or may be provided in other devices.
[0188] The image 132 of the migration source container 130 may not be transferred when the migration destination container 150 is generated ( S110 ).
[0189] The image 132 may be transferred before starting the migration destination container 150. For example, the image 132 may be transferred when the volume 131 is migrated (S140).
[0190] However, by transferring the image 132 in advance, the time from when the transfer source container 130 stops to when the transfer destination container 150 moves to the track can be shortened.
[0191] **Effects of Implementation Method 1**
[0192] Embodiment 1 provides a technique that enables processing in a container to be performed in the order of requests without losing requests from a request source function block during the stop of the container.
[0193] Embodiment 1 introduces a communication agent that can queue packets (requests, data) between containers. In addition, embodiment 1 switches its action mode appropriately when transferring containers, so that the transfer target container can process all packets in order without losing packets during container transfer.
[0194] **Supplement to Implementation Method 1**
[0195] based on Fig.13 , the hardware structure of the transfer source device 200 is described.
[0196] The migration source device 200 includes a processing circuit 209 .
[0197] The processing circuit 209 is hardware that realizes the container unit 210 , the proxy unit 220 , and the migration management unit 230 .
[0198] The processing circuit 209 may be dedicated hardware, or may be the processor 201 that executes a program stored in the memory 202 .
[0199] In the case where the processing circuit 209 is dedicated hardware, the processing circuit 209 is, for example, a single circuit, a complex circuit, a programmed processor, a parallel programmed processor, an ASIC, an FPGA, or a combination thereof.
[0200] ASIC is the abbreviation of Application Specific Integrated Circuit.
[0201] FPGA is the abbreviation of Field Programmable Gate Array.
[0202] The migration source device 200 may include a plurality of processing circuits instead of the processing circuit 209 .
[0203] In the processing circuit 209 , part of the functions may be implemented by dedicated hardware, and the remaining functions may be implemented by software or firmware.
[0204] In this way, the functions of the transfer source device 200 can be implemented by hardware, software, firmware, or a combination thereof.
[0205] based on Fig.14 , the hardware structure of the transfer destination device 300 is explained.
[0206] The migration destination device 300 includes a processing circuit 309 .
[0207] The processing circuit 309 is hardware that implements the container unit 310 and the proxy unit 320 .
[0208] The processing circuit 309 may be dedicated hardware, or may be a processor 301 that executes a program stored in the memory 302 .
[0209] In the case where the processing circuit 309 is dedicated hardware, the processing circuit 309 is, for example, a single circuit, a complex circuit, a programmed processor, a parallel programmed processor, an ASIC, an FPGA, or a combination thereof.
[0210] The migration source device 200 may include a plurality of processing circuits instead of the processing circuit 209 .
[0211] In the processing circuit 309 , part of the functions may be implemented by dedicated hardware, and the remaining functions may be implemented by software or firmware.
[0212] In this way, the functions of the transfer destination device 300 can be implemented by hardware, software, firmware, or a combination thereof.
[0213] Embodiment 1 is an example of a preferred embodiment and is not intended to limit the technical scope of the present disclosure. Embodiment 1 may be implemented partially or in combination with other embodiments. The process described using flowcharts and the like may also be appropriately changed.
[0214] The “unit” of each element of the migration source device 200 and the migration destination device 300 may be rewritten as “processing”, “step”, “circuit” or “line”.
[0215] Description of Reference Numerals
[0216] 100 information processing system, 101 network, 110 request source container, 111 sending destination information, 112 sending destination information, 120 transfer source agent, 121 queue, 130 transfer source container, 131 volume, 132 image, 140 transfer destination agent, 141 queue, 150 transfer destination container, 151 volume, 152 image, 200 transfer source device, 201 processor, 202 memory, 203 auxiliary storage device, 204 communication device, 205 input and output interface, 209 processing circuit, 21 0 container unit, 220 proxy unit, 230 transfer management unit, 231 transfer destination generation unit, 232 first conversion unit, 233 transfer source stop unit, 234 volume transfer unit, 235 transfer destination start unit, 236 second conversion unit, 237 sending destination change unit, 290 storage unit, 300 transfer destination device, 301 processor, 302 memory, 303 auxiliary storage device, 304 communication device, 305 input / output interface, 309 processing circuit, 310 container unit, 320 proxy unit, 390 storage unit.
Claims
1. A container transfer device that transfers a container for data processing from a transfer source device to a transfer destination device, wherein: The transfer source device is a device on which the transfer source container and the transfer source agent perform actions. The transfer destination device is a device on which the transfer destination container and the transfer destination agent operate. The container transfer device comprises: a first transition unit configured to transition the operation mode of the migration source agent from a transfer mode in which data transmitted from a request source container requesting the data processing is received and the received data is transferred to the migration source container as a request destination container, and to a queuing mode in which the data is not transferred but is stored; a second conversion unit for converting the operation mode of the transfer source agent to a queue sending mode in which the stored data is sent to the transfer destination agent after the operation mode of the transfer source agent is converted to the queuing mode and the transfer destination container is activated; as well as A transmission destination changing unit causes the request source container to change the transmission destination of the data from the migration source agent to the migration destination agent after the transmission of the stored data is completed.
2. The container transfer device according to claim 1, wherein: The container transfer device comprises: a transfer destination generating unit which causes the transfer destination device to generate the transfer destination container and the transfer destination agent; a transfer source stopping unit that stops the transfer source container after the operation mode of the transfer source agent is changed to the queuing mode; a roll transfer unit that transfers the roll from the transfer source container to the transfer destination container after the transfer source container is stopped; as well as A transfer destination activation unit activates the transfer destination container after the roll is transferred.
3. A container migration method, which migrates a container for data processing from a migration source device to a migration destination device, wherein: The transfer source device is a device on which the transfer source container and the transfer source agent perform actions. The transfer destination device is a device on which the transfer destination container and the transfer destination agent operate. In the container transfer method, The operation mode of the migration source agent is changed from a forwarding mode to a queuing mode, wherein the data transmitted from the request source container requesting the data processing is received and the received data is forwarded to the migration source container which is the request destination container, and the data is not forwarded but stored in the queuing mode. After the operation mode of the transfer source agent is changed to the queuing mode and the transfer destination container is started, the operation mode of the transfer source agent is changed to a queue sending mode in which the stored data is sent to the transfer destination agent. After the sending of the stored data is completed, the request source container is caused to change the data transmission destination from the migration source agent to the migration destination agent.
4. A container migration method, which migrates a container for data processing from a migration source device to a migration destination device, wherein: The transfer source device is a device on which the transfer source container and the transfer source agent perform actions. The transfer destination device is a device on which the transfer destination container and the transfer destination agent operate. In the container transfer method, receiving data sent from a request source container requesting data processing, and transferring the received data to the transfer source container which is a request destination container, After receiving an instruction to switch from the forwarding mode to the queuing mode, receiving data sent from the request source container, storing the received data without forwarding it, After receiving an instruction to switch from the queuing mode to the queue sending mode, the stored data is sent to the transfer destination agent.
5. A container migration program for migrating a container for data processing from a migration source device to a migration destination device, wherein: The transfer source device is a device on which the transfer source container and the transfer source agent perform actions. The transfer destination device is a device on which the transfer destination container and the transfer destination agent operate. The container transfer program is used to enable the computer to perform the following processing: a first transition process for transitioning the operation mode of the migration source agent from a transfer mode, in which the data transmitted from the request source container requesting the data processing is received and the received data is transferred to the migration source container as the request destination container, to a queuing mode, in which the data is not transferred but stored; a second transition process, after the operation mode of the transfer source agent is transitioned to the queuing mode and the transfer destination container is activated, causing the operation mode of the transfer source agent to transition to a queue sending mode, in which the stored data is sent to the transfer destination agent; as well as The transmission destination change process causes the request source container to change the transmission destination of the data from the transfer source agent to the transfer destination agent after the transmission of the stored data is completed.
Citation Information
Patent Citations
Systems and methods for performing live migration of software containers
JP2019530072A