WO2023276040A1 - 情報処理装置、ジョブ実行システム、及び制御方法 - Google Patents

情報処理装置、ジョブ実行システム、及び制御方法 Download PDF

Info

Publication number
WO2023276040A1
WO2023276040A1 PCT/JP2021/024736 JP2021024736W WO2023276040A1 WO 2023276040 A1 WO2023276040 A1 WO 2023276040A1 JP 2021024736 W JP2021024736 W JP 2021024736W WO 2023276040 A1 WO2023276040 A1 WO 2023276040A1
Authority
WO
WIPO (PCT)
Prior art keywords
instance
job execution
state
management device
job
Prior art date
Application number
PCT/JP2021/024736
Other languages
English (en)
French (fr)
Inventor
憲治 江角
Original Assignee
三菱電機株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 三菱電機株式会社 filed Critical 三菱電機株式会社
Priority to DE112021007903.4T priority Critical patent/DE112021007903T5/de
Priority to PCT/JP2021/024736 priority patent/WO2023276040A1/ja
Priority to JP2023531237A priority patent/JP7479573B2/ja
Publication of WO2023276040A1 publication Critical patent/WO2023276040A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]

Definitions

  • the present disclosure relates to information processing apparatuses, job execution systems, and control methods.
  • resources such as databases, storage, and applications can be used in cloud services. Many jobs are processed at the same time by using many resources on the cloud and distributing data processing. Resources are also used to construct "instances.” For example, one instance is a virtual computer. A virtual computer is also called a virtual machine.
  • instances are built on the server.
  • the instance executes the job indicated by the job execution request.
  • charges are incurred when the instance is activated (hereinafter referred to as the activated state).
  • the instance is stopped when the device sends an instance stop request to the server.
  • the charges incurred in the running state will stop.
  • the server may not receive the stop request.
  • the user powers off the device without worrying about the state of the instance.
  • the device does not transmit the stop request, so the server does not receive the stop request.
  • the server does not receive the stop request.
  • the server does not receive the stop request.
  • the purpose of this disclosure is to control costs.
  • the information processing device receives a job execution request indicating a job execution request transmitted by the management device.
  • the information processing device includes an instance that executes the job indicated by the job execution request, a monitoring unit that monitors a connection state with the management device, and the instance is in operation or in an operable state and the connection state is and an instance control unit that stops the instance or discards the instance when it is in a disconnected state.
  • FIG. 1 illustrates a job execution system
  • FIG. It is a figure which shows the hardware which a management apparatus has.
  • 3 is a block diagram showing functions of a management device and a server
  • FIG. 10 is a diagram showing an example (part 1) of a timeline in the job execution system
  • 4 is a sequence diagram of processing executed by the job execution system
  • FIG. 10 is a diagram showing an example (part 2) of a timeline in the job execution system
  • FIG. 1 is a diagram showing a job execution system.
  • the job execution system includes a management device 100 and a server 200.
  • FIG. The management device 100 and the server 200 are connected via the network 10 .
  • Network 10 may be a wired network or a wireless network.
  • the management device 100 is a device that manages jobs.
  • the management device 100 is a home appliance or the like.
  • a home appliance is a device used by a user.
  • the management device 100 has a power supply. When the power is on, the management device 100 operates. When the power is off, the management device 100 stops operating.
  • the server 200 is a device that executes the control method.
  • Server 200 is a cloud server.
  • the server 200 is also called an information processing device.
  • the number of servers is one.
  • the number of servers may be two or more. That is, the functions of server 200 are realized by one or more servers.
  • the server 200 can construct an instance using the resources of the server 200 .
  • the number of management devices may be two or more. A plurality of management apparatuses may use one instance.
  • FIG. 2 is a diagram showing hardware included in the management device.
  • the management device 100 has a processor 101 , a volatile memory device 102 and a non-volatile memory device 103 .
  • the processor 101 controls the management device 100 as a whole.
  • the processor 101 is a CPU (Central Processing Unit), FPGA (Field Programmable Gate Array), or the like.
  • Processor 101 may be a multiprocessor.
  • the management device 100 may have a processing circuit.
  • the processing circuit may be a single circuit or multiple circuits.
  • the volatile storage device 102 is the main storage device of the management device 100 .
  • the volatile memory device 102 is RAM (Random Access Memory).
  • the nonvolatile storage device 103 is an auxiliary storage device for the management device 100 .
  • the nonvolatile storage device 103 is a HDD (Hard Disk Drive) or an SSD (Solid State Drive).
  • the server 200 like the management device 100, has a processor, a volatile storage device, and a non-volatile storage device.
  • the server 200 may also have processing circuitry.
  • the server 200 receives an instance control request from the management device 100.
  • the server 200 creates, starts, stops, and discards an instance.
  • creation, activation, termination, and destruction of instances will be described.
  • the server 200 When the server 200 receives an instance generation control request from the management device 100, the server 200 sets the OS (Operating System) and resources such as processors and volatile storage devices to be used. This reserves the resource.
  • the server 200 creates a storage image file of the instance (that is, virtual computer) based on the resource reservation details.
  • the server 200 stores the storage image file in its nonvolatile storage device. Charges apply when storage image files are stored. The charge for storing the storage image file is generally lower than the charge for launching the instance. After the storage image file is stored, the instance will be in a stopped state.
  • the server 200 receives an instance activation control request from the management device 100, the server 200 activates an instance based on the storage image file. As a result, the instance transitions from the stopped state to the running state. When the instance startup process is completed, the instance transitions from being started to the started state. The charge per unit of time varies depending on the allocated amount of resources. The higher the performance of the instance, the higher the unit price.
  • the server 200 receives an instance stop control request from the management device 100, the instance transitions from the active state to the stopped state.
  • the server 200 executes instance stop processing.
  • the instance stop processing is completed, the instance transitions from the stopped state to the stopped state.
  • the storage image file is stored in the non-volatile storage device of the server 200 in the stopped state. Therefore, it costs money.
  • the storage image file reflects the files that were written from the start state to the stop state. Therefore, the server 200 can restart the instance based on the storage image file when starting the instance next time.
  • the server 200 executes instance discard processing.
  • the server 200 releases resources such as the OS reserved for instantiation and the processors and volatile storage devices used.
  • FIG. 3 is a block diagram showing functions of the management device and the server.
  • the management device 100 has a job management manager 110 , an instance control section 120 and a notification section 130 .
  • a part or all of the job management manager 110, the instance control unit 120, and the notification unit 130 may be implemented by a processing circuit. Also, part or all of the job management manager 110 , the instance control unit 120 , and the notification unit 130 may be realized as modules of programs executed by the processor 101 .
  • the job management manager 110 When the job management manager 110 receives a job request from a request unit (not shown), it calculates the number of instances for executing the job. The job management manager 110 transmits a startup control request for the number of instances to the instance control unit 120 .
  • the job indicated by the job request is, for example, a device control processing job or a job indicating a simulation calculation for efficiently operating a device. Also, the job management manager 110 transmits a request to start status notification to the notification unit 130 .
  • the instance control unit 120 transmits an instance control request to the server 200.
  • the instance control unit 120 also transmits an instance status request to the server 200 . This allows the instance control unit 120 to receive instance status information from the server 200 .
  • the instance control unit 120 when the instance control unit 120 receives a start control request for the number of instances from the job management manager 110, the instance control unit 120 transmits the instance start control request for the number of instances to the server 200.
  • the notification unit 130 can transmit the status of the management device 100 to the server 200 when receiving a request to start status notification from the job management manager 110 . Upon receiving a status request from the server 200 , the notification unit 130 transmits the status of the management device 100 to the server 200 .
  • the server 200 has an instance 210 , a monitoring section 220 and an instance control section 230 .
  • a part or all of the monitoring unit 220 and the instance control unit 230 may be realized by processing circuits of the server 200 .
  • part or all of the monitoring unit 220 and the instance control unit 230 may be implemented as modules of programs executed by the processors of the server 200 .
  • the instance 210 operates as a job execution agent 211.
  • the instance 210 receives the job execution request sent by the management device 100 .
  • the job execution request indicates a job execution request.
  • the instance 210 executes the job indicated by the job execution request.
  • the job is a job indicating a simulation calculation as described above.
  • FIG. 3 shows one instance. Multiple instances may be constructed in the server 200 . Multiple instances may compute a job in parallel. This gives results in a short time. Multiple instances may also compute multiple jobs in parallel.
  • the monitoring unit 220 monitors the connection status with the management device 100 .
  • the monitoring unit 220 monitors the connection state using a PING command.
  • the monitoring unit 220 can detect the connection state by periodically transmitting a PING command to the management device 100 .
  • the monitoring unit 220 may receive the instance operating time from the management device 100 .
  • the instance operating time indicates the operating time during which the instance 210 can operate.
  • the instance running time indicates the remaining time (for example, remaining 15 minutes) that the instance 210 can run.
  • the instance operating time indicates the time when the instance 210 can operate.
  • the instance operating time indicates that the instance 210 can operate until 15:00.
  • the monitoring unit 220 waits for the next instance operating time (for example, the first instance operating time) until the operating time indicated by the instance operating time elapses. 2) is not received by the server 200, the connection state is determined to be a non-connection state.
  • the monitoring unit 220 transmits a status request to the management device 100 . Thereby, the monitoring unit 220 can receive the status of the management device 100 from the management device 100 .
  • the instance control unit 230 When receiving an instance control request from the management device 100, the instance control unit 230 creates, starts, stops, and discards an instance. For example, when the instance control unit 230 receives an instance activation control request, it activates the stopped instance 210 . If the instance 210 has not been generated when the instance activation control request is received, the instance control unit 230 executes the instance generation process and the instance activation process.
  • the instance control unit 230 stops the instance 210 or discards the instance 210 when the instance 210 is in operation or in an operable state and the connection state is in the disconnected state. Note that when the connection state is the non-connection state, it may be expressed as a case where it is determined that the management device 100 and the server 200 are not connected via the network 10 .
  • the instance control unit 230 may stop the instance 210 or discard the instance 210 when the instance 210 is in operation or in an operable state and the disconnected state continues for a preset time. .
  • the storage can be restored to the storage state before the stop after the next instance startup control request is received. Therefore, if the instance 210 is stopped, execution of unfinished jobs can continue. However, usage fees for storage are incurred. On the other hand, if the instance 210 is discarded, the storage cannot be restored to its pre-stop storage state. However, there is no charge for using the storage.
  • At least one of the monitoring unit 220 and the instance control unit 230 may be included in the instance 210. Moreover, when multiple instances are constructed, the monitoring unit 220 and the instance control unit 230 may be included in an instance different from the instance 210 .
  • FIG. 4 illustrates a case where the connected state does not change to the disconnected state when the instance 210 is in the active state.
  • FIG. 6 illustrates a case where the connected state changes to the disconnected state when the instance 210 is in the active state.
  • FIG. 4 is a diagram showing an example (part 1) of a timeline in the job execution system.
  • FIG. 4 shows the number of jobs managed by the job management manager 110, instance status, job execution status, and connection status.
  • the instance state is a stopped state.
  • the job execution state is not running because the instance is not running. Since the management device 100 and the server 200 are not communicating, the connection state is the non-connection state.
  • Step S1 The job management manager 110 receives a job request from the request section.
  • the number of jobs indicated by the job request is eight.
  • Step S ⁇ b>2 The instance control unit 120 establishes a connection between the management device 100 and the server 200 . As a result, the connection state transitions from non-connected to connected.
  • the instance control unit 120 transmits an instance activation control request to the server 200 .
  • Step S3 The instance control unit 230 activates the instance 210. As a result, the instance state transitions from the stopped state to the running state. Then, when the activation of the instance 210 is completed, the instance state transitions from the in-activation state to the activation state. The instance control unit 230 transmits an instance activation completion notification to the management device 100 .
  • the management device 100 is a home appliance, a home gateway or router exists between the management device 100 and the server 200 . Therefore, when management device 100 is a home appliance, management device 100 and server 200 do not communicate directly. If direct communication is not possible, the management device 100 may not be able to receive the instance activation completion notification. Therefore, when direct communication is not possible, the management device 100 can detect that the instance 210 is in the activated state by periodically transmitting an instance status request to the server 200 . When it is detected that the instance 210 is in a running state, the management device 100 detects that the instance has been started.
  • Step S4 The instance control unit 120 transmits a job execution request to the server 200.
  • the job execution request may include data used in the job.
  • the instance control unit 120 may transmit data used in the job to the server 200 before transmitting the job execution request.
  • Step S5 The instance 210 (more specifically, the job execution agent 211) executes the job. As a result, the job execution state transitions from non-execution to execution. Note that "running" means that the instance 210 is in operation. When the job execution is completed, the job execution state transitions from being executed to non-executing. Further, the instance 210 transmits a job execution completion notice to the management device 100 when the job execution is completed. Note that the job execution completion notification includes the job execution result. The job management manager 110 receives the job execution completion notice and decrements the number of jobs by one.
  • the operable state is a state in which the instance state is running and the job execution state is non-execution.
  • the operable state means that the instance 210 is ready to operate when a job execution request is received.
  • Step S6 Since the number of jobs is not 0, the job management manager 110 instructs the instance control unit 120 to transmit a job execution request.
  • the instance control unit 120 transmits a job execution request to the server 200 .
  • Step S7 The instance 210 (more specifically, the job execution agent 211) executes the job. As a result, the job execution state transitions from non-execution to execution. When the job execution is completed, the job execution state transitions from being executed to non-executing. Further, when the execution of the job is completed, the instance 210 transmits a job execution completion notice to the management device 100 . The job management manager 110 receives the job execution completion notice and decrements the number of jobs by one.
  • Step S8 Since the number of jobs is not 0, the job management manager 110 instructs the instance control unit 120 to transmit a job execution request.
  • the instance control unit 120 transmits a job execution request to the server 200 .
  • the management device 100 and the server 200 perform similar processing until the number of jobs becomes zero.
  • Step S9 The instance 210 (more specifically, the job execution agent 211) executes the job according to the job execution request. As a result, the job execution state transitions from non-execution to execution. When the job execution is completed, the job execution state transitions from being executed to non-executing. Further, the instance 210 transmits a job execution completion notice to the management device 100 when the job execution is completed. The job management manager 110 receives the job execution completion notice and decrements the number of jobs by one.
  • Step S10 Since the number of jobs is 0, the job management manager 110 instructs the instance control unit 120 to transmit an instance stop request.
  • the instance control unit 120 transmits an instance stop control request to the server 200 .
  • Step S11 The instance control unit 230 stops the instance 210. As a result, the instance state transitions from the running state to the stopped state. Then, when the stopping of the instance 210 is completed, the instance state transitions from being stopped to the stopped state. The instance control unit 230 transmits an instance stop completion notice to the management device 100 .
  • the management device 100 may detect that the instance 210 is in a stopped state by periodically transmitting an instance status request to the server 200 .
  • the management device 100 detects that the instance has been stopped.
  • the job management manager 110 may instruct the instance control unit 120 to transmit an instance discard request.
  • the instance control unit 120 then transmits an instance discard control request to the server 200 . Accordingly, the instance 210 is discarded.
  • FIG. 5 is a sequence diagram of processing executed by the job execution system.
  • FIG. 5 is a sequence diagram showing the processing executed in FIG. (Step ST ⁇ b>101 )
  • the management device 100 transmits an instance activation control request to the server 200 .
  • the server 200 transmits an instance activation completion notification to the management device 100.
  • Step ST ⁇ b>103 Management device 100 transmits data used in the job to server 200 .
  • Step ST ⁇ b>104 Management device 100 transmits a job execution request to server 200 .
  • Step ST105 The server 200 transmits a job execution completion notification to the management device 100.
  • FIG. Steps ST103 to ST105 are repeated until the number of jobs becomes zero.
  • Step ST106 The management device 100 transmits an instance stop control request to the server 200.
  • FIG. (Step ST107) The server 200 transmits an instance stop completion notice to the management device 100.
  • FIG. 6 is a diagram showing an example (part 2) of the timeline in the job execution system.
  • the process of FIG. 6 differs from the process of FIG. 4 in that steps S21 and S22 are executed. Therefore, steps S21 and S22 will be explained in FIG. Further, description of processes other than steps S21 and S22 is omitted.
  • the situation after step S8 is as follows.
  • the instance state is the running state.
  • the job execution state is running. Since the management device 100 and the server 200 are in a communicable state, the connection state is connecting.
  • the user turns off the power of the management device 100 .
  • the connection state with the management device 100 transitions to the non-connection state. Note that a transition to the disconnected state also occurs due to a network 10 failure.
  • Step S21 The monitoring unit 220 monitors the connection status with the management device 100 using the PING command. For example, if the monitoring unit 220 cannot receive a response to the PING command, the monitoring unit 220 determines that it is in the disconnected state.
  • Step S22 The instance control unit 230 stops the instance 210. As a result, the instance state transitions from the running state to the stopped state. Then, when the stopping of the instance 210 is completed, the instance state transitions from being stopped to the stopped state.
  • the server 200 stops the instance 210 when the connection state with the management device 100 is in the disconnected state. This stops the charge from being charged in the activated state. Alternatively, the server 200 discards the instance 210 when the connection state is the disconnected state. This stops the charge from being charged in the activated state. Therefore, according to the embodiment, the server 200 can reduce costs.
  • 10 network 100 management device, 101 processor, 102 volatile storage device, 103 non-volatile storage device, 110 job management manager, 120 instance control unit, 130 notification unit, 200 server, 210 instance, 211 job execution agent, 220 monitoring unit , 230 instance control unit.

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 And Data Communications (AREA)

