[go: up one dir, main page]

JP2012238095A - Software image distribution method, software image distribution system and program thereof - Google Patents

Software image distribution method, software image distribution system and program thereof Download PDF

Info

Publication number
JP2012238095A
JP2012238095A JP2011105303A JP2011105303A JP2012238095A JP 2012238095 A JP2012238095 A JP 2012238095A JP 2011105303 A JP2011105303 A JP 2011105303A JP 2011105303 A JP2011105303 A JP 2011105303A JP 2012238095 A JP2012238095 A JP 2012238095A
Authority
JP
Japan
Prior art keywords
server
image
servers
software image
fragment
Prior art date
Legal status (The legal status 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 status listed.)
Pending
Application number
JP2011105303A
Other languages
Japanese (ja)
Inventor
Gosei Nishimura
豪生 西村
Michio Irie
道生 入江
Masashi Kaneko
雅志 金子
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2011105303A priority Critical patent/JP2012238095A/en
Publication of JP2012238095A publication Critical patent/JP2012238095A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Stored Programmes (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Small-Scale Networks (AREA)

Abstract

【課題】多数のサーバをクラスタに組み込む場合であっても、迅速に組み込めるようにする。
【解決手段】リモートブート装置は、イメージリポジトリ装置200に、配信対象のソフトウェアイメージの分割を指示する。また、このイメージリポジトリ装置200を始点として、この分割したソフトウェアイメージの断片(チャンク)を、どのようなサーバ順で転送するかを示したチェインを生成する。このチェインを受信したイメージリポジトリ装置200および起動対象サーバは、チェインを参照して、イメージリポジトリ装置200を始点として、起動対象サーバ間でバケツリレーのようにチャンクを順次転送していく。ここでチェインに示される転送順序は、ネットワークトポロジを考慮し、起動対象サーバ間の経由スイッチの数が最小となるような順序とする。
【選択図】図2
Even when a large number of servers are incorporated into a cluster, they can be incorporated quickly.
A remote boot device instructs an image repository device 200 to divide a software image to be distributed. Also, starting from the image repository apparatus 200, a chain indicating in what server order the divided pieces (chunks) of the divided software image are transferred is generated. The image repository apparatus 200 and the activation target server that have received this chain refer to the chain and sequentially transfer chunks between the activation target servers like the bucket relay with the image repository apparatus 200 as the starting point. Here, the transfer order shown in the chain is set so that the number of transit switches between the servers to be activated is minimized in consideration of the network topology.
[Selection] Figure 2

Description

本発明は、クラスタシステムの各サーバへのソフトウェアイメージの配信技術に関する。   The present invention relates to a software image distribution technique to each server of a cluster system.

近年、Webサーバホスティング等の分野では、データセンタのようなサーバ管理事業者が一括してサーバを管理し、サービス提供事業者をホスティングするIaaS(Infrastructure as a Service)等と呼ばれる形態が一般化している(非特許文献1参照)。ここで、サービスの需要増時や、そのサービスを提供しているサーバが障害によって離脱した場合に速やかに要求に対応するためには、ある程度の待機余剰資源を含めたサーバを用意しておく必要がある。また、近年では無停止でサーバ資源の動的追加および削除が可能なネットワークサーバクラスタのアーキテクチャが登場しており、通信網を構成する設備のさらなる運用柔軟化や低コスト化が期待されている(非特許文献2参照)。   In recent years, in the field of Web server hosting and the like, a form called IaaS (Infrastructure as a Service) etc. in which server management providers such as data centers collectively manage servers and host service providers has become common. (See Non-Patent Document 1). Here, it is necessary to prepare a server that includes a certain amount of standby surplus resources in order to respond quickly to requests when service demand increases or when a server providing that service leaves due to a failure. There is. In recent years, network server cluster architectures that can add and delete server resources dynamically without interruption have emerged, and further operational flexibility and cost reduction of facilities that make up communication networks are expected ( Non-patent document 2).

そのような要求に対して、各ネットワークサーバクラスタの余剰資源をリソースプールとして集約しておき、需要増時や、障害や災害によって失われた資源の補充時に、リソースプールから必要なサーバを各クラスタに追加することにより、全体の設備利用効率を向上させる技術が検討されている。   In response to such a request, the surplus resources of each network server cluster are aggregated as a resource pool, and when the demand increases or when resources lost due to failures or disasters are replenished, the necessary servers from the resource pool are added to each cluster. In addition to this, a technique for improving the overall facility utilization efficiency is being studied.

このように余剰資源が集約された共用のリソースプールから、サーバをクラスタに追加する場合、リソースプール内に保持されているサーバが、どのようなソフトウェア構成を取るかが事前に分からない。このため、リソースプールのサーバはソフトウェアを何も有していない状態であることが一般的である。よって、資源追加時には、リポジトリから、個々のサービスに対応したソフトウェア構成が含まれたソフトウェアイメージを、追加対象のサーバに転送する。そして、このサーバに必要な設定を行った後にクラスタに組み込む必要がある。   When a server is added to a cluster from a shared resource pool in which surplus resources are aggregated in this way, it is not known in advance what software configuration the server held in the resource pool will take. For this reason, the server of the resource pool is generally in a state that has no software. Therefore, when adding a resource, a software image including a software configuration corresponding to each service is transferred from the repository to a server to be added. Then, after making the necessary settings for this server, it is necessary to incorporate it into the cluster.

Amazon Elastic Compute Cloud (Amazon EC2)、[online]、[平成23年3月23日検索]、インターネット、<URL:http://aws.amazon.com/ec2/>Amazon Elastic Compute Cloud (Amazon EC2), [online], [Search March 23, 2011], Internet, <URL: http: //aws.amazon.com/ec2/> Mobicents、[online]、[平成23年3月23日検索]、インターネット、<URL: http://www.mobicents.org/>Mobicents, [online], [Search March 23, 2011], Internet, <URL: http://www.mobicents.org/> 西村豪生他、高可用ネットワークサーバの資源運用柔軟化に向けた高速リモートブート装置、信学技報、NS2010-148、pp.37-42、Jan、2011.Nishimura Gosei et al., High-speed Remote Boot Device for Flexible Resource Management of Highly Available Network Servers, IEICE Technical Report, NS2010-148, pp.37-42, Jan, 2011.

ソフトウェアイメージは、オペレーティングシステムや各種ミドルウェア、データ等をすべて含んでいるため数〜数十GBに及ぶ大容量であり、転送にはある程度の時間を要する。ここで、クラスタへの急な需要増やサーバの障害復旧時にもサービスの可用性低下を防ぐためには、複数のサーバが同時に要求されたとしても、高速にソフトウェアを配信して起動する必要がある。   Since the software image includes all of the operating system, various middleware, data, and the like, the software image has a large capacity ranging from several to several tens of GB and requires a certain amount of time for transfer. Here, in order to prevent a sudden increase in demand for a cluster or a reduction in service availability even when a server failure is recovered, it is necessary to distribute and start software at high speed even when a plurality of servers are requested at the same time.

非特許文献3に記載の技術は、サーバを木構造にマッピングして配信を行う通信ライブラリによってソフトウェアイメージの配信を行っている。しかし、この方法ではクラスタへの追加対象サーバが増加すると、それに応じてソフトウェアイメージの配信時間が増加してしまうという問題がある。また、一般的な通信ライブラリはすべてのサーバを互いに通信可能な論理的なノードとして抽象化しており、実際のネットワークトポロジを考慮して最適な通信を行っているとは限らない。このため、ソフトウェアイメージの配信時にネットワークの帯域を効率よく利用できず、ソフトウェアイメージの転送に必要以上の時間がかかってしまうことがある。   The technology described in Non-Patent Document 3 distributes software images using a communication library that maps a server to a tree structure for distribution. However, this method has a problem that when the number of servers to be added to the cluster increases, the distribution time of the software image increases accordingly. A general communication library abstracts all servers as logical nodes that can communicate with each other, and does not always perform optimal communication in consideration of an actual network topology. For this reason, the network bandwidth cannot be efficiently used when distributing the software image, and it may take more time than necessary to transfer the software image.

そこで、本発明は、前記した問題を解決し、多数のサーバをクラスタに組み込む場合であっても、迅速に組み込める手段を提供することを目的とする。   In view of the above, an object of the present invention is to solve the above-described problems and provide means for quickly incorporating even a large number of servers into a cluster.

前記した課題を解決するため、本発明は、サーバおよび当該サーバ同士を接続するスイッチがツリー構造で接続されるネットワークにおいて、クラスタに追加するサーバの遠隔電源オンの指示を行い、サーバを動作させるためのソフトウェアイメージを、イメージリポジトリ装置に配信させるリモートブート装置が以下の処理を行う。すなわち、リモートブート装置が、クラスタへの追加対象サーバの追加台数および追加対象サーバへ配信するソフトウェアイメージの種別を含む追加指示の入力を受け付ける。そして、リモートブート装置は、この入力されたソフトウェアイメージの種別を、イメージリポジトリ装置へ送信する。次に、リモートブート装置は、入力された追加指示に基づき、サーバそれぞれのIDおよび当該サーバがクラスタに追加可能か否かを示したサーバ情報を読み出し、読み出したサーバ情報に示されるサーバのうち、追加可能なサーバをクラスタへの追加対象サーバとして追加指示に示される台数選択する。そして、その選択した追加対象サーバそれぞれへの遠隔電源オンの指示を、管理ネットワークを介して送信する。その後、リモートブート装置は、イメージリポジトリ装置、サーバおよび当該サーバを接続するスイッチの接続関係を示したトポロジ情報を参照して、ソフトウェアイメージを分割した断片を、追加対象サーバ間で転送するときの追加対象サーバの順序を含む転送指示情報を生成する。そして、この生成した転送指示情報をイメージリポジトリ装置へ送信する。この転送指示情報を受信したイメージリポジトリ装置は、送信された種別のソフトウェアイメージを分割し、分割したソフトウェアイメージの断片と、転送指示情報とを、転送指示情報に含まれる転送順序の最初の起動対象サーバへ送信する。その後、転送指示情報およびソフトウェアイメージの断片を受信した追加対象サーバそれぞれは、受信したソフトウェアイメージの断片を、転送指示情報において自身のサーバの次に断片を転送すべき追加対象サーバへ転送し、自身のサーバのイメージ保存部に保存する処理を、ソフトウェアイメージを構成するすべての断片を受信し、転送するまで繰り返す。その後、起動対象サーバは、イメージ保存部に保存されたソフトウェアイメージから自身のサーバを起動させる。ここで、リモートブート装置が転送指示情報を生成するとき、追加対象サーバ間で転送するときの追加対象サーバの順序は、トポロジ情報を参照して、追加対象サーバ間で経由するスイッチの数が最小となるような順序とする。   In order to solve the above-described problem, the present invention provides a remote power-on instruction for a server to be added to a cluster and operates the server in a network in which a server and switches that connect the servers are connected in a tree structure. The remote boot device that distributes the software image to the image repository device performs the following processing. That is, the remote boot device accepts an input of an addition instruction including the number of servers to be added to the cluster and the type of software image to be distributed to the servers to be added. Then, the remote boot device transmits the input software image type to the image repository device. Next, the remote boot device reads the server information indicating whether each server ID and the server can be added to the cluster based on the input addition instruction, and among the servers indicated in the read server information, Select the server that can be added as the server to be added to the cluster and the number of servers indicated in the add instruction. Then, a remote power-on instruction to each of the selected addition target servers is transmitted via the management network. After that, the remote boot device refers to the topology information that shows the connection relationship between the image repository device, the server, and the switch that connects the server, and adds the pieces when the software image segment is transferred between the addition target servers. Transfer instruction information including the order of the target servers is generated. Then, the generated transfer instruction information is transmitted to the image repository apparatus. Upon receiving this transfer instruction information, the image repository apparatus divides the transmitted type of software image, and divides the divided software image fragment and transfer instruction information into the first activation target in the transfer order included in the transfer instruction information. Send to server. Thereafter, each of the addition target servers that has received the transfer instruction information and the software image fragment transfers the received software image fragment to the addition target server to which the fragment is to be transferred next to its own server in the transfer instruction information. The process of storing in the image storage unit of the server is repeated until all pieces constituting the software image are received and transferred. Thereafter, the activation target server activates its own server from the software image stored in the image storage unit. Here, when the remote boot device generates the transfer instruction information, the order of the addition target servers when transferring between the addition target servers is the minimum number of switches that pass between the addition target servers with reference to the topology information. The order is as follows.

このように、リモートブート装置は、ソフトウェアイメージを断片に分割し、追加対象サーバに、この断片それぞれを、所定の転送順序でバケツリレーのように順次断片を転送させることができる。これにより、イメージリポジトリ装置は、クラスタへの追加対象サーバそれぞれへソフトウェアイメージ全体を送る必要がなくなる。よって、多数のサーバをクラスタに組み込む場合であっても、迅速に組み込むことができる。また、転送指示情報に設定する追加対象サーバ間でのソフトウェアイメージの断片の転送順序は、追加対象サーバ間で経由するスイッチ数ができるだけ少なくなるようにする。これにより、各断片の転送時に経由するリンクの数をできるだけ低減できるので、各断片を順次追加対象サーバ間で転送するとき、ネットワークの帯域の利用効率を向上させることができる。   In this way, the remote boot device can divide the software image into fragments, and cause the addition target server to sequentially transfer the fragments in a predetermined transfer order like a bucket relay. This eliminates the need for the image repository device to send the entire software image to each of the servers to be added to the cluster. Therefore, even when many servers are incorporated into a cluster, they can be incorporated quickly. In addition, the software image fragment transfer order between the addition target servers set in the transfer instruction information is set so that the number of switches passing between the addition target servers is as small as possible. As a result, the number of links through which each fragment is transferred can be reduced as much as possible. Therefore, when each fragment is sequentially transferred between the addition target servers, the use efficiency of the network bandwidth can be improved.

また、本発明は、サーバそれぞれが、受信したソフトウェアイメージの断片と、断片ごとに、当該断片の受信、送信およびイメージ保存部への保存それぞれについて実行済みか否かを示すチャンクテーブルとを記憶するメインメモリを備えている。そして、サーバそれぞれは、チャンクテーブルを参照して、受信済みとなっている断片について、当該断片の送信またはイメージ保存部への保存を行う。その後、断片の送信またはイメージ保存部への保存を行ったとき、チャンクテーブルにおける当該断片について送信またはイメージ保存部への保存を実行済みに書き換える。そして、サーバそれぞれは、チャンクテーブルを参照して、受信、送信およびイメージ保存部への保存が実行済みである断片を、メインメモリ上から削除する。   Further, according to the present invention, each server stores a fragment of the received software image and a chunk table indicating whether or not each of the fragments has been received, transmitted, and stored in the image storage unit. It has a main memory. Then, each server refers to the chunk table and transmits the fragment that has been received or stores it in the image storage unit. Thereafter, when the fragment is transmitted or stored in the image storage unit, the fragment or the storage in the image storage unit in the chunk table is rewritten to have been executed. Then, each server refers to the chunk table and deletes the fragments that have been received, transmitted, and stored in the image storage unit from the main memory.

このように、追加対象サーバは、順次、受信したソフトウェアイメージの断片の送信、保存を繰り返すが、ソフトウェアイメージの断片の送信およびイメージ保存部への保存が完了すると、この断片をメインメモリ上から削除するので、メインメモリの限られた記憶容量を有効活用できる。   In this way, the addition target server sequentially repeats transmission and storage of the received software image fragment, but when the transmission of the software image fragment and storage in the image storage unit is completed, this fragment is deleted from the main memory. Therefore, the limited storage capacity of the main memory can be used effectively.

また、本発明は、サーバそれぞれが、転送指示情報において、自身のサーバが、追加対象サーバ間で転送するときの追加対象サーバの順序が最後になっていると判断したとき、自身のサーバが受信した断片をイメージリポジトリ装置へ通知する。   In addition, according to the present invention, when each server determines that the order of the addition target servers in the transfer instruction information is the last when the servers are transferred between the addition target servers, Notifying the image repository device of the obtained fragment.

このようにすることで、イメージリポジトリ装置は、追加対象サーバのうち転送順序が最後になっている追加対象サーバが、ソフトウェアイメージのどの断片まで受信したか(配信状況)を確認することができる。   In this way, the image repository apparatus can confirm to which fragment of the software image (distribution status) the addition target server having the last transfer order among the addition target servers has received.

また、本発明は、サーバおよび当該サーバ同士を接続するスイッチがツリー構造で接続されるネットワークにおいて、クラスタに追加するサーバの遠隔電源オンの指示を行い、イメージリポジトリ装置に、サーバを動作させるためのソフトウェアイメージの配信を指示するためのソフトウェアイメージ配信プログラムについて、各ステップを実行させるプログラムとした。すなわち、コンピュータに、クラスタへの追加対象サーバの追加台数および追加対象サーバへ配信するソフトウェアイメージの種別を含む追加指示の入力を受け付けるステップと、入力されたソフトウェアイメージの種別を、イメージリポジトリ装置へ送信するステップと、入力された追加指示に基づき、サーバそれぞれのIDおよび当該サーバがクラスタに追加可能か否かを示したサーバ情報を読み出し、読み出したサーバ情報に示されるサーバのうち、追加可能なサーバをクラスタへの追加対象サーバとして追加指示に示される台数選択し、選択した追加対象サーバそれぞれへの遠隔電源オンの指示を、管理ネットワークを介して送信するステップと、イメージリポジトリ装置、サーバおよび当該サーバを接続するスイッチの接続関係を示したトポロジ情報を参照して、ソフトウェアイメージを分割した断片を、追加対象サーバ間で転送するときの追加対象サーバの順序を含む転送指示情報を生成するステップと、生成した転送指示情報をイメージリポジトリ装置へ送信するステップとを実行させるプログラムとした。ここで、転送指示情報は、イメージリポジトリ装置に対し、送信された種別のソフトウェアイメージを分割し、分割したソフトウェアイメージの断片と、転送指示情報とを、転送指示情報に含まれる転送順序の最初の起動対象サーバへ送信し、転送指示情報およびソフトウェアイメージの断片を受信した追加対象サーバそれぞれに対し、受信したソフトウェアイメージの断片を、転送指示情報において自身のサーバの次に断片を転送すべき追加対象サーバへ転送するよう指示する情報であり、追加対象サーバ間で転送するときの追加対象サーバの順序は、トポロジ情報を参照して、追加対象サーバ間で経由するスイッチの数が最小となるような順序としている。   In addition, the present invention provides an instruction for remotely turning on a server to be added to a cluster and operating the server in the image repository apparatus in a network in which a server and a switch for connecting the servers are connected in a tree structure. The software image distribution program for instructing the distribution of the software image is a program that executes each step. In other words, the step of accepting an input of an addition instruction including the number of servers to be added to the cluster and the type of software image to be distributed to the server to be added to the computer, and the input type of software image is transmitted to the image repository apparatus And server information indicating whether each server and the server can be added to the cluster are read based on the input step and the input addition instruction, and the server that can be added among the servers indicated in the read server information Selecting the number of servers indicated in the addition instruction as an addition target server to the cluster, and transmitting a remote power-on instruction to each of the selected addition target servers via the management network, an image repository device, the server, and the server The switch connection relationship Generating the transfer instruction information including the order of the server to be added when transferring the fragment obtained by dividing the software image between the servers to be added with reference to the topology information, and the image repository apparatus And a program for executing the step of transmitting to the program. Here, the transfer instruction information is obtained by dividing the type of software image transmitted to the image repository apparatus, and dividing the divided software image fragment and the transfer instruction information into the first transfer order included in the transfer instruction information. For each additional target server that sent to the startup target server and received the transfer instruction information and the software image fragment, the received software image fragment is the additional target to be transferred next to its own server in the transfer instruction information. This is information that directs the transfer to the server. The order of the addition target servers when transferring between the addition target servers is such that the number of switches that pass between the addition target servers is minimized by referring to the topology information. It is in order.

このようなプログラムによれば、一般的なコンピュータを、本発明のリモートブート装置として機能させることができる。   According to such a program, a general computer can function as the remote boot device of the present invention.

本発明によれば、多数のサーバをクラスタに組み込む場合であっても、迅速に組み込むことができる。   According to the present invention, even when many servers are incorporated into a cluster, they can be incorporated quickly.

本実施の形態のシステムの構成例を示した図である。It is the figure which showed the example of a structure of the system of this Embodiment. 図1のシステムにおけるチャンクの転送処理を概念的に説明した図である。FIG. 2 is a diagram conceptually illustrating chunk transfer processing in the system of FIG. 1. 図1のシステムにおけるチャンクの転送処理を概念的に説明した図である。FIG. 2 is a diagram conceptually illustrating chunk transfer processing in the system of FIG. 1. 図1のリモートブート装置、イメージリポジトリ装置およびサーバの構成を示した図である。It is the figure which showed the structure of the remote boot apparatus of FIG. 1, an image repository apparatus, and a server. 図1のサーバ情報を例示した図である。It is the figure which illustrated the server information of FIG. 図1のサーバを含むネットワークトポロジを例示した図である。It is the figure which illustrated the network topology containing the server of FIG. 図1のトポロジ情報を例示した図である。It is the figure which illustrated the topology information of FIG. 図1のイメージ情報を例示した図である。It is the figure which illustrated the image information of FIG. 図1のチャンクテーブルを例示した図である。It is the figure which illustrated the chunk table of FIG. 図1のリモートブート装置の動作手順を説明するための図である。It is a figure for demonstrating the operation | movement procedure of the remote boot apparatus of FIG. 図1のリモートブート装置によるチェインの生成手順を示す図である。It is a figure which shows the production | generation procedure of the chain by the remote boot apparatus of FIG. 図1のリモートブート装置がチェインを生成するときに用いる処理テーブルおよびチェインの推移を例示した図である。It is the figure which illustrated the transition of the process table and chain used when the remote boot apparatus of FIG. 1 produces | generates a chain. 図1のイメージリポジトリ装置の動作手順を説明するための図である。It is a figure for demonstrating the operation | movement procedure of the image repository apparatus of FIG. 図1のサーバの動作手順を説明するための図である。It is a figure for demonstrating the operation | movement procedure of the server of FIG. 図1のサーバの動作手順を説明するための図である。It is a figure for demonstrating the operation | movement procedure of the server of FIG. 図1のチャンクテーブルを例示した図である。It is the figure which illustrated the chunk table of FIG.

以下、本発明の実施するための形態(実施の形態)を説明する。まず、図1を用いて本実施の形態のシステムの全体構成を説明する。本実施の形態のシステムは、サービスを提供するための資源である複数のサーバ300と、サーバ300を遠隔起動するリモートブート装置100と、ソフトウェアイメージの配信元となるイメージリポジトリ装置200とを備える。リモートブート装置100と、イメージリポジトリ装置200と、サーバ300とは管理ネットワーク400で接続される。遠隔起動指示やソフトウェアイメージの配信は、この管理ネットワーク400経由で行われる。また、端末600は、サービスネットワーク500経由で各サーバ300にアクセスし、各サーバ300が提供するサービスを受ける。   Hereinafter, modes (embodiments) for carrying out the present invention will be described. First, the overall configuration of the system according to the present embodiment will be described with reference to FIG. The system according to the present embodiment includes a plurality of servers 300 that are resources for providing services, a remote boot device 100 that remotely starts the server 300, and an image repository device 200 that is a distribution source of software images. The remote boot device 100, the image repository device 200, and the server 300 are connected via a management network 400. The remote activation instruction and the distribution of the software image are performed via the management network 400. Also, the terminal 600 accesses each server 300 via the service network 500 and receives a service provided by each server 300.

リモートブート装置100は、保守者の端末装置(図示省略)からサーバ300のリモートブート(遠隔起動)要求を受け付けると、必要台数のサーバ300を遠隔起動する。そして、リモートブート装置100は、イメージリポジトリ装置200に対し、起動したサーバ300へのソフトウェアイメージの配信を指示する。   When the remote boot device 100 receives a remote boot (remote start) request for the server 300 from the terminal device (not shown) of the maintenance person, the remote boot device 100 remotely starts the necessary number of servers 300. Then, the remote boot device 100 instructs the image repository device 200 to distribute the software image to the activated server 300.

ここで、イメージリポジトリ装置200は、図2に例示するように、イメージリポジトリ装置200を先頭にして、起動対象サーバを論理的に一列(チェイン状)に並べる。そして、この並べた起動対象サーバ(サービスを提供するサーバ300群であるクラスタへの追加対象サーバ)に対してソフトウェアイメージを配信する。その際、ソフトウェアイメージをいくつかの断片(チャンク)に分割し、チャンク単位でチェイン(チャンクの転送順序)に沿って各サーバ300へ配信する。そして、この起動対象サーバは、バケツリレー式に、チャンクの受信、送信および保存を実行する。つまり、各サーバ300は、チャンクを受信すると、順次、このチャンクをチェインの次のサーバ300へ転送する。また、サーバ300は、受信したチャンクを自身のローカルディスクに保存することでソフトウェアイメージを保存する。   Here, as illustrated in FIG. 2, the image repository apparatus 200 logically arranges the activation target servers in a line (chain shape) with the image repository apparatus 200 at the top. Then, the software image is distributed to the startup target servers (servers to be added to the cluster, which is a group of servers 300 that provide services). At that time, the software image is divided into several pieces (chunks) and distributed to each server 300 along the chain (chunk transfer order) in units of chunks. And this starting object server performs reception, transmission, and preservation | save of a chunk by a bucket relay type. That is, when each server 300 receives a chunk, it sequentially transfers this chunk to the next server 300 in the chain. Further, the server 300 saves the software image by saving the received chunk in its own local disk.

ここで、チェインは、ネットワークトポロジを考慮して構成される。例えば、各サーバ300(300A,300B,300C,300D)およびイメージリポジトリ装置200は、図3(a)(b)に例示するように、スイッチ700(700A,700B,700C)経由で接続される。このようなネットワークトポロジにおいて、図3(a)の(0)→(1)→(2)→(3)→(4)のような順で各チャンクを順次配信していくと、スイッチ700をまたいだ通信が多く発生し、1つのリンク上で複数の通信が同時に行われる可能性がある。このため、ネットワークの通信帯域の利用効率が悪くなる可能性がある。   Here, the chain is configured in consideration of the network topology. For example, each server 300 (300A, 300B, 300C, 300D) and the image repository apparatus 200 are connected via a switch 700 (700A, 700B, 700C) as illustrated in FIGS. In such a network topology, when each chunk is sequentially distributed in the order of (0) → (1) → (2) → (3) → (4) in FIG. In addition, there is a possibility that many communications occur, and a plurality of communications may be simultaneously performed on one link. For this reason, there is a possibility that the utilization efficiency of the communication band of the network is deteriorated.

一方、本システムでは、図3(b)の(0)→(1)→(2)→(3)→(4)のような順、つまり、経由するスイッチ数(スイッチまたぎの数)が最小限となるような配信順序で、各チャンクを順次配信していく。このようにすることで、1つのリンク上で複数の通信が同時に行われる可能性を低くできる。   On the other hand, in this system, the order of (0) → (1) → (2) → (3) → (4) in FIG. Each chunk is delivered sequentially in a limited delivery order. By doing so, the possibility that a plurality of communications are simultaneously performed on one link can be reduced.

なお、前記したリモートブート装置100は、管理ネットワーク400やサービスネットワーク500経由で通信可能な通信インタフェースと、入出力インタフェースと、CPU(Central Processing Unit)と、RAM(Random Access Memory)、ROM(Read Only Memory)、HDD(Hard Disk Drive)、フラッシュメモリ等の記憶部とを備えるコンピュータにより実現される。   The remote boot device 100 described above includes a communication interface, an input / output interface, a CPU (Central Processing Unit), a RAM (Random Access Memory), and a ROM (Read Only) that can communicate via the management network 400 and the service network 500. This is realized by a computer including a storage unit such as a memory (HDD), a hard disk drive (HDD), and a flash memory.

<リモートブート装置>
次に、図4を用いて、図1のリモートブート装置100、イメージリポジトリ装置200およびサーバ300を詳細に説明する。まず、リモートブート装置100を説明する。
<Remote boot device>
Next, the remote boot device 100, the image repository device 200, and the server 300 in FIG. 1 will be described in detail with reference to FIG. First, the remote boot device 100 will be described.

リモートブート装置100は、ブート要求受付部110と、遠隔電源管理部120と、サーバ情報管理部130と、チェイン生成部140と、トポロジ情報管理部150と、チェイン送信部160とを備える。また、このリモートブート装置100は、記憶部(図示省略)の所定領域に、サーバ情報131と、トポロジ情報151とを記憶する。ブート要求受付部110と、遠隔電源管理部120と、サーバ情報管理部130と、チェイン生成部140と、トポロジ情報管理部150と、チェイン送信部160とは、リモートブート装置100が備えるCPUによるプログラム実行処理や、専用回路等により実現される。このリモートブート装置100をプログラム実行処理により実現する場合、記憶部には、このリモートブート装置100の機能を実現するためのプログラムが格納される。   The remote boot device 100 includes a boot request reception unit 110, a remote power management unit 120, a server information management unit 130, a chain generation unit 140, a topology information management unit 150, and a chain transmission unit 160. Further, the remote boot device 100 stores server information 131 and topology information 151 in a predetermined area of a storage unit (not shown). The boot request reception unit 110, the remote power management unit 120, the server information management unit 130, the chain generation unit 140, the topology information management unit 150, and the chain transmission unit 160 are programs executed by the CPU provided in the remote boot device 100. This is realized by an execution process, a dedicated circuit, or the like. When the remote boot device 100 is realized by a program execution process, a program for realizing the functions of the remote boot device 100 is stored in the storage unit.

ブート要求受付部110は、保守者の端末装置等から起動対象サーバの追加台数および追加対象サーバへ配信するソフトウェアイメージの種別を含むリモートブート要求を受け付け、一連のリモートブート処理を開始する。リモートブート要求は、保守者の端末装置等の外部端末からネットワーク越しに受け付けてもよいし、リモートブート装置100に直接接続された入力装置経由で受け付けてもよい。   The boot request accepting unit 110 accepts a remote boot request including the added number of servers to be activated and the type of software image to be distributed to the addition target server from the terminal device or the like of the maintenance person, and starts a series of remote boot processes. The remote boot request may be received from an external terminal such as a maintenance person's terminal device via a network, or may be received via an input device directly connected to the remote boot device 100.

遠隔電源管理部120は、起動対象のサーバ300を選択し、このサーバ300を遠隔電源ONする。遠隔電源ONは、例えば、IPMI(Intelligent Platform Management Interface)やWoL(Wake on LAN)等を用いて行われる。   The remote power management unit 120 selects the server 300 to be activated and turns on the server 300 remotely. The remote power ON is performed using, for example, IPMI (Intelligent Platform Management Interface) or WoL (Wake on LAN).

サーバ情報管理部130は、サーバ情報131の読み出しおよび書き込みを行う。このサーバ情報131は、図5に例示するように、サーバ300の識別情報であるサーバIDごとに、このサーバ300の遠隔操作用アドレス、転送用アドレスおよびサーバ300の状態を示した情報である。遠隔操作用アドレスは、遠隔電源管理部120によって、サーバ300を電源ONする際に必要となるエンドポイントのアドレスである。図5の例では、サーバ300が遠隔電源ONにIPMIを用いることを想定しており、IP(Internet Protocol)アドレスが値として格納されている。転送用アドレスは、当該サーバ300にソフトウェアイメージを転送する際に用いるネットワークアドレスである。また、サーバ300の状態は、そのサーバ300が資源として利用可能であるか否か(クラスタに追加可能であるか否か)を示す情報が格納される。図5の例では、サーバ300の状態を、「利用可能」、「利用中」、「利用不可」のいずれかとしている。「利用可能」は、資源として利用可能な(待機中の)サーバ300であり、「利用中」は、現在何らかのサービスを提供しており、クラスタに追加できないサーバ300であり、「利用不可」は、故障等の理由で利用不可であるサーバ300であることを示している。   The server information management unit 130 reads and writes the server information 131. As illustrated in FIG. 5, the server information 131 is information indicating the remote operation address of the server 300, the transfer address, and the state of the server 300 for each server ID that is identification information of the server 300. The remote operation address is an endpoint address that is required when the remote power management unit 120 powers on the server 300. In the example of FIG. 5, it is assumed that the server 300 uses IPMI for remote power ON, and an IP (Internet Protocol) address is stored as a value. The transfer address is a network address used when transferring the software image to the server 300. The status of the server 300 stores information indicating whether the server 300 can be used as a resource (whether it can be added to the cluster). In the example of FIG. 5, the state of the server 300 is “available”, “in use”, or “unusable”. “Available” is a server 300 that can be used as a resource (standby), “in use” is a server 300 that currently provides some service and cannot be added to the cluster, and “unavailable” This indicates that the server 300 cannot be used due to a failure or the like.

図4に戻る。チェイン生成部140は、チェイン(転送指示情報)を生成する。チェインとは、イメージリポジトリ装置200および各起動対象サーバ間でソフトウェアイメージの断片を転送するときの順序を示す情報である。チェインの生成手順の詳細は後記するが、チェイン生成部140は、イメージリポジトリ装置200をスタート地点として、終端の起動対象サーバまで、経由スイッチ数が最も少ない起動対象サーバを順次選択していくことで、チェインを生成する。これにより、起動対象サーバ間でチャンクを転送するときに、経由するスイッチ数をできるだけ少なくできる。   Returning to FIG. The chain generation unit 140 generates a chain (transfer instruction information). A chain is information indicating the order in which pieces of software images are transferred between the image repository apparatus 200 and each activation target server. Although details of the chain generation procedure will be described later, the chain generation unit 140 sequentially selects the activation target server having the smallest number of transit switches from the image repository device 200 to the termination activation target server. Generate a chain. As a result, the number of switches through which the chunks are transferred between the servers to be activated can be reduced as much as possible.

チェイン送信部160は、チェイン生成部140により作成されたチェインをイメージリポジトリ装置200に転送して、チャンクの配信開始を指示する。チェイン生成部140およびチェイン送信部160の詳細は後記する。   The chain transmission unit 160 transfers the chain created by the chain generation unit 140 to the image repository apparatus 200 and instructs the start of chunk distribution. Details of the chain generation unit 140 and the chain transmission unit 160 will be described later.

トポロジ情報管理部150は、トポロジ情報151の読み出しおよび書き込みを行う。このトポロジ情報151は、ネットワークのサーバ300、イメージリポジトリ装置200およびこれらを接続するスイッチ700の接続関係(トポロジ)を示した情報である。ここでのネットワークトポロジは、一般的な木構成を想定している。図7に、トポロジ情報151を例示する。このトポロジ情報151は、図6のネットワークトポロジを示すトポロジ情報151である。なお、図6および図7における「SW*」は、スイッチ700のスイッチIDを示し、「Svr*」は、サーバ300のサーバIDを示す。トポロジ情報151は、図7に例示するようにスイッチ700の識別情報であるスイッチIDごとに、木構造上の親スイッチ、子スイッチおよび収容サーバのIDを値として格納している。親スイッチの値はスイッチIDとして格納され、その値の数は最大1つである。また、図6におけるSW0のように木構造上の根(ルート)となるスイッチ700には親スイッチは存在しない。一方、子スイッチは複数個存在しうる。図6および図7の例では、SW0は、SW1,SW2,SW3を子スイッチとして有する。また、SW1,SW4〜SW6は、子スイッチを有さないため、値も存在しない。収容サーバは、そのスイッチ700に収容されているサーバ300のサーバIDが値となるため、複数個存在しうる。また、スイッチ700同士を接続するSW0,SW2,SW3等の中継スイッチはサーバ300を収容していないため、収容サーバの値が存在しない。   The topology information management unit 150 reads and writes the topology information 151. The topology information 151 is information indicating the connection relationship (topology) of the network server 300, the image repository apparatus 200, and the switch 700 that connects them. The network topology here assumes a general tree configuration. FIG. 7 illustrates the topology information 151. This topology information 151 is topology information 151 indicating the network topology of FIG. 6 and 7, “SW *” indicates the switch ID of the switch 700, and “Svr *” indicates the server ID of the server 300. As illustrated in FIG. 7, the topology information 151 stores, for each switch ID, which is identification information of the switch 700, IDs of parent switches, child switches, and accommodating servers on the tree structure as values. The value of the parent switch is stored as a switch ID, and the maximum number of values is one. In addition, a parent switch does not exist in the switch 700 that is a root in the tree structure like SW0 in FIG. On the other hand, there can be a plurality of child switches. 6 and 7, SW0 has SW1, SW2, and SW3 as child switches. SW1, SW4 to SW6 do not have child switches, and therefore have no value. Since the server ID of the server 300 accommodated in the switch 700 is a value, there can be a plurality of accommodating servers. In addition, since relay switches such as SW0, SW2, and SW3 that connect the switches 700 do not accommodate the server 300, there is no value for the accommodation server.

<イメージリポジトリ>
図4に戻る。イメージリポジトリ装置200は、配信要求受付部210と、イメージ情報管理部220と、イメージ配信部240とを備える。また、イメージリポジトリ装置200の記憶部(図示省略)の所定領域にストレージ230と、イメージ情報221とを記憶する。配信要求受付部210と、イメージ情報管理部220と、イメージ配信部240とは、イメージリポジトリ装置200の備えるCPUによるプログラム実行処理や、専用回路等により実現される。このイメージリポジトリ装置200をプログラム実行処理により実現する場合、記憶部には、このイメージリポジトリ装置200の機能を実現するためのプログラムが格納される。
<Image repository>
Returning to FIG. The image repository apparatus 200 includes a distribution request reception unit 210, an image information management unit 220, and an image distribution unit 240. Further, the storage 230 and the image information 221 are stored in a predetermined area of a storage unit (not shown) of the image repository apparatus 200. The distribution request reception unit 210, the image information management unit 220, and the image distribution unit 240 are realized by a program execution process by a CPU included in the image repository apparatus 200, a dedicated circuit, or the like. When the image repository apparatus 200 is realized by program execution processing, a program for realizing the functions of the image repository apparatus 200 is stored in the storage unit.

配信要求受付部210は、管理ネットワーク400経由でリモートブート装置100からのイメージIDおよびチェインの送信を受け付け、ソフトウェアイメージの断片(チャンク)の配信処理を開始する。   The distribution request reception unit 210 receives image ID and chain transmission from the remote boot device 100 via the management network 400, and starts distribution processing of software image fragments (chunks).

イメージ情報管理部220は、イメージ情報221の読み出しおよび書き込みを行う。このイメージ情報221は、図8に例示するように、ソフトウェアイメージの識別情報(イメージID)ごとに、そのソフトウェアイメージにアクセスするためのパスを示した情報である。このイメージ情報221は、イメージ配信部240が、ストレージ230からソフトウェアイメージを読み出すときに参照される。   The image information management unit 220 reads and writes the image information 221. As illustrated in FIG. 8, the image information 221 is information indicating a path for accessing the software image for each piece of software image identification information (image ID). The image information 221 is referred to when the image distribution unit 240 reads a software image from the storage 230.

図4に戻る。ストレージ230は、ソフトウェアイメージ本体を記憶する。   Returning to FIG. The storage 230 stores a software image body.

イメージ配信部240は、配信対象のソフトウェアイメージを複数のチャンクに分割し、チェインに沿って配信する。このイメージ配信部240は、リモートブート装置100からチェインを受信し、このチェインの先頭のサーバ300に転送するチェイン転送部(チェイン受信部およびチェイン送信部)241と、配信対象のソフトウェアイメージをチャンクに分割するチャンク分割部242と、チャンクをチェインに示される先頭のサーバ300に送信するチャンク送信部243とを備える。また、このイメージ配信部240は、チェイン終端のサーバ300から、チャンクの配信状況を受け付ける配信状況受付部244をさらに備えてもよい。   The image distribution unit 240 divides the distribution target software image into a plurality of chunks, and distributes them along the chain. The image distribution unit 240 receives a chain from the remote boot device 100 and transfers the chain transfer unit (chain reception unit and chain transmission unit) 241 that transfers the chain to the server 300 at the head of the chain, and the distribution target software image in chunks. A chunk dividing unit 242 for dividing and a chunk transmitting unit 243 for transmitting the chunk to the first server 300 shown in the chain are provided. The image distribution unit 240 may further include a distribution status receiving unit 244 that receives a chunk distribution status from the chain end server 300.

<サーバ>
サーバ300は、ブート部310と、イメージ転送部320とを備える。また、サーバ300は、HDD等の記憶部(図示省略)の所定領域に、イメージ保存部330を備える。また、サーバ300のRAM等のメインメモリ(図示省略)の所定領域に、チャンクテーブル341を記憶する。また、このメインメモリは、他のサーバ300から受信したチャンクおよびチェインを記憶する。受信したチャンクは、メインメモリ上に記憶された後、イメージ保存部330に記憶される。
<Server>
The server 300 includes a boot unit 310 and an image transfer unit 320. The server 300 also includes an image storage unit 330 in a predetermined area of a storage unit (not shown) such as an HDD. Further, the chunk table 341 is stored in a predetermined area of a main memory (not shown) such as a RAM of the server 300. The main memory stores chunks and chains received from other servers 300. The received chunk is stored in the main memory and then stored in the image storage unit 330.

ブート部310は、IPMI等のインタフェースによりリモートブート装置100から遠隔電源ONを受け付ける遠隔管理受付部311と、ブート対象のソフトウェアを選択して自身のサーバ300を起動する選択的ブート部312とを備える。この選択的ブート部312は、例えば、GRUB(GRand Unified Bootloader)等のブートローダである。この選択的ブート部312は、IPMIによる遠隔電源ONを受けると所定のソフトウェアをブートする。待機中のサーバ300のブート部310は、電源ONされると選択的ブート部312によって、イメージ転送部320の機能を実現するためのソフトウェアをブートする。また、サーバ300は、配信対象のソフトウェアイメージを構成するチャンクをすべて受信すると、選択的ブート部312によって、そのソフトウェアイメージを用いて自身のサーバ300を再起動させる。   The boot unit 310 includes a remote management accepting unit 311 that accepts remote power ON from the remote boot device 100 through an interface such as IPMI, and a selective boot unit 312 that selects boot target software and starts its own server 300. . The selective boot unit 312 is a boot loader such as GRUB (GRand Unified Bootloader), for example. The selective boot unit 312 boots predetermined software upon receiving a remote power ON by IPMI. When the power is turned on, the boot unit 310 of the waiting server 300 boots software for realizing the function of the image transfer unit 320 by the selective boot unit 312. In addition, when all the chunks constituting the distribution target software image are received, the server 300 causes the selective boot unit 312 to restart the server 300 using the software image.

イメージ転送部320は、チェイン転送部321と、チャンク受信部322と、チャンク転送部323と、チャンク保存部324とを備える。また、イメージ転送部320は、転送情報管理部325をさらに備えていてもよい。   The image transfer unit 320 includes a chain transfer unit 321, a chunk reception unit 322, a chunk transfer unit 323, and a chunk storage unit 324. The image transfer unit 320 may further include a transfer information management unit 325.

チェイン転送部321は、前のサーバ300またはイメージリポジトリ装置200からチェインを受信すると、このチェインを参照して次のサーバ300へ、チェインを転送する。また、チェイン転送部321は、受信したチェインをチャンク転送部323に通知し、チャンクテーブル341を生成する。チャンクテーブル341は、図9に例示するように、チャンクの識別情報であるチャンクIDごとに、そのチャンクの受信フラグ、送信フラグ、保存フラグおよびチャンクの内容である実データを示した情報である。各フラグは、それぞれそのチャンクを、受信済みか否か、送信済みか否か、図4のイメージ保存部330に保存済みか否かを管理するフラグであり、「0」が未、「1」が済を示す。   When the chain transfer unit 321 receives a chain from the previous server 300 or the image repository apparatus 200, the chain transfer unit 321 refers to this chain and transfers the chain to the next server 300. In addition, the chain transfer unit 321 notifies the chunk transfer unit 323 of the received chain, and generates a chunk table 341. As illustrated in FIG. 9, the chunk table 341 is information indicating, for each chunk ID that is identification information of the chunk, a reception flag, a transmission flag, a storage flag, and actual data that is the content of the chunk. Each flag is a flag for managing whether the chunk has been received, transmitted, and stored in the image storage unit 330 in FIG. 4, and “0” is not yet “1”. Indicates finished.

図4に戻る。チャンク受信部322は、他のサーバ300またはイメージリポジトリ装置200からチャンクを受信する。また、チャンク受信後、チャンクテーブル341(図9参照)における該当チャンクIDの受信フラグを「1」にする。   Returning to FIG. The chunk receiving unit 322 receives a chunk from another server 300 or the image repository apparatus 200. Further, after receiving the chunk, the reception flag of the corresponding chunk ID in the chunk table 341 (see FIG. 9) is set to “1”.

チャンク転送部323は、チャンクテーブル341(図9参照)を参照して、受信フラグが「1」となっているチャンクを取得し、チェインを参照して、次のサーバ300へ送信する。また、チャンク転送部323は、チャンクの送信が完了すると、チャンクテーブル341(図9参照)における当該チャンクの送信フラグを「1」にする。   The chunk transfer unit 323 refers to the chunk table 341 (see FIG. 9), acquires a chunk whose reception flag is “1”, refers to the chain, and transmits it to the next server 300. Further, when the chunk transmission is completed, the chunk transfer unit 323 sets the transmission flag of the chunk in the chunk table 341 (see FIG. 9) to “1”.

チャンク保存部324は、受信したチャンクをイメージ保存部330に保存する。また、チャンクの保存が完了すると、チャンクテーブル341(図9参照)における当該チャンクの保存フラグを「1」にする。なお、このチャンクテーブル341の送信フラグおよび保存フラグの双方が「1」となったチャンクの実データは、メインメモリ上のメモリ使用量削減のため、解放してもよい。解放は、所定周期でまとめて行ってもよいし、チャンクテーブル341の受信フラグが「1」になった時点で他のチャンクのフラグの値を確認し、各フラグの値がすべて「1」なら逐次解放してもよい。   The chunk storage unit 324 stores the received chunk in the image storage unit 330. When the chunk storage is completed, the storage flag of the chunk in the chunk table 341 (see FIG. 9) is set to “1”. Note that the actual data of the chunk in which both the transmission flag and the storage flag of the chunk table 341 are “1” may be released in order to reduce the memory usage on the main memory. The release may be performed collectively in a predetermined cycle, or when the reception flag of the chunk table 341 becomes “1”, the flag values of other chunks are confirmed, and if all the flag values are “1”. You may release sequentially.

転送情報管理部325は、チェインを参照し、自身がチェインの終端のサーバ300であるとき、どのチャンクを受信したかや、ソフトウェアイメージ全体の何%を受信したか等を示す配信状況をイメージリポジトリ装置200に通知する。   The transfer information management unit 325 refers to the chain, and when it is the server 300 at the end of the chain, the transfer information management unit 325 indicates the distribution status indicating which chunk has been received and what percentage of the entire software image has been received. Notify device 200.

イメージ保存部330は、受信したソフトウェアイメージのチャンクを保存する。   The image storage unit 330 stores a chunk of the received software image.

なお、このイメージ転送部320は、前記したチャンクの受信、送信および保存をそれぞれ並行に行うことにより、高速なバケツリレー的配信を実現する。そして、イメージ転送部320は、ソフトウェアイメージを構成するすべてのチャンクの受信、送信および保存が完了すると、選択的ブート部312の設定を変更し、イメージ保存部330のソフトウェアイメージ内のシステムによって起動するようにする。その後、サーバ300を再起動することにより、選択的ブート部312によってソフトウェアイメージ内のシステムが起動する。これにより、サーバ300は、図1の端末600に対しサービスを提供可能な状態になる。   The image transfer unit 320 realizes high-speed bucket relay distribution by performing reception, transmission, and storage of the chunks in parallel. When the image transfer unit 320 completes reception, transmission, and storage of all the chunks constituting the software image, the image transfer unit 320 changes the setting of the selective boot unit 312 and is activated by the system in the software image of the image storage unit 330. Like that. Thereafter, the system in the software image is started by the selective boot unit 312 by restarting the server 300. As a result, the server 300 can provide a service to the terminal 600 of FIG.

<動作手順>
<リモートブート装置>
次に、図10を用いて、図1のシステムの動作概要を説明する。ここでは、リモートブート装置100の動作を中心に説明する。
<Operation procedure>
<Remote boot device>
Next, an outline of the operation of the system shown in FIG. 1 will be described with reference to FIG. Here, the operation of the remote boot device 100 will be mainly described.

リモートブート装置100のブート要求受付部110は、保守者の端末装置等から、起動対象のサーバ300の台数と、このサーバ300へ配信したいソフトウェアイメージの種別であるイメージIDを含むブート要求(リモートブート要求)を受け付ける(S11)。   The boot request reception unit 110 of the remote boot device 100 receives a boot request (remote boot) including the number of servers 300 to be activated and an image ID that is a type of software image to be distributed to the server 300 from a maintenance person's terminal device or the like. (Request) is received (S11).

ブート要求受付部110は、ブート要求を受け付けるとイメージIDをイメージリポジトリ装置200に通知し(S12)、イメージリポジトリ装置200にそのソフトウェアイメージが存在するか否かを確認する。そのソフトウェアイメージが存在することが確認できると、ブート要求受付部110は、サーバ情報管理部130経由で、サーバ情報131(図5参照)を取得し(S13)、指定された台数のサーバ300を起動対象サーバとして選択する(S14:対象サーバ選択)。起動対象サーバの選択は、サーバ情報131において、利用可能状態のサーバ300のうち、上から必要台数を確保する、ランダムに選択する、ハードウェア性能のよいものを選択する等が考えられる。   When receiving the boot request, the boot request receiving unit 110 notifies the image repository apparatus 200 of the image ID (S12), and checks whether the software image exists in the image repository apparatus 200. If it can be confirmed that the software image exists, the boot request reception unit 110 acquires the server information 131 (see FIG. 5) via the server information management unit 130 (S13), and designates the specified number of servers 300. It selects as a starting object server (S14: Target server selection). In the server information 131, it is conceivable to select the server to be activated from the available servers 300 such as securing the required number from the top, selecting at random, or selecting a server with good hardware performance.

ブート要求受付部110は、起動対象サーバを選択すると、選択した起動対象サーバを、遠隔電源管理部120およびチェイン生成部140に通知する(S15)。そして、遠隔電源管理部120は、通知された起動対象サーバに対して、IPMI等の手段を用いて遠隔電源ONを行う(S16)。   When the boot request reception unit 110 selects the activation target server, the boot request reception unit 110 notifies the selected activation target server to the remote power management unit 120 and the chain generation unit 140 (S15). Then, the remote power management unit 120 turns on the remote power on the notified server to be activated using means such as IPMI (S16).

チェイン生成部140は、トポロジ情報管理部150経由でトポロジ情報151を取得し(S17)、チャンクの配信順序であるチェインを生成し(S18)、チェイン送信部160へ通知する(S19)。チェインの生成手順の詳細は、具体例を用いて後記する。そして、チェイン送信部160は、通知されたチェインをイメージリポジトリ装置200へ送信する(S20)。   The chain generation unit 140 acquires the topology information 151 via the topology information management unit 150 (S17), generates a chain that is the distribution order of chunks (S18), and notifies the chain transmission unit 160 (S19). Details of the chain generation procedure will be described later using a specific example. Then, the chain transmitting unit 160 transmits the notified chain to the image repository apparatus 200 (S20).

以上のようにして、リモートブート装置100は、チャンクの配信手順であるチェインを、イメージリポジトリ装置200へ送信する。イメージリポジトリ装置200は、送信されたチェインに従い、まず、チェインの先頭の追加対象サーバへチャンクを送信し、後は追加対象サーバ間で、チェインに従ったチャンクの転送処理が行われる。   As described above, the remote boot device 100 transmits a chain, which is a chunk distribution procedure, to the image repository device 200. The image repository apparatus 200 first transmits a chunk to the addition target server at the head of the chain in accordance with the transmitted chain, and thereafter, chunk transfer processing according to the chain is performed between the addition target servers.

<チェイン生成手順>
ここで、図11および図12を用いて、図4のリモートブート装置100のチェイン生成部140のチェイン生成手順(図10のS18)を詳細に説明する。
<Chain generation procedure>
Here, the chain generation procedure (S18 in FIG. 10) of the chain generation unit 140 of the remote boot device 100 in FIG. 4 will be described in detail with reference to FIGS.

ここでは、図6に例示するネットワークトポロジにおいて、Svr3,Svr4,Svr6,Svr7が起動対象サーバとして選択された場合を例に説明する。なお、図4のチェイン生成部140は、チェイン生成に際して、チェイン生成状況を示すテーブルである処理テーブル(図12(a)〜(l)参照)を生成する。なお、チェイン生成処理は、トポロジ情報151(図7参照)を参照して行われる。また、チェイン生成処理は、スイッチ700ごとに処理を進めていくため、処理中のスイッチ700をSとして説明する。また、図12(a)〜(l)それぞれは、Sが推移したときの処理テーブルと、チェインとを示す。   Here, a case where Svr3, Svr4, Svr6, and Svr7 are selected as activation target servers in the network topology illustrated in FIG. 6 will be described as an example. Note that the chain generation unit 140 in FIG. 4 generates a processing table (see FIGS. 12A to 12I) that is a table indicating the chain generation status at the time of chain generation. The chain generation process is performed with reference to the topology information 151 (see FIG. 7). Further, since the chain generation process proceeds for each switch 700, the switch 700 being processed will be described as S. Each of FIGS. 12A to 12L shows a processing table and a chain when S changes.

チェイン生成部140は、チェインの処理を開始すると、まず、チャンクの配信元となるイメージリポジトリ装置200(Rep)のアドレスが先頭となるチェインを生成する(S1)。そして、チェイン生成部140は、トポロジ情報151を参照して、この起動対象サーバに直接的または間接的に接続されるスイッチ700群のスイッチIDをキーとする処理テーブルを生成し、その値である処理フラグをすべて「0」に初期化する(S2、図12の(a)参照)。   When chain processing starts, the chain generation unit 140 first generates a chain whose head is the address of the image repository device 200 (Rep) that is the chunk distribution source (S1). Then, the chain generation unit 140 refers to the topology information 151, generates a processing table using the switch ID of the switch 700 group directly or indirectly connected to the activation target server as a key, and is the value thereof. All the processing flags are initialized to “0” (S2, see FIG. 12A).

そして、チェイン生成部140は、リポジトリ(イメージリポジトリ装置200)が収容されているスイッチ700(図7のSW6)をSとして処理を開始する(S3)。   Then, the chain generation unit 140 starts the processing with the switch 700 (SW6 in FIG. 7) in which the repository (image repository apparatus 200) is accommodated as S (S3).

チェイン生成部140は、Sのスイッチ700に収容されている1以上の起動対象サーバのアドレスをチェイン末尾(チェインに、直前に追加したサーバ300の次)に追加する(S4)。例えば、図6のSW6に収容される起動対象サーバはSvr7のみなので、チェイン生成部140は、Svr7のアドレスのみをチェインに追加する。そして、チェイン生成部140は、図12の(b)に示すように処理テーブル中のSW6の処理フラグを「1」にする(S5)。   The chain generation unit 140 adds the addresses of one or more startup target servers accommodated in the S switch 700 to the end of the chain (next to the chain, immediately after the server 300 added immediately before) (S4). For example, since the activation target server accommodated in SW6 in FIG. 6 is only Svr7, the chain generation unit 140 adds only the address of Svr7 to the chain. Then, the chain generation unit 140 sets the processing flag of SW6 in the processing table to “1” as shown in FIG. 12B (S5).

その後、トポロジ上にSの親スイッチがあれば(S6のYes)、チェイン生成部140は、このSを親スイッチとして(S7)、S8へ処理を進める。例えば、図6のSW6には親スイッチ(SW3)があるので、チェイン生成部140は、SをSW3に移し、処理をS8へ進める。   Thereafter, if there is a parent switch of S on the topology (Yes in S6), the chain generation unit 140 sets this S as a parent switch (S7), and proceeds to S8. For example, since SW6 in FIG. 6 has a parent switch (SW3), the chain generation unit 140 moves S to SW3 and advances the process to S8.

一方、トポロジ上にSの親スイッチがなければ(S6のNo)、チェイン生成部140は、チェイン生成処理を終了する(S12)。つまり、生成したチェインを、図4のチェイン転送部321に出力する。   On the other hand, if there is no parent switch of S on the topology (No in S6), the chain generation unit 140 ends the chain generation process (S12). That is, the generated chain is output to the chain transfer unit 321 in FIG.

S7の後、チェイン生成部140は、処理テーブルを参照して、Sに処理フラグが「0」の子スイッチがなければ(S8のNo)、処理テーブル中のSの処理フラグを「1」にして(S11)、S6へ戻る。例えば、Sが、図6のSW3であるとき、図12(c)に示す処理テーブルには処理フラグが「0」であるSW3の子スイッチ(SW6)はないので、チェイン生成部140は、処理テーブル中のSW3の処理フラグを「1」にして(図12の(c)参照)、S6へ戻る。ここで、図6のSW3には親スイッチ(SW0)があるので(S6のYes)、チェイン生成部140は、Sを、親スイッチであるSW0にする(S7)。つまり、チェイン生成部140は、Sに未処理の子スイッチがなければ、Sを、親スイッチに戻す。   After S7, the chain generation unit 140 refers to the processing table, and if S does not have a child switch whose processing flag is “0” (No in S8), sets the processing flag of S in the processing table to “1”. (S11), the process returns to S6. For example, when S is SW3 in FIG. 6, there is no child switch (SW6) of SW3 whose processing flag is “0” in the processing table shown in FIG. The processing flag of SW3 in the table is set to “1” (see FIG. 12C), and the process returns to S6. Here, since SW3 in FIG. 6 has a parent switch (SW0) (Yes in S6), the chain generation unit 140 sets S to SW0, which is the parent switch (S7). That is, if there is no unprocessed child switch in S, chain generation unit 140 returns S to the parent switch.

一方、チェイン生成部140は、処理テーブルを参照し、Sに、処理フラグが「0」の子スイッチがあれば(S8のYes)、つまり、未処理の子スイッチがあれば、チェイン生成部140は、Sを、未処理の子スイッチ、つまり、処理フラグが「0」の子スイッチのいずれかに移す(S9)。そして、S10へ処理を進める。例えば、図12の(d)の処理テーブルに示すように、SW0には処理フラグが「0」の子スイッチが2つ(図6のSW1およびSW2)あるため、チェイン生成部140は、Sを、SW1またはSW2のいずれか(例えば、SW1)にする。   On the other hand, the chain generation unit 140 refers to the processing table, and if there is a child switch whose processing flag is “0” in S (Yes in S8), that is, if there is an unprocessed child switch, the chain generation unit 140 Moves S to an unprocessed child switch, that is, one of the child switches whose processing flag is “0” (S9). Then, the process proceeds to S10. For example, as shown in the processing table of FIG. 12D, since SW0 has two child switches whose processing flag is “0” (SW1 and SW2 in FIG. 6), the chain generation unit 140 sets S to , SW1 or SW2 (for example, SW1).

S9の後、チェイン生成部140は、Sの子スイッチがあれば(S10のYes)、S8へ戻る。一方、Sの子スイッチがなければ(S10のNo)、S4へ戻る。つまり、処理対象Sが、サーバ300を収容するスイッチ700となった場合、S4を実行し、スイッチ700に収容される起動対象サーバのアドレスをチェインに追加する。例えば、Sが、図6のSW1であるとき、このSW1は、起動対象サーバ(Svr3,Svr4,Svr6,Svr7)を収容していないので、チェインの追加は行わず、チェイン生成部140は、処理テーブル中のSW1の処理フラグを「1」とする(S5、図12の(e)参照)。そして、このSW1には親スイッチ(図6のSW0)があるので(S6のYes)、チェイン生成部140は、Sを、S1の親スイッチ(SW0)に戻す(S7)。ここで、図12の(f)の処理テーブルに示すように、SW0には、処理フラグが「0」の子スイッチ(SW2)があるので(S8のYes)、Sを、SW2に移す(S9)。   After S9, if there is an S child switch (Yes in S10), the chain generation unit 140 returns to S8. On the other hand, if there is no child switch of S (No in S10), the process returns to S4. That is, when the processing target S is the switch 700 that accommodates the server 300, S4 is executed and the address of the activation target server accommodated in the switch 700 is added to the chain. For example, when S is SW1 in FIG. 6, since SW1 does not accommodate the servers to be activated (Svr3, Svr4, Svr6, Svr7), the chain generation unit 140 does not add a chain. The processing flag of SW1 in the table is set to “1” (S5, see FIG. 12E). Since this SW1 has a parent switch (SW0 in FIG. 6) (Yes in S6), the chain generation unit 140 returns S to the parent switch (SW0) in S1 (S7). Here, as shown in the processing table of (f) of FIG. 12, since SW0 has a child switch (SW2) whose processing flag is “0” (Yes in S8), S is moved to SW2 (S9). ).

