JP2009500716A - 拡張可能な自動的に複製するサーバファームコンフィギュレーション管理インフラストラクチャ - Google Patents

拡張可能な自動的に複製するサーバファームコンフィギュレーション管理インフラストラクチャ Download PDF

Info

Publication number
JP2009500716A
JP2009500716A JP2008519287A JP2008519287A JP2009500716A JP 2009500716 A JP2009500716 A JP 2009500716A JP 2008519287 A JP2008519287 A JP 2008519287A JP 2008519287 A JP2008519287 A JP 2008519287A JP 2009500716 A JP2009500716 A JP 2009500716A
Authority
JP
Japan
Prior art keywords
server
configuration
server farm
configuration data
database
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
JP2008519287A
Other languages
English (en)
Other versions
JP2009500716A5 (ja
Inventor
キース バンクストン ジョン
マイケル ルーセル コリー
デイビッド テイラー ウィリアム
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.)
Microsoft Corp
Original Assignee
Microsoft 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 Microsoft Corp filed Critical Microsoft Corp
Publication of JP2009500716A publication Critical patent/JP2009500716A/ja
Publication of JP2009500716A5 publication Critical patent/JP2009500716A5/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L7/00Arrangements for synchronising receiver with transmitter
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99931Database or file accessing
    • Y10S707/99939Privileged access
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99941Database schema or data structure
    • Y10S707/99943Generating database or data structure, e.g. via user interface

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Information Transfer Between Computers (AREA)
  • Computer And Data Communications (AREA)
  • Multi Processors (AREA)

Abstract

拡張可能な、自動的に複製するサーバファームコンフィギュレーション管理インフラストラクチャが提供される。集中化されたコンフィギュレーションデータベースが、サーバファームに関するコンフィギュレーションデータすべてを記憶する。新しいコンフィギュレーションデータは、コンフィギュレーションデータベースのスキーマを知っていることも変更することもなしに、コンフィギュレーションオブジェクトモデルを拡張することによってコンフィギュレーションデータベースに追加することができる。サーバファーム内の複数のサーバ全体にわたってサーバファーム内のコンフィギュレーションデータを自動的に、同期したまま保つために、同期機構がサーバファーム内の各サーバに対して提供される。

Description

