WO2009113172A1 - ジョブ割当装置、ジョブ割当装置の制御プログラム及び制御方法 - Google Patents

ジョブ割当装置、ジョブ割当装置の制御プログラム及び制御方法 Download PDF

Info

Publication number
WO2009113172A1
WO2009113172A1 PCT/JP2008/054639 JP2008054639W WO2009113172A1 WO 2009113172 A1 WO2009113172 A1 WO 2009113172A1 JP 2008054639 W JP2008054639 W JP 2008054639W WO 2009113172 A1 WO2009113172 A1 WO 2009113172A1
Authority
WO
WIPO (PCT)
Prior art keywords
job
assigned
processes corresponding
allocation
assignment
Prior art date
Application number
PCT/JP2008/054639
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 JP2010502675A priority Critical patent/JP5218548B2/ja
Priority to PCT/JP2008/054639 priority patent/WO2009113172A1/ja
Publication of WO2009113172A1 publication Critical patent/WO2009113172A1/ja
Priority to US12/853,665 priority patent/US20100306780A1/en

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]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/505Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the load
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/508Monitor

Definitions

  • the present invention relates to a job assignment device that assigns jobs to calculation nodes in a cluster system, a control program for the job assignment device, and a control method.
  • a cluster system is known.
  • a processing unit for executing a program on a computing node that processes a job is called a process.
  • jobs input in the cluster system include a parallel job composed of a plurality of processes and a sequential job composed of one process.
  • the cluster system includes a login node that is a computer for a user to log in and submit a job, and a calculation node that is a computer for processing the job.
  • cluster systems have become a configuration with several thousand computing nodes.
  • the cluster system improves the operation rate of the entire system by processing jobs submitted by many users on a computational node with a low load.
  • the CPU usage rate of the calculation node or the number of processes assigned to the calculation node is used, but the CPU usage rate may be transient depending on the load level. For example, even though a large number of jobs are submitted to the computation node, it is possible that more jobs may be submitted because the CPU usage rate during measurement happens to be low. For this reason, the number of processes assigned to the computation node is often used as an index of load.
  • FIG. 9 is a diagram showing a conventional cluster system.
  • FIG. 10 is a diagram showing another conventional cluster system.
  • the conventional cluster system includes a management node 30, a login node 40, and a calculation node 50.
  • the management node 30 includes a load information DB 31.
  • the load information DB 31 manages the calculation node 50 and the number of processes assigned to the calculation node 50.
  • the conventional login node 40 requests the management node 30 for a calculation node 50 having a low load.
  • the management node 30 refers to the load information DB 31 and selects the calculation node 50 having the smallest number of allocated processes, notifies the selected calculation node 50 to the login node 40, and notifies the calculated calculation node.
  • the load information DB 31 is updated for 50 processes.
  • the management node 30 in the conventional cluster system can select and notify the login node 40 of the computing node 50 with the least load.
  • FIG. 10 another conventional cluster system shown in FIG. 10 includes a NAS (Network Attached Storage) 60, a login node 70, and a calculation node 50.
  • the conventional system shown in FIG. 2 is provided with a NAS 60 and a login node 70 that performs an operation different from that of the login node 40.
  • the NAS 60 includes a load information DB 61 that manages the number of processes of the computing node 50, and the login node 70 refers to the load information DB 61 and has the smallest number of processes allocated.
  • the calculation node 50 is selected, and the selected calculation node 50 is updated.
  • the login node 70 in another conventional cluster system can select the computing node 50 with the least load by referring to the load information DB 61 of the NAS 60.
  • load distribution is efficiently performed in a distributed online system in which a plurality of computers are connected by a network, the same service is provided by a plurality of computers, and load distribution is performed.
  • a load distribution method for a distributed online system that enables the system operation and flexibility in system operation (see, for example, Patent Document 1). JP 7-319834 A
  • the other conventional cluster system shown in FIG. 10 cannot distribute the load when the NAS 60 having the load distribution DB 61 or the management node or file server related to the other conventional cluster system goes down. There is a problem that reliability is lowered.
  • the present invention has been made to solve the above-described problems, and can allocate a processing load related to system management and can realize a highly reliable system.
  • Job allocation apparatus and job allocation apparatus It is an object to provide a control program and a control method.
  • control program is a program that is connected to a job processing apparatus that processes a job and that can be executed by a computer in a job allocation apparatus that assigns the job to the job processing apparatus, and accepts the job A job accepting step, a job assigning step for assigning the job accepted by the job accepting step to a job processing device having a predetermined number of processing units assigned to the job processing device, the job processing device, A management step that associates and manages a predetermined number of processing units of a job assigned by the job assignment step, and a job is assigned by the job assignment step a predetermined number of processing units of the job assigned by the job assignment step.
  • the job assignment device is connected to a plurality of job processing devices that process jobs, and receives a job by a job assignment device that assigns jobs to the plurality of job processing devices.
  • an allocating unit for allocating to a job processing device having the smallest number of processes, which is the number of processing units in the job processing device corresponding to an already allocated job, and each of the plurality of job processing devices.
  • the management unit manages the management unit that associates and manages the number of processes corresponding to the jobs allocated to each of the plurality of job processing devices by the allocation unit, and the job processing device to which the job is allocated by the allocation unit.
  • An adder for adding the number of processes that the number of processes corresponding to the job which the allocation unit is allocated characterized by having a notifying unit for notifying other job assigning apparatus for assigning a job to the job processing apparatus.
  • control method is connected to a plurality of job processing devices that process a job, and the job allocation device in the control method of a job allocation device that allocates a job to any one of the plurality of job processing devices.
  • An assigning step assigned to a device a management step for managing each of the plurality of job processing devices in association with the number of processes corresponding to the job assigned to each of the plurality of job processing devices by the assigning step; For job processing devices to which jobs are assigned in the assignment step A first addition step of adding the number of processes corresponding to the job allocated by the allocation step to the number of processes associated with the job by the management step; and a process corresponding to the job allocated by the allocation step A first notification step of notifying the number to other job allocation apparatuses that allocate jobs to the job processing apparatus is executed.
  • FIG. 1 is a diagram showing a cluster system according to the present embodiment.
  • FIG. 2 is a diagram showing a configuration of a login node in the cluster system according to the present embodiment.
  • FIG. 3 is a diagram showing a process table.
  • FIG. 4 is a diagram showing the configuration of the computation nodes in the cluster system according to the present embodiment.
  • the cluster system includes a login node 1 (job allocation apparatus, other job allocation apparatus) and a calculation node 2 (job processing apparatus).
  • the user logs in to the login node 1 using, for example, the DNS round robin function.
  • Some of the calculation nodes 2 execute parallel jobs or sequential jobs, and the login node 1 determines the calculation node 2 to which the job is to be submitted based on the job type and the load of the calculation node 2.
  • the login node 1 includes a system management mechanism 10, a job control mechanism 11, a CPU 117, a memory 118, and a network interface 119.
  • the system management mechanism 10 of the login node 1 includes a node monitoring unit 101.
  • the job control mechanism 11 includes a job reception unit 111 (reception unit), a job submission end unit 112 (subtraction unit), a load information update unit 113 (management unit, update unit, subtraction unit), and a node allocation unit 114 (allocation unit).
  • the node monitoring unit 101 monitors the state of the login node 1 (whether or not it is activated) and notifies other login nodes 1 and calculation nodes 2 of changes in the state of the login node 1.
  • the job reception unit 111 authenticates the user of the login node 1 and receives the number of processes, the number of nodes, and the program name of the job requested by the authenticated user.
  • the job submission end unit 112 requests the assigned computation node to generate and execute a job process.
  • the load information update unit 113 refers to and updates a load information DB 116 described later.
  • the node allocation unit 114 selects the calculation node 2 having the smallest number of processes of the calculation node 2 in the load information DB 116.
  • the RAS unit 115 updates the load information DB 116 based on the information of the other login node 1 transmitted by the system management mechanism 10 of the other login node 1.
  • the load information DB manages the process table shown in FIG.
  • the memory 116 is a storage device such as a ROM, RAM, or flash memory that stores the above-described units as programs.
  • the CPU 117 is an arithmetic unit that executes each unit stored in the memory 116 as a program.
  • the network interface 119 is an interface for the login node 1 to connect to the network. Further, the system management mechanism 10 may be hardware. In addition, notification and transmission / reception in the login node 1 are made through the network interface 119.
  • the process table manages the login node 1 constituting the cluster system and the calculation node 2 constituting the cluster system in association with each other.
  • the calculation nodes 2 are arranged in ascending order, but in order to reduce the processing for selecting the calculation node 2 having the smallest number of processes in the login node 1, the number of assigned processes is in ascending order.
  • the calculation node 2 may be sorted.
  • the computation node 2 includes a system management mechanism 20 and a job control mechanism 21 as shown in FIG.
  • the system management mechanism 20 includes a node monitoring unit 201.
  • the job control mechanism 21 includes a job execution unit 211 and a RAS unit 212.
  • the node monitoring unit 201 monitors the state of the login node 1 and notifies the other login node 1 and the calculation node 2 of changes in the state of the login node 1.
  • the job execution unit 211 receives a process generation request from the login node 1, generates a process, and executes the process.
  • the RAS unit 212 receives information related to a change in the state of another computation node.
  • the memory 214 is a storage device such as a ROM, a RAM, or a flash memory that stores the above-described units as programs.
  • the CPU 213 is an arithmetic device that executes each unit stored in the memory 214 as a program.
  • the network interface 215 is an interface for the calculation node 2 to connect to the network. In addition, monitoring, notification, and transmission / reception in the computation node 2 are performed via the network interface 215.
  • FIG. 5 is a flowchart showing the operation of job input processing.
  • the load information update unit 113 refers to the process table of the load information DB
  • the allocating unit 114 selects a computing node 2 with a small number of processes based on the referenced process table (S102, job allocation step), and allocates the submitted job to the selected computing node 2 (S103, job allocation) Step)
  • the node allocation unit 114 determines how many processes are allocated to the calculation node based on the submitted job, and adds the number of processes allocated to the selected calculation node 2 in the process table of the load information DB. (S104, first addition step).
  • the node assignment unit 114 notifies the other login node 1 of the assigned node information including the assigned calculation node 2 and the number of processes assigned to the calculation node 2 (S105, first notification step).
  • the node allocation unit 114 of the other login node 1 notified of the allocation node information from the login node 1 receives the allocation node information (S106, first reception step), and allocates to the calculation node 2 based on the received allocation node information.
  • the number of processes obtained is updated (S107, first update step).
  • the login node 1 shares the number of processes assigned to the computation node 2 by notifying the other login nodes 1 of the number of processes assigned to the computation node 2 that has submitted the job and the computation node 2. can do.
  • the process number of the job assigned to the calculation node 2 is added to the process table.
  • the process number of the job input to the calculation node 2 may be added to the process table.
  • This job end process is a process performed at the login node when the job input to the computation node by the above-described job input process ends.
  • FIG. 6 is a flowchart showing the operation of job end processing.
  • the load information update unit 113 stores the load information DB 116. Update (S202, second subtraction step). Specifically, the number of finished processes is subtracted from the number of processes of the assigned calculation node 2.
  • the node allocation unit 114 of the login node 1 uses, as allocation release node information, the calculation node 2 that has finished the submitted job and the number of processes allocated to the calculation node 2 with respect to the other login node 1. Notification is made (S203, second notification step).
  • the node allocation unit 114 of another login node 1 notified of the allocation release node information from the login node 1 receives the allocation release node information (S204, second reception step), and the load information update unit 113 receives this allocation release node information.
  • the load information DB 116 is updated based on (S205, third subtraction step). Specifically, the number of processes of the calculation node 2 indicated in the received allocation release node information is subtracted from the process table.
  • the login node 1 notifies the other login node 1 of the calculation node 2 that has completed the job and the number of processes assigned to the calculation node 2.
  • the number of processes terminated in the computation node 2 can be shared.
  • This down detection process is a process of detecting a login node that is down in the state change of another login node (whether or not it is activated).
  • FIG. 7 is a flowchart showing the operation of the down detection process.
  • the calculation node when the login node to which the process is assigned goes down, the calculation node forcibly terminates the process assigned to the down login node. This is because when the login node goes down, the session is disconnected and there is no point in continuing the execution of the process at the computation node.
  • the node monitoring unit 101 of the login node 1 determines whether or not a down notification (operation stop information) indicating that the other login node 1 is down is received from the node monitoring unit 101 of the other login node 1. Down is detected (S301, operation stop information receiving step).
  • the load information update unit 113 of the login node 1 updates the load information DB (S302, first subtraction step). Specifically, the number of processes assigned to the calculation node 2 by the down login node 1 is subtracted by clearing the number of processes assigned to the calculation node 2 of the other login node 1 that has notified down in the process table. .
  • the node monitoring unit 101 of the login node 1 determines again whether the down notification is received from the node monitoring unit 101 of the other login node 1 ( S301).
  • the login node 1 grasps the number of processes assigned to the calculation node 2 by clearing, in the process table, the number of processes assigned to the calculation node 2 by another login node 1 that has detected down. be able to.
  • This recovery process is a process executed when the down login node is activated.
  • FIG. 8 is a flowchart showing the operation of the recovery process.
  • the node monitoring unit 101 of the login node 1 notifies the activation of the login node 1 to the node monitoring unit 101 of the other login node 1, and the RAS unit 115 requests allocation information from the other login node 1.
  • This allocation information is information indicating the number of processes allocated to the calculation node 1 in the cluster system by another login node 1.
  • the RAS unit 115 of the other login node 1 receives the notification of the activation of the login node 1, and the node allocation unit 114 receives a request for allocation information (S402). On the other hand, allocation information is transmitted (S403).
  • the node allocation unit 114 of the login node 1 receives the allocation information transmitted from the other login node 1 (S404, acquisition step), and based on the received allocation information. Then, the load information update unit 113 updates the process table of the load information DB (S405, second update step).
  • the login node 1 requests allocation information from other login nodes 1 at the time of recovery, and updates the process table based on the received allocation information, thereby grasping the number of processes allocated to the calculation node 2. can do.
  • the cluster system according to the present embodiment allows the login node 1 to include the load information DB, thereby managing the number of processes in the calculation node 2 and the database for referring to the load information. Do not need.
  • the cluster system according to the present embodiment realizes a highly reliable system without degrading the response of interactive processing by managing the number of processes and assigning processes to calculation nodes by the login node 1. can do.
  • the computer constituting the determination apparatus can be executed.
  • the recording medium readable by the computer an internal storage device such as a ROM or a RAM, a portable storage such as a CD-ROM, a flexible disk, a DVD disk, a magneto-optical disk, an IC card, etc. It includes a medium, a database holding a computer program, another computer and its database, and a transmission medium on a line.
  • a processing load related to system management can be distributed and a highly reliable system can be realized.

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multi Processors (AREA)