図6のSW2には子スイッチ(SW4)があり(S10のYes)、かつ、図12の(g)の処理テーブルに示すように、このSW4の処理フラグは「0」なので(S8のYes)、Sを、SW4にする(S9)。このSW4には、子スイッチがなく(S10のNo)、SW4は、起動対象サーバ(Svr3,Svr4)を収容するので、チェイン生成部140は、このSvr3,Svr4のアドレスをチェインに追加する(S4、図12の(h)参照)。また、処理テーブルにおけるSW4の処理フラグを「1」にする(S5、図12の(h)参照)。   SW2 in FIG. 6 has a child switch (SW4) (Yes in S10), and as shown in the processing table of (g) in FIG. 12, the processing flag of this SW4 is “0” (Yes in S8). , S is set to SW4 (S9). Since this SW4 has no child switch (No in S10) and SW4 accommodates the servers to be activated (Svr3, Svr4), the chain generation unit 140 adds the addresses of Svr3 and Svr4 to the chain (S4). FIG. 12 (h)). Further, the processing flag of SW4 in the processing table is set to “1” (S5, refer to (h) of FIG. 12).

次に、図6のSW4には親スイッチ(SW2)があるので(S6のYes)、チェイン生成部140は、Sを、SW2に戻す(S7)。図12の(i)の処理テーブルに示すように、SW2には処理フラグが「0」の子スイッチ(図6のSW5)があるので(S8のYes)、Sを、SW5に移す(S9)。このSW5には、子スイッチがなく(S10のNo)、SW5は、起動対象サーバ(Svr6)を収容しているので、チェイン生成部140は、このSvr6のアドレスをチェインに追加し(S4)、処理テーブルにおけるSW5の処理フラグを「1」にする(S5、図12の(j)参照)。   Next, since SW4 in FIG. 6 has a parent switch (SW2) (Yes in S6), the chain generation unit 140 returns S to SW2 (S7). As shown in the processing table of (i) of FIG. 12, since SW2 has a child switch (SW5 of FIG. 6) whose processing flag is “0” (Yes in S8), S is moved to SW5 (S9). . Since there is no child switch in SW5 (No in S10) and SW5 accommodates the activation target server (Svr6), the chain generation unit 140 adds the address of Svr6 to the chain (S4). The processing flag of SW5 in the processing table is set to “1” (S5, refer to (j) of FIG. 12).