Abstract

サーバ(200)は、管理装置(100)が送信した、ジョブの実行要求を示すジョブ実行要求を受信する。サーバ(200)は、ジョブ実行要求が示すジョブを実行するインスタンス(210)と、管理装置(100)との接続状態を監視する監視部(220)と、インスタンス(210)が動作中又は動作可能状態であり、かつ接続状態が非接続状態である場合、インスタンス(210)の停止又はインスタンス(210)の廃棄を実行するインスタンス制御部(230)と、を有する。

Description

情報処理装置、ジョブ実行システム、及び制御方法
 本開示は、情報処理装置、ジョブ実行システム、及び制御方法に関する。
 近年、クラウドサービスが普及している。クラウドサービスでは、データベース、ストレージ、アプリケーションなどのリソースが、利用できる。クラウド上で多くのリソースが利用され、データ処理が分散されることで、多くのジョブが同時に処理される。
 また、リソースを用いて、“インスタンス”が構築される。例えば、インスタンスの一例は、仮想コンピュータである。なお、仮想コンピュータは、仮想マシンとも言う。
 ここで、大量の業務が自動化されることが望まれている。大量の業務が自動化される場合、大量のジョブを処理する必要がある。そこで、ジョブを実行するジョブ実行エージェントをインスタンスで実現する技術が提案されている(特許文献1を参照)。