Abstract

 ジョブを処理する複数のジョブ処理装置と接続され、複数のジョブ処理装置のうち、いずれかのジョブ処理装置にジョブを割り当てるジョブ割当装置の制御プログラムにおいて、ジョブ割当装置に、ジョブを受け付ける受付ステップと、受け付けたジョブを、複数のジョブ処理装置のうち、既に割り当てられたジョブに対応するジョブ処理装置における処理単位数であるプロセス数が最小であるジョブ処理装置に割り当てる割当ステップと、複数のジョブ処理装置のそれぞれと、割当ステップにより複数のジョブ処理装置のそれぞれに割り当てられたジョブに対応するプロセス数を対応付けて管理する管理ステップと、割当ステップによりジョブが割り当てられたジョブ処理装置について、管理ステップによりジョブに対応付けられたプロセス数に、割当ステップにより割り当てられたジョブに対応するプロセス数を加算する第1加算ステップと、割当ステップにより割り当てられたジョブに対応するプロセス数を、ジョブ処理装置にジョブを割り当てる他のジョブ割当装置に通知する第1通知ステップとを実行させることを特徴とする。

Description

ジョブ割当装置、ジョブ割当装置の制御プログラム及び制御方法
 本発明は、クラスタシステムにおける計算ノードにジョブを割り当てるジョブ割当装置、ジョブ割当装置の制御プログラム及び制御方法に関するものである。
 従来、多くの利用者がTSS(Time Sharing System:時分割システム)のような対話型処理で1つの計算処理(以下、この計算処理をジョブと呼ぶ)を1台または複数台のコンピュータ上で計算させるクラスタシステムが知られている。このようなクラスタシステムにおいて、ジョブを処理する計算ノードでプログラムを実行する処理単位をプロセスと呼ぶ。例えば、クラスタシステムにおいて投入されるジョブは、複数のプロセスからなる並列ジョブと、1プロセスからなる逐次ジョブがある。また、クラスタシステムは、利用者がログインしてジョブを投入するためのコンピュータであるログインノードと、ジョブを処理するコンピュータである計算ノードから構成される。また、近年のネットワーク性能の向上により、クラスタシステムは、計算ノードが数千台という規模の構成になってきている。
 また、クラスタシステムは、多くの利用者により投入されるジョブを負荷の低い計算ノードに処理させることにより、システム全体の稼働率を向上させている。計算ノードの負荷の指標としては、計算ノードのCPU使用率、または計算ノードに割り当てられたプロセス数が用いられるが、CPU使用率は負荷の高低が一過性である場合がある。例えば、計算ノードに対してジョブが多く投入されているにも関わらず、測定時のCPU使用率がたまたま低いためにさらにジョブが投入されることがあり得る。そのため、計算ノードに割り当てられたプロセス数を負荷の指標とすることが多い。
 以下、上述した計算ノードに割り当てられたプロセス数を負荷の指標とするクラスタシステムについて説明する。図9は、従来のクラスタシステムを示す図である。また、図10は他の従来のクラスタシステムを示す図である。
 図9に示すように、従来のクラスタシステムは、管理ノード30、ログインノード40、計算ノード50からなる。また、管理ノード30は、負荷情報DB31を備えるものである。負荷情報DB31は、計算ノード50と計算ノード50に割り当てられたプロセス数を管理するものである。また、従来のクラスタシステムにおいて、従来のログインノード40は、管理ノード30に対して負荷の低い計算ノード50を要求する。これに対して管理ノード30は、負荷情報DB31を参照し、割り当てられたプロセス数が最も少ない計算ノード50を選択し、選択した計算ノード50をログインノード40に対して通知し、通知した計算ノード50のプロセス数に関して負荷情報DB31を更新する。
 上述のように、従来のクラスタシステムにおける管理ノード30は、ログインノード40に負荷が最も少ない計算ノード50を選択して通知することができる。
 また、図10に示す他の従来のクラスタシステムは、NAS(Network Attached Storage)60、ログインノード70、計算ノード50を備えるものであり、図9に示す従来のシステムとは、管理ノード30の代わりにNAS60を備え、またログインノード40とは異なる動作を実行するログインノード70を備える点が異なる。
 この他の従来のクラスタシステムにおいて、NAS60は、計算ノード50のプロセス数を管理する負荷情報DB61を備えるものであり、ログインノード70は、負荷情報DB61を参照し、割り当てられたプロセス数が最も少ない計算ノード50を選択し、選択した計算ノード50に関して更新を行うものである。
 上述のように、他の従来のクラスタシステムにおけるログインノード70は、NAS60の負荷情報DB61を参照することにより、負荷が最も少ない計算ノード50を選択することができる。
 なお、本発明の関連ある従来技術として、複数の計算機をネットワークで結合し、複数の計算機で同じサービスを提供し、負荷分散を行っている分散オンラインシステムにおいて、処理要求を効率的に負荷分散することを可能とし、また、システム運用に柔軟性を持たせることを可能とする分散オンラインシステムの負荷分散方式が知られている(例えば、特許文献1参照)。