このSW5には親スイッチ(図6のSW2)があるので(S6のYes)、チェイン生成部140は、Sを、SW2に戻す(S7)。ここで、図12の(k)の処理テーブルに示すように、SW2には処理フラグが「0」の子スイッチはないので(S8のNo)、処理テーブルにおけるSW2の処理フラグを「1」にする(S5)。   Since this SW5 has a parent switch (SW2 in FIG. 6) (Yes in S6), the chain generation unit 140 returns S to SW2 (S7). Here, as shown in the processing table of FIG. 12 (k), SW2 has no child switch with the processing flag “0” (No in S8), so the processing flag of SW2 in the processing table is set to “1”. (S5).

その後、このSW2には親スイッチ(図6のSW0)があるので(S6のYes)、チェイン生成部140は、Sを、SW0に戻す(S7)。図12の(l)の処理テーブルに示すように、このSW0には処理フラグが「0」の子スイッチはないので(S8のNo)、処理テーブルにおけるSW0の処理フラグを「1」にする(S11)。このSW0には親スイッチがないので(S6のNo)、チェイン生成部140は、チェイン生成処理を終了し(S12)、転送順序であるチェイン(図12の(l)に示すチェイン)をチェイン転送部321に出力する。このように、チェイン生成部140は、図6に例示するネットワークトポロジにおいて、イメージリポジトリ装置200をスタート地点として、次の起動対象サーバまでのホップ数(経由するスイッチ700)が最小となる起動対象サーバを選択し、チェインに追加していく。よって、生成されるチェインは、当該起動対象サーバ間で経由するスイッチ数が最小となるように並べたものとすることができる。   Thereafter, since SW2 has a parent switch (SW0 in FIG. 6) (Yes in S6), the chain generation unit 140 returns S to SW0 (S7). As shown in the processing table of (l) of FIG. 12, since there is no child switch with the processing flag “0” in this SW0 (No in S8), the processing flag of SW0 in the processing table is set to “1” ( S11). Since SW0 has no parent switch (No in S6), the chain generation unit 140 ends the chain generation processing (S12), and transfers the chain that is the transfer order (the chain shown in (l) of FIG. 12). To the unit 321. As described above, the chain generation unit 140 starts the image repository apparatus 200 as a start point in the network topology illustrated in FIG. 6 and has the minimum number of hops to the next start target server (the switch 700 through). Select and add to the chain. Therefore, the generated chains can be arranged so that the number of switches passing between the activation target servers is minimized.