本発明は、拡張可能な、自動的に複製するサーバファームコンフィギュレーション管理インフラストラクチャに関する。
今日、インターネットは、ブラウザを使用してユーザにアプリケーションを転送するために、広く使用されている。また、インターネットは、ウェブ上で商業目的のため使用され、その際に、個人顧客や企業はウェブを使用して様々な商品やサービスを購入する。実際、会社の中には、商品やサービスをウェブ上だけで提供しているものもあれば、勢力範囲(reach)を拡張するためにウェブを使用するものもある。
これらの商業活動その他に関連して、企業や他のコンテンツプロバイダは、サーバを使用し、様々なユーザからの要求を処理する。これらの要求を処理するために、様々なアーキテクチャ(基本設計概念)が使用される。1組のサーバがクラスタ(サーバファーム)の形にある分散アーキテクチャが、要求を処理するためにしばしば使用される。そのようなサーバファームシステムでは、その1組のサーバがユーザには単一のサーバのように見える。ロードバランシング(負荷分散化)機構を使用し、サーバファーム内のどのサーバが、そのサーバファームに向けて送られる様々な要求を処理するために使用されることになるか判定することができる。
サーバファーム内の様々なサーバを設定し維持することは、従来、厄介なタスク(作業)であった。この問題は、所与のサーバファーム内で使用されるサーバの数が増えたとき、悪化する。サーバファーム内のサーバを適正に維持するために、サーバを時々更新することが必要とされる。これらの更新は、サーバによって提供されるデータおよびサービスを設定すること、各サーバの特定の設定が互いに確実に同期しているようにすること、および、サーバファームのサーバ上に存在する様々なサービスおよびアプリケーションの準リアルタイム知識処理(near real-time knowledge)を維持することを含む。
残念ながら、サーバ管理を実施する現在の技術は、サーバファーム内のサーバの体系的かつ包括的な管理を可能にする、まとまりのある方法を提供していない。たとえば、従来、大抵のアプリケーションは、コンフィギュレーションデータ(設定データあるいは構成データともいう)をファイル内に格納する。そのような手法には、いくつかの重大な問題がある。第1に、これらのコンフィギュレーションファイル(設定ファイルあるいは構成ファイルともいう)は、そのアプリケーションを実行するサーバすべての間で同期したまま保たれることを必要とする。Microsoft(マイクロソフト社)のApplication Server(アプリケーションサーバ)などの技術は、サーバの間でコンフィギュレーションファイルをコピー(複製)することによって、複数のサーバに跨ってコンフィギュレーションファイルを同期したまま保つている。しかし、コンフィギュレーションファイルをサーバマシンにコピーするとき、サーバ特有の情報を提供するために、多数の追加の作業を必要とする。したがって、あるサーバファームに関するコンフィギュレーションデータのすべてを中央で格納し、またあるアプリケーションに関するコンフィギュレーションデータをサーバファーム内のどこでも自動的に使用可能にする機構を有することが望ましい。
さらに、あるアプリケーションが別のアプリケーション(基本アプリケーション)の上に構築されているとき、そのアプリケーションは、基本アプリケーションがそれ自体のファイルフォーマットを有することに気付いている必要があり、そのアプリケーションは通常、その設定を別個のファイル内に格納する必要がある。XMLなどの技術は、ファイルフォーマットをより容易に拡張可能にするが、そのような技術は、基本アプリケーションにスキーマを公表(publish)することを要求し、異なるアプリケーションがそのスキーマを非互換の形で拡張するのを防止するための機構を必要とする。さらに、基本アプリケーションが、XML内に格納されている設定を更新したいと望む場合、基本アプリケーションは、他のアプリケーションの設定、またはそれらのアプリケーションが依存する設定を付随的に変えないようにすることを必要とする。同様に、基本アプリケーションは、基本アプリケーションに依存するアプリケーションの設定を容れるファイルのロケーションを決して変更することができない。他の普及している設計では、アプリケーション設定が各マシン上のレジストリ(情報データベース)内に格納される。この設計では、サーバファーム全体にわたって設定を分配することが事実上不可能になり、システムリソースの使用に悪影響があり得る。したがって、固定されたファイルフォーマットに依拠しない、アプリケーション設定を記憶するための集中化された、拡張可能な機構を提供することが望ましい。
本発明は、サーバファームのための拡張可能な、自動的に複製するコンフィギュレーション管理インフラストラクチャ(基幹設備)を提供することにより、上記で判明された必要性に対処する。このインフラストラクチャは、サーバファーム内のコンフィギュレーションデータすべてのマスターコピーであり、そのコンフィギュレーションデータが自動的に持続されるコンフィギュレーションデータベースを含む。
さらに、このコンフィギュレーションインフラストラクチャは、任意の第三者が、基礎となるコンフィギュレーションデータベーススキーマを理解することも修正することもなしに、コンフィギュレーションデータベース内のコンフィギュレーションデータを更新することができる、コンフィギュレーション管理オブジェクトモデルを含む。好ましくは、コンフィギュレーション管理オブジェクトモデルは、コンフィギュレーションデータベースと対話するための唯一の方法である。
本発明の他の態様によれば、このコンフィギュレーション管理インフラストラクチャは、サーバファーム内のサーバすべてが、コンフィギュレーションデータベース内でコンフィギュレーション変更(設定変更または構成変更ともいう)があればそれと共に確実に更新されるようにする安全な(secured)同期機構をさらに含む。たとえば、サーバファーム内の各サーバは、1分ごとなど特定の時間間隔でコンフィギュレーションデータベースに自動的に照会する、タイマーサービスなどエージェントを含む。次いで、エージェントは、コンフィギュレーションデータベース内で変更があればそれをサーバにダウンロードする。
要するに、本発明は、拡張可能な、また自動的に複製するサーバファームコンフィギュレーション管理インフラストラクチャを提供する。その結果、サーバファーム内のコンフィギュレーション(設定又は構成ともいう)を自動的に同期させることができ、ユーザが基礎となるコンフィギュレーションデータベーススキーマを知っていることも変更することもなしに、コンフィギュレーション変更を集中コンフィギュレーションデータベースに追加することができる。
この概要は、以下、詳細な説明でさらに述べられる概念の選抜を、簡潔な形態で紹介するために提供されたものである。この概要は、特許請求されている主題の重要な特徴または不可欠な特徴を確認することを意図されているものでも、特許請求されている主題の範囲を決定する上で助けとして使用されることが意図されているものでもない。
本発明の特徴的なものと考えられる新規な特徴が、添付の特許請求の範囲に述べられている。しかし、本発明それ自体、ならびにその好ましい使用形態、他の目的および利点は、添付の図面と併せ読めば、例示的な実施形態の、以下の詳細な説明を参照することによって最もよく理解されることとなる。
図1は、本発明の例示的な実施形態を実施することができるデータ処理システムのネットワーク100を絵で表したものを示す。データ処理システムのネットワーク100はネットワーク102を含み、ネットワーク102は、データ処理システムのネットワーク100内で一緒に接続された様々なデバイスおよびコンピュータ間の通信リンクを提供するために使用される媒体である。ネットワーク102は、有線または無線の通信リンク、光ファイバケーブルなど、諸接続を含むことができる。
図1に示されているように、データ処理システムのネットワーク100は、少なくとも1つのサーバファーム104と、複数のクライアント108〜112とを含み、これらのすべてがネットワーク102に接続される。サーバファーム104は、一般に、要求を処理するための単一のサーバまたは「仮想」サーバとして提示される一組のサーバで構成される。クライアント108、110、112は、サーバファーム104に対するクライアントである。これらのクライアント108、110、112は、たとえばパーソナルコンピュータまたはネットワークコンピュータとすることができる。一般に、サーバファーム104は、ブートファイル(起動ファイル)、オペレーティングシステムのイメージ、およびアプリケーションのようなデータをクライアント108〜112に送る。データ処理システムのネットワーク100は、追加のサーバ、クライアント、および他のデバイス(図示しない)を含むことができる。
本図の例では、データ処理システムのネットワーク100はインターネットであり、ここでネットワーク102は、TCP/IPスイートのプロトコルを使用して互いに通信するネットワークとゲートウェイの世界的な集合を表す。インターネットの中心(心臓部)には、主要なノードまたはホストコンピュータ間の高速データ通信ラインのバックボーン(基幹回線)がある。これらのノードまたはホストコンピュータは、数千の商用、政府、教育ならびに他の、データおよびメッセージを経路指定するコンピュータシステムを含む。また、ネットワークデータ処理システム100は、たとえばイントラネット、ローカルエリアネット(LAN)、またはワイドエリアネットワーク(WAN)など、いくつかの異なるタイプのネットワークとして実施することができる。図1は、例示として意図されており、本発明のアーキテクチャを限定するものとして意図されていない。
図2は、本発明の一実施形態によるサーバファーム104のブロック図である。図2に示されているように、サーバファーム104は、通信システム212を介して互いに通信する、サーバ202A、202B、202Cなど複数のサーバを含む。通信システム212は、サーバファーム104に向かって送られる経路指定要求および応答を処理するために使用される。通信システム212は、たとえばバス、ネットワーク、共有メモリなどを含めて、様々な形態をとることができる。
サーバファーム104は、負荷マネージャ214を含むことができ、負荷マネージャ214は、通信システム212に接続され、ネットワーク102からサーバファーム104に向けて送られる要求を受け取るように働く。それらの要求は、クライアント108〜112(図1)から受け取られる要求を含むことができ、たとえば、ウェブページ、ファイル、および他のコンテンツを求める要求を含むことができる。負荷マネージャ214は、処理のために、それらの要求をサーバ202A〜202Cに分配するように動作する。負荷マネージャ214は、本質的に、サーバファーム104のサーバ202A〜202Cのどれにも、サーバファーム104で作られた要求によって不必要に負担がかからないようにするように動作する。
本発明の実施形態では、サーバファーム104は、サーバファーム104に関するコンフィギュレーションデータの本質的にすべてを格納するコンフィギュレーションデータベース218を含む。コンフィギュレーションデータベース218は、コンフィギュレーションデータを、サーバファーム104内のサーバ202A〜202Cのそれぞれに送ることができるように、通信システム212に動作可能に接続される。コンフィギュレーションデータベース218は、サーバ202A〜202Cのそれぞれのコンフィギュレーション設定を管理するために使用される。したがって、コンフィギュレーションデータベース218は、変更しなければならない、かつ/またはサーバファーム104の様々なサーバ202A〜202Cに追加しなければならない、任意のコンフィギュレーション設定用の中央リポジトリ(収納庫)として働く。
コンフィギュレーションデータベース218を設けることにより、サーバ202A〜202Cのコンフィギュレーション設定を手動で更新および/または追加しなければならないという必要がなくなる。サーバトポロジ(接続形態)に関する情報を格納することに加えて、コンフィギュレーションデータベース218はまた、セキュリティポリシー(機密保護方策)、アンチウィルス定義、言語設定など、アプリケーション特有の設定をも格納することができる。本発明の実施形態では、コンフィギュレーションデータベース218は、サーバファーム104内のコンフィギュレーションデータすべてのマスターコピーであり、したがって、サーバファーム104内の1組のサーバ全体にわたって同じ情報を使用可能にすることを可能にする。
サーバファーム104はまた、少なくとも1つのコンテンツストア220を含むことができる。サーバファーム104の他の動作要素と同様に、コンテンツストア220は、コンテンツストア220内に記憶された情報をサーバファーム104の様々な構成要素に分配することを可能にするために、通信システム212に動作可能に接続される。本発明の例示的な実施形態では、コンテンツストア220内のコンテンツは、サーバファーム104内のサーバのためのデータである。そのようなデータは、文書、データ項目、ディスカッション(意見交換)、タスクなどを含む。コンテンツストア220は、コンフィギュレーションデータベース218と共に動作し、サーバ202A〜202Cのうちの1つまたは複数の、所与のコンフィギュレーション変更に特に関連するコンテンツを提供する。本発明の例示的な実施形態では、コンテンツストア220は、コンフィギュレーションデータベース218とインターフェースをとらない。コンフィギュレーションデータベース218は、どのコンテンツデータベースがサーバに関するデータを記憶しているかというマップを含む。その結果、コンテンツストアがサーバファーム104内の特定のサーバのためのコンテンツを含むかどうか、サーバファーム104内の各コンテンツストア220に照会する必要がない。
本発明の例示的な実施形態では、サーバファーム104は、任意に拡張可能である。これは、サーバファーム104を、サーバ202A〜202C以外の複数のサーバを用いて任意に拡張することができることを含む。さらに、サーバファーム104は、それらの複数のサーバに関するデータを記憶するために、複数のコンテンツストア220を含むことができる。
具体的には、図3に示されているように、本発明の例示的な実施形態は、コンフィギュレーションデータベース218内でコンフィギュレーションデータを追加する、またはコンフィギュレーションデータを管理するために、コンフィギュレーションオブジェクトモデル302を備えることによって、サーバファーム104の任意の拡張を可能にする。たとえば、図3に示されているように、コンフィギュレーションオブジェクトモデル302は、ユーザが新しいコンフィギュレーションデータ304をコンフィギュレーションデータベース218に追加することを可能にする。コンフィギュレーションオブジェクトモデルは、ユーザにコンフィギュレーションデータベース218のスキーマ(情報の構造を定義するための記述)を理解することを要求することなしに、また、ユーザにコンフィギュレーションデータベース218を編集することを要求することなしに、ユーザがサーバファーム104に関するコンフィギュレーションデータを拡張または更新することを可能にする。本発明の例示的な実施形態では、.Netオブジェクトベースクラスが、コンフィギュレーションオブジェクトモデル302のために提供される。ユーザは、特定のコンフィギュレーションデータを用いてベースクラスを拡張することができる。次いで、そのようなデータは、コンフィギュレーションデータベース218内に一体化される。その結果、ユーザは、コンフィギュレーションデータベース218のスキーマを理解することも修正することもなしに、コンフィギュレーションオブジェクトモデル302を介して、コンフィギュレーションデータベース218と対話し、様々なタイプのデータをコンフィギュレーションデータベース218に追加することを行うことが必要なだけである。本発明の例示的な実施形態では、アプリケーションに関するコンフィギュレーション情報を収納するオブジェクトは、たとえばSPPersistedObjectと名付けられたベースクラスから導出される、またはそのベースクラスによって収納される。更新されたとき、このクラスは、「persisted(存続)」属性でマークされたフィールドすべてをXMLにシリアル化し、そのXMLブロブをコンフィギュレーションデータベース218に書き込むことになる。ベースクラスは、ベースタイプ、他のSPPersistedObject、またはその2つのうちの一方の集まりであるそのメンバのすべてをシリアル化するためのコードを容れる。そのような設計は、アプリケーションに関するコンフィギュレーションデータを容れる新しいオブジェクトを、サーバファーム104の一部であるアプリケーションによって必要とされたときに、コンフィギュレーションデータベース218に追加することを可能にする。
本発明の実施形態はまた、サーバファーム104内のサーバに対するコンフィギュレーションデータベース218内で何らかの変更があれば、それを自動的に複製する同期機構を提供する。本発明の例示的な実施形態では、サーバファーム104のサーバ202A〜202Cのそれぞれは、エージェント(agent)を含む。このエージェントは、サーバ内のローカルメモリおよび/またはハードディスク内で動作可能に記憶されてよい。図3に示されているように、サーバ202Aは、エージェント306を含む。動作としては、エージェント306は、コンフィギュレーションデータベース218内のコンフィギュレーションデータに対して修正が発生したかどうか判定するように動作する。好ましくは、エージェント306は、定期方式(a timed basis)で動作し、これにより、コンフィギュレーションデータベース218内で変更および/または追加が発生したかどうか判定するために、コンフィギュレーションデータベース218の定期的なポーリングが可能になる。
本発明の例示的な実施形態では、エージェント306は、SharePoint Timerなど、Microsoft Windows(登録商標)サービスにおけるスレッド(thread)である。エージェント306は、少なくとも1分に1回コンフィギュレーションデータベース218に接続し、クエリを実行する。クエリは、サーバ202A上の最も新しいコンフィギュレーションレコードのタイムスタンプ(時刻印)を使用する。クエリは、タイムスタンプを、コンフィギュレーションデータベース218に照会するための入力として使用し、タイムスタンプによって記録されている時間以来、作成、変更、または削除された、コンフィギュレーションデータベース218内のコンフィギュレーションレコードがあればそれを返す。
本発明の例示的な実施形態では、エージェント306は、コンテンツストア220と直接インターフェースしない。しかし、エージェント306は、サーバファーム104内のサーバ上の他のプロセスがコンテンツストア220に接続するのに必要な情報を伝搬する助けとなる。たとえば、本発明の例示的な実施形態では、追加の使用に対処するために新しいコンテンツデータベースがサーバファーム104に追加される場合、エージェント306は、サーバファーム104内の、使用可能なコンテンツデータベースを識別するサーバ上のリストに新しいコンテンツデータベースを登録するために、新しいコンテンツデータベースに関する接続ストリング(文字列)を、サーバファーム104内のサーバのそれぞれに分配することになる。その結果、サーバファーム104内のサーバの他のプロセスは、コンテンツを格納するために新しいコンテンツデータベースを使用することができる。本発明の実施形態では、エージェント306は、少なくとも毎分、コンフィギュレーションデータベース218に照会し、クエリを実行し、任意のコンフィギュレーションレコード変更に関する情報を伝搬するように、ループ(環状)で実行される。
したがって、本発明の実施形態は、サーバファーム104などサーバファームに対して、拡張可能な、自動的に複製するコンフィギュレーション管理を行うための方法を提供する。図4は、少なくとも1つのサーバを含むサーバファームに対して、拡張可能な、自動的に複製するコンフィギュレーション管理を行うための例示的なプロセス400を示す。図4に示されているように、プロセス400は、サーバファームに関するコンフィギュレーションデータすべてを、コンフィギュレーションデータベース218などコンフィギュレーションデータベース内に格納する。ブロック402を参照されたい。コンフィギュレーションデータは、サーバトポロジ、セキュリティポリシー、アンチウィルス定義、言語設定などアプリケーション特有の設定を含むことができる。また、プロセス400は、コンフィギュレーションオブジェクトモデル302などコンフィギュレーションオブジェクトモデルを構築する。ブロック404を参照されたい。たとえば、コンフィギュレーションオブジェクトモデルは、コンフィギュレーションデータベースのスキーマを知っていることも使用することもなしに、コンフィギュレーションデータベースに新しいコンフィギュレーションデータを提供するために、サブクラス化またはインスタンス化することによって拡張することができるベースクラスである。また、プロセス400は、サーバファーム内の各サーバにおいて、エージェント306など同期機構を確立する。ブロック406を参照されたい。本発明の例示的な実施形態では、同期機構は、コンフィギュレーションデータベースに定期的に照会し、最後の照会以来、コンフィギュレーションデータベース内で変更があればそれを更新する。その後、プロセス400は終了する。プロセス400における動作の説明の順序は、これらの動作が、提示されている順序で必ず実行される、あるいは順序に依存するものであるとさえ暗示するものと解釈すべきでない。
本発明の例示的な実施形態について例示し、述べたが、本発明の技術思想および範囲から逸脱することなしに、様々な変更を本発明に加えることができることが理解されるであろう。
本発明の諸態様を実施することができるデータ処理システムの例示的なネットワークを示す絵で表した図である。 図1で使用される例示的なサーバファームを示すブロック図である。 他の例示的なサーバファームを示すブロック図である。 拡張可能な、自動的に複製する、サーバファームのコンフィギュレーション管理のための例示的なプロセスを示す流れ図である。