特開平7-319834号公報
 しかしながら、図9に示した従来のクラスタシステムは、計算ノード50、ログインノード40が多い場合、管理ノード30や従来のクラスタシステムに係るファイルサーバへの負荷が高くなり、対話型処理のレスポンスが低下し、システム全体の性能を低下させてしまうという問題がある。
 また、図10に示した他の従来のクラスタシステムは、負荷分散DB61を備えたNAS60、または他の従来のクラスタシステムに係る管理ノード、ファイルサーバがダウンした場合、負荷を分散することができず、信頼性を低下させてしまうという問題がある。
 本発明は上述した問題点を解決するためになされたものであり、システム管理に係る処理負荷を分散することができ、且つ信頼性の高いシステムを実現することができるジョブ割当装置、ジョブ割当装置の制御プログラム及び制御方法を提供することを目的とする。
 上述した課題を解決するため、制御プログラムは、ジョブを処理するジョブ処理装置と接続され、前記ジョブ処理装置にジョブを割り当てるジョブ割当装置においてコンピュータに実行させることができるプログラムであって、ジョブを受け付けるジョブ受付ステップと、前記ジョブ受付ステップにより受け付けられたジョブを該ジョブ処理装置に割り当てられたジョブの所定の処理単位数が最小であるジョブ処理装置に割り当てるジョブ割り当てステップと、前記ジョブ処理装置と前記ジョブ割り当てステップにより割り当てられたジョブの所定の処理単位数とを対応付けて管理する管理ステップと、前記ジョブ割り当てステップにより割り当てられたジョブの所定の処理単位数を前記ジョブ割り当てステップによりジョブが割り当てられたジョブ処理装置と前記管理ステップにより対応付けられたジョブの所定の処理単位数に加算する第1加算ステップと、前記ジョブ割り当てステップにより割り当てられたジョブの所定の処理単位数を前記ジョブ処理装置にジョブを割り当てる他のジョブ割当装置に通知する第1通知ステップをコンピュータに実行させる。
 また、ジョブ割当装置は、ジョブを処理する複数のジョブ処理装置と接続され、前記複数のジョブ処理装置にジョブを割り当てるジョブ割当装置により、ジョブを受け付ける受付部と、前記受け付けたジョブを、前記複数のジョブ処理装置のうち、既に割り当てられたジョブに対応する前記ジョブ処理装置における処理単位数であるプロセス数が最小であるジョブ処理装置に割り当てる割当部と、前記複数のジョブ処理装置のそれぞれと、前記割当部が前記複数のジョブ処理装置のそれぞれに割り当てたジョブに対応するプロセス数を対応付けて管理する管理部と、前記割当部によりジョブが割り当てられたジョブ処理装置について、前記管理部が管理する前記ジョブに対応付けられたプロセス数に、前記割当部が割り当てたジョブに対応するプロセス数を加算する加算部と、前記割当部が割り当てたジョブに対応するプロセス数を、前記ジョブ処理装置にジョブを割り当てる他のジョブ割当装置に通知する通知部を有することを特徴とする。
 また、制御方法は、ジョブを処理する複数のジョブ処理装置と接続され、前記複数のジョブ処理装置のうち、いずれかのジョブ処理装置にジョブを割り当てるジョブ割当装置の制御方法において、前記ジョブ割当装置に、ジョブを受け付ける受付ステップと、前記受け付けたジョブを、前記複数のジョブ処理装置のうち、既に割り当てられたジョブに対応する前記ジョブ処理装置における処理単位数であるプロセス数が最小であるジョブ処理装置に割り当てる割当ステップと、前記複数のジョブ処理装置のそれぞれと、前記割当ステップにより前記複数のジョブ処理装置のそれぞれに割り当てられたジョブに対応するプロセス数を対応付けて管理する管理ステップと、前記割当ステップによりジョブが割り当てられたジョブ処理装置について、前記管理ステップにより前記ジョブに対応付けられたプロセス数に、前記割当ステップにより割り当てられたジョブに対応するプロセス数を加算する第1加算ステップと、前記割当ステップにより割り当てられたジョブに対応するプロセス数を、前記ジョブ処理装置にジョブを割り当てる他のジョブ割当装置に通知する第1通知ステップを実行させることを特徴とする。