<イメージリポジトリ装置>
次に、図13を用いて、イメージリポジトリ装置200の動作手順を説明する。イメージリポジトリ装置200の配信要求受付部210は、配信対象のソフトウェアイメージのイメージIDをリモートブート装置100から受け取ると(S21)、イメージ情報管理部220経由でイメージ情報221(図8参照)を取得し(S22)、ソフトウェアイメージのイメージパス(パス)をチャンク分割部242に通知する(S23)。
<Image repository device>
Next, the operation procedure of the image repository apparatus 200 will be described with reference to FIG. When receiving the image ID of the software image to be distributed from the remote boot device 100 (S21), the distribution request receiving unit 210 of the image repository apparatus 200 acquires the image information 221 (see FIG. 8) via the image information management unit 220. (S22) The image division (path) of the software image is notified to the chunk division unit 242 (S23).

チャンク分割部242は、S23で通知されたイメージパスをもとに、配信対象のソフトウェアイメージ(イメージ)をストレージ230から取得し(S24)、このソフトウェアイメージを、チャンクに分割する(S25)。チャンク分割部242は、分割したチャンクを、イメージリポジトリ装置200のメインメモリ上に展開する。   The chunk division unit 242 acquires a distribution target software image (image) from the storage 230 based on the image path notified in S23 (S24), and divides the software image into chunks (S25). The chunk division unit 242 develops the divided chunks on the main memory of the image repository apparatus 200.