特開2014-186416号公報
 ところで、インスタンスは、サーバ上に構築される。インスタンスは、家電機器などの装置からジョブ実行要求を受信した場合、ジョブ実行要求が示すジョブを実行する。なお、インスタンスが起動された状態(以下、起動状態)では、料金がかかる。
 当該装置がインスタンスの停止要求をサーバに送信することで、インスタンスは、停止する。インスタンスが停止することで、起動状態における料金の発生が、止まる。ここで、サーバが当該停止要求を受信しない場合がある。例えば、ユーザがインスタンスの状態を気にしないで、当該装置の電源をOFFにする。これにより、当該装置が当該停止要求を送信しないため、サーバは、当該停止要求を受信しない。また、例えば、当該装置とサーバとの間のネットワークに障害が発生した場合、サーバは、当該停止要求を受信しない。
 このように、サーバが当該停止要求を受信しない場合、起動状態が継続するため、起動状態における料金の発生が継続する。料金の発生が継続することは、ユーザのコスト負担を大きくする。
 本開示の目的は、コストを抑制することである。
 本開示の一態様に係る情報処理装置が提供される。情報処理装置は、管理装置が送信した、ジョブの実行要求を示すジョブ実行要求を受信する。情報処理装置は、前記ジョブ実行要求が示す前記ジョブを実行するインスタンスと、前記管理装置との接続状態を監視する監視部と、前記インスタンスが動作中又は動作可能状態であり、かつ前記接続状態が非接続状態である場合、前記インスタンスの停止又は前記インスタンスの廃棄を実行するインスタンス制御部と、を有する。
 本開示によれば、コストを抑制することができる。