本実施の形態に係るクラスタシステムを示す図である。 本実施の形態に係るクラスタシステムにおけるログインノードの構成を示す図である。 プロセステーブルを示す図である。 本実施の形態に係るクラスタシステムにおける計算ノードの構成を示す図である。 ジョブ投入処理の動作を示すフローチャートである。 ジョブ終了処理の動作を示すフローチャートである。 ダウン検出処理の動作を示すフローチャートである。 復旧処理の動作を示すフローチャートである。 従来のクラスタシステムを示す図である。 他の従来のクラスタシステムを示す図である。
 以下、本発明の実施の形態について図面を参照しつつ説明する。
 まず、本実施の形態に係るクラスタシステムの構成について説明する。図1は、本実施の形態に係るクラスタシステムを示す図である。また、図2は、本実施の形態に係るクラスタシステムにおけるログインノードの構成を示す図である。また、図3は、プロセステーブルを示す図である。また、図4は、本実施の形態に係るクラスタシステムにおける計算ノードの構成を示す図である。
 図1に示すように、本実施の形態に係るクラスタシステムは、ログインノード1(ジョブ割当装置、他のジョブ割当装置)、計算ノード2(ジョブ処理装置)により構成されるものである。このクラスタシステムにおいて、ユーザは例えばDNSラウンドロビン機能を使ってログインノード1にログインする。計算ノード2は並列ジョブまたは逐次ジョブを実行するものがあり、ログインノード1はジョブの種類、計算ノード2の負荷に基づいてジョブを投入する計算ノード2を決定する。
 また、ログインノード1は、図2に示すようにシステム管理機構10、ジョブ制御機構11、CPU117、メモリ118、ネットワークインターフェイス119を備えるものである。ログインノード1のシステム管理機構10は、ノード監視部101を備えるものである。また、ジョブ制御機構11は、ジョブ受付部111(受付部)、ジョブ投入終了部112(減算部)、負荷情報更新部113(管理部、更新部、減算部)、ノード割り当て部114(割当部、通知部、加算部、更新部、受信部、取得部)、RAS(Reliability Availability Serviceability:信頼性、可用性及び保守性)部115(受信部、減算部)、負荷情報DB116を備えるものである。
 以下、システム管理機構10及びジョブ制御機構11を構成する各部の概要について説明する。なお、各部の詳細については後述するログインノード1の動作により説明する。ノード監視部101は、ログインノード1の状態(起動しているか否か)を監視し、ログインノード1の状態の変化を他のログインノード1及び計算ノード2へ通知するものである。また、ジョブ受付部111は、ログインノード1のユーザを認証し、認証したユーザが依頼するジョブのプロセス数、ノード数、プログラム名を受け取るものである。また、ジョブ投入終了部112は、割り当てられた計算ノードに対してジョブのプロセスの生成及び実行を依頼するものである。また、負荷情報更新部113は、後述する負荷情報DB116に対して参照、更新するものである。また、ノード割り当て部114は、負荷情報DB116における計算ノード2のプロセス数が最も少ない計算ノード2を選択するものである。また、RAS部115は、他のログインノード1のシステム管理機構10により送信される他のログインノード1の情報に基づいて、負荷情報DB116を更新するものである。また、負荷情報DBは、図3に示すプロセステーブルを管理するものである。また、メモリ116は、上述した各部をプログラムとして格納するROMまたはRAMもしくはフラッシュメモリ等の記憶装置である。また、CPU117は、プログラムとしてメモリ116に格納された各部を実行する演算装置である。また、ネットワークインターフェイス119は、ログインノード1がネットワークに接続するためのインターフェイスである。また、システム管理機構10はハードウェアであっても良い。また、ログインノード1における通知及び送受信はネットワークインターフェイス119を介してなされるものとする。
 ここでプロセステーブルについて説明する。プロセステーブルは、図3に示すようにクラスタシステムを構成するログインノード1と、クラスタシステムを構成する計算ノード2とをそれぞれ対応付けて管理するものである。なお、図3において計算ノード2は昇順で並べられているが、ログインノード1においてプロセス数が最小である計算ノード2を選択するための処理を軽減させるために、割り当てられたプロセス数が小さい順に計算ノード2をソートしても良い。
 また、計算ノード2は、図4に示すように、システム管理機構20、ジョブ制御機構21を備えるものである。システム管理機構20は、ノード監視部201を備えるものである。また、ジョブ制御機構21は、ジョブ実行部211、RAS部212を備えるものである。
 以下、システム管理機構10及びジョブ制御機構11を構成する各部の概要について説明する。ノード監視部201は、ログインノード1の状態を監視し、ログインノード1の状態の変化を他のログインノード1及び計算ノード2へ通知するものである。また、ジョブ実行部211は、ログインノード1からプロセス生成依頼を受信し、プロセスを生成し、プロセスを実行するものである。また、RAS部212は、他の計算ノードの状態の変化に関する情報を受信するものである。また、メモリ214は、上述した各部をプログラムとして格納するROMまたはRAMもしくはフラッシュメモリ等の記憶装置である。また、CPU213は、プログラムとしてメモリ214に格納された各部を実行する演算装置である。また、ネットワークインターフェイス215は、計算ノード2がネットワークに接続するためのインターフェイスである。また、計算ノード2における監視、通知及び送受信はネットワークインターフェイス215を介してなされるものとする。
 次に、本実施の形態に係るクラスタシステムの動作について説明する。まず、ジョブ投入処理について説明する。図5は、ジョブ投入処理の動作を示すフローチャートである。
 まず、ログインノード1のジョブ受付部111が、対話型処理によりユーザが投入したジョブを受け付けると(S101、ジョブ受け付けステップ)、負荷情報更新部113は、負荷情報DBのプロセステーブルを参照し、ノード割り当て部114は、参照されたプロセステーブルに基づいてプロセス数が少ない計算ノード2を選択し(S102、ジョブ割り当てステップ)、選択した計算ノード2に対して投入されたジョブを割り当て(S103、ジョブ割り当てステップ)、ノード割り当て部114は、投入されたジョブに基づいて計算ノードに何個プロセスを割り当てるかを決定し、負荷情報DBのプロセステーブルにおいて、選択した計算ノード2に割り当てたプロセス数を加算する(S104、第1加算ステップ)。
 次に、ノード割り当て部114は、割り当てた計算ノード2とこの計算ノード2に割り当てたプロセス数を含む割り当てノード情報を他のログインノード1に通知する(S105、第1通知ステップ)。
 ログインノード1から割り当てノード情報を通知された他のログインノード1のノード割り当て部114は割り当てノード情報を受信し(S106、第1受信ステップ)、受信した割り当てノード情報に基づいて計算ノード2に割り当てられたプロセス数を更新する(S107、第1更新ステップ)。
 上述したように、ログインノード1は、ジョブを投入した計算ノード2とこの計算ノード2に割り当てたプロセス数を他のログインノード1に通知することにより、計算ノード2に割り当てられたプロセス数を共有することができる。なお、図5において、計算ノード2に割り当てたジョブのプロセス数をプロセステーブルに加算したが、計算ノード2に投入したジョブのプロセス数をプロセステーブルに加算しても構わない。
 次に、ジョブ終了処理について説明する。このジョブ終了処理は、上述したジョブ投入処理により計算ノードに投入されたジョブが終了した場合にログインノードにおいてなされる処理である。図6は、ジョブ終了処理の動作を示すフローチャートである。
 まず、ログインノード1のジョブ投入終了部112が計算ノード2のジョブ実行部211から投入されたジョブの終了通知を受信すると(S201、第2減算ステップ)、負荷情報更新部113が負荷情報DB116を更新する(S202、第2減算ステップ)。具体的には終了したプロセスの数を割り当てた計算ノード2のプロセス数から減算する。
 次に、ログインノード1のノード割り当て部114は、他のログインノード1に対して、投入したジョブを終えた計算ノード2と、この計算ノード2に割り当てたプロセス数とを、割り当て解放ノード情報として通知する(S203、第2通知ステップ)。
 ログインノード1から割り当て解放ノード情報を通知された他のログインノード1のノード割り当て部114が割り当て解放ノード情報を受信し(S204、第2受信ステップ)、負荷情報更新部113がこの割り当て解放ノード情報に基づいて負荷情報DB116を更新する(S205、第3減算ステップ)。具体的には受信した割り当て解放ノード情報において示される計算ノード2のプロセス数をプロセステーブルから減算する。
 上述したように、ログインノード1は、計算ノード2において投入したジョブが終了すると、ジョブを終了した計算ノード2と、この計算ノード2に割り当てたプロセス数を他のログインノード1に通知することにより、計算ノード2において終了したプロセス数を共有することができる。
 次に、ダウン検出処理について説明する。このダウン検出処理は、他のログインノードの状態変化(起動しているか否か)において、ダウンしているログインノードを検出する処理である。図7は、ダウン検出処理の動作を示すフローチャートである。なお、本実施の形態において、計算ノードは、プロセスを割り当てたログインノードがダウンした場合、ダウンしたログインノードに割り当てられたプロセスを強制終了させるものとする。これは、ログインノードがダウンするとセッションが切れ、計算ノードでプロセスの実行を継続する意味がなくなるためである。
 まず、ログインノード1のノード監視部101は、他のログインノード1のノード監視部101より、他のログインノード1がダウンしたことを示すダウン通知(動作停止情報)を受信したかどうかを判断し、ダウンを検出する(S301、動作停止情報受信ステップ)。
 ダウン通知を受信した場合(S301,YES)、ログインノード1の負荷情報更新部113は、負荷情報DBを更新する(S302、第1減算ステップ)。具体的には、ダウンを通知した他のログインノード1の計算ノード2に割り当てたプロセス数をプロセステーブルにおいてゼロクリアすることで、ダウンしたログインノード1により計算ノード2に割り当てられたプロセス数を減算する。
 一方、ダウン通知を受信しなかった場合(S301,NO)、ログインノード1のノード監視部101は、再び他のログインノード1のノード監視部101より、ダウン通知を受信したかどうかを判断する(S301)。
 上述したように、ログインノード1は、ダウンを検出した他のログインノード1が計算ノード2に割り当てたプロセス数をプロセステーブルにおいてゼロクリアすることによって、計算ノード2に割り当てられているプロセス数を把握することができる。
 次に、復旧処理について説明する。この復旧処理は、ダウンしたログインノードが起動した際に実行される処理である。図8は、復旧処理の動作を示すフローチャートである。
 まず、ログインノード1のノード監視部101が他のログインノード1のノード監視部101に対してログインノード1の起動を通知するとともに、RAS部115が他のログインノード1に対して割り当て情報を要求する(S401、取得ステップ)。この割り当て情報は、他のログインノード1がクラスタシステムにおける計算ノード1に対して割り当てたプロセス数を示す情報である。
 次に、他のログインノード1のRAS部115がログインノード1の起動の通知を受信するとともに、ノード割り当て部114が割り当て情報の要求を受信し(S402)、割り当て情報を要求したログインノード1に対して、割り当て情報を送信する(S403)。
 他のログインノード1から割り当て情報が送信されると、ログインノード1のノード割り当て部114が他のログインノード1から送信された割り当て情報を受信し(S404、取得ステップ)、受信した割り当て情報に基づいて負荷情報更新部113が負荷情報DBのプロセステーブルを更新する(S405、第2更新ステップ)。
 上述したように、ログインノード1は、復旧時に他のログインノード1に割り当て情報を要求し、受信した割り当て情報に基づいてプロセステーブルを更新することにより、計算ノード2に割り当てられたプロセス数を把握することができる。
 以上説明した構成及び動作により、本実施の形態に係るクラスタシステムは、ログインノード1が負荷情報DBを備えることにより計算ノード2におけるプロセス数を管理するためのノード、負荷情報を参照するためのデータベースを必要としない。また、本実施の形態に係るクラスタシステムは、プロセス数の管理と計算ノードに対するプロセスの割り当てをログインノード1が行うことによって、対話型処理のレスポンスを劣化させることなく、信頼性の高いシステムを実現することができる。
 本発明は、その要旨または主要な特徴から逸脱することなく、他の様々な形で実施することができる。そのため、前述の実施の形態は、あらゆる点で単なる例示に過ぎず、限定的に解釈してはならない。本発明の範囲は、特許請求の範囲によって示すものであって、明細書本文には、何ら拘束されない。更に、特許請求の範囲の均等範囲に属する全ての変形、様々な改良、代替および改質は、全て本発明の範囲内のものである。
 更に、判定装置を構成するコンピュータにおいて上述した各ステップを実行させるプログラムを、制御プログラムとして提供することができる。上述したプログラムは、コンピュータにより読取り可能な記録媒体に記憶させることによって、判定装置を構成するコンピュータに実行させることが可能となる。ここで、上記コンピュータにより読取り可能な記録媒体としては、ROMやRAM等のコンピュータに内部実装される内部記憶装置、CD-ROMやフレキシブルディスク、DVDディスク、光磁気ディスク、ICカード等の可搬型記憶媒体や、コンピュータプログラムを保持するデータベース、或いは、他のコンピュータ並びにそのデータベースや、更に回線上の伝送媒体をも含むものである。
 本発明によれば、システム管理に係る処理負荷を分散することができ、且つ信頼性の高いシステムを実現することができる。