また、イメージリポジトリ装置200の配信要求受付部210は、リモートブート装置100からチェインを受信すると(S26)、受信したチェインをチェイン転送部241へ通知する(S27)。そして、チェイン転送部241は、通知されたチェインを参照し、チェイン先頭のサーバ300のアドレスに対してチェインを転送する(S28)。また、配信要求受付部210は、S26で受信したチェインを、チャンク送信部243に通知する(S29)。チャンク送信部243は、チャンク分割部242によってメインメモリ上に展開されたチャンクを取得し(S30)、取得したチャンクをチェインの先頭のサーバ300に送信する(S31)。   Further, when receiving the chain from the remote boot device 100 (S26), the distribution request receiving unit 210 of the image repository device 200 notifies the chain transfer unit 241 of the received chain (S27). Then, the chain transfer unit 241 refers to the notified chain and transfers the chain to the address of the server 300 at the head of the chain (S28). Further, the distribution request receiving unit 210 notifies the chunk transmission unit 243 of the chain received in S26 (S29). The chunk transmission unit 243 acquires the chunk developed on the main memory by the chunk division unit 242 (S30), and transmits the acquired chunk to the server 300 at the head of the chain (S31).

また、前記したとおり、イメージリポジトリ装置200は、配信状況受付部244により、チェインの終端のサーバ300からチャンクの配信状況を受信してもよい(S32)。ここでの配信状況は、例えば、終端のサーバ300が所定時間おきに、受信したチャンク数や、ソフトウェアイメージ全体に対する受信したチャンク割合等を通知するものである。   Further, as described above, the image repository apparatus 200 may receive the distribution status of the chunk from the server 300 at the end of the chain by the distribution status reception unit 244 (S32). The distribution status here is, for example, that the terminal server 300 notifies the number of received chunks, the ratio of received chunks with respect to the entire software image, and the like every predetermined time.