ジョブ実行システムを示す図である。 管理装置が有するハードウェアを示す図である。 管理装置とサーバの機能を示すブロック図である。 ジョブ実行システムにおけるタイムラインの例(その1)を示す図である。 ジョブ実行システムで実行される処理のシーケンス図である。 ジョブ実行システムにおけるタイムラインの例(その2)を示す図である。
 以下、図面を参照しながら実施の形態を説明する。以下の実施の形態は、例にすぎず、本開示の範囲内で種々の変更が可能である。
実施の形態.
 図1は、ジョブ実行システムを示す図である。ジョブ実行システムは、管理装置100とサーバ200とを含む。管理装置100とサーバ200は、ネットワーク10を介して接続する。ネットワーク10は、有線ネットワーク又は無線ネットワークである。
 管理装置100は、ジョブを管理する装置である。例えば、管理装置100は、家電機器などである。家電機器は、ユーザが使用する機器である。管理装置100は、電源を有する。電源がONの状態である場合、管理装置100は、動作する。電源がOFFの状態である場合、管理装置100は、動作を停止する。
 サーバ200は、制御方法を実行する装置である。サーバ200は、クラウドサーバである。サーバ200は、情報処理装置とも言う。図1では、サーバの数は、1つである。サーバの数は、2つ以上でもよい。すなわち、サーバ200の機能は、1つ以上のサーバで実現される。サーバ200は、サーバ200のリソースを用いて、インスタンスを構築することができる。
 また、管理装置の数は、2つ以上でもよい。そして、複数の管理装置は、1つのインスタンスを利用してもよい。
 次に、管理装置100とサーバ200が有するハードウェアを説明する。
 図2は、管理装置が有するハードウェアを示す図である。管理装置100は、プロセッサ101、揮発性記憶装置102、及び不揮発性記憶装置103を有する。
 プロセッサ101は、管理装置100全体を制御する。例えば、プロセッサ101は、CPU(Central Processing Unit)、FPGA(Field Programmable Gate Array)などである。プロセッサ101は、マルチプロセッサでもよい。また、管理装置100は、処理回路を有してもよい。処理回路は、単一回路又は複合回路でもよい。
 揮発性記憶装置102は、管理装置100の主記憶装置である。例えば、揮発性記憶装置102は、RAM(Random Access Memory)である。不揮発性記憶装置103は、管理装置100の補助記憶装置である。例えば、不揮発性記憶装置103は、HDD(Hard Disk Drive)、又はSSD(Solid State Drive)である。
 サーバ200は、管理装置100と同様に、プロセッサ、揮発性記憶装置、及び不揮発性記憶装置を有する。また、サーバ200は、処理回路を有してもよい。
 サーバ200は、管理装置100からインスタンス制御要求を受信する。サーバ200は、インスタンス制御要求を受信した場合、インスタンスの生成、起動、停止、及び廃棄を行う。ここで、インスタンスの生成、起動、停止、及び廃棄を説明する。
 まず、インスタンスの生成を説明する。サーバ200は、インスタンス生成制御要求を管理装置100から受信した場合、OS(Operating System)、及び利用されるプロセッサ、揮発性記憶装置などのリソースを設定する。これにより、リソースが予約される。サーバ200は、リソースの予約内容に基づいて、インスタンス(すなわち、仮想コンピュータ)のストレージイメージファイルを作成する。サーバ200は、ストレージイメージファイルをサーバ200の不揮発性記憶装置に格納する。ストレージイメージファイルが格納されている状態では、料金がかかる。ストレージイメージファイルが格納されている状態の料金は、一般的に、インスタンス起動時の料金よりも安い。ストレージイメージファイルが格納された後、インスタンスは、停止状態になる。
 インスタンスの起動を説明する。サーバ200は、インスタンス起動制御要求を管理装置100から受信した場合、ストレージイメージファイルに基づいて、インスタンスを起動する。これにより、インスタンスは、停止状態から起動中に遷移する。インスタンスの起動処理が完了した場合、インスタンスは、起動中から起動状態に遷移する。単位時間当たりの料金は、リソースの割当量により変わる。インスタンスの性能が高いほど、単価は、高くなる。
 インスタンスの停止を説明する。サーバ200がインスタンス停止制御要求を管理装置100から受信した場合、インスタンスは、起動状態から停止中に遷移する。インスタンスが停止中に遷移した場合、サーバ200では、インスタンスの停止処理が実行される。インスタンスの停止処理が完了した場合、インスタンスは、停止中から停止状態に遷移する。なお、停止状態では、ストレージイメージファイルは、サーバ200の不揮発性記憶装置に格納される。そのため、料金がかかる。
 また、ストレージイメージファイルには、起動状態から停止中までの間に書き込みが行われたファイルなどが反映されている。そのため、サーバ200は、次回のインスタンスの起動時に、当該ストレージイメージファイルに基づいて、インスタンスを再起動できる。
 インスタンスの廃棄を説明する。サーバ200がインスタンス廃棄制御要求を管理装置100から受信した場合、サーバ200は、インスタンスの廃棄処理を実行する。サーバ200は、インスタンス生成で予約されたOS、及び利用されるプロセッサ、揮発性記憶装置などのリソースを解放する。
 次に、管理装置100とサーバ200が有する機能を説明する。
 図3は、管理装置とサーバの機能を示すブロック図である。管理装置100は、ジョブ管理マネジャ110、インスタンス制御部120、及び通知部130を有する。
 ジョブ管理マネジャ110、インスタンス制御部120、及び通知部130の一部又は全部は、処理回路によって実現してもよい。また、ジョブ管理マネジャ110、インスタンス制御部120、及び通知部130の一部又は全部は、プロセッサ101が実行するプログラムのモジュールとして実現してもよい。
 ジョブ管理マネジャ110は、図示が省略されている要求部からジョブ要求を受信した場合、ジョブを実行されるためのインスタンス数を算出する。ジョブ管理マネジャ110は、当該インスタンス数の起動制御要求をインスタンス制御部120に送信する。なお、ジョブ要求が示すジョブは、機器制御処理のジョブ、効率的に機器を動作させるためのシミュレーション演算を示すジョブなどである。また、ジョブ管理マネジャ110は、状態通知の開始要求を通知部130に送信する。
 インスタンス制御部120は、インスタンス制御要求をサーバ200に送信する。また、インスタンス制御部120は、インスタンスの状態要求をサーバ200に送信する。これにより、インスタンス制御部120は、インスタンスの状態情報をサーバ200から受信できる。
 また、インスタンス制御部120は、当該インスタンス数の起動制御要求をジョブ管理マネジャ110から受信した場合、当該インスタンス数のインスタンス起動制御要求をサーバ200に送信する。
 通知部130は、状態通知の開始要求をジョブ管理マネジャ110から受信した場合、管理装置100の状態をサーバ200に送信できるようになる。通知部130は、サーバ200から状態要求を受信した場合、管理装置100の状態をサーバ200に送信する。
 サーバ200は、インスタンス210、監視部220、及びインスタンス制御部230を有する。
 監視部220及びインスタンス制御部230の一部又は全部は、サーバ200が有する処理回路によって実現してもよい。また、監視部220及びインスタンス制御部230の一部又は全部は、サーバ200が有するプロセッサが実行するプログラムのモジュールとして実現してもよい。
 インスタンス210は、ジョブ実行エージェント211として動作する。インスタンス210は、管理装置100が送信したジョブ実行要求を受信する。なお、ジョブ実行要求は、ジョブの実行要求を示す。インスタンス210は、管理装置100からジョブ実行要求を受信した場合、ジョブ実行要求が示すジョブを実行する。なお、例えば、当該ジョブは、上記したように、シミュレーション演算を示すジョブである。
 また、図3は、1つのインスタンスを示している。サーバ200では、複数のインスタンスが構築されてもよい。複数のインスタンスは、1つのジョブを並行して演算してもよい。これにより、短時間で結果が、得られる。また、複数のインスタンスは、複数のジョブを並行して演算してもよい。
 監視部220は、管理装置100との接続状態を監視する。例えば、監視部220は、PINGコマンドを用いて、当該接続状態を監視する。監視部220は、定期的にPINGコマンドを管理装置100に送信することで、当該接続状態を検出することができる。
 監視部220は、インスタンス稼働時間を管理装置100から受信してもよい。インスタンス稼働時間は、インスタンス210が稼働できる稼働時間を示す。例えば、インスタンス稼働時間は、インスタンス210が稼働できる残り時間(例えば、残り15分)を示す。また、例えば、インスタンス稼働時間は、インスタンス210が稼働できる時刻を示す。例えば、インスタンス稼働時間は、インスタンス210が15時まで稼働できることを示す。監視部220は、インスタンス稼働時間(例えば、第1のインスタンス稼働時間とも言う。)に基づいて、当該インスタンス稼働時間が示す稼働時間が経過するまでの間に、次のインスタンス稼働時間(例えば、第2のインスタンス稼働時間とも言う。)をサーバ200が受信しない場合、接続状態が非接続状態であると判定する。
 また、監視部220は、状態要求を管理装置100に送信する。これにより、監視部220は、管理装置100の状態を、管理装置100から受信できる。
 インスタンス制御部230は、インスタンス制御要求を管理装置100から受信した場合、インスタンスの生成、起動、停止、及び廃棄を行う。例えば、インスタンス制御部230は、インスタンス起動制御要求を受信した場合、停止状態のインスタンス210を起動する。また、インスタンス制御部230は、インスタンス起動制御要求を受信した時点でインスタンス210が生成されていない場合、インスタンスの生成処理及びインスタンスの起動処理を実行する。
 インスタンス制御部230は、インスタンス210が動作中又は動作可能状態であり、かつ接続状態が非接続状態である場合、インスタンス210の停止又はインスタンス210の廃棄を実行する。なお、接続状態が非接続状態である場合は、管理装置100とサーバ200とがネットワーク10を介して接続していないと判定された場合と表現してもよい。
 また、インスタンス制御部230は、インスタンス210が動作中又は動作可能状態であり、かつ予め設定された時間、非接続状態が続いた場合、インスタンス210の停止又はインスタンス210の廃棄を実行してもよい。
 インスタンス210が停止された場合、次回のインスタンス起動制御要求が受信された後、ストレージは、当該停止前のストレージ状態に復元できる。そのため、インスタンス210が停止された場合、非完了のジョブの実行が継続できる。しかし、ストレージの使用料は、かかる。一方、インスタンス210が廃棄された場合、ストレージは、当該停止前のストレージ状態に復元できない。しかし、ストレージの使用料は、かからない。
 ここで、監視部220とインスタンス制御部230とのうちの少なくとも1つは、インスタンス210に含まれてもよい。また、複数のインスタンスが構築される場合、監視部220とインスタンス制御部230とは、インスタンス210と異なるインスタンスに含まれてもよい。
 次に、ジョブ実行システムにおけるタイムラインを例示する。また、上記したように、インスタンス210が起動状態のときに、管理装置100との接続状態が、非接続状態になる場合がある。図4では、インスタンス210が起動状態のときに、接続状態が非接続状態にならない場合を説明する。図6では、インスタンス210が起動状態のときに、接続状態が非接続状態になる場合を説明する。
 図4は、ジョブ実行システムにおけるタイムラインの例(その1)を示す図である。図4は、ジョブ管理マネジャ110が管理しているジョブ数、インスタンス状態、ジョブ実行状態、及び接続状態を示している。
 まず、ジョブが発生していないので、ジョブ数は、0である。インスタンス状態は、停止状態である。インスタンスが動作していないので、ジョブ実行状態は、非実行である。管理装置100とサーバ200とが通信していないので、接続状態は、非接続状態である。
 (ステップS1)ジョブ管理マネジャ110は、要求部からジョブ要求を受信する。ジョブ要求が示すジョブ数は、8である。
 (ステップS2)インスタンス制御部120は、管理装置100とサーバ200との間でコネクションを確立する。これにより、接続状態は、非接続から接続中に遷移する。
 インスタンス制御部120は、インスタンス起動制御要求をサーバ200に送信する。
 (ステップS3)インスタンス制御部230は、インスタンス210を起動する。これにより、インスタンス状態は、停止状態から起動中に遷移する。そして、インスタンス210の起動が完了した場合、インスタンス状態は、起動中から起動状態に遷移する。インスタンス制御部230は、インスタンス起動完了通知を管理装置100に送信する。
 なお、管理装置100が家電機器である場合、管理装置100とサーバ200との間には、ホームゲートウェイ又はルータが存在する。そのため、管理装置100が家電機器である場合、管理装置100とサーバ200とは、直接通信していない。直接通信できない場合、管理装置100は、インスタンス起動完了通知を受信できない可能性がある。そこで、直接通信できない場合、管理装置100は、定期的に、インスタンスの状態要求をサーバ200に送信することで、インスタンス210が起動状態であることを検出できる。インスタンス210が起動状態であることが検出された場合、管理装置100は、インスタンスの起動が完了したことを検出する。
 (ステップS4)インスタンス制御部120は、ジョブ実行要求をサーバ200に送信する。なお、ジョブ実行要求には、ジョブで用いられるデータが含まれてもよい。また、インスタンス制御部120は、ジョブ実行要求を送信する前に、ジョブで用いられるデータをサーバ200に送信してもよい。
 (ステップS5)インスタンス210(詳細には、ジョブ実行エージェント211)は、ジョブを実行する。これにより、ジョブ実行状態は、非実行から実行中に遷移する。なお、実行中は、インスタンス210が動作中であることを意味する。
 ジョブの実行が完了した場合、ジョブ実行状態は、実行中から非実行に遷移する。また、インスタンス210は、ジョブの実行が完了した場合、ジョブ実行完了通知を管理装置100に送信する。なお、ジョブ実行完了通知には、ジョブの実行結果が含まれる。ジョブ管理マネジャ110は、ジョブ実行完了通知を受け取り、ジョブ数を1つ減算する。
 ここで、動作可能状態を説明する。動作可能状態は、インスタンス状態が起動状態であり、かつジョブ実行状態が非実行の状態である。すなわち、動作可能状態は、ジョブ実行要求が受信されれば、インスタンス210が直ぐに動作を行うことができる状態であることを意味している。
 (ステップS6)ジョブ管理マネジャ110は、ジョブ数が0でないため、インスタンス制御部120にジョブ実行要求の送信を指示する。インスタンス制御部120は、ジョブ実行要求をサーバ200に送信する。
 (ステップS7)インスタンス210(詳細には、ジョブ実行エージェント211)は、ジョブを実行する。これにより、ジョブ実行状態は、非実行から実行中に遷移する。
 ジョブの実行が完了した場合、ジョブ実行状態は、実行中から非実行に遷移する。また、インスタンス210は、ジョブの実行が完了した場合、ジョブ実行完了通知を管理装置100に送信する。ジョブ管理マネジャ110は、ジョブ実行完了通知を受け取り、ジョブ数を1つ減算する。
 (ステップS8)ジョブ管理マネジャ110は、ジョブ数が0でないため、インスタンス制御部120にジョブ実行要求の送信を指示する。インスタンス制御部120は、ジョブ実行要求をサーバ200に送信する。
 このように、管理装置100とサーバ200は、ジョブ数が0になるまで、同様の処理を行う。
 (ステップS9)インスタンス210(詳細には、ジョブ実行エージェント211)は、ジョブ実行要求により、ジョブを実行する。これにより、ジョブ実行状態は、非実行から実行中に遷移する。
 ジョブの実行が完了した場合、ジョブ実行状態は、実行中から非実行に遷移する。また、インスタンス210は、ジョブの実行が完了した場合、ジョブ実行完了通知を管理装置100に送信する。ジョブ管理マネジャ110は、ジョブ実行完了通知を受け取り、ジョブ数を1つ減算する。
 (ステップS10)ジョブ管理マネジャ110は、ジョブ数が0であるため、インスタンス制御部120にインスタンス停止要求の送信を指示する。インスタンス制御部120は、インスタンス停止制御要求をサーバ200に送信する。
 (ステップS11)インスタンス制御部230は、インスタンス210を停止する。これにより、インスタンス状態は、起動状態から停止中に遷移する。そして、インスタンス210の停止が完了した場合、インスタンス状態は、停止中から停止状態に遷移する。インスタンス制御部230は、インスタンス停止完了通知を管理装置100に送信する。
 なお、管理装置100が家電機器である場合、管理装置100は、定期的に、インスタンスの状態要求をサーバ200に送信することで、インスタンス210が停止状態であることを検出してもよい。インスタンス210が停止状態であることが検出された場合、管理装置100は、インスタンスの停止が完了したことを検出する。
 また、ジョブ管理マネジャ110は、ジョブ数が0である場合、インスタンス制御部120にインスタンス廃棄要求の送信を指示してもよい。そして、インスタンス制御部120は、インスタンス廃棄制御要求をサーバ200に送信する。これにより、インスタンス210は、廃棄される。
 図5は、ジョブ実行システムで実行される処理のシーケンス図である。図5は、図4で実行された処理をシーケンス図で表したものである。
 (ステップST101)管理装置100は、インスタンス起動制御要求をサーバ200に送信する。
 (ステップST102)サーバ200は、インスタンス起動完了通知を管理装置100に送信する。
 (ステップST103)管理装置100は、ジョブで用いられるデータをサーバ200に送信する。
 (ステップST104)管理装置100は、ジョブ実行要求をサーバ200に送信する。
 (ステップST105)サーバ200は、ジョブ実行完了通知を管理装置100に送信する。
 ジョブ数が0になるまで、ステップST103~105が繰り返される。
 (ステップST106)管理装置100は、インスタンス停止制御要求をサーバ200に送信する。
 (ステップST107)サーバ200は、インスタンス停止完了通知を管理装置100に送信する。
 図6は、ジョブ実行システムにおけるタイムラインの例(その2)を示す図である。図6の処理は、ステップS21,22が実行される点が図4の処理と異なる。そのため、図6では、ステップS21,22を説明する。そして、ステップS21,22以外の処理の説明は、省略する。
 ステップS8の後の状況は、次の通りである。インスタンス状態は、起動状態である。ジョブ実行状態は、実行中である。管理装置100とサーバ200とは通信可能状態であるため、接続状態は、接続中である。
 ここで、ユーザは、管理装置100の電源をOFFにする。これにより、管理装置100との接続状態は、非接続状態に遷移する。なお、非接続状態への遷移は、ネットワーク10の障害でも起こる。
 (ステップS21)監視部220は、PINGコマンドを用いて、管理装置100との接続状態を監視する。例えば、監視部220は、PINGコマンドに対する応答を受信できない場合、非接続状態であると判定する。
 (ステップS22)インスタンス制御部230は、インスタンス210の停止を実行する。これにより、インスタンス状態は、起動状態から停止中に遷移する。そして、インスタンス210の停止が完了した場合、インスタンス状態は、停止中から停止状態に遷移する。
 サーバ200は、管理装置100との接続状態が非接続状態である場合、インスタンス210を停止する。これにより、起動状態における料金の発生が止まる。または、サーバ200は、接続状態が非接続状態である場合、インスタンス210を廃棄する。これにより、起動状態における料金の発生が止まる。よって、実施の形態によれば、サーバ200は、コストを抑制することができる。
 10 ネットワーク、 100 管理装置、 101 プロセッサ、 102 揮発性記憶装置、 103 不揮発性記憶装置、 110 ジョブ管理マネジャ、 120 インスタンス制御部、 130 通知部、 200 サーバ、 210 インスタンス、 211 ジョブ実行エージェント、 220 監視部、 230 インスタンス制御部。