Claims (18)

  1.  ジョブを処理する複数のジョブ処理装置と接続され、前記複数のジョブ処理装置のうち、いずれかのジョブ処理装置にジョブを割り当てるジョブ割当装置の制御プログラムにおいて、
     前記ジョブ割当装置に、
     ジョブを受け付ける受付ステップと、
     前記受け付けたジョブを、前記複数のジョブ処理装置のうち、既に割り当てられたジョブに対応する前記ジョブ処理装置における処理単位数であるプロセス数が最小であるジョブ処理装置に割り当てる割当ステップと、
     前記複数のジョブ処理装置のそれぞれと、前記割当ステップにより前記複数のジョブ処理装置のそれぞれに割り当てられたジョブに対応するプロセス数を対応付けて管理する管理ステップと、
     前記割当ステップによりジョブが割り当てられたジョブ処理装置について、前記管理ステップにより前記ジョブに対応付けられたプロセス数に、前記割当ステップにより割り当てられたジョブに対応するプロセス数を加算する第1加算ステップと、
     前記割当ステップにより前記割り当てられたジョブに対応するプロセス数を、前記ジョブ処理装置にジョブを割り当てる他のジョブ割当装置に通知する第1通知ステップを実行させることを特徴とする制御プログラム。
  2.  前記制御プログラムはさらに、
     前記管理ステップは、前記他のジョブ割当装置によりジョブが割り当てられたジョブ処理装置と、前記他のジョブ割当装置により前記ジョブ処理装置に割り当てられたジョブに対応するプロセス数を対応付けて管理するとともに、
     前記他のジョブ割当装置が前記ジョブ処理装置に割り当てられたジョブに対応するプロセス数の通知を、前記他のジョブ割当装置から受信する第1受信ステップと、
     前記管理ステップにより管理される、前記他のジョブ割当装置が既に前記ジョブ処理装置に割り当てたジョブに対応するプロセス数を、前記受信した前記他のジョブ割当装置が前記ジョブ処理装置に割り当てたジョブに対応するプロセス数に基づいて更新する第1更新ステップを有することを特徴とする請求項1記載の制御プログラム。
  3.  前記制御プログラムはさらに、
     前記割り当てられたジョブを前記ジョブ処理装置が終了したことを表す終了通知を前記ジョブ処理装置から通知された場合には、前記ジョブ処理装置に割り当てられたジョブに対応するプロセス数から、前記終了したジョブに対応するプロセス数を減算する減算ステップと、
     前記ジョブ処理装置において終了したジョブに対応するプロセス数を前記他のジョブ割当装置に通知する第2通知ステップを有することを特徴とする請求項1記載の制御プログラム。
  4.  前記制御プログラムにおいて、
     前記他のジョブ割当装置から通知された、前記他のジョブ割当装置が前記ジョブ処理装置に割り当てたジョブのうち終了したジョブに対応するプロセス数を受信する第2受信ステップと、
     前記他のジョブ割当装置から通知された前記終了したジョブに対応するプロセス数を、前記管理ステップにより管理される前記ジョブ処理装置に割り当てられたジョブに対応するプロセス数から減算する第2減算ステップを有することを特徴とする制御プログラム。
  5.  前記制御プログラムにおいて、
     前記他のジョブ割当装置の動作停止を示す情報である動作停止情報を受信する動作停止情報受信ステップと、
     前記動作停止情報が受信された場合に、前記管理ステップにより管理される前記ジョブ装置に割り当てられたジョブに対応するプロセス数から、前記動作が停止した他のジョブ割当装置が前記ジョブ処理装置に割り当てたジョブに対応するプロセス数を減算する第3減算ステップを有することを特徴とする請求項2記載の制御プログラム。
  6.  前記制御プログラムはさらに、
     該ジョブ割当装置が起動した場合に、前記他のジョブ割当装置が前記ジョブ処理装置に割り当てたジョブに対応するプロセス数を、前記他のジョブ割当装置から取得する取得ステップと、
     前記取得した前記他のジョブ割当装置が前記ジョブ処理装置に割り当てたジョブに対応するプロセス数に基づいて、前記管理ステップにより管理される前記他のジョブ割当装置が前記ジョブ処理装置に割り当てたジョブに対応するプロセス数を更新する第2更新ステップを有することを特徴とする請求項2記載の制御プログラム。
  7.  ジョブを処理する複数のジョブ処理装置と接続され、前記複数のジョブ処理装置にジョブを割り当てるジョブ割当装置において、
     ジョブを受け付ける受付部と、
     前記受け付けたジョブを、前記複数のジョブ処理装置のうち、既に割り当てられたジョブに対応する前記ジョブ処理装置における処理単位数であるプロセス数が最小であるジョブ処理装置に割り当てる割当部と、
     前記複数のジョブ処理装置のそれぞれと、前記割当部が前記複数のジョブ処理装置のそれぞれに割り当てたジョブに対応するプロセス数を対応付けて管理する管理部と、
     前記割当部においてジョブが割り当てられたジョブ処理装置について、前記管理部が管理する前記ジョブに対応付けられたプロセス数に、前記割当部が割り当てたジョブに対応するプロセス数を加算する加算部と、
     前記割当部が前記割り当てたジョブに対応するプロセス数を、前記ジョブ処理装置にジョブを割り当てる他のジョブ割当装置に通知する通知部を有することを特徴とするジョブ割当装置。
  8.  前記ジョブ割当装置はさらに、
     前記他のジョブ割当装置によりジョブが割り当てられたジョブ処理装置と、前記他のジョブ割当装置により前記ジョブ処理装置に割り当てられたジョブに対応するプロセス数を対応付けて管理し、
     前記他のジョブ割当装置が前記ジョブ処理装置に割り当てられたジョブに対応するプロセス数の通知を、前記他のジョブ割当装置から受信する受信部と、
     前記管理部において管理される、前記他のジョブ割当装置が既に前記ジョブ処理装置に割り当てたたジョブに対応するプロセス数を、前記受信部が受信した前記他のジョブ割当装置が前記ジョブ処理装置に割り当てたジョブに対応するプロセス数に基づいて更新する更新部をさらに有することを特徴とする請求項7記載のジョブ割当装置。
  9.  前記ジョブ割当装置はさらに、
     前記割り当てられたジョブを前記ジョブ処理装置が終了したことを表す終了通知を前記ジョブ処理装置から通知された場合には、前記ジョブ処理装置に割り当てられたジョブに対応するプロセス数から、前記終了したジョブに対応するプロセス数を減算する減算部を有し、
    前記通知部は、前記ジョブ処理装置において終了したジョブに対応するプロセス数を前記他のジョブ割当装置に通知することを特徴とする請求項7記載のジョブ割当装置。
  10.  前記ジョブ割当装置において、
     前記受信部は、前記他のジョブ割当装置から通知された、前記他のジョブ割当装置が前記ジョブ処理装置に割り当てたジョブのうち終了したジョブに対応するプロセス数を受信し、
     前記減算部は、前記他のジョブ割当装置から通知された前記終了したジョブに対応するプロセス数を、前記管理部が管理する前記ジョブ処理装置に割り当てられたジョブに対応するプロセス数から減算することを特徴とする請求項7記載のジョブ割当装置。
  11.  前記ジョブ割当装置において、
     前記受信部は、前記他のジョブ割当装置の動作停止を示す情報である動作停止情報を受信し、
     前記減算部は、前記受信部が前記動作停止情報を受信した場合に、前記管理部が管理する前記ジョブ装置に割り当てられたジョブに対応するプロセス数から、前記動作が停止した他のジョブ割当装置が前記ジョブ処理装置に割り当てたジョブに対応するプロセス数を減算することを特徴とする請求項8記載のジョブ割当装置。
  12.  前記ジョブ割当装置はさらに、
     該ジョブ割当装置が起動した場合に、前記他のジョブ割当装置が前記ジョブ処理装置に割り当てたジョブに対応するプロセス数を、前記他のジョブ割当装置から取得する取得部を有し、
     前記更新部は、前記取得した前記他のジョブ割当装置が前記ジョブ処理装置に割り当てたジョブに対応するプロセス数に基づいて、前記管理部が管理する前記他のジョブ割当装置が前記ジョブ処理装置に割り当てたジョブに対応するプロセス数を更新することを特徴とする請求項8記載のジョブ割当装置。
  13.  ジョブを処理する複数のジョブ処理装置と接続され、前記複数のジョブ処理装置のうち、いずれかのジョブ処理装置にジョブを割り当てるジョブ割当装置の制御方法において、
     前記ジョブ割当装置に、
     ジョブを受け付ける受付ステップと、
     前記受け付けたジョブを、前記複数のジョブ処理装置のうち、既に割り当てられたジョブに対応する前記ジョブ処理装置における処理単位数であるプロセス数が最小であるジョブ処理装置に割り当てる割当ステップと、
     前記複数のジョブ処理装置のそれぞれと、前記割当ステップにより前記複数のジョブ処理装置のそれぞれに割り当てられたジョブに対応するプロセス数を対応付けて管理する管理ステップと、
     前記割当ステップによりジョブが割り当てられたジョブ処理装置について、前記管理ステップにより前記ジョブに対応付けられたプロセス数に、前記割当ステップにより割り当てられたジョブに対応するプロセス数を加算する第1加算ステップと、
     前記割当ステップにより前記割り当てられたジョブに対応するプロセス数を、前記ジョブ処理装置にジョブを割り当てる他のジョブ割当装置に通知する第1通知ステップを実行させることを特徴とする制御方法。
  14.  前記制御方法はさらに、
     前記管理ステップは、前記他のジョブ割当装置によりジョブが割り当てられたジョブ処理装置と、前記他のジョブ割当装置により前記ジョブ処理装置に割り当てられたジョブに対応するプロセス数を対応付けて管理するとともに、
     前記他のジョブ割当装置が前記ジョブ処理装置に割り当てられたジョブに対応するプロセス数の通知を、前記他のジョブ割当装置から受信する第1受信ステップと、
     前記管理ステップにより管理される、前記他のジョブ割当装置が既に前記ジョブ処理装置に割り当てたたジョブに対応するプロセス数を、前記受信した前記他のジョブ割当装置が前記ジョブ処理装置に割り当てたジョブに対応するプロセス数に基づいて更新する第1更新ステップを有することを特徴とする請求項13記載の制御方法。
  15.  前記制御方法はさらに、
     前記割り当てられたジョブを前記ジョブ処理装置が終了したことを表す終了通知を前記ジョブ処理装置から通知された場合には、前記ジョブ処理装置に割り当てられたジョブに対応するプロセス数から、前記終了したジョブに対応するプロセス数を減算する減算ステップと、
     前記ジョブ処理装置において終了したジョブに対応するプロセス数を前記他のジョブ割当装置に通知する第2通知ステップを有することを特徴とする請求項13記載の制御方法。
  16.  前記制御方法において、
     前記他のジョブ割当装置から通知された、前記他のジョブ割当装置が前記ジョブ処理装置に割り当てたジョブのうち終了したジョブに対応するプロセス数を受信する第2受信ステップと、
     前記他のジョブ割当装置から通知された前記終了したジョブに対応するプロセス数を、前記管理ステップにより管理される前記ジョブ処理装置に割り当てられたジョブに対応するプロセス数から減算する第2減算ステップを有することを特徴とする制御方法。
  17.  前記制御方法において、
     前記他のジョブ割当装置の動作停止を示す情報である動作停止情報を受信する動作停止情報受信ステップと、
     前記動作停止情報が受信された場合に、前記管理ステップにより管理される前記ジョブ装置に割り当てられたジョブに対応するプロセス数から、前記動作が停止した他のジョブ割当装置が前記ジョブ処理装置に割り当てたジョブに対応するプロセス数を減算する第3減算ステップを有することを特徴とする請求項14記載の制御方法。
  18.  前記制御方法はさらに、
     該ジョブ割当装置が起動した場合に、前記他のジョブ割当装置が前記ジョブ処理装置に割り当てたジョブに対応するプロセス数を、前記他のジョブ割当装置から取得する取得ステップと、
     前記取得した前記他のジョブ割当装置が前記ジョブ処理装置に割り当てたジョブに対応するプロセス数に基づいて、前記管理ステップにより管理される前記他のジョブ割当装置が前記ジョブ処理装置に割り当てたジョブに対応するプロセス数を更新する第2更新ステップを有することを特徴とする請求項14記載の制御方法。