<サーバ>
次に、図14および図15を用いて、サーバ300の動作を説明する。まず、図14を用いてチェインの終端のサーバ300以外のサーバ300の動作を説明する。
<Server>
Next, the operation of the server 300 will be described with reference to FIGS. 14 and 15. First, the operation of the server 300 other than the server 300 at the end of the chain will be described with reference to FIG.

図14に示すように、サーバ300の遠隔管理受付部311は、リモートブート装置100からIPMI等のインタフェースによって遠隔電源ONの指令を受け付けると(S41)、選択的ブート部312にマシンのブートを指示する(S42)。ここで、選択的ブート部312はイメージ転送部320を起動する。   As shown in FIG. 14, when the remote management receiving unit 311 of the server 300 receives a remote power ON command from the remote boot device 100 through an interface such as IPMI (S41), the remote boot receiving unit 311 instructs the selective boot unit 312 to boot the machine. (S42). Here, the selective boot unit 312 activates the image transfer unit 320.

チェイン転送部321は、イメージリポジトリ装置200または他のサーバ300からのチェイン(必要であればパラメータ情報)が送信されると(S43)、このチェインを、チェインの次のサーバ300に送信する(S44)。また、チェイン転送部321は、チャンク転送部323にチェインを通知する(S45)。また、チェイン転送部321は、チャンクテーブル(図9参照)を生成する(S46)。   When the chain (parameter information if necessary) is transmitted from the image repository apparatus 200 or another server 300 (S43), the chain transfer unit 321 transmits this chain to the server 300 next to the chain (S44). ). The chain transfer unit 321 notifies the chunk transfer unit 323 of the chain (S45). Further, the chain transfer unit 321 generates a chunk table (see FIG. 9) (S46).

チャンク受信部322は、イメージリポジトリ装置200または他のサーバ300からチャンクを受信すると(S47)、受信したチャンクを、チェイン転送部321経由でチャンクテーブル341に登録する(S48)。つまり、チャンク受信部322は、チャンクテーブル341における、受信チャンクのチャンクIDの受信フラグを「1」にする。   When the chunk receiving unit 322 receives a chunk from the image repository apparatus 200 or another server 300 (S47), it registers the received chunk in the chunk table 341 via the chain transfer unit 321 (S48). That is, the chunk reception unit 322 sets the reception flag of the chunk ID of the reception chunk in the chunk table 341 to “1”.

その後、チャンク転送部323は、チャンクテーブル341を参照して、受信フラグが「1」となっているチャンクを取得し(S49)、チェインにおける次のサーバ300へ送信する(S50)。また、チャンク保存部324は、受信フラグが「1」となっているチャンクを取得し(S51)、イメージ保存部330に保存する(S52)。このようにして、チャンクの送信、保存が完了すると、チャンク転送部323およびチャンク保存部324はそれぞれ、チャンクテーブル341における当該チャンクの送信フラグ、保存フラグを「1」にする。この後、チャンク転送部323は、チャンクテーブル341を参照して、受信、送信およびイメージ保存部330への保存が実行済みである断片を、メインメモリ上から削除する。   Thereafter, the chunk transfer unit 323 refers to the chunk table 341, acquires a chunk whose reception flag is “1” (S49), and transmits it to the next server 300 in the chain (S50). Also, the chunk storage unit 324 acquires a chunk whose reception flag is “1” (S51), and stores it in the image storage unit 330 (S52). When the transmission and storage of the chunk is completed in this way, the chunk transfer unit 323 and the chunk storage unit 324 set the transmission flag and storage flag of the chunk in the chunk table 341 to “1”, respectively. Thereafter, the chunk transfer unit 323 refers to the chunk table 341, and deletes fragments that have been received, transmitted, and stored in the image storage unit 330 from the main memory.

この後、各サーバ300において、ソフトウェアイメージを構成するすべてのチャンクの受信、送信および保存が完了すると、チェイン転送部321は、完了通知を選択的ブート部312へ出力する(S53)。この完了通知を受けた選択的ブート部312は、ブート対象をイメージ保存部330のソフトウェアイメージ内のシステムに変更して、サーバ300を再起動する(S54)。これにより、選択的ブート部312によってソフトウェアイメージ内のシステムが起動する。   Thereafter, when reception, transmission, and storage of all the chunks constituting the software image are completed in each server 300, the chain transfer unit 321 outputs a completion notification to the selective boot unit 312 (S53). Upon receiving this completion notification, the selective boot unit 312 changes the boot target to the system in the software image of the image storage unit 330 and restarts the server 300 (S54). As a result, the system in the software image is activated by the selective boot unit 312.

このようにサーバ300は、チャンクの受信、送信および保存処理(図14のシーケンス中の破線で囲まれている部分)それぞれを並行に行うので、高速なバケツリレー的配信を実現できる。   As described above, the server 300 performs the chunk reception, transmission, and storage processing (portions surrounded by the broken line in the sequence of FIG. 14) in parallel, so that high-speed bucket relay distribution can be realized.

最後に、図15を用いて、チェインの終端のサーバ300がチャンクの配信状況をイメージリポジトリ装置200に通知するときの動作を説明する。終端のサーバ300は、図14のS41〜S43と同様に、リモートブート装置100からの遠隔電源ONを受け(S61)、ブートすると(S62)、サーバ300のチェイン転送部321は、イメージリポジトリ装置200または他のサーバ300から送信されたチェインを受信する(S63)。その後、チェイン転送部321は、このチェインを転送情報管理部325へ通知し(S64)、チャンクテーブル341を生成する(S65)。ここで、終端のサーバ300は、次のサーバ300へのチャンクの送信を行わないので、チャンクテーブル341における各チャンクの送信フラグを「1」にしておく(図16参照)。   Finally, the operation when the server 300 at the end of the chain notifies the image repository apparatus 200 of the distribution status of the chunk will be described with reference to FIG. Similarly to S41 to S43 in FIG. 14, the terminal server 300 receives a remote power ON from the remote boot device 100 (S61) and boots (S62), the chain transfer unit 321 of the server 300 causes the image repository device 200 to Alternatively, the chain transmitted from the other server 300 is received (S63). Thereafter, the chain transfer unit 321 notifies the transfer information management unit 325 of this chain (S64), and generates a chunk table 341 (S65). Here, since the terminal server 300 does not transmit the chunk to the next server 300, the transmission flag of each chunk in the chunk table 341 is set to “1” (see FIG. 16).

チャンク受信部322がイメージリポジトリ装置200または他のサーバ300からチャンクを受信すると(S66)、図14のS48と同様にチャンクテーブル341への登録を行う(S67)。そして、チャンクの受信を確認したチャンク保存部324は、図14のS51,52と同様に、チャンクの取得およびイメージ保存部330への保存を行い(S68、S69)、チャンク保存部324は、チャンクテーブル341における当該チャンクの保存フラグを「1」にする。転送情報管理部325は、チェイン転送部321経由で、チャンクテーブル341に示される各チャンクの情報(チャンク情報)を取得すると(S70)、このチャンク情報を含む配信状況をイメージリポジトリ装置200へ送信する(S71)。これにより、イメージリポジトリ装置200は、チェインの終端のサーバ300に、どの程度チャンクが到達しているかを確認することができる。S72およびS73は、図14のS53およびS54と同様なので説明を省略する。   When the chunk receiving unit 322 receives a chunk from the image repository apparatus 200 or another server 300 (S66), it registers in the chunk table 341 as in S48 of FIG. 14 (S67). Then, the chunk storage unit 324 that has confirmed the reception of the chunk performs chunk acquisition and storage in the image storage unit 330 (S68, S69), similar to S51 and 52 of FIG. 14, and the chunk storage unit 324 The storage flag of the chunk in the table 341 is set to “1”. When the transfer information management unit 325 acquires information (chunk information) of each chunk indicated in the chunk table 341 via the chain transfer unit 321 (S70), the transfer information management unit 325 transmits the distribution status including the chunk information to the image repository apparatus 200. (S71). As a result, the image repository apparatus 200 can check how many chunks have reached the server 300 at the end of the chain. Since S72 and S73 are the same as S53 and S54 in FIG.