Claims (5)

  1.  管理装置が送信した、ジョブの実行要求を示すジョブ実行要求を受信する情報処理装置であって、
     前記ジョブ実行要求が示す前記ジョブを実行するインスタンスと、
     前記管理装置との接続状態を監視する監視部と、
     前記インスタンスが動作中又は動作可能状態であり、かつ前記接続状態が非接続状態である場合、前記インスタンスの停止又は前記インスタンスの廃棄を実行するインスタンス制御部と、
     を有する、
     情報処理装置。
  2.  前記監視部は、前記管理装置が送信した、前記インスタンスが稼働できる稼働時間を示す第1のインスタンス稼働時間に基づいて、前記稼働時間が経過するまでの間に、次のインスタンス稼働時間である第2のインスタンス稼働時間を受信しない場合、前記接続状態が非接続状態であると判定する、
     請求項1に記載の情報処理装置。
  3.  前記インスタンスは、前記監視部と前記インスタンス制御部とのうちの少なくとも1つを含む、
     請求項1又は2に記載の情報処理装置。
  4.  ジョブの実行要求を示すジョブ実行要求を送信する管理装置と、
     前記ジョブ実行要求を受信する情報処理装置と、
     を含み、
     前記情報処理装置は、
     前記ジョブ実行要求が示す前記ジョブを実行するインスタンスと、
     前記管理装置との接続状態を監視する監視部と、
     前記インスタンスが動作中又は動作可能状態であり、かつ前記接続状態が非接続状態である場合、前記インスタンスの停止又は前記インスタンスの廃棄を実行するインスタンス制御部と、
     を有する、
     ジョブ実行システム。
  5.  管理装置が送信した、ジョブの実行要求を示すジョブ実行要求を受信する情報処理装置が、
     前記管理装置との接続状態を監視し、
     前記ジョブ実行要求が示す前記ジョブを実行するインスタンスが動作中又は動作可能状態であり、かつ前記接続状態が非接続状態である場合、前記インスタンスの停止又は前記インスタンスの廃棄を実行する、
     制御方法。