PCT/JP2008/054639 2008-03-13 2008-03-13 ジョブ割当装置、ジョブ割当装置の制御プログラム及び制御方法 WO2009113172A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2010502675A JP5218548B2 (ja) 2008-03-13 2008-03-13 ジョブ割当装置、ジョブ割当装置の制御プログラム及び制御方法
PCT/JP2008/054639 WO2009113172A1 (ja) 2008-03-13 2008-03-13 ジョブ割当装置、ジョブ割当装置の制御プログラム及び制御方法
US12/853,665 US20100306780A1 (en) 2008-03-13 2010-08-10 Job assigning apparatus, and control program and control method for job assigning apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2008/054639 WO2009113172A1 (ja) 2008-03-13 2008-03-13 ジョブ割当装置、ジョブ割当装置の制御プログラム及び制御方法

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US12/853,665 Continuation US20100306780A1 (en) 2008-03-13 2010-08-10 Job assigning apparatus, and control program and control method for job assigning apparatus

Publications (1)

Publication Number Publication Date
WO2009113172A1 true WO2009113172A1 (ja) 2009-09-17

Family

ID=41064852

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2008/054639 WO2009113172A1 (ja) 2008-03-13 2008-03-13 ジョブ割当装置、ジョブ割当装置の制御プログラム及び制御方法