以上説明したシステムによれば、イメージリポジトリ装置200から配信されたソフトウェアイメージのチャンクを、チェインに従い起動対象サーバ間でバケツリレー式に転送するので、ソフトウェアイメージを迅速に配信できる。また、リモートブート装置100は、チェインを生成するとき、チャンクの配信順序を、起動対象サーバ間で経由するスイッチ数ができるだけ少なくなるような順序とする。よって、ネットワーク内の通信帯域が無駄に占有されるおそれがなくなる。   According to the system described above, since the chunk of the software image distributed from the image repository apparatus 200 is transferred in a bucket relay manner between the activation target servers according to the chain, the software image can be quickly distributed. Further, when generating the chain, the remote boot device 100 sets the distribution order of the chunks so that the number of switches passing between the activation target servers is as small as possible. Therefore, there is no possibility that the communication band in the network is occupied unnecessarily.

なお、前記した実施の形態において、リモートブート装置100とイメージリポジトリ装置200とは別個の装置として説明したが、これらは同じ装置で実現するようにしてもよい。   In the above-described embodiment, the remote boot device 100 and the image repository device 200 have been described as separate devices, but these may be realized by the same device.

また、ソフトウェアイメージを分割するときのチャンクサイズは、事前に固定的に与えられたサイズでもよいし、リモートブート装置100からイメージIDと共に動的に通知されたサイズであってもよい。   Further, the chunk size when dividing the software image may be a fixed size given in advance, or may be a size dynamically notified from the remote boot device 100 together with the image ID.

なお、サーバ300のチャンク送信部243は、チャンクを次のサーバ300に送信するとき、次のサーバ300と単一のコネクションを確立して送信してもよいし、複数のコネクションを確立してチャンクを並行に送信してもよい。例えば、N本のコネクションを用いた場合、チャンク送信部243は、各コネクションでそれぞれ総チャンク数の1/Nのチャンクを送信する。このようにすることで、サーバ300間でのチャンクの送信を速やかに行うことができる。   In addition, when transmitting the chunk to the next server 300, the chunk transmission unit 243 of the server 300 may establish and transmit a single connection with the next server 300, or establish a plurality of connections and perform chunking. May be sent in parallel. For example, when N connections are used, the chunk transmission unit 243 transmits 1 / N chunks of the total number of chunks for each connection. By doing in this way, transmission of the chunk between the servers 300 can be performed promptly.

また、イメージリポジトリ装置200の配信状況受付部244は、終端のサーバ300から配信状況を受信する代わりに、終端のサーバ300からチャンク自体を受信し、その受信したチャンクをもとに配信状況を計算するようにしてもよい。また、この配信状況受付部244は外部装置からの要求を受け付けて、現在の配信状況を返してもよい。   Further, the distribution status reception unit 244 of the image repository apparatus 200 receives the chunk itself from the terminal server 300 instead of receiving the distribution status from the terminal server 300, and calculates the distribution status based on the received chunk. You may make it do. Further, the distribution status reception unit 244 may receive a request from an external device and return the current distribution status.

さらに、イメージリポジトリ装置200のチェイン転送部241は、追加対象サーバへのチェイン転送時に、これから送信するソフトウェアイメージの容量や、通信に使うポート番号、コネクション数等のパラメータを送信してもよい。このパラメータの値は、チェイン送信時に動的に決定してもよいし、静的な値を予め定めておいてもよい。   Furthermore, the chain transfer unit 241 of the image repository apparatus 200 may transmit parameters such as the capacity of the software image to be transmitted, the port number used for communication, and the number of connections at the time of chain transfer to the addition target server. The value of this parameter may be determined dynamically at the time of chain transmission, or a static value may be determined in advance.

また、リモートブート装置100で生成されたチェインは、イメージリポジトリ装置200経由で、チェインに記載された各起動対象サーバ間で転送するものとしたが、これに限定されない。例えば、リモートブート装置100から直接、イメージリポジトリ装置200および起動対象サーバそれぞれへ配信してもよいし、チェインを受信したイメージリポジトリ装置200が、起動対象サーバそれぞれへ配信してもよい。   In addition, the chain generated by the remote boot device 100 is transferred between each activation target server described in the chain via the image repository device 200. However, the present invention is not limited to this. For example, it may be distributed directly from the remote boot device 100 to each of the image repository device 200 and the activation target server, or the image repository device 200 that has received the chain may be distributed to each of the activation target servers.

100 リモートブート装置
110 ブート要求受付部
120 遠隔電源管理部
130 サーバ情報管理部
131 サーバ情報
140 チェイン生成部
150 トポロジ情報管理部
151 トポロジ情報
160 チェイン送信部
200 イメージリポジトリ装置
210 配信要求受付部
220 イメージ情報管理部
221 イメージ情報
230 ストレージ
240 イメージ配信部
241,321 チェイン転送部
242 チャンク分割部
243 チャンク送信部
244 配信状況受付部
300 サーバ
310 ブート部
311 遠隔管理受付部
312 選択的ブート部
320 イメージ転送部
322 チャンク受信部
323 チャンク転送部
324 チャンク保存部
325 転送情報管理部
330 イメージ保存部
341 チャンクテーブル
400 管理ネットワーク
500 サービスネットワーク
600 端末
700 スイッチ
DESCRIPTION OF SYMBOLS 100 Remote boot apparatus 110 Boot request reception part 120 Remote power supply management part 130 Server information management part 131 Server information 140 Chain generation part 150 Topology information management part 151 Topology information 160 Chain transmission part 200 Image repository apparatus 210 Distribution request reception part 220 Image information Management unit 221 Image information 230 Storage 240 Image distribution unit 241, 321 Chain transfer unit 242 Chunk division unit 243 Chunk transmission unit 244 Distribution status reception unit 300 Server 310 Boot unit 311 Remote management reception unit 312 Selective boot unit 320 Image transfer unit 322 Chunk receiving unit 323 Chunk transfer unit 324 Chunk storage unit 325 Transfer information management unit 330 Image storage unit 341 Chunk table 400 Management network 500 service network 600 terminal 700 switch

Claims (5)