PCT/JP2021/024736 2021-06-30 2021-06-30 情報処理装置、ジョブ実行システム、及び制御方法 WO2023276040A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
DE112021007903.4T DE112021007903T5 (de) 2021-06-30 2021-06-30 Informationsverarbeitungsvorrichtung, auftragsausführungs-system und steuerungsverfahren
PCT/JP2021/024736 WO2023276040A1 (ja) 2021-06-30 2021-06-30 情報処理装置、ジョブ実行システム、及び制御方法
JP2023531237A JP7479573B2 (ja) 2021-06-30 2021-06-30 情報処理装置、ジョブ実行システム、及び制御方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2021/024736 WO2023276040A1 (ja) 2021-06-30 2021-06-30 情報処理装置、ジョブ実行システム、及び制御方法

Publications (1)

Publication Number Publication Date
WO2023276040A1 true WO2023276040A1 (ja) 2023-01-05

Family

ID=84691633

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2021/024736 WO2023276040A1 (ja) 2021-06-30 2021-06-30 情報処理装置、ジョブ実行システム、及び制御方法

Country Status (3)

Country Link
JP (1) JP7479573B2 (ja)
DE (1) DE112021007903T5 (ja)
WO (1) WO2023276040A1 (ja)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008165637A (ja) * 2006-12-28 2008-07-17 Hitachi Ltd サーバ仮想化環境における系切り替え方法及び計算機システム
JP2010224914A (ja) * 2009-03-24 2010-10-07 Ntt Data Corp インスタンス管理システム及びコンピュータプログラム
JP2018116326A (ja) * 2017-01-16 2018-07-26 富士ゼロックス株式会社 情報処理装置及び情報処理システム

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014186416A (ja) 2013-03-22 2014-10-02 Hitachi Solutions Ltd ジョブ運用管理システム、ジョブ運用管理方法およびジョブ管理装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008165637A (ja) * 2006-12-28 2008-07-17 Hitachi Ltd サーバ仮想化環境における系切り替え方法及び計算機システム
JP2010224914A (ja) * 2009-03-24 2010-10-07 Ntt Data Corp インスタンス管理システム及びコンピュータプログラム
JP2018116326A (ja) * 2017-01-16 2018-07-26 富士ゼロックス株式会社 情報処理装置及び情報処理システム

