説明

プログラム更新システム及びプログラム更新方法

【課題】サーバに搭載されたプログラムを当該サーバに最適なプログラムに容易に更新する。
【解決手段】サーバ101−1のハードウェア情報がハードウェア情報読み出し部116によって読み出され、読み出されたハードウェア情報がサーバ101−1から監視端末102へ送信され、監視端末102にて受信されたハードウェア情報に予め対応付けられたプログラム情報が監視端末102からサーバ101−1へ送信され、フラッシュメモリ111に格納されているプログラムのプログラム情報がプログラム情報読み出し部113によって読み出され、読み出されたプログラム情報と監視端末102から送信されてきたプログラム情報とが一致しない場合、監視端末102から送信されてきたプログラム情報に応じたプログラムがフラッシュメモリ111に書き込まれる。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、サーバに搭載されているプログラムを更新するためのプログラム更新システム及びフプログラム更新方法に関する。
【背景技術】
【0002】
従来、サーバに搭載されるファームウェアやソフトウェアのプログラムを更新する際に、サーバを監視する監視端末を保守員が操作して、当該サーバに最適な版数のプログラムを監視端末から当該サーバへダウンロードしている。
【0003】
図5は、従来のプログラム更新システムの一構成例を示す図である。
【0004】
図5に示したプログラム更新システムは、サーバ501−1〜501−nと、ネットワーク503を介してサーバ501−1〜501−nと接続された監視端末502とから構成されている。
【0005】
サーバ501−1〜501−nは、搭載されたプログラムを用いて動作するサーバである。監視端末502は、サーバ501−1〜501−nに搭載されたプログラムを更新する。
【0006】
図6は、従来のプログラム更新システムにおけるプログラム更新方法の一例を説明するためのフローチャートである。ここでは、サーバ501−1にプログラムがダウンロードされる場合を例に挙げて説明する。
【0007】
保守員が監視端末502に所定のコマンドを入力することにより、保守員によって選択されたプログラムがネットワークを介して所望のサーバ501−1にダウンロードされる(ステップS601)。このとき、保守員によって選択された版数のプログラムがサーバ501−1にダウンロード、つまり更新されることとなる。
【0008】
その後、プログラムが更新されたサーバ501−1が起動し(ステップS602)、サーバ501−1に搭載されたハードウェアが初期化される(ステップS603)。
【0009】
しかしながら、上述した方法においては、保守員が更新対象のサーバに適応したプログラムファイルを予め認識してく必要があり、誤ったプログラムファイルに更新してしまう虞がある。また、サーバ群に適用しているプログラムを管理する管理手段がないため、どのサーバが最新プログラムに更新済みで、どのサーバが最新プログラムへの更新が未実施であるかを一元管理できない。
【0010】
そこで、端末にとって最新であるプログラムの版数の通知を当該端末から当該端末に接続されたサーバへ要求し、当該通知を要求された最新プログラムを管理するサーバから当該端末へ最新プログラムの版数情報を送信し、端末にて格納されているプログラムの版数が最新プログラムの版数ではない場合、当該端末からサーバに対してダウンロードの要求及び更新を行う方法が考えられている(例えば、特許文献1参照。)。
【特許文献1】特開2001−296994号公報
【発明の開示】
【発明が解決しようとする課題】
【0011】
しかしながら、特許文献1に記載された方法においては、端末にとって最新であるプログラムの版数の通知を当該端末からサーバに要求しなければならないという問題点がある。
【0012】
本発明は、上述したような従来の技術が有する問題点に鑑みてなされたものであって、サーバに搭載されたプログラムを当該サーバに最適なプログラムに容易に更新することができるプログラム更新システム及びプログラム更新方法を提供することを目的とする。
【課題を解決するための手段】
【0013】
上記目的を達成するために本発明は、
プログラムを格納するメモリが搭載されたサーバと、ネットワークを介して前記サーバへ前記プログラムを送信する監視端末とを有するプログラム更新システムにおいて、
前記サーバは、起動時に該サーバのハードウェア情報を読み出して前記監視端末へ送信し、前記メモリに格納されているプログラムのプログラム情報を読み出し、前記読み出されたプログラム情報と受信したプログラム情報とが一致しない場合、前記受信したプログラム情報に応じたプログラムをメモリに書き込み、
前記監視端末は、前記サーバから送信されてきたハードウェア情報に予め対応付けられたプログラム情報を前記サーバへ送信することを特徴とする。
【0014】
また、前記サーバは、
起動時に該サーバのハードウェア情報を読み出して前記監視端末へ送信するハードウェア情報読み出し手段と、
前記メモリに格納されているプログラムのプログラム情報を読み出すプログラム情報読み出し手段と、
前記読み出されたプログラム情報と受信したプログラム情報とを比較する比較判定手段と、
前記読み出されたプログラム情報と受信したプログラム情報とが一致しない場合、前記受信したプログラム情報に応じたプログラムをメモリに書き込むプログラム書き込み手段とを有し、
前記監視端末は、
前記ハードウェア情報と前記プログラム情報とを対応付けて格納する版数テーブルと、
前記サーバから送信されてきたハードウェア情報に前記版数テーブル内で対応付けられたプログラム情報を前記サーバへ送信するプログラム選択手段とを有することを特徴とする。
【0015】
また、前記サーバは、該サーバのサーバ種別を前記ハードウェア情報と共に送信し、
前記監視端末は、前記サーバから送信されてきた前記サーバ種別と前記ハードウェア情報とに予め対応付けられたプログラム情報を前記サーバへ送信することを特徴とする。
【0016】
また、前記サーバは、前記受信したプログラム情報に応じたプログラムを前記メモリに書き込んだ場合、その旨を示す更新完了情報を前記監視端末へ送信し、
前記監視端末は、前記更新完了情報を前記サーバの情報に対応付けて格納することを特徴とする。
【0017】
また、プログラムを格納するメモリが搭載されたサーバと、ネットワークを介して前記サーバへ前記プログラムを送信する監視端末とを有するプログラム更新システムにおけるプログラム更新方法であって、
前記サーバが、起動時に該サーバのハードウェア情報を読み出す処理と、
前記サーバが、前記ハードウェア情報を前記監視端末へ送信する処理と、
前記監視端末が、前記サーバから送信されてきたハードウェア情報に予め対応付けられたプログラム情報を前記サーバへ送信する処理と、
前記サーバが、前記メモリに格納されているプログラムのプログラム情報を読み出す処理と、
前記サーバが、前記読み出されたプログラム情報と前記監視端末から送信されてきたプログラム情報とを比較する処理と、
前記サーバが、前記読み出されたプログラム情報と前記監視端末から送信されてきたプログラム情報とが一致しない場合、前記監視端末から送信されてきたプログラム情報に応じたプログラムをメモリに書き込む処理とを有する。
【0018】
また、前記サーバが、該サーバのサーバ種別を前記ハードウェア情報と共に送信する処理と、
前記監視端末が、前記サーバから送信されてきた前記サーバ種別と前記ハードウェア情報とに予め対応付けられたプログラム情報を前記サーバへ送信する処理とを有することを特徴とする。
【0019】
また、前記サーバが、前記監視端末から送信されてきたプログラム情報に応じたプログラムを前記メモリに書き込んだ場合、その旨を示す更新完了情報を前記監視端末へ送信する処理と、
前記監視端末が、前記更新完了情報を前記サーバの情報に対応付けて格納する処理とを有することを特徴とする。
【0020】
上記のように構成された本発明においては、プログラムを格納するメモリが搭載されたサーバにて、起動時に該サーバのハードウェア情報が読み出され、読み出されたハードウェア情報がサーバからネットワークを介してサーバへプログラムを送信する監視端末へ送信され、監視端末にて受信されたハードウェア情報に予め対応付けられたプログラム情報が監視端末からサーバへ送信され、サーバにてメモリに格納されているプログラムのプログラム情報が読み出され、サーバにて読み出されたプログラム情報と監視端末から送信されてきたプログラム情報とが一致しない場合、監視端末から送信されてきたプログラム情報に応じたプログラムがメモリに書き込まれる。
【0021】
これにより、サーバが起動するだけで、サーバに搭載されたプログラムが当該サーバにとって最適なプログラムに自動的に更新される。
【発明の効果】
【0022】
以上説明したように本発明においては、プログラムを格納するメモリが搭載されたサーバが、起動時に該サーバのハードウェア情報を読み出し、読み出されたハードウェア情報をサーバからネットワークを介してサーバへプログラムを送信する監視端末へ送信し、監視端末にて受信されたハードウェア情報に予め対応付けられたプログラム情報を監視端末からサーバへ送信し、サーバのメモリに格納されているプログラムのプログラム情報を読み出し、読み出されたプログラム情報と監視端末から送信されてきたプログラム情報とが一致しない場合、監視端末から送信されてきたプログラム情報に応じたプログラムをメモリに書き込む構成としたため、サーバに搭載されたプログラムを当該サーバに最適なプログラムに容易に更新することができる。
【発明を実施するための最良の形態】
【0023】
以下に、本発明の実施の形態について図面を参照して説明する。
【0024】
図1は、本発明のプログラム更新システムの実施の一形態を示す図である。
【0025】
本形態は図1に示すように、複数のサーバ101−1〜101−nと、ネットワーク103を介してサーバ101−1〜101−nと接続された監視端末102とから構成されている。監視端末102は、サーバ101−1〜101−nに搭載されたソフトウェアやファームウェア(以下、プログラムと称する)を管理する端末である。
【0026】
さらに、サーバ101−1は、サービスプロセッサ110を有している。サービスプロセッサ110は、フラッシュメモリ111と、プログラム退避用フラッシュメモリ112と、プログラム情報読み出し部113と、プログラム書き込み部114と、更新成功判定部115と、ハードウェア情報読み出し部116と、比較判定部117と、通信制御部118とから構成されている。フラッシュメモリ111は、サーバ101−1の動作や構成を制御するためのプログラムを格納するメモリである。プログラム退避用フラッシュメモリ112は、当該プログラムを更新する際に、現用のプログラムを一時的に格納する。プログラム情報読み出し部113は、フラッシュメモリ111に格納されたプログラムの版数やプログラム名(以下、プログラム情報と称する)を読み出す。プログラム書き込み部114は、監視端末102から通信制御部118を介して送信されてきたプログラムをフラッシュメモリ111に書き込む。更新成功判定部115は、プログラムの更新が成功したかどうかを判定し、判定結果を通信制御部118を介して監視端末102へ通知する。ハードウェア情報読み出し部116は、サーバ101−1のハードウェアの版数等のハードウェア情報(以下、HW_Rev情報と称する)を読み出す。このHW_Rev情報は、専用のメモリ(不図示)に格納されているものである。比較判定部117は、プログラム情報読み出し部113によって読み出されたプログラム情報と監視端末102から送信されてくるプログラム情報とを比較する。通信制御部118は、サーバ101−1と監視端末102との間の通信を制御する。なお、サーバ101−2〜101−nの構成についても、上述したサーバ101−1の構成と同様である。
【0027】
また、監視端末102は、プログラム選択部121と、版数テーブル122と、プログラムデータベース123と、管理テーブル124と、通信制御部125とから構成されている。版数テーブル122は、HW_Rev情報と当該HW_Rev情報に対する最適なプログラム情報とを対応付けて格納しているテーブルである。プログラム選択部121は、サーバ101−1〜101−nから通知されたそれぞれのHW_Rev情報を版数テーブル122から検索し、検索されたHW_Rev情報に対応付けられたプログラム情報のプログラムを選択する。プログラムデータベース123は、様々な版数のプログラムを格納する。管理テーブル124は、サーバ101−1〜101−nに適用されているプログラムが最新のものかどうかをサーバ101−1〜101−n毎に管理するテーブルである。通信制御部125は、監視端末102とサーバ101−1〜101−nとの間の通信を制御する。
【0028】
図2は、図1に示した版数テーブル122の構造の一例を示す図である。
【0029】
図1に示した版数テーブル122には図2に示すように、サーバ種別と、HW_Rev情報と、プログラム情報とが対応付けられて格納されている。ここでサーバ種別は、例えば、Webサーバやメールサーバ等のサーバの種別を示すものである。また、プログラム情報は、プログラム名を示しているが、プログラム自体を識別できる版数等の情報であっても良い。例えば、サーバ種別が「A」であり、HW_Rev情報が「a」であるサーバには、プログラム情報が「file_Aa」であるプログラムが最適であるという対応付け情報が格納されている。これにより、サーバ種別と、HW_Rev情報とに基づいて、最適なプログラム情報を得ることができる。
【0030】
図3は、図1に示した管理テーブル124の構造の一例を示す図である。
【0031】
図1に示した管理テーブル124は図3に示すように、サーバ名と、サーバ種別と、HW_Rev情報と、プログラム情報と、最新のプログラムが適用されているかどうかの情報とが対応付けられて格納されている。ここでプログラム情報は、当該サーバに現在適用されているプログラムのプログラム情報を示す。これにより、各サーバ101−1〜101−nのサーバ種別、HW_Rev情報及びプログラム情報を一元管理することができ、さらに最新のプログラムが適用されているかどうかも把握することができる。
【0032】
以下に、図1に示したプログラム更新システムにおけるプログラム更新方法についてフローチャートを用いて説明する。
【0033】
図4は、図1に示したプログラム更新システムにおけるプログラム更新方法を説明するためのフローチャートである。ここでは、図1に示したサーバ101−1のプログラムを更新する方法について説明する。また、サーバ101−1にはプログラムを自動的に更新する自動更新モード機能が備わっている。
【0034】
まず、サーバ101−1が起動すると(ステップS1)、自動更新モードかどうかが判断される(ステップS2)。
【0035】
自動更新モードであると判断された場合、ハードウェア情報読み出し部116によってHW_Rev情報が読み出され(ステップS3)、読み出されたHW_Revが通信制御部118からネットワーク103を介して監視端末102へ送信される(ステップS4)。このとき、サーバ101−1のサーバ種別の情報も共に送信される。
【0036】
そして、監視端末102の通信制御部125にて受信されたサーバ種別の情報とHW_Rev情報とを検索キーとして、プログラム選択部121によって版数テーブル122から当該サーバ種別とHW_Rev情報とに対応付けられたプログラム情報が読み出される。読み出されたプログラム情報は、通信制御部125からサーバ101−1へ送信される(ステップS5)。
【0037】
一方、サーバ101−1にて、フラッシュメモリ111に格納されているプログラムのプログラム情報がプログラム情報読み出し部113によって読み出される(ステップS6)。
【0038】
その後、監視端末102から送信されてきたプログラム情報とプログラム情報読み出し部113によって読み出されたプログラム情報とが、比較判定部117にて比較される(ステップS7)。
【0039】
比較判定部117にて比較された結果、監視端末102から送信されてきたプログラム情報とプログラム情報読み出し部113によって読み出されたプログラム情報とが一致しないと判断された場合、フラッシュメモリ111に格納されている現用プログラムがプログラム退避用フラッシュメモリ112に退避される(ステップS8)。
【0040】
そして、プログラムをダウンロードするフラッシュメモリ111の正常性のチェックが行われる(ステップS9)。このチェック方法は、チャックサムを用いたものや、CRCチェック等の一般的なデータチェック方法であれば良い。
【0041】
フラッシュメモリ111の正常性のチェックが完了し、プログラムの書き込みが可能であることを確認した後、管理端末102のプログラムデータベース123に格納されている当該プログラム情報のプログラムがプログラム書き込み部114によってフラッシュメモリ111にダウンロードされる(ステップS10)。
【0042】
その後、正常にダウンロードが完了したかどうかが更新成功判定部115によって判断される(ステップS11)。
【0043】
ダウンロードが正常に完了していないと判断された場合、ダウンロードの回数が予め設定された回数(例えば、N回)以上かどうかが判断される(ステップS12)。
【0044】
ダウンロードの回数が予め設定された回数以上ではないと判断された場合、さらにステップS10においてプログラムがダウンロードされる。
【0045】
一方、ステップS11において、更新成功判定部115によってダウンロードが正常に完了したと判断された場合は、フラッシュメモリ111をチェックすることにより、プログラムが正常に書き込まれていることが確認される(ステップS13)。
【0046】
このステップS9〜S13の処理は、従来の処理と同様であるため、詳細についてはここでは記述しない。
【0047】
そして、通信制御部118から監視端末102へ更新成功通知である更新完了情報が送信される(ステップS14)。
【0048】
一方、ステップS12にて、ダウンロードの回数が予め設定された回数以上であると判断された場合は、プログラム退避用フラッシュメモリ112に退避されたプログラムがフラッシュメモリ111に書き戻される(ステップS15)。
【0049】
その後、プログラムが更新もしくは書き戻されたサーバ101−1が再起動し(ステップS16)、更新もしくは書き戻されたプログラムが起動することにより、ハードウェアの初期設定が行われる(ステップS17)。
【0050】
また、ステップS2にて、自動更新モードではないと判断された場合、ステップS17のハードウェアの初期設定が行われる。
【0051】
また、ステップS14にて通信制御部118から監視端末102へ更新完了情報が送信されることにより、図1に示した管理テーブル124に格納されている更新されたサーバ101−1のプログラム情報及び最新であるかどうかの情報が更新される。
【0052】
以上により、サーバ101−1〜101−nが起動するだけで、当該サーバ101−1〜101−nに最適なプログラム情報を検索するための情報が監視端末102へ送信され、監視端末102において当該情報を検索キーとしてサーバ101−1〜101−nに最適なプログラム情報が検索され、検索されたプログラム情報がサーバ101−1〜101−nへ送信されるため、サーバ101−1〜101−nのプログラムが最適なプログラムに自動的に更新される。また、サーバ101−1〜101−nに適用されているプログラムを一元管理することができる。
【図面の簡単な説明】
【0053】
【図1】本発明のプログラム更新システムの実施の一形態を示す図である。
【図2】図1に示した版数テーブルの構造の一例を示す図である。
【図3】図1に示した管理テーブルの構造の一例を示す図である。
【図4】図1に示したプログラム更新システムにおけるプログラム更新方法を説明するためのフローチャートである。
【図5】従来のプログラム更新システムの一構成例を示す図である。
【図6】従来のプログラム更新システムにおけるプログラム更新方法の一例を説明するためのフローチャートである。
【符号の説明】
【0054】
101−1〜101−n サーバ
102 監視端末
103 ネットワーク
110 サービスプロセッサ
111 フラッシュメモリ
112 プログラム退避用フラッシュメモリ
113 プログラム情報読み出し部
114 プログラム書き込み部
115 更新成功判定部
116 ハードウェア情報読み出し部
117 比較判定部
118,125 通信制御部
121 プログラム選択部
122 版数テーブル
123 プログラムデータベース
124 管理テーブル