サーバおよび当該サーバ同士を接続するスイッチがツリー構造で接続されるネットワークにおいて、クラスタに追加する前記サーバの遠隔電源オンの指示を行い、前記サーバを動作させるためのソフトウェアイメージを、イメージリポジトリ装置に配信させるリモートブート装置が、
前記クラスタへの追加対象サーバの追加台数および前記追加対象サーバへ配信するソフトウェアイメージの種別を含む追加指示の入力を受け付けるステップと、
前記入力されたソフトウェアイメージの種別を、前記イメージリポジトリ装置へ送信するステップと、
前記入力された追加指示に基づき、前記サーバそれぞれのIDおよび当該サーバが前記クラスタに追加可能か否かを示したサーバ情報を読み出し、前記読み出したサーバ情報に示されるサーバのうち、追加可能なサーバを前記クラスタへの追加対象サーバとして前記追加指示に示される台数選択し、前記選択した追加対象サーバそれぞれへの遠隔電源オンの指示を、前記管理ネットワークを介して送信するステップと、
前記イメージリポジトリ装置、前記サーバおよび当該サーバを接続するスイッチの接続関係を示したトポロジ情報を参照して、前記ソフトウェアイメージを分割した断片を、前記追加対象サーバ間で転送するときの前記追加対象サーバの順序を含む転送指示情報を生成するステップと、
前記生成した転送指示情報を前記イメージリポジトリ装置へ送信するステップとを実行し、
前記イメージリポジトリ装置が、
前記送信された種別のソフトウェアイメージを分割し、前記分割したソフトウェアイメージの断片と、前記転送指示情報とを、前記転送指示情報に含まれる転送順序の最初の前記起動対象サーバへ送信するステップを実行し、
前記転送指示情報および前記ソフトウェアイメージの断片を受信した追加対象サーバそれぞれが、
前記受信したソフトウェアイメージの断片を、前記転送指示情報において自身のサーバの次に前記断片を転送すべき追加対象サーバへ転送し、前記自身のサーバのイメージ保存部に保存する処理を、前記ソフトウェアイメージを構成するすべての断片を受信し、転送するまで繰り返すステップと、
前記イメージ保存部に保存されたソフトウェアイメージから前記自身のサーバを起動させるステップとを実行し、
前記リモートブート装置が前記転送指示情報を生成するとき、
前記追加対象サーバ間で転送するときの前記追加対象サーバの順序は、前記トポロジ情報を参照して、前記追加対象サーバ間で経由する前記スイッチの数が最小となるような順序とすることを特徴とするソフトウェアイメージ配信方法。
In a network in which a server and switches that connect the servers are connected in a tree structure, the server to be added to a cluster is instructed to remotely turn on and a software image for operating the server is distributed to the image repository device Remote boot device
Receiving an input of an addition instruction including the number of servers to be added to the cluster and the type of software image to be distributed to the servers to be added;
Transmitting the type of the input software image to the image repository device;
Based on the input addition instruction, the server information indicating whether the server ID and whether or not the server can be added to the cluster is read, and the server that can be added among the servers indicated in the read server information. Selecting the number of servers indicated in the addition instruction as an addition target server to the cluster, and transmitting a remote power-on instruction to each of the selected addition target servers via the management network;
The addition target server when the fragment obtained by dividing the software image is transferred between the addition target servers with reference to the topology information indicating the connection relationship between the image repository device, the server and the switch connecting the server Generating transfer instruction information including the order of:
Performing the step of transmitting the generated transfer instruction information to the image repository device;
The image repository device is
The step of dividing the software image of the transmitted type and transmitting the fragment of the divided software image and the transfer instruction information to the first server to be activated in the transfer order included in the transfer instruction information is executed. And
Each of the addition target servers that has received the transfer instruction information and the software image fragment,
The process of transferring the received piece of the software image to the addition target server to which the piece is transferred next to its own server in the transfer instruction information and storing it in the image storage unit of the own server. Receiving and forwarding all the fragments that make up the
Executing the own server from a software image stored in the image storage unit;
When the remote boot device generates the transfer instruction information,
The order of the addition target servers when transferring between the addition target servers is such that the number of the switches passing between the addition target servers is minimized with reference to the topology information. Software image distribution method.
前記サーバそれぞれは、
前記受信したソフトウェアイメージの断片と、前記断片ごとに、当該断片の受信、送信および前記イメージ保存部への保存それぞれについて実行済みか否かを示すチャンクテーブルとを記憶するメインメモリを備えており、
前記チャンクテーブルを参照して、受信済みとなっている前記断片について、当該断片の送信または前記イメージ保存部への保存を行うステップと、
前記断片の送信または前記イメージ保存部への保存を行ったとき、前記チャンクテーブルにおける当該断片について送信または前記イメージ保存部への保存を実行済みに書き換えるステップと、
前記チャンクテーブルを参照して、前記受信、送信およびイメージ保存部への保存が実行済みである断片を、前記メインメモリ上から削除するステップとを実行することを特徴とする請求項1に記載のソフトウェアイメージ配信方法。
Each of the servers
A main memory for storing the fragment of the received software image and a chunk table indicating whether or not the fragment is received, transmitted, and stored in the image storage unit for each fragment;
With reference to the chunk table, for the fragment that has been received, transmitting the fragment or storing in the image storage unit;
When the fragment is transmitted or stored in the image storage unit, the step of rewriting the transmitted or stored in the image storage unit for the fragment in the chunk table is executed,
2. The step of referring to the chunk table and deleting a fragment that has been executed for reception, transmission, and storage in an image storage unit from the main memory is performed. Software image distribution method.
前記サーバそれぞれは、
前記転送指示情報において、自身のサーバが、前記追加対象サーバ間で転送するときの前記追加対象サーバの順序が最後になっていると判断したとき、
前記自身のサーバが受信した前記断片を前記イメージリポジトリ装置へ通知することを特徴とする請求項1または請求項2に記載のソフトウェアイメージ配信方法。
Each of the servers
In the transfer instruction information, when the server determines that the order of the addition target servers is the last when transferring between the addition target servers,
3. The software image distribution method according to claim 1, wherein the fragment received by the server is notified to the image repository apparatus.
サーバおよび当該サーバ同士を接続するスイッチがツリー構造で接続されるネットワークにおいて、前記サーバを動作させるためのソフトウェアイメージを配信するイメージリポジトリ装置と、クラスタに追加する前記サーバの遠隔電源オンの指示を行い、前記イメージリポジトリ装置に、前記ソフトウェアイメージの配信を指示するリモートブート装置とを備えるソフトウェアイメージ配信システムであって、
前記リモートブート装置は、
前記クラスタへの追加対象サーバの追加台数および前記追加対象サーバへ配信するソフトウェアイメージの種別を含む追加指示の入力を受け付け、前記入力されたソフトウェアイメージの種別を、前記イメージリポジトリ装置へ送信するブート要求受付部と、
前記入力された追加指示に基づき、前記サーバそれぞれのIDおよび当該サーバが前記クラスタに追加可能か否かを示したサーバ情報を読み出し、前記読み出したサーバ情報に示されるサーバのうち、追加可能なサーバを前記クラスタへの追加対象サーバとして前記追加指示に示される台数選択し、前記選択した追加対象サーバそれぞれへの遠隔電源オンの指示を、前記管理ネットワークを介して送信する遠隔電源管理部と、
前記イメージリポジトリ装置、前記サーバおよび当該サーバを接続するスイッチの接続関係を示したトポロジ情報を参照して、前記ソフトウェアイメージを分割した断片を、前記追加対象サーバ間で転送するときの前記追加対象サーバの順序を、前記追加対象サーバ間で経由する前記スイッチの数を最小にするような順序とした転送指示情報を生成するチェイン生成部と、
前記生成した転送指示情報を前記イメージリポジトリ装置へ送信するチェイン送信部とを備え、
前記イメージリポジトリ装置は、
前記送信された種別のソフトウェアイメージを分割し、前記分割したソフトウェアイメージの断片と、前記転送指示情報とを、前記転送指示情報に含まれる転送順序の最初の前記起動対象サーバへ送信するイメージ配信部を備え、
前記サーバは、
前記ソフトウェアイメージの断片を、前記転送指示情報において自身のサーバの次に前記断片を転送すべき追加対象サーバへ転送し、前記自身のサーバのイメージ保存部に保存する処理を、前記ソフトウェアイメージを構成するすべての断片を受信し、転送するまで繰り返すイメージ転送部と、
前記イメージ保存部と、
前記イメージ保存部に保存されたソフトウェアイメージから前記自身のサーバを起動させるブート部とを備えることを特徴とするソフトウェアイメージ配信システム。
In a network in which a server and a switch for connecting the servers are connected in a tree structure, an image repository device that distributes a software image for operating the server and an instruction to remotely turn on the server to be added to a cluster A software image distribution system comprising: a remote boot device that instructs the image repository device to distribute the software image;
The remote boot device is:
A boot request that accepts an input of an addition instruction including the number of servers to be added to the cluster and the type of software image to be distributed to the server to be added, and transmits the type of the input software image to the image repository apparatus A reception department;
Based on the input addition instruction, the server information indicating whether the server ID and whether or not the server can be added to the cluster is read, and the server that can be added among the servers indicated in the read server information. A remote power management unit that selects the number of servers indicated in the addition instruction as an addition target server to the cluster, and transmits a remote power-on instruction to each of the selected addition target servers via the management network;
The addition target server when the fragment obtained by dividing the software image is transferred between the addition target servers with reference to the topology information indicating the connection relationship between the image repository device, the server and the switch connecting the server A chain generation unit that generates transfer instruction information in which the order of the switches is set to minimize the number of switches that pass between the addition target servers;
A chain transmission unit for transmitting the generated transfer instruction information to the image repository device,
The image repository device
An image distribution unit that divides the software image of the transmitted type and transmits the fragment of the divided software image and the transfer instruction information to the first activation target server in the transfer order included in the transfer instruction information With
The server
The process of transferring the fragment of the software image to the addition target server to which the fragment is to be transferred next to the server in the transfer instruction information and storing the fragment in the image storage unit of the server itself constitutes the software image An image transfer unit that receives and repeats all fragments to be transmitted,
The image storage unit;
A software image distribution system comprising: a boot unit that activates the server itself from a software image stored in the image storage unit.
サーバおよび当該サーバ同士を接続するスイッチがツリー構造で接続されるネットワークにおいて、クラスタに追加する前記サーバの遠隔電源オンの指示を行い、イメージリポジトリ装置に、前記サーバを動作させるためのソフトウェアイメージの配信を指示するためのソフトウェアイメージ配信プログラムであって、
コンピュータに、
前記クラスタへの追加対象サーバの追加台数および追加対象サーバへ配信するソフトウェアイメージの種別を含む追加指示の入力を受け付けるステップと、
前記入力されたソフトウェアイメージの種別を、前記イメージリポジトリ装置へ送信するステップと、
前記入力された追加指示に基づき、前記サーバそれぞれのIDおよび当該サーバが前記クラスタに追加可能か否かを示したサーバ情報を読み出し、前記読み出したサーバ情報に示されるサーバのうち、追加可能なサーバを前記クラスタへの追加対象サーバとして前記追加指示に示される台数選択し、前記選択した追加対象サーバそれぞれへの遠隔電源オンの指示を、前記管理ネットワークを介して送信するステップと、
前記イメージリポジトリ装置、前記サーバおよび当該サーバを接続するスイッチの接続関係を示したトポロジ情報を参照して、前記ソフトウェアイメージを分割した断片を、前記追加対象サーバ間で転送するときの前記追加対象サーバの順序を含む転送指示情報を生成するステップと、
前記生成した転送指示情報を前記イメージリポジトリ装置へ送信するステップとを実行させ、
前記生成する転送指示情報は、
前記イメージリポジトリ装置に対し、前記送信された種別のソフトウェアイメージを分割し、前記分割したソフトウェアイメージの断片と、前記転送指示情報とを、前記転送指示情報に含まれる転送順序の最初の前記起動対象サーバへ送信し、
前記転送指示情報および前記ソフトウェアイメージの断片を受信した追加対象サーバそれぞれに対し、前記受信したソフトウェアイメージの断片を、前記転送指示情報において自身のサーバの次に前記断片を転送すべき追加対象サーバへ転送するよう指示する情報であり、
前記追加対象サーバ間で転送するときの前記追加対象サーバの順序は、前記トポロジ情報を参照して、前記追加対象サーバ間で経由する前記スイッチの数が最小となるような順序であることを特徴とするソフトウェアイメージ配信プログラム。
In a network in which a server and a switch for connecting the servers are connected in a tree structure, a remote power-on instruction is given to the server to be added to a cluster, and a software image for operating the server is distributed to an image repository apparatus A software image distribution program for instructing
On the computer,
Receiving an input of an addition instruction including the number of servers to be added to the cluster and the type of software image to be distributed to the servers to be added;
Transmitting the type of the input software image to the image repository device;
Based on the input addition instruction, the server information indicating whether the server ID and whether or not the server can be added to the cluster is read, and the server that can be added among the servers indicated in the read server information. Selecting the number of servers indicated in the addition instruction as an addition target server to the cluster, and transmitting a remote power-on instruction to each of the selected addition target servers via the management network;
The addition target server when the fragment obtained by dividing the software image is transferred between the addition target servers with reference to the topology information indicating the connection relationship between the image repository device, the server and the switch connecting the server Generating transfer instruction information including the order of:
Transmitting the generated transfer instruction information to the image repository device,
The transfer instruction information to be generated is
The image repository apparatus divides the transmitted type of software image, the fragment of the divided software image, and the transfer instruction information, the first activation target in the transfer order included in the transfer instruction information To the server,
For each addition target server that has received the transfer instruction information and the software image fragment, the received software image fragment is transmitted to the addition target server to which the fragment is to be transferred next to its own server in the transfer instruction information. Information that tells you to transfer it,
The order of the addition target servers when transferring between the addition target servers is such an order that the number of the switches that pass between the addition target servers is minimized with reference to the topology information. Software image distribution program.
JP2011105303A 2011-05-10 2011-05-10 Software image distribution method, software image distribution system and program thereof Pending JP2012238095A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2011105303A JP2012238095A (en) 2011-05-10 2011-05-10 Software image distribution method, software image distribution system and program thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011105303A JP2012238095A (en) 2011-05-10 2011-05-10 Software image distribution method, software image distribution system and program thereof

Publications (1)

Publication Number Publication Date
JP2012238095A true JP2012238095A (en) 2012-12-06

Family

ID=47460960

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011105303A Pending JP2012238095A (en) 2011-05-10 2011-05-10 Software image distribution method, software image distribution system and program thereof

Country Status (1)

Country Link
JP (1) JP2012238095A (en)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11150552A (en) * 1997-11-17 1999-06-02 Nec Corp Multi-address communication network and its information storage medium
JP2002111720A (en) * 2000-09-26 2002-04-12 Hitachi Kokusai Electric Inc Data transmission system
JP2005222200A (en) * 2004-02-04 2005-08-18 Hitachi Ltd Program management method, execution system, and processing program
JP2006279810A (en) * 2005-03-30 2006-10-12 Fujitsu Ltd Network device management apparatus, network device management program, and network device management method
JP2007334602A (en) * 2006-06-14 2007-12-27 Brother Ind Ltd UPDATE DATA DISTRIBUTION SYSTEM, TERMINAL DEVICE IN THE UPDATE DATA DISTRIBUTION SYSTEM, UPDATE DATA DISTRIBUTION DEVICE, CONNECTION MANAGEMENT DEVICE, UPDATE DATA DISTRIBUTION METHOD, AND PROGRAM USED FOR THE SAME
JP2009026107A (en) * 2007-07-20 2009-02-05 Konami Digital Entertainment:Kk Network system, node device, data distribution method, and program

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11150552A (en) * 1997-11-17 1999-06-02 Nec Corp Multi-address communication network and its information storage medium
JP2002111720A (en) * 2000-09-26 2002-04-12 Hitachi Kokusai Electric Inc Data transmission system
JP2005222200A (en) * 2004-02-04 2005-08-18 Hitachi Ltd Program management method, execution system, and processing program
JP2006279810A (en) * 2005-03-30 2006-10-12 Fujitsu Ltd Network device management apparatus, network device management program, and network device management method
JP2007334602A (en) * 2006-06-14 2007-12-27 Brother Ind Ltd UPDATE DATA DISTRIBUTION SYSTEM, TERMINAL DEVICE IN THE UPDATE DATA DISTRIBUTION SYSTEM, UPDATE DATA DISTRIBUTION DEVICE, CONNECTION MANAGEMENT DEVICE, UPDATE DATA DISTRIBUTION METHOD, AND PROGRAM USED FOR THE SAME
JP2009026107A (en) * 2007-07-20 2009-02-05 Konami Digital Entertainment:Kk Network system, node device, data distribution method, and program

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
CSNG201100029005; 西村豪生、他4名: '高可用ネットワークサーバの資源運用柔軟化に向けた高速リモートブート機構' 電子情報通信学会技術研究報告 第110巻,第372号, 20110113, 第37から42頁, 社団法人電子情報通信学会 *
CSNJ201110035583; 西村豪生、他4名: '資源共有環境における高可用ネットワークサーバへの動的資源追加に関する一検討' 電子情報通信学会2011年総合大会講演論文集 通信2 , 20110228, 第583頁, 社団法人電子情報通信学会 *
JPN6014008509; 西村豪生、他4名: '高可用ネットワークサーバの資源運用柔軟化に向けた高速リモートブート機構' 電子情報通信学会技術研究報告 第110巻,第372号, 20110113, 第37から42頁, 社団法人電子情報通信学会 *
JPN6014008510; 西村豪生、他4名: '資源共有環境における高可用ネットワークサーバへの動的資源追加に関する一検討' 電子情報通信学会2011年総合大会講演論文集 通信2 , 20110228, 第583頁, 社団法人電子情報通信学会 *

Similar Documents

Publication Publication Date Title
US10986387B1 (en) Content management for a distributed cache of a wireless mesh network
JP5797769B2 (en) Data transmission / reception system
JP2022008781A (en) Distributed training methods, systems, devices, storage media, and programs
CN111090699A (en) Method and device for synchronizing service data, storage medium, and electronic device
CN111338806B (en) Service control method and device
US20170277477A1 (en) Distributed Active Hybrid Storage System
US11089103B1 (en) Content management in a distributed cache of a wireless mesh network
CN107210924A (en) Method and apparatus for configuring communication system
CN112165523B (en) Data downloading method and device
US20130013892A1 (en) Hierarchical multi-core processor, multi-core processor system, and computer product
JP5667506B2 (en) Cluster system and software update method
CN115280288A (en) Server system and method of managing server system
CN114615268B (en) Service network, monitoring node, container node and equipment based on Kubernetes cluster
US11599365B2 (en) Sharing image installation image streams
CN104657240B (en) The Failure Control method and device of more kernel operating systems
CN118796478A (en) Distributed data processing method and related equipment based on intensive computing
WO2024193268A1 (en) Virtual instance configuration method based on cloud computing technology and cloud management platform
JP2012238095A (en) Software image distribution method, software image distribution system and program thereof
US20230144294A1 (en) Method for data transmission of audio and video in end-to-end system
CN117579550A (en) Routing method based on programmable switch and container state information unloading
Liu et al. Stemflow: Software-defined inter-datacenter overlay as a service
JP2012146093A (en) Software image distribution method, repository device, server, and system
CN116193481A (en) A 5G core network processing method, device, equipment and medium
JP5498447B2 (en) Software image distribution method, software image distribution system, server, and program
WO2013101093A1 (en) Initialization of multi-core processing system

Legal Events

Date Code Title Description
RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20130201

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130809

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20140221

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140304

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20140428

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140507

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20140528

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140617

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20150106