Country Status (3)

Country Link
US (1) US20100306780A1 (ja)
JP (1) JP5218548B2 (ja)
WO (1) WO2009113172A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017146679A (ja) * 2016-02-15 2017-08-24 エヌ・ティ・ティ・コミュニケーションズ株式会社 リスト作成装置、処理装置、リソース情報取得システム、分散処理システム、リスト作成方法及び分散処理方法

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20130088512A (ko) * 2012-01-31 2013-08-08 한국전자통신연구원 클러스터 컴퓨팅 환경에서의 자원 관리 장치 및 방법
US9367357B2 (en) * 2013-01-18 2016-06-14 Nec Corporation Simultaneous scheduling of processes and offloading computation on many-core coprocessors

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63211060A (ja) * 1987-02-27 1988-09-01 Nippon Telegr & Teleph Corp <Ntt> マルチプロセツサシステムにおける負荷分散制御方式
JPH07152698A (ja) * 1993-11-30 1995-06-16 Fuji Xerox Co Ltd ローカル・エリア・ネットワーク
JPH09128338A (ja) * 1995-08-28 1997-05-16 Nec Corp 負荷分散ジョブ処理システム
JP2006085372A (ja) * 2004-09-15 2006-03-30 Toshiba Corp 情報処理システム
JP2006260059A (ja) * 2005-03-16 2006-09-28 Hitachi Information Technology Co Ltd サーバ装置

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62135954A (ja) * 1985-12-10 1987-06-18 Canon Inc ネツトワ−クシステム
US5109512A (en) * 1990-05-31 1992-04-28 International Business Machines Corporation Process for dispatching tasks among multiple information processors
IL99923A0 (en) * 1991-10-31 1992-08-18 Ibm Israel Method of operating a computer in a network
JPH08227404A (ja) * 1995-02-20 1996-09-03 Matsushita Electric Ind Co Ltd 実行タスク配置装置
US5774668A (en) * 1995-06-07 1998-06-30 Microsoft Corporation System for on-line service in which gateway computer uses service map which includes loading condition of servers broadcasted by application servers for load balancing
US5923875A (en) * 1995-08-28 1999-07-13 Nec Corporation Load distributing job processing system
JPH10161986A (ja) * 1996-11-27 1998-06-19 Hitachi Ltd 資源情報通信方式および方法
JPH11110238A (ja) * 1997-10-08 1999-04-23 Nippon Telegr & Teleph Corp <Ntt> コンピュータネットワーク
US6202080B1 (en) * 1997-12-11 2001-03-13 Nortel Networks Limited Apparatus and method for computer job workload distribution
US6112225A (en) * 1998-03-30 2000-08-29 International Business Machines Corporation Task distribution processing system and the method for subscribing computers to perform computing tasks during idle time
JP2001109638A (ja) * 1999-10-06 2001-04-20 Nec Corp 推定伸長率に基づくトランザクション負荷分散方法及び方式並びにコンピュータ可読記録媒体
US6735769B1 (en) * 2000-07-13 2004-05-11 International Business Machines Corporation Apparatus and method for initial load balancing in a multiple run queue system
US7657450B2 (en) * 2000-12-08 2010-02-02 Microsoft Corporation Reliable, secure and scalable infrastructure for event registration and propagation in a distributed enterprise
US7373644B2 (en) * 2001-10-02 2008-05-13 Level 3 Communications, Llc Automated server replication
JP2003208414A (ja) * 2002-01-11 2003-07-25 Hitachi Ltd 負荷分散機能付きサーバおよびクライアント
JP2003271401A (ja) * 2002-03-18 2003-09-26 Fujitsu Ltd 負荷監視機能を有するマイクロプロセッサ
WO2004086246A1 (ja) * 2003-03-24 2004-10-07 Fujitsu Limited 分散処理制御装置、分散処理制御方法および分散処理制御プログラム
US7296269B2 (en) * 2003-04-22 2007-11-13 Lucent Technologies Inc. Balancing loads among computing nodes where no task distributor servers all nodes and at least one node is served by two or more task distributors
US7430742B2 (en) * 2003-04-23 2008-09-30 Micron Technology, Inc. Method for load balancing a line of parallel processing elements
US7886296B2 (en) * 2004-07-22 2011-02-08 Computer Associates Think, Inc. System and method for providing alerts for heterogeneous jobs
US8429660B2 (en) * 2004-08-23 2013-04-23 Goldman, Sachs & Co. Systems and methods to allocate application tasks to a pool of processing machines
US8082545B2 (en) * 2005-09-09 2011-12-20 Oracle America, Inc. Task dispatch monitoring for dynamic adaptation to system conditions
JP2008009852A (ja) * 2006-06-30 2008-01-17 Nec Corp 負荷分散制御システム、方法、およびサーバ装置
US7730119B2 (en) * 2006-07-21 2010-06-01 Sony Computer Entertainment Inc. Sub-task processor distribution scheduling
US8417762B2 (en) * 2007-04-10 2013-04-09 International Business Machines Corporation Mechanism for execution of multi-site jobs in a data stream processing system

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63211060A (ja) * 1987-02-27 1988-09-01 Nippon Telegr & Teleph Corp <Ntt> マルチプロセツサシステムにおける負荷分散制御方式
JPH07152698A (ja) * 1993-11-30 1995-06-16 Fuji Xerox Co Ltd ローカル・エリア・ネットワーク
JPH09128338A (ja) * 1995-08-28 1997-05-16 Nec Corp 負荷分散ジョブ処理システム
JP2006085372A (ja) * 2004-09-15 2006-03-30 Toshiba Corp 情報処理システム
JP2006260059A (ja) * 2005-03-16 2006-09-28 Hitachi Information Technology Co Ltd サーバ装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017146679A (ja) * 2016-02-15 2017-08-24 エヌ・ティ・ティ・コミュニケーションズ株式会社 リスト作成装置、処理装置、リソース情報取得システム、分散処理システム、リスト作成方法及び分散処理方法