Also Published As

Publication number Publication date
JP7479573B2 (ja) 2024-05-08
DE112021007903T5 (de) 2024-04-18
JPWO2023276040A1 (ja) 2023-01-05

Similar Documents

Publication Publication Date Title
US10628219B2 (en) Fuzzy management of high-volume concurrent processes
US10645152B2 (en) Information processing apparatus and memory control method for managing connections with other information processing apparatuses
TWI344090B (en) Management of a scalable computer system
US20160036924A1 (en) Providing Higher Workload Resiliency in Clustered Systems Based on Health Heuristics
US8543692B2 (en) Network system
CA3168286A1 (en) Data flow processing method and system
JP5948933B2 (ja) ジョブ継続管理装置、ジョブ継続管理方法、及び、ジョブ継続管理プログラム
CN111680015B (zh) 文件资源处理方法、装置、设备和介质
US20140215041A1 (en) Workload migration determination at multiple compute hierarchy levels
JP6024138B2 (ja) クラスタシステム
JP2013218449A (ja) クラウドコンピューティングシステム
WO2012041239A1 (zh) 一种输入工具调用的系统、方法及一种代理设备
WO2023276040A1 (ja) 情報処理装置、ジョブ実行システム、及び制御方法
US10193744B1 (en) Mass restoration of enterprise business services following service disruption
JP5329589B2 (ja) トランザクション処理システム及びトランザクション処理システムの動作方法
US10789129B1 (en) Rolling restoration of enterprise business services following service disruption
WO2012132101A1 (ja) 情報処理装置、および障害対応プログラム
CN106102126B (zh) 一种接入控制方法及装置
US20230289203A1 (en) Server maintenance control device, server maintenance system, server maintenance control method, and program
CN114116203A (zh) 一种资源调用控制方法、资源调用控制装置及存储介质
CN108234215B (zh) 一种网关的创建方法、装置、计算机设备及存储介质
JP5691248B2 (ja) タスク引継プログラム、処理装置及びコンピュータ・システム
CN111031123A (zh) Spark任务的提交方法、系统、客户端及服务端
CN113407384B (zh) peer节点指令传输的方法、装置、代理服务器及存储介质
JP2004151824A (ja) ネットワークシステム

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 21948347

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2023531237

Country of ref document: JP

Kind code of ref document: A

WWE Wipo information: entry into national phase

Ref document number: 18570080

Country of ref document: US

WWE Wipo information: entry into national phase

Ref document number: 112021007903

Country of ref document: DE