Claims (17)

  1. サーバファームに関するコンフィギュレーションデータを格納するコンフィギュレーションデータベースと、
    前記コンフィギュレーションデータのいずれの変更でもその変更でサーバを自動的に更新するための同期機構を含む、少なくとも1つのサーバと
    を備えることを特徴とするサーバファーム。
  2. 前記コンフィギュレーションデータベースが、コンフィギュレーションオブジェクトモデルを拡張するコンフィギュレーションデータオブジェクトによって提供されるコンフィギュレーションデータによって更新されることを特徴とする請求項1に記載のサーバファーム。
  3. 前記コンフィギュレーションデータオブジェクトは、前記コンフィギュレーションデータベースのスキーマを使用することなしに前記コンフィギュレーションオブジェクトモデルを拡張することを特徴とする請求項2に記載のサーバファーム。
  4. 前記同期機構は、
    前記コンフィギュレーションデータベースに定期的に照会すること、および
    前記コンフィギュレーションデータの変更を前記サーバにダウンロードすること
    によって、前記コンフィギュレーションデータのいずれの変更でもその変更で前記サーバを自動的に更新することを特徴とする請求項1に記載のサーバファーム。
  5. 前記同期機構はタイマーサービスであることを特徴とする請求項4に記載のサーバファーム。
  6. サーバファーム内の少なくとも1つのサーバに関するデータを記憶する少なくとも1つのコンテンツストアをさらに備えることを特徴とする請求項1に記載のサーバファーム。
  7. 前記同期機構は、前記コンテンツストアについての情報を前記サーバに伝搬することを特徴とする請求項6に記載のサーバファーム。
  8. サーバファーム内のサーバの間で、サーバファームに対してなされた要求を分配するための負荷マネージャをさらに備えることを特徴とする請求項1に記載のサーバファーム。
  9. 少なくとも1つのサーバを含むサーバファームに対して、拡張可能な、自動的に複製するコンフィギュレーション管理を行うためのシステムであって、
    前記サーバファームに関するコンフィギュレーションデータを格納するコンフィギュレーションデータベースと、
    前記コンフィギュレーションデータベースのスキーマを使用することなしに、前記コンフィギュレーションデータベース内の前記コンフィギュレーションデータを更新するために拡張可能であるコンフィギュレーションオブジェクトモデルと、
    前記サーバファーム内の各サーバ内における、前記コンフィギュレーションデータのいずれの変更でもその変更で前記サーバを自動的に更新するための同期機構と
    を備えることを特徴とするシステム。
  10. 前記同期機構は、
    前記コンフィギュレーションデータベースに定期的に照会すること、および
    前記コンフィギュレーションデータの変更を前記サーバにダウンロードすること
    によって、前記コンフィギュレーションデータのいずれの変更でもその変更で前記サーバを自動的に更新することを特徴とする請求項9に記載のシステム。
  11. 前記同期機構はタイマーサービスであることを特徴とする請求項9に記載のシステム。
  12. 前記サーバファーム内の少なくとも1つのサーバに関するデータを記憶する少なくとも1つのコンテンツストアをさらに備えることを特徴とする請求項9に記載のシステム。
  13. 前記同期機構は、前記コンテンツストアについての情報を前記サーバに伝搬することを特徴とする請求項12に記載のシステム。
  14. 前記サーバファーム内のサーバの間で、前記サーバファームに対してなされた要求を分配するための負荷マネージャをさらに備えることを特徴とする請求項9に記載のシステム。
  15. 少なくとも1つの要求を前記サーバファームに送る少なくとも1つのクライアントデバイスをさらに備えることを特徴とする請求項9に記載のシステム。
  16. 少なくとも1つのサーバを含むサーバファームに対して、拡張可能な、自動的に複製するコンフィギュレーション管理を行うための方法であって、
    前記サーバファームに関するコンフィギュレーションデータをコンフィギュレーションデータベース内に格納するステップと、
    前記コンフィギュレーションデータベースのスキーマを使用することなしに、前記コンフィギュレーションデータベース内の前記コンフィギュレーションデータを更新するように拡張することができるコンフィギュレーションオブジェクトモデルを用意するステップと、
    前記サーバファーム内の各サーバについて、前記コンフィギュレーションデータベース内の前記コンフィギュレーションデータのいずれの変更でもその変更で前記サーバを自動的に更新するための同期機構を確立するステップと
    を含むことを特徴とする方法。
  17. 前記同期機構は、
    前記コンフィギュレーションデータベースに定期的に照会するステップと、
    前記コンフィギュレーションデータの変更を前記サーバにダウンロードするステップと
    によって、前記コンフィギュレーションデータのいずれの変更でもその変更で前記サーバを自動的に更新することを特徴とする請求項16に記載の方法。
JP2008519287A 2005-06-30 2006-05-08 拡張可能な自動的に複製するサーバファームコンフィギュレーション管理インフラストラクチャ Pending JP2009500716A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/171,617 US7577661B2 (en) 2005-06-30 2005-06-30 Extensible and automatically replicating server farm configuration management infrastructure
PCT/US2006/017586 WO2007005106A2 (en) 2005-06-30 2006-05-08 Extensible and automatically replicating server farm configuration management infrastructure

Publications (2)

Publication Number Publication Date
JP2009500716A true JP2009500716A (ja) 2009-01-08
JP2009500716A5 JP2009500716A5 (ja) 2009-06-25

Family

ID=37591005

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008519287A Pending JP2009500716A (ja) 2005-06-30 2006-05-08 拡張可能な自動的に複製するサーバファームコンフィギュレーション管理インフラストラクチャ

Country Status (9)

Country Link
US (1) US7577661B2 (ja)
EP (1) EP1899862B1 (ja)
JP (1) JP2009500716A (ja)
KR (1) KR101169117B1 (ja)
CN (1) CN101189611B (ja)
BR (1) BRPI0612629B1 (ja)
MX (1) MX2007015188A (ja)
RU (1) RU2404451C2 (ja)
WO (1) WO2007005106A2 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014530435A (ja) * 2011-09-27 2014-11-17 マイクロソフト コーポレーション フォールトトレラント外部アプリケーションサーバ
JP2017054421A (ja) * 2015-09-11 2017-03-16 Necフィールディング株式会社 管理装置、管理システム、管理装置の制御方法、及びプログラム
US9760459B2 (en) 2015-06-10 2017-09-12 International Business Machines Corporation Synchronization policies among nodes

Families Citing this family (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8176408B2 (en) * 2005-09-12 2012-05-08 Microsoft Corporation Modularized web provisioning
EP1791293A1 (en) * 2005-11-29 2007-05-30 Ipanto Network service configuration management
US7979789B2 (en) * 2005-12-19 2011-07-12 Microsoft Corporation System and method of replacing a delegate component associated with a delegate modular software component at software execution time
US8601130B2 (en) * 2006-06-07 2013-12-03 Qualcomm Incorporated Propagating session state changes to network functions in an active set
JP2008293256A (ja) * 2007-05-24 2008-12-04 Nec Corp 冗長構成サーバシステムにおけるファイルバックアップ方法、プログラム、及び、冗長構成サーバシステム
US7877590B2 (en) * 2007-08-13 2011-01-25 International Business Machines Corporation Consistent data storage subsystem configuration replication
US9239767B2 (en) * 2008-12-22 2016-01-19 Rpx Clearinghouse Llc Selective database replication
US8832235B1 (en) * 2009-03-10 2014-09-09 Hewlett-Packard Development Company, L.P. Deploying and releasing logical servers
US8595334B2 (en) * 2010-02-22 2013-11-26 Microsoft Corporation Incrementally managing distributed configuration data
CN102402441B (zh) * 2010-09-16 2014-08-20 腾讯科技(深圳)有限公司 一种对多台计算机进行配置的***和方法
US8296267B2 (en) 2010-10-20 2012-10-23 Microsoft Corporation Upgrade of highly available farm server groups
US8386501B2 (en) 2010-10-20 2013-02-26 Microsoft Corporation Dynamically splitting multi-tenant databases
US8751656B2 (en) 2010-10-20 2014-06-10 Microsoft Corporation Machine manager for deploying and managing machines
US8417737B2 (en) 2010-10-20 2013-04-09 Microsoft Corporation Online database availability during upgrade
US8799453B2 (en) 2010-10-20 2014-08-05 Microsoft Corporation Managing networks and machines for an online service
US9075661B2 (en) 2010-10-20 2015-07-07 Microsoft Technology Licensing, Llc Placing objects on hosts using hard and soft constraints
RU2444056C1 (ru) 2010-11-01 2012-02-27 Закрытое акционерное общество "Лаборатория Касперского" Система и способ ускорения решения проблем за счет накопления статистической информации
US8850550B2 (en) 2010-11-23 2014-09-30 Microsoft Corporation Using cached security tokens in an online service
US9721030B2 (en) 2010-12-09 2017-08-01 Microsoft Technology Licensing, Llc Codeless sharing of spreadsheet objects
CN102075358B (zh) * 2010-12-31 2013-10-30 网宿科技股份有限公司 针对大规模服务器集群的内容分发和部署的***和方法
US20130036212A1 (en) * 2011-08-02 2013-02-07 Jibbe Mahmoud K Backup, restore, and/or replication of configuration settings in a storage area network environment using a management interface
US20130066832A1 (en) * 2011-09-12 2013-03-14 Microsoft Corporation Application state synchronization
CN102930368B (zh) * 2011-09-27 2017-05-03 微软技术许可有限责任公司 容错外部应用服务器
US9047129B2 (en) * 2012-07-23 2015-06-02 Adobe Systems Incorporated Systems and methods for load balancing of time-based tasks in a distributed computing system
US9542177B1 (en) * 2012-10-30 2017-01-10 Amazon Technologies, Inc. Peer configuration analysis and enforcement
CN103209338A (zh) * 2013-02-04 2013-07-17 奥维通信股份有限公司 一种复用器在线动态配置***及方法
US9305044B2 (en) * 2013-07-18 2016-04-05 Bank Of America, N.A. System and method for modelling data
US10050832B2 (en) * 2014-09-19 2018-08-14 Sybase 365, Inc. Server clustering in mobile computing environment
US10021186B2 (en) 2014-12-19 2018-07-10 Microsoft Technology Licensing, Llc Guaranteed delivery of replication message
US9864791B2 (en) 2014-12-19 2018-01-09 Microsoft Technology Licensing, Llc Flow for multi-master replication in distributed storage
US9959114B2 (en) * 2015-03-16 2018-05-01 Microsoft Technology Licensing, Llc Representation of customizable types in a development environment
US9923768B2 (en) * 2015-04-14 2018-03-20 International Business Machines Corporation Replicating configuration between multiple geographically distributed servers using the rest layer, requiring minimal changes to existing service architecture
US20170063986A1 (en) * 2015-08-31 2017-03-02 Microsoft Technology Licensing, Llc Target-driven tenant identity synchronization
US10200242B2 (en) 2015-10-12 2019-02-05 Dell Products, Lp System and method to replicate server configurations across systems using sticky attributions
CN106899648B (zh) 2016-06-20 2020-02-14 阿里巴巴集团控股有限公司 一种数据处理方法和设备
US10263845B2 (en) 2017-05-16 2019-04-16 Palantir Technologies Inc. Systems and methods for continuous configuration deployment
US10353699B1 (en) 2017-06-26 2019-07-16 Palantir Technologies Inc. Systems and methods for managing states of deployment
US10558454B2 (en) 2018-06-04 2020-02-11 Palantir Technologies Inc. Constraint-based upgrade and deployment

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001075900A (ja) * 1999-09-07 2001-03-23 Toshiba Corp 監視制御システムおよび記録媒体
JP2001273269A (ja) * 2000-03-24 2001-10-05 Hitachi Ltd 複数プロセッサの構成情報更新方式
US20020078174A1 (en) * 2000-10-26 2002-06-20 Sim Siew Yong Method and apparatus for automatically adapting a node in a network
WO2005010689A2 (en) * 2003-07-18 2005-02-03 Vormetric, Inc. Secure cluster configuration data set transfer protocol

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5838918A (en) 1993-12-13 1998-11-17 International Business Machines Corporation Distributing system configuration information from a manager machine to subscribed endpoint machines in a distrubuted computing environment
US6691165B1 (en) 1998-11-10 2004-02-10 Rainfinity, Inc. Distributed server cluster for controlling network traffic
US6405219B2 (en) 1999-06-22 2002-06-11 F5 Networks, Inc. Method and system for automatically updating the version of a set of files stored on content servers
US7181539B1 (en) * 1999-09-01 2007-02-20 Microsoft Corporation System and method for data synchronization
US7287090B1 (en) * 2000-12-21 2007-10-23 Noatak Software, Llc Method and system for identifying a computing device in response to a request packet
US7600021B2 (en) * 2002-04-03 2009-10-06 Microsoft Corporation Delta replication of source files and packages across networked resources
US20040010786A1 (en) 2002-07-11 2004-01-15 Microsoft Corporation System and method for automatically upgrading a software application
US7065674B2 (en) * 2002-08-01 2006-06-20 Microsoft Corporation Computer system fault recovery using distributed fault-recovery information

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001075900A (ja) * 1999-09-07 2001-03-23 Toshiba Corp 監視制御システムおよび記録媒体
JP2001273269A (ja) * 2000-03-24 2001-10-05 Hitachi Ltd 複数プロセッサの構成情報更新方式
US20020078174A1 (en) * 2000-10-26 2002-06-20 Sim Siew Yong Method and apparatus for automatically adapting a node in a network
WO2005010689A2 (en) * 2003-07-18 2005-02-03 Vormetric, Inc. Secure cluster configuration data set transfer protocol

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014530435A (ja) * 2011-09-27 2014-11-17 マイクロソフト コーポレーション フォールトトレラント外部アプリケーションサーバ
US9760459B2 (en) 2015-06-10 2017-09-12 International Business Machines Corporation Synchronization policies among nodes
JP2017054421A (ja) * 2015-09-11 2017-03-16 Necフィールディング株式会社 管理装置、管理システム、管理装置の制御方法、及びプログラム

Also Published As

Publication number Publication date
CN101189611B (zh) 2012-08-29
WO2007005106A2 (en) 2007-01-11
US7577661B2 (en) 2009-08-18
CN101189611A (zh) 2008-05-28
KR101169117B1 (ko) 2012-07-26
EP1899862A4 (en) 2010-11-10
BRPI0612629B1 (pt) 2018-06-05
BRPI0612629A2 (pt) 2010-11-23
RU2404451C2 (ru) 2010-11-20
RU2007147644A (ru) 2009-06-27
KR20080021631A (ko) 2008-03-07
US20070005662A1 (en) 2007-01-04
EP1899862A2 (en) 2008-03-19
WO2007005106A3 (en) 2007-11-08
MX2007015188A (es) 2008-02-19
EP1899862B1 (en) 2018-02-21

Similar Documents

Publication Publication Date Title
US7577661B2 (en) Extensible and automatically replicating server farm configuration management infrastructure
US10776104B2 (en) Systems and methods for tracking configuration file changes
US7558857B2 (en) Solution deployment in a server farm
US8843561B2 (en) Common cluster model for configuring, managing, and operating different clustering technologies in a data center
US8965912B2 (en) Integrating databases
US7490265B2 (en) Recovery segment identification in a computing infrastructure
US8082548B2 (en) System and method for performing systems management on IT-resources using web services
US8639798B2 (en) Managing configuration items
US20080189402A1 (en) Method and Respective System for Performing Systems Management on IT-Resources Using Web Services
US20030037177A1 (en) Multiple device management method and system
US20140143211A1 (en) Managing and Reconciling Information Technology Assets in a Configuration Database
US7619761B2 (en) Extensible and distributed job execution service in a server farm
JP2005259138A (ja) 非統合ツールの統合アーキテクチャ
JP2009518757A (ja) 無線装置の最新データを維持するための方法及びシステム
US8539474B2 (en) Method and system for management of interim software fixes
JP5613295B2 (ja) 装置へのコンテンツの分配を管理するシステムと方法とプログラムを提供する記憶媒体
JP4265413B2 (ja) 仮想私設組織に対するポリシの実施システム及びその方法
JP2001326660A (ja) コンピュータの構成情報管理方法および該方法を実現するプログラムを記録した記録媒体および装置
KR100387575B1 (ko) 인터넷상에서 최신 버전의 소프트웨어 제공방법 및 그방법을 기록한 기록매체
US8849974B2 (en) Social network based information discovery about network data processing systems
JP3897538B2 (ja) 配付資源の配付に用いられる配付元サーバおよび中継サーバ並びにコンピュータプログラム
Lamouchi Meeting the Microservices Concerns and Patterns
CN116126785A (zh) 文件的获取方法以及装置、***、存储介质、电子设备
Jones The Definitive Guide to Active Directory Troubleshooting and Auditing

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090508

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090508

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110714

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110909

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20120217