Also Published As

Publication number Publication date
US20100306780A1 (en) 2010-12-02
JP5218548B2 (ja) 2013-06-26
JPWO2009113172A1 (ja) 2011-07-21

Similar Documents

Publication Publication Date Title
JP5256744B2 (ja) 資源割当てシステム、資源割当て方法及びプログラム
US10554575B2 (en) Equitable sharing of system resources in workflow execution
US8468530B2 (en) Determining and describing available resources and capabilities to match jobs to endpoints
CN109558446B (zh) 作业请求方法、装置、电子设备及存储介质
US9329937B1 (en) High availability architecture
CN108205541A (zh) 分布式网络爬虫任务的调度方法及装置
WO2014194869A1 (zh) 一种请求处理方法、装置及系统
US9448920B2 (en) Granting and revoking supplemental memory allocation requests
US20110173319A1 (en) Apparatus and method for operating server using virtualization technique
KR20200080458A (ko) 클라우드 멀티-클러스터 장치
CN113886089A (zh) 一种任务处理方法、装置、系统、设备及介质
JP2016024612A (ja) データ処理制御方法、データ処理制御プログラムおよびデータ処理制御装置
WO2018235739A1 (ja) 情報処理システムおよびリソース割り当て方法
JP5218548B2 (ja) ジョブ割当装置、ジョブ割当装置の制御プログラム及び制御方法
CN109343958B (zh) 计算资源分配方法、装置、电子设备、存储介质
JP4887999B2 (ja) スーパースケジュール装置、処理実行システム、処理依頼方法、およびスーパースケジューラプログラム
WO2011096249A1 (ja) 負荷制御装置
JP2017027367A (ja) 画像形成装置、リソース管理装置、リソース管理方法、画像形成装置およびプログラム
JP4368730B2 (ja) 処理割当管理装置、処理割当管理装置の制御方法、及びプログラム
JP5879117B2 (ja) 情報処理システムおよび運用管理方法
JP2008268994A (ja) 計算機システム、負荷分散方法及び管理計算機
KR102676385B1 (ko) 가상화 서버에서 가상머신 cpu 자원을 관리하는 장치 및 방법
JP4743904B2 (ja) リソース過分配防止システム
US9270742B2 (en) Computer system and control method of computer system
KR101393237B1 (ko) 그리드 컴퓨팅에서 동적 유효자원 재배치 기반 작업 할당 장치 및 방법

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: 08722043

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 2010502675

Country of ref document: JP

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 08722043

Country of ref document: EP

Kind code of ref document: A1