【特許請求の範囲】
【請求項1】
プログラムを格納するメモリが搭載されたサーバと、ネットワークを介して前記サーバへ前記プログラムを送信する監視端末とを有するプログラム更新システムにおいて、
前記サーバは、起動時に該サーバのハードウェア情報を読み出して前記監視端末へ送信し、前記メモリに格納されているプログラムのプログラム情報を読み出し、前記読み出されたプログラム情報と受信したプログラム情報とが一致しない場合、前記受信したプログラム情報に応じたプログラムをメモリに書き込み、
前記監視端末は、前記サーバから送信されてきたハードウェア情報に予め対応付けられたプログラム情報を前記サーバへ送信することを特徴とするプログラム更新システム。
【請求項2】
請求項1に記載のプログラム更新システムにおいて、
前記サーバは、
起動時に該サーバのハードウェア情報を読み出して前記監視端末へ送信するハードウェア情報読み出し手段と、
前記メモリに格納されているプログラムのプログラム情報を読み出すプログラム情報読み出し手段と、
前記読み出されたプログラム情報と受信したプログラム情報とを比較する比較判定手段と、
前記読み出されたプログラム情報と受信したプログラム情報とが一致しない場合、前記受信したプログラム情報に応じたプログラムをメモリに書き込むプログラム書き込み手段とを有し、
前記監視端末は、
前記ハードウェア情報と前記プログラム情報とを対応付けて格納する版数テーブルと、
前記サーバから送信されてきたハードウェア情報に前記版数テーブル内で対応付けられたプログラム情報を前記サーバへ送信するプログラム選択手段とを有することを特徴とするプログラム更新システム。
【請求項3】
請求項1または請求項2に記載のプログラム更新システムにおいて、
前記サーバは、該サーバのサーバ種別を前記ハードウェア情報と共に送信し、
前記監視端末は、前記サーバから送信されてきた前記サーバ種別と前記ハードウェア情報とに予め対応付けられたプログラム情報を前記サーバへ送信することを特徴とするプログラム更新システム。
【請求項4】
請求項1乃至3のいずれか1項に記載のプログラム更新システムにおいて、
前記サーバは、前記受信したプログラム情報に応じたプログラムを前記メモリに書き込んだ場合、その旨を示す更新完了情報を前記監視端末へ送信し、
前記監視端末は、前記更新完了情報を前記サーバの情報に対応付けて格納することを特徴とするプログラム更新システム。
【請求項5】
プログラムを格納するメモリが搭載されたサーバと、ネットワークを介して前記サーバへ前記プログラムを送信する監視端末とを有するプログラム更新システムにおけるプログラム更新方法であって、
前記サーバが、起動時に該サーバのハードウェア情報を読み出す処理と、
前記サーバが、前記ハードウェア情報を前記監視端末へ送信する処理と、
前記監視端末が、前記サーバから送信されてきたハードウェア情報に予め対応付けられたプログラム情報を前記サーバへ送信する処理と、
前記サーバが、前記メモリに格納されているプログラムのプログラム情報を読み出す処理と、
前記サーバが、前記読み出されたプログラム情報と前記監視端末から送信されてきたプログラム情報とを比較する処理と、
前記サーバが、前記読み出されたプログラム情報と前記監視端末から送信されてきたプログラム情報とが一致しない場合、前記監視端末から送信されてきたプログラム情報に応じたプログラムをメモリに書き込む処理とを有するプログラム更新方法。
【請求項6】
請求項5に記載のプログラム更新方法において、
前記サーバが、該サーバのサーバ種別を前記ハードウェア情報と共に送信する処理と、
前記監視端末が、前記サーバから送信されてきた前記サーバ種別と前記ハードウェア情報とに予め対応付けられたプログラム情報を前記サーバへ送信する処理とを有することを特徴とするプログラム更新方法。
【請求項7】
請求項5または請求項6に記載のプログラム更新方法において、
前記サーバが、前記監視端末から送信されてきたプログラム情報に応じたプログラムを前記メモリに書き込んだ場合、その旨を示す更新完了情報を前記監視端末へ送信する処理と、
前記監視端末が、前記更新完了情報を前記サーバの情報に対応付けて格納する処理とを有することを特徴とするプログラム更新方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate