JP2000357160A - コンピュータネットワーク及びネットワークサーバのクラスタリング方法 - Google Patents

コンピュータネットワーク及びネットワークサーバのクラスタリング方法

Info

Publication number
JP2000357160A
JP2000357160A JP17035399A JP17035399A JP2000357160A JP 2000357160 A JP2000357160 A JP 2000357160A JP 17035399 A JP17035399 A JP 17035399A JP 17035399 A JP17035399 A JP 17035399A JP 2000357160 A JP2000357160 A JP 2000357160A
Authority
JP
Japan
Prior art keywords
server
name
address
client
servers
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.)
Granted
Application number
JP17035399A
Other languages
English (en)
Other versions
JP3299521B2 (ja
Inventor
Masahiro Fukui
将裕 福井
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.)
ID GATE CO Ltd
Original Assignee
ID GATE CO Ltd
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 ID GATE CO Ltd filed Critical ID GATE CO Ltd
Priority to JP17035399A priority Critical patent/JP3299521B2/ja
Priority to EP19990126174 priority patent/EP1061711A3/en
Priority to KR1019990065490A priority patent/KR20010005487A/ko
Priority to TW88123339A priority patent/TW463090B/zh
Priority to CA 2293880 priority patent/CA2293880A1/en
Publication of JP2000357160A publication Critical patent/JP2000357160A/ja
Application granted granted Critical
Publication of JP3299521B2 publication Critical patent/JP3299521B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1034Reaction to server failures by a load balancer

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer And Data Communications (AREA)
  • Multi Processors (AREA)
  • Hardware Redundancy (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

(57)【要約】 【課題】 サーバの切替時間を実質的にゼロにでき、か
つ安価で高可用性のシステムを構築でき、サーバマシン
の機種や性能への依存性が少なく、多様なネットワーク
環境への適用が容易なコンピュータネットワーク、ネッ
トワークサーバのクラスタリング方法を提供すること 【解決手段】 複数のサーバのネットワーク上の位置を
1つのサーバ名で管理しているクライアントと、複数の
サーバの各々に設けられ、当該サーバに割当てられた固
有のサーバ名と対応するアドレスとを管理するためのネ
ームサーバと、クライアントに設けられ、通信を希望す
る相手サーバのアドレスを複数のサーバのうち第1のサ
ーバ、第2のサーバ…の優先順位でネームサーバに問い
合わせるための問い合わせ手段と、ネームサーバの各々
に設けられ、クライアントからのアドレスの問い合わせ
に対して自己のアドレスを応答するための変換テーブル
とを有し、前記クライアントによるアドレスの問い合わ
せに対し第1のサーバから応答がない場合、問い合わせ
手段は第2のサーバに向けてアドレスを問い合わせる。

Description

【発明の詳細な説明】
【発明の属する技術分野】本発明は、同一のサービスを
提供可能な複数のサーバと、前記サーバの少なくとも一
つが提供する前記サービスを利用するクライアントを有
し、第1のサーバが前記サービスを提供できなくなった
ときに第2のサーバに同一のサービスの提供を行わせる
コンピュータネットワーク及びネットワークサーバのク
ラスタリング方法に関する。
【従来の技術】複数のコンピュータを接続して構成した
コンピュータネットワークにおいて、クライアント・サ
ーバモデルに基づく分散システムによりサーバからクラ
イアントにサービスを提供する場合、ネットワークある
いは複数のコンピュータ(ノード)の障害を意識しない
で済む障害透過性の確保が重要である。この目的のため
に、同一のサービスを提供可能な複数のサーバを用意
し、第1のサーバがサービスを提供できなくなったとき
に第2のサーバに同一のサービスの提供を行わせるクラ
スタリング方式により可用性(Availabilit
y)を高める技術が採用されている。一方、UNIXに
代表されるインターネットプロトコルを用いたネットワ
ークは、TCP/IPのプロトコルをデファクト・スタ
ンダードとして採用している。このTCP/IPプロト
コルに基づき構築された従来のクラスタリング方式によ
るコンピュータネットワークを図4に示す。ネットワー
クに接続され同一のサービスを提供可能な二つのサーバ
AAA,BBBには、それぞれ異なるIPアドレス(イ
ンターネット・プロトコル・アドレス)を割り当てる。
このように異なるIPアドレスを割り当てるのは、も
し、IPアドレスがある時点で重複し割り当てられてい
ると、一つのIPアドレスに対して複数のMACアドレ
スが対応することとなって、送信元はどのMACアドレ
スを指定してパケットを送るべきか決められなくなるか
らである。また、通常時にはサーバBBBのLANカー
ド2(NIC:ネットワーク・インターフェース・カー
ドとも呼ばれる)を非活性の状態にしておく。稼動系サ
ーバAAAと待機系サーバBBBとはLANカード3、
LANカード4及び通信路cによって確立されたハート
ビート通信により、相互の稼動状況を監視している。し
たがって、待機系サーバBBBは、待機状態においてハ
ートビート通信とサーバAAAの監視に必要なハードウ
ェア及びアプリケーションだけは活性状態にある。な
お、このハートビート通信は、通常LANカード5、L
ANカード6及び通信路dによって二重化しその信頼性
を高めている。このような構成において、いまサーバA
AAがシステムダウン、通信不能等によりクライアント
1あるいはクライアント2にサービスを提供できない状
態になると、待機系サーバBBBはこの状態をハートビ
ート通信により認識し、稼動系サーバAAAのシステム
ダウン等の後にそのIPアドレスを引き継いで自己のI
Pアドレスとして設定する。したがって、サーバBBB
は待機状態においてクライアントにサービスを提供する
ためのアプリケーションは起動されておらず、サーバの
切替に要する時間が長くなる。前記した従来のクラスタ
リング方式は、コールド・スタンバイ方式と呼ばれる
が、この方式は、その仕組みの複雑さとハードウェア・
ソフトウェアに要求される仕様に起因してコスト高とな
っている。すなわち、稼動系サーバと待機系サーバとは
ハートビート通信を行うために必要なLANカード、通
信路の増設及びソフトウェアの導入が不可欠であり、シ
ステムが煩雑化する。クラスタリングソフトウェア自体
は高価であるばかりでなく、そのソフトウェアが動作す
る上でサーバに同様のマシン仕様を要求するので、前記
LANカード(NIC)の増加と相俟ってシステム全体
がコスト高となる。また、ハートビート通信を行うため
に必要なNICが増設されるとその分だけ接続個所が増
加するので、障害の危険率が上昇する。更に、ハートビ
ート通信の誤動作により、稼動系サーバのシステムダウ
ンの前に待機系サーバが稼動状態に切替わって、IPア
ドレスの衝突が起こる可能性もある。このような要因は
結果的にネットワークの信頼性を低下させる要因とな
る。このため、「クラスタリングの方程式:2割増の信
頼性を得るために2倍のコストを要する」に従いコスト
高になるという当業者の認識は否めない。また、従来の
方式は、クラスタリングされるサーバに同様のマシン仕
様が要求されるので、性能の異なるあるいは異種のサー
バマシンが混在するネットワーク環境には通常適用が困
難であるし、例えば、複数枚のNIC環境に実績の少な
いOSのときは特に実現が難しいといえ、したがってそ
の適用範囲が狭い欠点がある。
【発明が解決しようとする課題】そこで本発明の主要な
目的は、サーバの切替時間を実質的にゼロにでき、かつ
安価で高可用性のシステムを構築できるコンピュータネ
ットワーク、ネットワークサーバのクラスタリング方法
を提供することにある。本発明の別の目的は、サーバマ
シンの機種や性能への依存性が少なく、多様なネットワ
ーク環境への適用が容易なコンピュータネットワーク、
ネットワークサーバのクラスタリング方法を提供するこ
とにある。
【課題を解決するための手段】上記の目的を達成するた
めに、本発明に係る第1のコンピュータネットワーク
は、同一のサービスを提供可能な複数のサーバと、サー
バの少なくとも一つが提供するサービスを利用するクラ
イアントを有し、第1のサーバがサービスを提供できな
くなったときに第2のサーバに同一のサービスの提供を
行わせるコンピュータネットワークにおいて、複数のサ
ーバのネットワーク上の位置を1つのサーバ名で管理し
ているクライアントと、複数のサーバの各々に設けら
れ、当該サーバに割当てられた固有のサーバ名と対応す
るアドレスとを管理するためのネームサーバと、クライ
アントに設けられ、通信を希望する相手サーバのアドレ
スを複数のサーバのうち第1のサーバ、第2のサーバ…
の優先順位でネームサーバに問い合わせるための問い合
わせ手段と、ネームサーバの各々に設けられ、クライア
ントからのアドレスの問い合わせに対して自己のアドレ
スを応答するための変換テーブルとを有し、前記クライ
アントによるアドレスの問い合わせに対し第1のサーバ
から応答がない場合、問い合わせ手段は第2のサーバに
向けてアドレスを問い合わせることを特徴とする。本発
明に係る第2のコンピュータネットワークは、同一のサ
ービスを提供可能な複数のサーバと、前記サーバの少な
くとも一つが提供するサービスを利用するクライアント
を有し、第1のサーバがサービスを提供できなくなった
ときに第2のサーバに同一のサービスの提供を行わせる
コンピュータネットワークにおいて、複数のサーバのネ
ットワーク上の位置を1つのサーバ名で管理しているク
ライアントと、複数のサーバの各々に設けられ、当該サ
ーバに割当てられた固有のサーバ名と対応するアドレス
とを管理するための第1のネームサーバと、複数のサー
バの各サーバ名と対応するアドレスとを管理するための
第2のネームサーバと、クライアントに設けられ、通信
を希望する相手サーバのアドレスを複数のサーバのうち
第1のサーバ、第2のサーバ…の優先順位で第2のネー
ムサーバに問い合わせるための問い合わせ手段と、第1
のネームサーバの各々に設けられ、クライアントからの
アドレスの問い合わせに対して自己のアドレスを応答す
るための変換テーブルとを有し、クライアントによるア
ドレスの問い合わせに対し第1のサーバから応答がない
場合、問い合わせ手段は第2のサーバに向けてアドレス
を問い合わせることを特徴とする。上記本発明に係る第
1及び第2のコンピュータネットワークにおいて、サー
バ及びクライアントは、ドメイン・ネーム・システム
(DNS)による名前・IPアドレス解決を含むインタ
ーネットプロトコルを用いて通信を行うネットワークを
構成していることが好ましく、これにより、TCP/I
Pに代表されるインターネットプロトコルに準拠した様
々な性能、機種のマシンが混在するネットワーク環境
で、クラスタリングの実現が可能となる。また、サーバ
の提供するサービスアプリケーションが正常に動作しな
い場合には、そのサービスアプリケーションを利用して
いるクライアントにとってはサーバに障害が発生してい
るに等しいので、他の正常なサーバへの切り替えが行わ
れることが望ましい。しかしながら、障害の発生したサ
ーバにおいて、ネームサーバ自体は正常に動作している
場合もあり得るため、その切り替えが直ちに行われない
おそれがある。そこで、このような場合に備え、サーバ
は、クライアントによるアドレスの問い合わせに対する
当該サーバの応答を停止させる応答停止手段を具備する
ことが好ましい。本発明に係る第1及び第2のコンピュ
ータネットワークは、様々なネットワーク環境へ柔軟に
適用可能なので、例えば、複数のサーバがデータベース
サーバであって、データベースのデータを前記複数のサ
ーバ内に分散した分散型データベースシステムを構築す
ることで、データとアプリケーションの切り分けができ
る。これにより、データベース内のデータを複数のサー
バ(データベースサーバ)に冗長に配置したときの、デ
ータ保護の安全性の向上、データベースシステムの信頼
性、可用性の向上に寄与することができる。なお、本発
明において、「サーバ」というときはクライアントに所
定のサービスを提供する本来のサーバをいい、「ネーム
サーバ」というときはサーバ名(ドメイン名あるいはホ
スト名とも呼ばれる)及び対応するアドレス(例えばI
Pアドレス)を管理しているサーバ(例えば、いわゆる
ドメイン・ネーム・サーバ)またはそのサーバ上で起動
されるソフトウェアをいう。
【発明の実施の形態】以下、本発明の好ましい実施の形
態を、図面に基づき説明する。図1は、本発明に係るコ
ンピュータネットワークの第1の実施の形態を示す機能
ブロック図であり、サービスを提供する第1のサーバ1
0、第2のサーバ12と、サービスの提供を受けるクラ
イアント20、クライアント22を通信路30によって
相互に接続し、インターネットプロトコルとしてTCP
/IPを使用したLANを構築している。第1のサーバ
10には固有のサーバ名:AAAと対応するIPアドレ
ス:192.168.90.1が、第2のサーバ12に
は、固有のサーバ名:BBBと対応するIPアドレス:
192.168.90.2がそれぞれ割り当てられてい
る。TCP/IPは、ほとんどの場合、サーバ名(イン
ターネットの用語の「ホスト名」に相当)とIPアドレ
スの対応関係を効率よく管理するために、サーバ名をI
Pアドレスに自動的に変換するためのシステムとして、
DNS(ドメイン・ネーム・システム)を採用してい
る。本実施の形態では、サービスを提供する第1のサー
バ10及び第2のサーバ12には、このDNSを実現す
るソフトウェアをそれぞれ搭載することにより、ネーム
サーバしての機能を有している。このような機能を有す
る部分を以下「ネームサーバ部」と呼ぶこととする。図
1において、サーバ10,12のネームサーバ部は、ホ
スト名−IP変換テーブル14,16をそれぞれ備えて
いる。ホスト名−IP変換テーブル14は、サーバ10
に割り当てられた固有のサーバ名:AAAに代わる同一
のサーバ名:ABCと、割り当てられた固有のIPアド
レス:192.168.90.1とを関連付けたリスト
であり、一方、ホスト名−IP変換テーブル16は、サ
ーバ12に割り当てられた固有のサーバ名:BBBに代
わる同一のサーバ名:ABCと、割り当てられた固有の
IPアドレス:192.168.90.2とを関連付け
たリストであり、それぞれのネームサーバ部はこれを管
理している。一方、クライアント20,22は、上述し
たDNSの機能を利用するためのソフトウェアを搭載
し、これにより、サービスが提供される相手サーバのサ
ーバ名として1つのサーバ名ABCのみを管理するとと
もに、その相手サーバのIPアドレスを取得する際にそ
の問い合わせをプライマリ、セカンダリの順序で行うよ
う、ネームサーバの問い合わせ先を設定したネームサー
バリスト24,26を備えている。ここでは、1次候補
(プライマリ)にサーバ10のネームサーバ部、2次候
補(セカンダリ)にサーバ12のネームサーバ部に問い
合わせするよう、設定している。上記のように構築した
コンピュータネットワークにおけるクラスタリングの動
作を、図2を参照して説明する。まず、ステップS10
0において、サーバ10(サーバ名:AAA)とサーバ
12(サーバ名:BBB)のコンピュータを稼動させ
て、OSを起動させる。この際、両サーバに搭載された
ネームサーバ部はネームサーバソフトウェアを起動させ
て稼動させ、また、クライアントが利用する業務用アプ
リケーションソフトウェアも起動させて稼動させる。次
いで、ステップS110において、クライアント20
は、ネームサーバリスト24に従い、プライマリのネー
ムサーバであるサーバ10宛にIPアドレスを問い合わ
せる。ステップS120において、サーバ10のネーム
サーバ部は、サーバ10が正常にサービスを提供してい
るときは、サーバ名:ABCの名において自己のIPア
ドレスである192.168.90.1を応答する。サ
ーバ10が正常にサービスを提供していない、例えばシ
ステムダウンの場合、ネームサーバ部はこの応答を行わ
ない。ステップ130において、クライアント20が、
サーバ10からIPアドレスの応答を受け取ると、クラ
イアント20は、「サーバABC」と通信を確立してサ
ービスを正常に受けていると認識する。ステップS14
0において、先のIPアドレスの問い合わせとその応答
から一定時間(例えば30秒)経過するまでは、クライ
アント20は、ステップS130の状態、すなわち「サ
ーバABC」からサービスを正常に受けていると認識し
ている。そして一定時間経過したときに、ステップS1
10に戻って、再びサーバ10宛にIPアドレスを問い
合わせる。そして、サーバ10が正常である限り、ステ
ップS120→ステップS130→ステップS140→
ステップ110の動作が繰り返され、クライアント20
はサーバ10からサービスを継続して受けることができ
る。次に、ある時点でサーバ10が正常にサービスを提
供しなくなったとすると、ステップS120において、
サーバ10のネームサーバ部はIPアドレスの応答を行
わないので、クライアント20はサーバ10のIPアド
レスを取得できない。そこで、ステップS150におい
て、クライアント20は、ネームサーバリスト24に従
い、2次候補(セカンダリ)のネームサーバであるサー
バ12(サーバ名:BBB)宛にIPアドレスの問い合
わせ先を切り替える。ステップS160において、クラ
イアント20は、サーバ12宛にIPアドレスを問い合
わせる。ステップステップS160において、サーバ1
2のネームサーバ部は、サーバ12が正常にサービスを
提供しているときは、サーバ名:ABCの名において自
己のIPアドレスである192.168.90.2を応
答する。サーバ12が正常にサービスを提供していない
場合、ネームサーバ部はこの応答を行わない。ステップ
180において、クライアント20が、サーバ12から
IPアドレスの応答を受け取ると、クライアント20
は、「サーバABC」と通信を確立してサービスを正常
に受けていると認識する。ステップS190において、
先のIPアドレスの問い合わせとその応答から一定時間
(例えば30秒)経過するまでは、クライアント20
は、ステップS180の状態、すなわち「サーバAB
C」からサービスを正常に受けていると認識している。
そして一定時間経過したときに、ステップS160に戻
って、再びサーバ12宛にIPアドレスを問い合わせ
る。そして、サーバ12が正常である限り、ステップS
170→ステップS180→ステップ190→ステップ
S160の動作が繰り返され、クライアント20はサー
バ12からサービスを継続して受けることができる。な
お、図示しない第3のサーバをネットワークに接続し、
そのサーバを上記サーバ10、12と同様に構成すると
共に、クライアントのネームサーバリストの第3候補に
当該第3のサーバのネームサーバを設定しておけば、ス
テップS200で破線で示した動作を同様に行わせて、
第3のサーバに切り替えてサービスの提供を行わせるこ
とができるのはもちろんである。本発明に係る第1の実
施の形態のコンピュータネットワークによれば、インタ
ーネットプロトコルTCP/IPが通常備えるDNSに
よる名前・IPアドレス解決を利用するので、従来必要
とされていた、2台のサーバの動作を相互監視するハー
トビート通信のための特別なハードウェア・ソフトウェ
アを使用することなく、クラスタリングを行うことがで
きるので、システムが大幅に簡素化される。また、特別
なクラスタリングソフトウェアを導入する必要もないの
で、サーバマシンの性能・機種等の仕様上の制限が大幅
に緩和され、異なる性能・機種のサーバマシンが混在す
るネットワーク環境にも利用可能である。従って、高信
頼性のクラスタリングを実現したコンピュータネットワ
ークを、柔軟にかつ安価に構築できる。更に、2台のサ
ーバで同時に業務用アプリケーションソフトウェアを稼
動させておくので、第1のサーバから第2のサーバへの
切り替えによるクライアントのサービス利用の待ち時間
が実質ゼロであるホット・スタンバイ方式を実現できる
利点もある。本発明に係る第1の実施の形態のコンピュ
ータネットワークによれば、サーバのネームサーバ部
は、クライアントが管理している一つのサーバ名:AB
Cとそのサーバ固有のIPアドレスを設定したホスト名
−IPアドレス変換テーブルを備えるので、クライアン
トは、サービスを提供しているサーバが、サーバ10
(サーバ名:AAA)からサーバ12(サーバ名:BB
B)に切替わったことを何ら意識する必要がない。よっ
て、いわゆる分散システムとして本コンピュータネット
ワークを捉えた場合、透過性(Transparenc
y)の極めて高いシステムと言うことができ、可用性が
大幅に向上しているものである。従って、実施の形態サ
ーバ10,12をデータベースサーバとして用い、デー
タベースのデータをこれらサーバ内に分散することで、
透過性の極めて高い分散型データベースシステムを構築
することができる。ここで、サーバがクライアントに対
し正常にサービスを提供できなくなっても、ネームサー
バ部は正常に動作している場合がないわけではない。そ
うした場合、先のステップS120、S170における
応答自体正常に行われるので、サーバ10からサーバ1
2への切り替え、あるいはサーバ12から第3候補のサ
ーバへの切り替えが適切に行われないおそれがある。そ
こで、そのような場合に備え、サーバの提供するサービ
スアプリケーションが正常に動作しない場合にクライア
ントによる問い合わせに対する応答を停止させる応答停
止手段をサーバに設けることが好ましい。具体的には、 (1)業務アプリケーションにより正しく運用ログを出
力させる 通常、サーバ上で稼動する業務アプリケーションは様々
な状況によりエラーメッセージを出力するようにできて
いるので、そのエラーメッセージを利用して速やかに状
況判断に利用する(この業務アプリケーション自体は、
本発明のクラスタリング方式と直接連動させる必要はな
く、依存関係は少ないので構築は容易である)。 (2)運用ログをモニタしエラーを出力したサーバのネ
ームサーバを停止させる 運用ログをモニタするプログラムを稼動させ、継続不能
なエラー(その識別子を予め定めておく)を見つけた場
合、そのメッセージを出力したマシン(当該マシンはメ
ッセージに含まれるIPアドレスを参照して特定され
る)のネームサーバを終了させる。これにより、異常が
発生したサーバのネームサーバを強制終了させ、ステッ
プS150あるいはS200におけるサーバの切り替え
を速やかに行わせることができる。なお、上記第1の実
施の形態のコンピュータネットワークでは、ステップS
140,及びS190において一定時間経過後に繰り返
しサーバ宛にIPアドレスを問い合わせるようにした
が、それ以外の方法、例えば、クライアントがサーバか
ら通信エラーのメッセージを受信したときに初めて問い
合わせるようにしてもよく、再度の問い合わせのタイミ
ングはこれを限定するものではない。ところで、サーバ
マシンの増設等によりクラスタリング対象のサーバのI
Pアドレスに変更があった場合、当該サーバのネームサ
ーバ部に設けられたホスト名−IP変換テーブルとクラ
イアントに設けられたネームサーバリストを更新するこ
とでIPアドレスの管理・メンテナンスが可能である。
しかしながら、クライアントの台数が相当数に及ぶ場
合、同一のネームサーバリストに更新する作業が煩瑣に
なることが懸念される。この問題は、図3に示す、本発
明に係る第2の実施の形態のコンピュータネットワーク
により容易に解決できる。図3を参照して、通信路3
2,34,36で結ばれたネットワーク中のサーバ1
0,12からクライアント20,22までの経路の途中
に、2台のネームサーバ40,42(ネームサーバ名:
NS1,NS2、IPアドレス:192.168.9
0.101,192.168.90.102)が専用機
として接続されている。各ネームサーバには同一のネー
ムサーバ管理テーブル44,46を設けて、そこに1次
候補(プライマリ)サーバ、2次候補(セカンダリ)サ
ーバのIPアドレスとして、サーバ10(サーバ名:A
AA),サーバ12(サーバ名:BBB)のIPアドレ
スをそれぞれ設定する。ここで、ネームサーバを2台と
したのは、二重化して信頼性を高めるためである。そし
て、クライアント20,22のネームサーバリストに
は、1次候補(プライマリ)としてネームサーバ40の
IPアドレス:192.168.90.101、2次候
補(セカンダ)としてネームサーバ42のIPアドレ
ス:192.168.90.102を設定する。なお、
図1と同一構成部分には同一符号を付している。このよ
うな構成において、クライアント20はまず、ネームサ
ーバ40のIPアドレスを1次候補サーバとして知って
いて管理しているが、サービスが提供されるサーバ10
のIPアドレスは知らないので、ネームサーバ40に対
しサーバ10のIPアドレスを問い合わせる。するとネ
ームサーバ40は第1候補(プライマリ)のサーバ、す
なわちサーバ10宛にIPアドレスを問い合わせる。サ
ーバ10のネームサーバ部は、サーバ名:ABCの名に
おいて自己のIPアドレスである192.168.9
0.1を応答する。これにより、クライアント20はサ
ーバABC(実際にはサーバ10、サーバ名:AAA)
との通信を確立したと認識し、サービスの提供を受け
る。いま、サーバ10からのサービスの提供が正常に行
われなくなったとすると、サーバ10からのIPアドレ
スの応答がないので、ネームサーバ40は、第2候補
(セカンダリ)のサーバ、すなわちサーバ12宛にIP
アドレスを問い合わせる。サーバ12のネームサーバ部
はサーバ名:ABCの名において自己のIPアドレスで
ある192.168.90.2を応答する。これによ
り、クライアント20はサーバ12のIPアドレスを取
得して切替わり、サービスの提供をサーバ12から受け
る。この第2の実施の形態では、例えば、サーバ10を
交換してIPアドレスが変更になったとすると、ネーム
サーバ40,42のネームサーバ管理テーブルの更新が
必要となるが、クライアントのネームサーバリストは更
新の必要がない。従って、これらネームサーバ40,4
2だけIPアドレスの管理・メンテナンスをすればよい
ので、クライアント毎の更新の煩雑さがなくなり、ネッ
トワーク環境の変更により柔軟に対応できる。本発明の
コンピュータネットワークによれば、業務サーバ間のデ
ータの冗長性維持(ディスクのミラーリング)への応用
が可能である。すなわち、従来のクラスタリング方式を
採用したネットワークと異なり、サーバマシンが自らの
IPアドレスを変更することがないので、サーバ間(主
・副間)でいつでもデータのやり取りができる。このた
め、随時にディスクのミラーリングが可能であり、ま
た、同名・同内容のデータベースであっても問題なく同
時に稼動させることができるので、分散型データベース
システムを構築する上で本発明のコンピュータネットワ
ークは極めて有利である。具体的には、各種ファイルシ
ステムや市販されているアプリケーションによりミラー
リングを行う。このとき、ミラーリングシステムと本発
明のクラスタリングとの間の依存関係はほとんどないの
で、独自の方式である必要は特になく、市販品のミラー
リングソフトウェアで十分である。また、データベース
については、データベースの二重化又は更新機能(通
常、デュアルマスタリング、パラレルトランザクショ
ン、ミラーDB、デュプリケート等の名称で呼ばれる)
をそのまま利用できる。事実上、TCP/IPを実装す
る多くのOSとプラットフォームでDNS(ドメイン・
ネーム・システム)は利用されており、本発明はそのよ
うなDNSを利用している様々なネットワーク環境に広
範に利用できるものである。なお、本発明は上記した実
施の形態に限定されるものではなく、特許請求の範囲に
記載した技術思想の範囲内において種々の変更が可能な
のはいうまでもない。
【発明の効果】以上説明したように、本発明によるコン
ピュータネットワーク及びネットワークサーバのクラス
タリング方法によれば、複数のサーバのネットワーク上
の位置を1つのサーバ名で管理しているクライアント
と、複数のサーバの各々に設けられ、当該サーバに割当
てられた固有のサーバ名と対応するアドレスとを管理す
るためのネームサーバと、クライアントに設けられ、通
信を希望する相手サーバのアドレスを複数のサーバのう
ち第1のサーバ、第2のサーバ…の優先順位でネームサ
ーバに問い合わせるための問い合わせ手段と、ネームサ
ーバの各々に設けられ、クライアントからのアドレスの
問い合わせに対して自己のアドレスを応答するための変
換テーブルとを有し、前記クライアントによるアドレス
の問い合わせに対し第1のサーバから応答がない場合、
問い合わせ手段は第2のサーバに向けてアドレスを問い
合わせるようにしたので、サーバの切替時間を実質的に
ゼロにでき、かつ安価で高可用性のシステムを構築でき
る。また、本発明のコンピュータネットワーク、ネット
ワークサーバのクラスタリング方法はサーバマシンの機
種や性能への依存性が少なく、多様なネットワーク環境
への適用が容易であり、その技術的意義は極めて大であ
る。
【図面の簡単な説明】
【図1】本発明に係るコンピュータネットワークの第1
の実施の形態を示す機能ブロック図
【図2】図1のコンピュータネットワークのクラスタリ
ング動作を示すフローチャート
【図3】本発明に係るコンピュータネットワークの第2
の実施の形態を示す機能ブロック図
【図4】従来のコンピュータネットワークのクラスタリ
ング方式を示すブロック図
【符号の説明】
10,12 サーバ 20,22 クライアント
─────────────────────────────────────────────────────
【手続補正書】
【提出日】平成11年7月21日(1999.7.2
1)
【手続補正1】
【補正対象書類名】図面
【補正対象項目名】全図
【補正方法】変更
【補正内容】
【図1】
【図2】
【図4】
【図3】 ─────────────────────────────────────────────────────
【手続補正書】
【提出日】平成11年12月22日(1999.12.
22)
【手続補正1】
【補正対象書類名】明細書
【補正対象項目名】請求項6
【補正方法】変更
【補正内容】
【手続補正2】
【補正対象書類名】明細書
【補正対象項目名】発明の詳細な説明
【補正方法】変更
【補正内容】
【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、同一のサービスを
提供可能な複数のサーバと、前記サーバの少なくとも一
つが提供する前記サービスを利用するクライアントを有
し、第1のサーバが前記サービスを提供できなくなった
ときに第2のサーバに同一のサービスの提供を行わせる
コンピュータネットワーク及びネットワークサーバのク
ラスタリング方法に関する。
【0002】
【従来の技術】複数のコンピュータを接続して構成した
コンピュータネットワークにおいて、クライアント・サ
ーバモデルに基づく分散システムによりサーバからクラ
イアントにサービスを提供する場合、ネットワークある
いは複数のコンピュータ(ノード)の障害を意識しない
で済む障害透過性の確保が重要である。この目的のため
に、同一のサービスを提供可能な複数のサーバを用意
し、第1のサーバがサービスを提供できなくなったとき
に第2のサーバに同一のサービスの提供を行わせるクラ
スタリング方式により可用性(Availabilit
y)を高める技術が採用されている。一方、UNIXに
代表されるインターネットプロトコルを用いたネットワ
ークは、TCP/IPのプロトコルをデファクト・スタ
ンダードとして採用している。
【0003】 このTCP/IPプロトコルに基づき構築
された従来のクラスタリング方式によるコンピュータネ
ットワークを図4に示す。ネットワークに接続され同一
のサービスを提供可能な二つのサーバAAA,BBBに
は、それぞれ異なるIPアドレス(インターネット・プ
ロトコル・アドレス)を割り当てる。このように異なる
IPアドレスを割り当てるのは、もし、IPアドレスが
ある時点で重複し割り当てられていると、一つのIPア
ドレスに対して複数のMACアドレスが対応することと
なって、送信元はどのMACアドレスを指定してパケッ
トを送るべきか決められなくなるからである。また、通
常時にはサーバBBBのLANカード2(NIC:ネッ
トワーク・インターフェース・カードとも呼ばれる)を
非活性の状態にしておく。稼動系サーバAAAと待機系
サーバBBBとはLANカード3、LANカード4及び
通信路cによって確立されたハートビート通信により、
相互の稼動状況を監視している。したがって、待機系サ
ーバBBBは、待機状態においてハートビート通信とサ
ーバAAAの監視に必要なハードウェア及びアプリケー
ションだけは活性状態にある。なお、このハートビート
通信は、通常LANカード5、LANカード6及び通信
路dによって二重化しその信頼性を高めている。
【0004】 このような構成において、いまサーバAA
Aがシステムダウン、通信不能等によりクライアント1
あるいはクライアント2にサービスを提供できない状態
になると、待機系サーバBBBはこの状態をハートビー
ト通信により認識し、稼動系サーバAAAのシステムダ
ウン等の後にそのIPアドレスを引き継いで自己のIP
アドレスとして設定する。したがって、サーバBBBは
待機状態においてクライアントにサービスを提供するた
めのアプリケーションは起動されておらず、サーバの切
替に要する時間が長くなる。
【0005】 前記した従来のクラスタリング方式は、コ
ールド・スタンバイ方式と呼ばれるが、この方式は、そ
の仕組みの複雑さとハードウェア・ソフトウェアに要求
される仕様に起因してコスト高となっている。すなわ
ち、稼動系サーバと待機系サーバとはハートビート通信
を行うために必要なLANカード、通信路の増設及びソ
フトウェアの導入が不可欠であり、システムが煩雑化す
る。クラスタリングソフトウェア自体は高価であるばか
りでなく、そのソフトウェアが動作する上でサーバに同
様のマシン仕様を要求するので、前記LANカード(N
IC)の増加と相俟ってシステム全体がコスト高とな
る。また、ハートビート通信を行うために必要なNIC
が増設されるとその分だけ接続個所が増加するので、障
害の危険率が上昇する。更に、ハートビート通信の誤動
作により、稼動系サーバのシステムダウンの前に待機系
サーバが稼動状態に切替わって、IPアドレスの衝突が
起こる可能性もある。このような要因は結果的にネット
ワークの信頼性を低下させる要因となる。このため、
「クラスタリングの方程式:2割増の信頼性を得るため
に2倍のコストを要する」に従いコスト高になるという
当業者の認識は否めない。
【0006】 また、従来の方式は、クラスタリングされ
るサーバに同様のマシン仕様が要求されるので、性能の
異なるあるいは異種のサーバマシンが混在するネットワ
ーク環境には通常適用が困難であるし、例えば、複数枚
のNIC環境に実績の少ないOSのときは特に実現が難
しいといえ、したがってその適用範囲が狭い欠点があ
る。
【0007】
【発明が解決しようとする課題】そこで本発明の主要な
目的は、サーバの切替時間を実質的にゼロにでき、かつ
安価で高可用性のシステムを構築できるコンピュータネ
ットワーク、ネットワークサーバのクラスタリング方法
を提供することにある。本発明の別の目的は、サーバマ
シンの機種や性能への依存性が少なく、多様なネットワ
ーク環境への適用が容易なコンピュータネットワーク、
ネットワークサーバのクラスタリング方法を提供するこ
とにある。
【0008】
【課題を解決するための手段】上記の目的を達成するた
めに、本発明に係る第1のコンピュータネットワーク
は、同一のサービスを提供可能な複数のサーバと、サー
バの少なくとも一つが提供するサービスを利用するクラ
イアントを有し、第1のサーバがサービスを提供できな
くなったときに第2のサーバに同一のサービスの提供を
行わせるコンピュータネットワークにおいて、複数のサ
ーバのネットワーク上の位置を1つのサーバ名で管理し
ているクライアントと、複数のサーバの各々に設けら
れ、当該サーバに割当てられた固有のサーバ名と対応す
るアドレスとを管理するためのネームサーバと、クライ
アントに設けられ、通信を希望する相手サーバのアドレ
スを複数のサーバのうち第1のサーバ、第2のサーバ…
の優先順位でネームサーバに問い合わせるための問い合
わせ手段と、ネームサーバの各々に設けられ、クライア
ントからのアドレスの問い合わせに対して自己のアドレ
スを応答するための変換テーブルとを有し、前記クライ
アントによるアドレスの問い合わせに対し第1のサーバ
から応答がない場合、問い合わせ手段は第2のサーバに
向けてアドレスを問い合わせることを特徴とする。
【0009】 本発明に係る第2のコンピュータネットワ
ークは、同一のサービスを提供可能な複数のサーバと、
前記サーバの少なくとも一つが提供するサービスを利用
するクライアントを有し、第1のサーバがサービスを提
供できなくなったときに第2のサーバに同一のサービス
の提供を行わせるコンピュータネットワークにおいて、
複数のサーバのネットワーク上の位置を1つのサーバ名
で管理しているクライアントと、複数のサーバの各々に
設けられ、当該サーバに割当てられた固有のサーバ名と
対応するアドレスとを管理するための第1のネームサー
バと、複数のサーバの各サーバ名と対応するアドレスと
を管理するための第2のネームサーバと、クライアント
に設けられ、通信を希望する相手サーバのアドレスを複
数のサーバのうち第1のサーバ、第2のサーバ…の優先
順位で第2のネームサーバに問い合わせるための問い合
わせ手段と、第1のネームサーバの各々に設けられ、ク
ライアントからのアドレスの問い合わせに対して自己の
アドレスを応答するための変換テーブルとを有し、クラ
イアントによるアドレスの問い合わせに対し第1のサー
バから応答がない場合、問い合わせ手段は第2のサーバ
に向けてアドレスを問い合わせることを特徴とする。
【0010】 上記本発明に係る第1及び第2のコンピュ
ータネットワークにおいて、サーバ及びクライアント
は、ドメイン・ネーム・システム(DNS)による名前
・IPアドレス解決を含むインターネットプロトコルを
用いて通信を行うネットワークを構成していることが好
ましく、これにより、TCP/IPに代表されるインタ
ーネットプロトコルに準拠した様々な性能、機種のマシ
ンが混在するネットワーク環境で、クラスタリングの実
現が可能となる。
【0011】 また、サーバの提供するサービスアプリケ
ーションが正常に動作しない場合には、そのサービスア
プリケーションを利用しているクライアントにとっては
サーバに障害が発生しているに等しいので、他の正常な
サーバへの切り替えが行われることが望ましい。しかし
ながら、障害の発生したサーバにおいて、ネームサーバ
自体は正常に動作している場合もあり得るため、その切
り替えが直ちに行われないおそれがある。そこで、この
ような場合に備え、サーバは、クライアントによるアド
レスの問い合わせに対する当該サーバの応答を停止させ
る応答停止手段を具備することが好ましい。
【0012】 本発明に係る第1及び第2のコンピュータ
ネットワークは、様々なネットワーク環境へ柔軟に適用
可能なので、例えば、複数のサーバがデータベースサー
バであって、データベースのデータを前記複数のサーバ
内に分散した分散型データベースシステムを構築するこ
とで、データとアプリケーションの切り分けができる。
これにより、データベース内のデータを複数のサーバ
(データベースサーバ)に冗長に配置したときの、デー
タ保護の安全性の向上、データベースシステムの信頼
性、可用性の向上に寄与することができる。なお、本発
明において、「サーバ」というときはクライアントに所
定のサービスを提供する本来のサーバをいい、「ネーム
サーバ」というときはサーバ名(ドメイン名あるいはホ
スト名とも呼ばれる)及び対応するアドレス(例えばI
Pアドレス)を管理しているサーバ(例えば、いわゆる
ドメイン・ネーム・サーバ)またはそのサーバ上で起動
されるソフトウェアをいう。
【0013】
【発明の実施の形態】以下、本発明の好ましい実施の形
態を、図面に基づき説明する。図1は、本発明に係るコ
ンピュータネットワークの第1の実施の形態を示す機能
ブロック図であり、サービスを提供する第1のサーバ1
0、第2のサーバ12と、サービスの提供を受けるクラ
イアント20、クライアント22を通信路30によって
相互に接続し、インターネットプロトコルとしてTCP
/IPを使用したLANを構築している。第1のサーバ
10には固有のサーバ名:AAAと対応するIPアドレ
ス:192.168.90.1が、第2のサーバ12に
は、固有のサーバ名:BBBと対応するIPアドレス:
192.168.90.2がそれぞれ割り当てられてい
る。
【0014】 TCP/IPは、ほとんどの場合、サーバ
名(インターネットの用語の「ホスト名」に相当)とI
Pアドレスの対応関係を効率よく管理するために、サー
バ名をIPアドレスに自動的に変換するためのシステム
として、DNS(ドメイン・ネーム・システム)を採用
している。本実施の形態では、サービスを提供する第1
のサーバ10及び第2のサーバ12には、このDNSを
実現するソフトウェアをそれぞれ搭載することにより、
ネームサーバしての機能を有している。このような機能
を有する部分を以下「ネームサーバ部」と呼ぶこととす
る。
【0015】 図1において、サーバ10,12のネーム
サーバ部は、ホスト名−IP変換テーブル14,16を
それぞれ備えている。ホスト名−IP変換テーブル14
は、サーバ10に割り当てられた固有のサーバ名:AA
Aに代わる同一のサーバ名:ABCと、割り当てられた
固有のIPアドレス:192.168.90.1とを関
連付けたリストであり、一方、ホスト名−IP変換テー
ブル16は、サーバ12に割り当てられた固有のサーバ
名:BBBに代わる同一のサーバ名:ABCと、割り当
てられた固有のIPアドレス:192.168.90.
2とを関連付けたリストであり、それぞれのネームサー
バ部はこれを管理している。
【0016】 一方、クライアント20,22は、上述し
たDNSの機能を利用するためのソフトウェアを搭載
し、これにより、サービスが提供される相手サーバのサ
ーバ名として1つのサーバ名ABCのみを管理するとと
もに、その相手サーバのIPアドレスを取得する際にそ
の問い合わせをプライマリ、セカンダリの順序で行うよ
う、ネームサーバの問い合わせ先を設定したネームサー
バリスト24,26を備えている。ここでは、1次候補
(プライマリ)にサーバ10のネームサーバ部、2次候
補(セカンダリ)にサーバ12のネームサーバ部に問い
合わせするよう、設定している。
【0017】 上記のように構築したコンピュータネット
ワークにおけるクラスタリングの動作を、図2を参照し
て説明する。まず、ステップS100において、サーバ
10(サーバ名:AAA)とサーバ12(サーバ名:B
BB)のコンピュータを稼動させて、OSを起動させ
る。この際、両サーバに搭載されたネームサーバ部はネ
ームサーバソフトウェアを起動させて稼動させ、また、
クライアントが利用する業務用アプリケーションソフト
ウェアも起動させて稼動させる。次いで、ステップS1
10において、クライアント20は、ネームサーバリス
ト24に従い、プライマリのネームサーバであるサーバ
10宛にIPアドレスを問い合わせる。ステップS12
0において、サーバ10のネームサーバ部は、サーバ1
0が正常にサービスを提供しているときは、サーバ名:
ABCの名において自己のIPアドレスである192.
168.90.1を応答する。サーバ10が正常にサー
ビスを提供していない、例えばシステムダウンの場合、
ネームサーバ部はこの応答を行わない。ステップ130
において、クライアント20が、サーバ10からIPア
ドレスの応答を受け取ると、クライアント20は、「サ
ーバABC」と通信を確立してサービスを正常に受けて
いると認識する。ステップS140において、先のIP
アドレスの問い合わせとその応答から一定時間(例えば
30秒)経過するまでは、クライアント20は、ステッ
プS130の状態、すなわち「サーバABC」からサー
ビスを正常に受けていると認識している。そして一定時
間経過したときに、ステップS110に戻って、再びサ
ーバ10宛にIPアドレスを問い合わせる。そして、サ
ーバ10が正常である限り、ステップS120→ステッ
プS130→ステップS140→ステップ110の動作
が繰り返され、クライアント20はサーバ10からサー
ビスを継続して受けることができる。
【0018】 次に、ある時点でサーバ10が正常にサー
ビスを提供しなくなったとすると、ステップS120に
おいて、サーバ10のネームサーバ部はIPアドレスの
応答を行わないので、クライアント20はサーバ10の
IPアドレスを取得できない。そこで、ステップS15
0において、クライアント20は、ネームサーバリスト
24に従い、2次候補(セカンダリ)のネームサーバで
あるサーバ12(サーバ名:BBB)宛にIPアドレス
の問い合わせ先を切り替える。ステップS160におい
て、クライアント20は、サーバ12宛にIPアドレス
を問い合わせる。ステップS10において、サーバ1
2のネームサーバ部は、サーバ12が正常にサービスを
提供しているときは、サーバ名:ABCの名において自
己のIPアドレスである192.168.90.2を応
答する。サーバ12が正常にサービスを提供していない
場合、ネームサーバ部はこの応答を行わない。ステップ
180において、クライアント20が、サーバ12か
らIPアドレスの応答を受け取ると、クライアント20
は、「サーバABC」と通信を確立してサービスを正常
に受けていると認識する。ステップS190において、
先のIPアドレスの問い合わせとその応答から一定時間
(例えば30秒)経過するまでは、クライアント20
は、ステップS180の状態、すなわち「サーバAB
C」からサービスを正常に受けていると認識している。
そして一定時間経過したときに、ステップS160に戻
って、再びサーバ12宛にIPアドレスを問い合わせ
る。そして、サーバ12が正常である限り、ステップS
170→ステップS180→ステップ190→ステップ
S160の動作が繰り返され、クライアント20はサー
バ12からサービスを継続して受けることができる。
【0019】 なお、図示しない第3のサーバをネットワ
ークに接続し、そのサーバを上記サーバ10、12と同
様に構成すると共に、クライアントのネームサーバリス
トの第3候補に当該第3のサーバのネームサーバを設定
しておけば、ステップS200で破線で示した動作を同
様に行わせて、第3のサーバに切り替えてサービスの提
供を行わせることができるのはもちろんである。本発明
に係る第1の実施の形態のコンピュータネットワークに
よれば、インターネットプロトコルTCP/IPが通常
備えるDNSによる名前・IPアドレス解決を利用する
ので、従来必要とされていた、2台のサーバの動作を相
互監視するハートビート通信のための特別なハードウェ
ア・ソフトウェアを使用することなく、クラスタリング
を行うことができるので、システムが大幅に簡素化され
る。
【0020】 また、特別なクラスタリングソフトウェア
を導入する必要もないので、サーバマシンの性能・機種
等の仕様上の制限が大幅に緩和され、異なる性能・機種
のサーバマシンが混在するネットワーク環境にも利用可
能である。従って、高信頼性のクラスタリングを実現し
たコンピュータネットワークを、柔軟にかつ安価に構築
できる。更に、2台のサーバで同時に業務用アプリケー
ションソフトウェアを稼動させておくので、第1のサー
バから第2のサーバへの切り替えによるクライアントの
サービス利用の待ち時間が実質ゼロであるホット・スタ
ンバイ方式を実現できる利点もある。
【0021】 本発明に係る第1の実施の形態のコンピュ
ータネットワークによれば、サーバのネームサーバ部
は、クライアントが管理している一つのサーバ名:AB
Cとそのサーバ固有のIPアドレスを設定したホスト名
−IPアドレス変換テーブルを備えるので、クライアン
トは、サービスを提供しているサーバが、サーバ10
(サーバ名:AAA)からサーバ12(サーバ名:BB
B)に切替わったことを何ら意識する必要がない。よっ
て、いわゆる分散システムとして本コンピュータネット
ワークを捉えた場合、透過性(Transparenc
y)の極めて高いシステムと言うことができ、可用性が
大幅に向上しているものである。従って、施形
サーバ10,12をデータベースサーバとして用い、デ
ータベースのデータをこれらサーバ内に分散すること
で、透過性の極めて高い分散型データベースシステムを
構築することができる。
【0022】 ここで、サーバがクライアントに対し正常
にサービスを提供できなくなっても、ネームサーバ部は
正常に動作している場合がないわけではない。そうした
場合、先のステップS120、S170における応答自
体正常に行われるので、サーバ10からサーバ12への
切り替え、あるいはサーバ12から第3候補のサーバへ
の切り替えが適切に行われないおそれがある。そこで、
そのような場合に備え、サーバの提供するサービスアプ
リケーションが正常に動作しない場合にクライアントに
よる問い合わせに対する応答を停止させる応答停止手段
をサーバに設けることが好ましい。具体的には、 (1)業務アプリケーションにより正しく運用ログを出
力させる 通常、サーバ上で稼動する業務アプリケーションは様々
な状況によりエラーメッセージを出力するようにできて
いるので、そのエラーメッセージを利用して速やかに状
況判断に利用する(この業務アプリケーション自体は、
本発明のクラスタリング方式と直接連動させる必要はな
く、依存関係は少ないので構築は容易である)。 (2)運用ログをモニタしエラーを出力したサーバのネ
ームサーバを停止させる 運用ログをモニタするプログラムを稼動させ、継続不能
なエラー(その識別子を予め定めておく)を見つけた場
合、そのメッセージを出力したマシン(当該マシンはメ
ッセージに含まれるIPアドレスを参照して特定され
る)のネームサーバを終了させる。これにより、異常が
発生したサーバのネームサーバを強制終了させ、ステッ
プS150あるいはS200におけるサーバの切り替え
を速やかに行わせることができる。
【0023】 なお、上記第1の実施の形態のコンピュー
タネットワークでは、ステップS140,及びS190
において一定時間経過後に繰り返しサーバ宛にIPアド
レスを問い合わせるようにしたが、それ以外の方法、例
えば、クライアントがサーバから通信エラーのメッセー
ジを受信したときに初めて問い合わせるようにしてもよ
く、再度の問い合わせのタイミングはこれを限定するも
のではない。ところで、サーバマシンの増設等によりク
ラスタリング対象のサーバのIPアドレスに変更があっ
た場合、当該サーバのネームサーバ部に設けられたホス
ト名−IP変換テーブルとクライアントに設けられたネ
ームサーバリストを更新することでIPアドレスの管理
・メンテナンスが可能である。しかしながら、クライア
ントの台数が相当数に及ぶ場合、同一のネームサーバリ
ストに更新する作業が煩瑣になることが懸念される。こ
の問題は、図3に示す、本発明に係る第2の実施の形態
のコンピュータネットワークにより容易に解決できる。
【0024】 図3を参照して、通信路32,34,36
で結ばれたネットワーク中のサーバ10,12からクラ
イアント20,22までの経路の途中に、2台のネーム
サーバ40,42(ネームサーバ名:NS1,NS2、
IPアドレス:192.168.90.101,19
2.168.90.102)が専用機として接続されて
いる。各ネームサーバには同一のネームサーバ管理テー
ブル44,46を設けて、そこに1次候補(プライマ
リ)サーバ、2次候補(セカンダリ)サーバのIPアド
レスとして、サーバ10(サーバ名:AAA),サーバ
12(サーバ名:BBB)のIPアドレスをそれぞれ設
定する。ここで、ネームサーバを2台としたのは、二重
化して信頼性を高めるためである。そして、クライアン
ト20,22のネームサーバリストには、1次候補(プ
ライマリ)としてネームサーバ40のIPアドレス:1
92.168.90.101、2次候補(セカンダ)と
してネームサーバ42のIPアドレス:192.16
8.90.102を設定する。なお、図1と同一構成部
分には同一符号を付している。
【0025】 このような構成において、クライアント2
0はまず、ネームサーバ40のIPアドレスを1次候補
サーバとして知っていて管理しているが、サービスが提
供されるサーバ10のIPアドレスは知らないので、ネ
ームサーバ40に対しサーバ10のIPアドレスを問い
合わせる。するとネームサーバ40は第1候補(プライ
マリ)のサーバ、すなわちサーバ10宛にIPアドレス
を問い合わせる。サーバ10のネームサーバ部は、サー
バ名:ABCの名において自己のIPアドレスである1
92.168.90.1を応答する。これにより、クラ
イアント20はサーバABC(実際にはサーバ10、サ
ーバ名:AAA)との通信を確立したと認識し、サービ
スの提供を受ける。いま、サーバ10からのサービスの
提供が正常に行われなくなったとすると、サーバ10か
らのIPアドレスの応答がないので、ネームサーバ40
は、第2候補(セカンダリ)のサーバ、すなわちサーバ
12宛にIPアドレスを問い合わせる。サーバ12のネ
ームサーバ部はサーバ名:ABCの名において自己のI
Pアドレスである192.168.90.2を応答す
る。これにより、クライアント20はサーバ12のIP
アドレスを取得して切替わり、サービスの提供をサーバ
12から受ける。
【0026】 この第2の実施の形態では、例えば、サー
バ10を交換してIPアドレスが変更になったとする
と、ネームサーバ40,42のネームサーバ管理テーブ
ルの更新が必要となるが、クライアントのネームサーバ
リストは更新の必要がない。従って、これらネームサー
バ40,42だけIPアドレスの管理・メンテナンスを
すればよいので、クライアント毎の更新の煩雑さがなく
なり、ネットワーク環境の変更により柔軟に対応でき
る。
【0027】 本発明のコンピュータネットワークによれ
ば、業務サーバ間のデータの冗長性維持(ディスクのミ
ラーリング)への応用が可能である。すなわち、従来の
クラスタリング方式を採用したネットワークと異なり、
サーバマシンが自らのIPアドレスを変更することがな
いので、サーバ間(主・副間)でいつでもデータのやり
取りができる。このため、随時にディスクのミラーリン
グが可能であり、また、同名・同内容のデータベースで
あっても問題なく同時に稼動させることができるので、
分散型データベースシステムを構築する上で本発明のコ
ンピュータネットワークは極めて有利である。
【0028】 具体的には、各種ファイルシステムや市販
されているアプリケーションによりミラーリングを行
う。このとき、ミラーリングシステムと本発明のクラス
タリングとの間の依存関係はほとんどないので、独自の
方式である必要は特になく、市販品のミラーリングソフ
トウェアで十分である。また、データベースについて
は、データベースの二重化又は更新機能(通常、デュア
ルマスタリング、パラレルトランザクション、ミラーD
B、デュプリケート等の名称で呼ばれる)をそのまま利
用できる。
【0029】 事実上、TCP/IPを実装する多くのO
SとプラットフォームでDNS(ドメイン・ネーム・シ
ステム)は利用されており、本発明はそのようなDNS
を利用している様々なネットワーク環境に広範に利用で
きるものである。なお、本発明は上記した実施の形態に
限定されるものではなく、特許請求の範囲に記載した技
術思想の範囲内において種々の変更が可能なのはいうま
でもない。
【0030】
【発明の効果】以上説明したように、本発明によるコン
ピュータネットワーク及びネットワークサーバのクラス
タリング方法によれば、複数のサーバのネットワーク上
の位置を1つのサーバ名で管理しているクライアント
と、複数のサーバの各々に設けられ、当該サーバに割当
てられた固有のサーバ名と対応するアドレスとを管理す
るためのネームサーバと、クライアントに設けられ、通
信を希望する相手サーバのアドレスを複数のサーバのう
ち第1のサーバ、第2のサーバ…の優先順位でネームサ
ーバに問い合わせるための問い合わせ手段と、ネームサ
ーバの各々に設けられ、クライアントからのアドレスの
問い合わせに対して自己のアドレスを応答するための変
換テーブルとを有し、前記クライアントによるアドレス
の問い合わせに対し第1のサーバから応答がない場合、
問い合わせ手段は第2のサーバに向けてアドレスを問い
合わせるようにしたので、サーバの切替時間を実質的に
ゼロにでき、かつ安価で高可用性のシステムを構築でき
る。また、本発明のコンピュータネットワーク、ネット
ワークサーバのクラスタリング方法はサーバマシンの機
種や性能への依存性が少なく、多様なネットワーク環境
への適用が容易であり、その技術的意義は極めて大であ
る。
【手続補正3】
【補正対象書類名】図面
【補正対象項目名】図3
【補正方法】変更
【補正内容】
【図3】

Claims (10)

    【特許請求の範囲】
  1. 【請求項1】 同一のサービスを提供可能な複数のサー
    バと、前記サーバの少なくとも一つが提供する前記サー
    ビスを利用するクライアントを有し、第1のサーバが前
    記サービスを提供できなくなったときに第2のサーバに
    同一のサービスの提供を行わせるコンピュータネットワ
    ークにおいて、複数のサーバのネットワーク上の位置を
    1つのサーバ名で管理しているクライアントと、前記複
    数のサーバの各々に設けられ、当該サーバに割当てられ
    た固有のサーバ名と対応するアドレスとを管理するため
    のネームサーバと、前記クライアントに設けられ、通信
    を希望する相手サーバのアドレスを前記複数のサーバの
    うち第1のサーバ、第2のサーバ…の優先順位で前記ネ
    ームサーバに問い合わせるための問い合わせ手段と、前
    記ネームサーバの各々に設けられ、前記クライアントか
    らのアドレスの問い合わせに対して自己のアドレスを応
    答するための変換テーブルとを有し、前記クライアント
    によるアドレスの問い合わせに対し前記第1のサーバか
    ら応答がない場合、前記問い合わせ手段は第2のサーバ
    に向けてアドレスを問い合わせることを特徴とするコン
    ピュータネットワーク。
  2. 【請求項2】 同一のサービスを提供可能な複数のサー
    バと、前記サーバの少なくとも一つが提供する前記サー
    ビスを利用するクライアントを有し、第1のサーバが前
    記サービスを提供できなくなったときに第2のサーバに
    同一のサービスの提供を行わせるコンピュータネットワ
    ークにおいて、複数のサーバのネットワーク上の位置を
    1つのサーバ名で管理しているクライアントと、前記複
    数のサーバの各々に設けられ、当該サーバに割当てられ
    た固有のサーバ名と対応するアドレスとを管理するため
    の第1のネームサーバと、前記複数のサーバの各サーバ
    名と対応するアドレスとを管理するための第2のネーム
    サーバと、前記クライアントに設けられ、通信を希望す
    る相手サーバのアドレスを前記複数のサーバのうち第1
    のサーバ、第2のサーバ…の優先順位で前記第2のネー
    ムサーバに問い合わせるための問い合わせ手段と、前記
    第1のネームサーバの各々に設けられ、前記クライアン
    トからのアドレスの問い合わせに対して自己のアドレス
    を応答するための変換テーブルとを有し、前記クライア
    ントによるアドレスの問い合わせに対し前記第1のサー
    バから応答がない場合、前記問い合わせ手段は第2のサ
    ーバに向けてアドレスを問い合わせることを特徴とする
    コンピュータネットワーク。
  3. 【請求項3】 前記サーバ及びクライアントが、ドメイ
    ン・ネーム・システム(DNS)による名前・IPアド
    レス解決を含むインターネットプロトコルを用いて通信
    を行うネットワークを構成していることを特徴とする請
    求項第1項または第2項記載のコンピュータネットワー
    ク。
  4. 【請求項4】 前記サーバが、当該サーバの提供するサ
    ービスアプリケーションが正常に動作しない場合に前記
    クライアントによるアドレスの問い合わせに対する当該
    サーバの応答を停止させる応答停止手段を具備すること
    を特徴とする請求項第1項ないし第3項記載のコンピュ
    ータネットワーク。
  5. 【請求項5】 前記複数のサーバがデータベースサーバ
    であって、データベースのデータを前記複数のサーバ内
    に分散した分散型データベースシステムを構成している
    ことを特徴とする請求項第1項ないし第4項記載のコン
    ピュータネットワーク。
  6. 【請求項6】 同一のサービスを提供可能な複数のサー
    バと、前記サーバの少なくとも一つが提供する前記サー
    ビスを利用するクライアントを有し、第1のサーバが前
    記サービスを提供できなくなったときに第2のサーバに
    同一のサービスの提供を行わせるネットワークサーバの
    クラスタリング方法において、クライアントは複数のサ
    ーバのネットワーク上の位置を1つのサーバ名で管理
    し、各サーバ上のネームサーバは前記複数のサーバは当
    該サーバに割当てられた固有のサーバ名と対応するアド
    レスとを管理し、前記クライアントは通信を希望する相
    手サーバのアドレスを前記複数のサーバのうち第1のサ
    ーバ、第2のサーバ…の優先順位で前記ネームサーバに
    問い合わせ、前記クライアントからのアドレスの問い合
    わせに対して前記サーバのネームサーバは自己のアドレ
    スを応答し、前記クライアントによるアドレスの問い合
    わせに対し前記第1のサーバから応答がない場合前記ク
    ライアントは第2のサーバに向けてアドレスを問い合わ
    せ、アドレスの応答があった第2のサーバからサービス
    の提供を受けることを特徴とするネットワークサーバの
    クラスタリング方法。
  7. 【請求項7】 同一のサービスを提供可能な複数のサー
    バと、前記サーバの少なくとも一つが提供する前記サー
    ビスを利用するクライアントを有し、第1のサーバが前
    記サービスを提供できなくなったときに第2のサーバに
    同一のサービスの提供を行わせるネットワークサーバの
    クラスタリング方法において、クライアントは複数のサ
    ーバのネットワーク上の位置を1つのサーバ名で管理
    し、各サーバ上の第1のネームサーバは前記複数のサー
    バの当該サーバに割当てられた固有のサーバ名と対応す
    るアドレスとを管理し、ネットワーク上の第2のネーム
    サーバは前記複数のサーバの各サーバ名と対応するアド
    レスとを管理し、前記クライアントは通信を希望する相
    手サーバのアドレスを前記複数のサーバのうち第1のサ
    ーバ、第2のサーバ…の優先順位で前記第2のネームサ
    ーバに問い合わせ、前記クライアントからのアドレスの
    問い合わせに対して前記サーバ上の第1のネームサーバ
    は自己のアドレスを応答し、前記クライアントによるア
    ドレスの問い合わせに対し前記第1のサーバから応答が
    ない場合前記クライアントは第2のサーバに向けてアド
    レスを問い合わせ、アドレスの応答があった第2のサー
    バからサービスの提供を受けることを特徴とするネット
    ワークサーバのクラスタリング方法。
  8. 【請求項8】 前記ネットワークサーバ及びクライアン
    トコンピュータが、ドメイン・ネーム・システム(DN
    S)による名前・IPアドレス解決を含むインターネッ
    トプロトコルを用いて通信を行うネットワークを構成し
    ていることを特徴とする請求項第6項または第7項記載
    のネットワークサーバのクラスタリング方法。
  9. 【請求項9】 前記サーバが、当該サーバの提供するサ
    ービスアプリケーションが正常に動作しない場合に前記
    クライアントによるアドレスの問い合わせに対する当該
    サーバの応答を停止させる応答停止手段を具備すること
    を特徴とする特許請求の範囲第6項ないし第8項記載の
    ネットワークサーバのクラスタリング方法。
  10. 【請求項10】 前記複数のサーバがデータベースサー
    バであって、データベースのデータを前記複数のサーバ
    内に分散した分散型データベースシステムを構成してい
    ることを特徴とする請求項第6項ないし第9項記載のネ
    ットワークサーバのクラスタリング方法。
JP17035399A 1999-06-16 1999-06-16 コンピュータネットワーク及びネットワークサーバのクラスタリング方法 Expired - Fee Related JP3299521B2 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP17035399A JP3299521B2 (ja) 1999-06-16 1999-06-16 コンピュータネットワーク及びネットワークサーバのクラスタリング方法
EP19990126174 EP1061711A3 (en) 1999-06-16 1999-12-29 Computer network and method of clustering network servers
KR1019990065490A KR20010005487A (ko) 1999-06-16 1999-12-30 컴퓨터 네트워크 및 네트워크 서버의 클러스터링 방법
TW88123339A TW463090B (en) 1999-06-16 1999-12-30 Computer network and method of clustering network servers
CA 2293880 CA2293880A1 (en) 1999-06-16 1999-12-30 Computer network and method of clustering network servers

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP17035399A JP3299521B2 (ja) 1999-06-16 1999-06-16 コンピュータネットワーク及びネットワークサーバのクラスタリング方法

Publications (2)

Publication Number Publication Date
JP2000357160A true JP2000357160A (ja) 2000-12-26
JP3299521B2 JP3299521B2 (ja) 2002-07-08

Family

ID=15903369

Family Applications (1)

Application Number Title Priority Date Filing Date
JP17035399A Expired - Fee Related JP3299521B2 (ja) 1999-06-16 1999-06-16 コンピュータネットワーク及びネットワークサーバのクラスタリング方法

Country Status (5)

Country Link
EP (1) EP1061711A3 (ja)
JP (1) JP3299521B2 (ja)
KR (1) KR20010005487A (ja)
CA (1) CA2293880A1 (ja)
TW (1) TW463090B (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100404906B1 (ko) * 2001-12-20 2003-11-07 한국전자통신연구원 클러스터 시스템의 고 가용성 구현장치 및 방법
WO2006106792A1 (en) * 2005-03-30 2006-10-12 Ricoh Company, Ltd. System and method for compensating for resource unavailability in an image processing system
JP2007251818A (ja) * 2006-03-17 2007-09-27 Fujitsu Ltd 送信制御プログラム、送信制御方法および送信制御装置
JP5195748B2 (ja) * 2007-03-29 2013-05-15 富士通株式会社 サーバ管理プログラム、方法、及び装置

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20020017926A (ko) * 2000-08-29 2002-03-07 오명철 주변 네트워크 인식 인터넷 컨텐츠 분산 배포 시스템 및그 제어 방법
KR100439175B1 (ko) * 2001-12-26 2004-07-05 한국전자통신연구원 리눅스 기반의 클러스터 시스템의 운영체제 원격 자동설치 방법
KR100477653B1 (ko) * 2002-06-22 2005-03-23 삼성전자주식회사 외부망에서의 dns 서버 검색 장치 및 방법
KR100462886B1 (ko) * 2002-10-15 2004-12-17 삼성전자주식회사 부하 분담 구조와 프라이머리/백업 구조가 혼합된 시스템
MY159199A (en) * 2011-07-25 2016-12-30 Mimos Berhad Global services redundancy using ip address mobility
US10419395B2 (en) 2015-10-23 2019-09-17 International Business Machines Corporation Routing packets in a data center network

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100404906B1 (ko) * 2001-12-20 2003-11-07 한국전자통신연구원 클러스터 시스템의 고 가용성 구현장치 및 방법
WO2006106792A1 (en) * 2005-03-30 2006-10-12 Ricoh Company, Ltd. System and method for compensating for resource unavailability in an image processing system
AU2006232449B2 (en) * 2005-03-30 2010-03-18 Ricoh Company, Ltd. System and method for compensating for resource unavailability in an image processing system
US7821660B2 (en) 2005-03-30 2010-10-26 Ricoh Company, Ltd. System and method for compensating for resource unavailability in an image processing system
JP2007251818A (ja) * 2006-03-17 2007-09-27 Fujitsu Ltd 送信制御プログラム、送信制御方法および送信制御装置
JP5195748B2 (ja) * 2007-03-29 2013-05-15 富士通株式会社 サーバ管理プログラム、方法、及び装置

Also Published As

Publication number Publication date
EP1061711A2 (en) 2000-12-20
CA2293880A1 (en) 2000-12-16
TW463090B (en) 2001-11-11
KR20010005487A (ko) 2001-01-15
JP3299521B2 (ja) 2002-07-08
EP1061711A3 (en) 2002-09-04

Similar Documents

Publication Publication Date Title
US5948108A (en) Method and system for providing fault tolerant access between clients and a server
US10218782B2 (en) Routing of communications to one or more processors performing one or more services according to a load balancing function
US6009474A (en) Method and apparatus for re-assigning network addresses to network servers by re-configuring a client host connected thereto
US6891837B1 (en) Virtual endpoint
US5941999A (en) Method and system for achieving high availability in networked computer systems
US20060206611A1 (en) Method and system for managing programs with network address
US20020147823A1 (en) Computer network system
JP3299521B2 (ja) コンピュータネットワーク及びネットワークサーバのクラスタリング方法
WO2003052618A1 (en) System and method using legacy servers in reliable server pools
JPH10320323A (ja) サーバコンピュータ、サーバコンピュータの制御方法、およびサーバコンピュータを制御するためのプログラムを記録した記録媒体
JPH09259096A (ja) ネットワーク高信頼化方式及びシステム
US20050259572A1 (en) Distributed high availability system and method
JP2011154703A (ja) トランスレーション・エージェント・サーバ
Cisco Database Connection
US6137801A (en) Telecommunication switching system administrative and management tools
JP2002132531A (ja) 二重化システムにおけるデータメンテナンス方式および方法
TWI397296B (zh) 伺服器系統與使用者註冊方法
JP2003140986A (ja) 遠隔監視システムおよび通信制御方法
KR100316841B1 (ko) 관리 대행자의 재실행방법 및 장치
JP2000122982A (ja) 多階層クライアントサーバシステム
JP2000242593A (ja) サーバ切換えシステム、サーバ切換え方法及びそのシステムでの処理をコンピュータに行わせるためのプログラムを格納した記憶媒体
JP2000172654A (ja) 分散オブジェクト管理システム
JPH0962602A (ja) サーバ情報管理方法および管理システム
JP2005004618A (ja) ディレクトリデータベース間参照連携情報整合性保持プログラム、装置、記録媒体および方法
JP2000092079A (ja) 情報処理システム

Legal Events

Date Code Title Description
R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees