JP2009205687A - Multiple device management method and system - Google Patents
Multiple device management method and system Download PDFInfo
- Publication number
- JP2009205687A JP2009205687A JP2009113069A JP2009113069A JP2009205687A JP 2009205687 A JP2009205687 A JP 2009205687A JP 2009113069 A JP2009113069 A JP 2009113069A JP 2009113069 A JP2009113069 A JP 2009113069A JP 2009205687 A JP2009205687 A JP 2009205687A
- Authority
- JP
- Japan
- Prior art keywords
- controller
- job
- instance
- node
- computer
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0893—Assignment of logical groups to network elements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/02—Standardisation; Integration
- H04L41/024—Standardisation; Integration using relational databases for representation of network management data, e.g. managing via structured query language [SQL]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/02—Standardisation; Integration
- H04L41/0246—Exchanging or transporting network management information using the Internet; Embedding network management web servers in network elements; Web-services-based protocols
- H04L41/026—Exchanging or transporting network management information using the Internet; Embedding network management web servers in network elements; Web-services-based protocols using e-messaging for transporting management information, e.g. email, instant messaging or chat
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0894—Policy-based network configuration management
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Databases & Information Systems (AREA)
- Computer And Data Communications (AREA)
- Multi Processors (AREA)
- Debugging And Monitoring (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
Description
本発明は、ネットワーク上に配置された複数のコンピュータ装置を管理するための方法およびシステムに関する。 The present invention relates to a method and system for managing a plurality of computer devices arranged on a network.
本出願は、2001年6月11日出願の米国仮特許出願、出願番号60/297473に対する優先権を主張する。 This application claims priority to US provisional patent application filed June 11, 2001, application number 60/297473.
データセンタは、企業、ならびにストーレッジサービスプロバイダ、ホスティングサービスプロバイダ、およびアプリケーションサービスプロバイダなどの様々なインターネット関連サービスプロバイダを含む多くのタイプの組織に対してコンピュータリソースを提供する。通常のデータセンタは、様々な目的で様々な役割を果たす数百ないし数千のコンピュータを含む。 Data centers provide computer resources for many types of organizations, including enterprises and various Internet-related service providers such as storage service providers, hosting service providers, and application service providers. A typical data center includes hundreds to thousands of computers that play different roles for different purposes.
多数のコンピュータを管理することには、費用がかかり、時間が消費され、誤りが生じやすい可能性がある。例えば、多くのサービスプロバイダは、データセンタを運営するのは、多数のルーチンが手作業で行われるため、労働集約型ビジネスであると認識している。例として、新規の顧客のために新しいサーバをオンラインにすることは、新規の顧客の注文を印刷し、オペレーティングシステムをインストールし、あらゆるアプリケーションをインストールし、オペレーティングシステムおよびアプリケーションを構成し、サーバ装置をデータセンタ内に移動させてネットワークおよび電源に接続することを技術者に行わせることからなる。したがって、新しいサーバをオンラインにすることは、長い時間と高い費用がかかるプロセスであり、また誤りが起こりやすい。 Managing a large number of computers can be expensive, time consuming, and error prone. For example, many service providers recognize that operating a data center is a labor intensive business because many routines are performed manually. As an example, bringing a new server online for a new customer can print a new customer order, install an operating system, install any application, configure the operating system and applications, It consists of letting the technician move to the data center and connect to the network and power supply. Thus, bringing a new server online is a long and expensive process and is prone to errors.
ソフトウェアを介して新規の顧客のために既存のサーバ構成を「再設定」するとき、同様の手作業のプロセスが使用される。実際、再設定のコストは、余りにも高いので、それを行わない方が安上がりであると考えるサービスプロバイダも存在するほどである。費用の一部は、高い費用のかかる手作業でのデータセンタの監査を介してそのような未使用のシステムを配備(locate)することに費やされる。同様に、もはや不必要となったコンピュータを再配備するのではなく、データセンタ内にサーバコンピュータを放置する(オペレーションし、電力を消費しながら)、または再配備しようと試みるのではなく、コンピュータを完全に解体する方が安上がりである可能性がある。 A similar manual process is used when “resetting” an existing server configuration for a new customer via software. In fact, the cost of resetting is so high that some service providers consider it cheaper not to do so. A portion of the cost is spent in locating such unused systems through expensive manual data center audits. Similarly, rather than redeploying a computer that is no longer needed, leave the server computer in the data center (operating and consuming power) or attempting to redeploy the computer. It may be cheaper to completely dismantle.
要するに、データセンタを運営するには、実際的な目的では必要であるが、あまり望ましくないいくつかの妥協をすることが必要とされる。例えば、コンピュータを再配備する代りに、そうしない方が安上がりである可能性があるが、このことは、コンピュータシステムがもはや不必要であるときさえ、データセンタが、そのコンピュータシステムをオペレーションさせている(電力、空調、およびネットワークポートを使用しながら)ことを意味する。 In short, operating a data center requires some compromises that are necessary for practical purposes but are less desirable. For example, instead of redeploying a computer, it may be cheaper to do so, which means that the data center is operating the computer system even when the computer system is no longer needed (While using power, air conditioning, and network ports).
別の例として、高い費用がかかるが、様々なサーバを手作業で構成することが、やはり、データセンタのやり方である。しかし、自動化を介してそのような費用を削減することは、これまで、あまり成功していない重要な取り組みである。これが成功していないのは、とりわけ、そのような試みは、複数の外部製品の統合を必要とするという困難があるからである。 As another example, although expensive, the manual configuration of various servers is still a data center approach. However, reducing such costs through automation is an important effort that has not been so successful. This is unsuccessful, especially because such attempts have the difficulty of requiring the integration of multiple external products.
簡単に言えば、本発明は、複数装置管理の方法およびシステムを提供し、この方法およびシステムは、とりわけ、1つのコントローラコンピュータ上で単一のコマンドを実行し、ノードと呼ばれる1つまたは複数の他の制御されるコンピュータ上の処理(オペレーション)を開始するメカニズムを提供する。オペレーションは、スクリプト記述された1組のコマンドの実行、2進プログラムの実行、またはいくつかの他のタイプのオペレーションを含むことが可能である。メカニズムは、数セットのコンピュータとともに、あたかもそれらのコンピュータが単一のコンピュータであるかのように機能し、これにより、例えば、コンピュータ装置の管理が大幅に単純化され、データセンタ内でコンピュータ装置を管理する費用が、相当に削減される。 Briefly stated, the present invention provides a method and system for multiple device management, which, among other things, executes a single command on one controller computer and includes one or more called nodes. Provides a mechanism for initiating operations on other controlled computers. An operation may include execution of a scripted set of commands, execution of a binary program, or some other type of operation. The mechanism works with a few sets of computers as if they were a single computer, which greatly simplifies the management of computer devices, for example, in a data center. Management costs are significantly reduced.
一実施形態では、本発明は、複数の他のコンピュータを管理する1つのコンピュータ上にコントローラ(例えば、プロセス等)を含むアーキテクチャを提供し、複数の他のコンピュータのそれぞれは、コントローラによって管理可能にするエージェントソフトウェアを含む。一般に、コントローラは、自らの管理する複数のノードの中心的表現を提供し、個々に、またはノードが割り当てられることが可能なセットごとに選択されたノードに対して、この中心的表現から処理を開始することができる。コントローラは、ネットワーク通信に関する基礎の置換可能なトランスポート層を使用して、XML(eXtensible Markup Language)から導出されたフォーマットなどのメッセージ交換フォーマットを使用してノードと通信する。 In one embodiment, the present invention provides an architecture that includes a controller (eg, a process, etc.) on one computer that manages multiple other computers, each of the multiple other computers being manageable by the controller. Agent software to be included. In general, a controller provides a central representation of multiple nodes it manages and processes from this central representation for selected nodes individually or for each set to which a node can be assigned. Can start. The controller communicates with the node using a message exchange format, such as a format derived from XML (extensible Markup Language), using the underlying replaceable transport layer for network communication.
コントローラは、データセンタ内で利用可能なノードを表現する規定の仕方、セットへの利用可能なノードの編成、および進行中のオペレーションおよび完了したオペレーションの結果を提供する。例えば、スキーマを使用して利用可能なノードおよびノードのセット(例えば、通常、管理の都合、オペレーション目的、またはその他の基準などの何らかの基準に従い、管理者によってグループ化された)の表現を継続させる。また、スキーマを使用して待ち状態のオペレーションおよびジョブならびに実行されたオペレーションおよびジョブとともに、コントローラにとってアクセス可能な記憶装置上に各処理の結果のレコードを記憶することができる。 The controller provides a prescribed way of representing available nodes in the data center, the organization of available nodes into sets, and the results of ongoing and completed operations. For example, continue to represent a node and a set of nodes (eg, grouped by an administrator, usually according to some criteria, such as administrative convenience, operational purpose, or other criteria) using a schema . Also, a record of the results of each process can be stored on a storage device accessible to the controller, along with the operations and jobs that are waiting and the operations and jobs that have been executed using the schema.
その他の利点は、以下の詳細な説明を図面と併せて考慮することにより、明白となる。 Other advantages will become apparent from the following detailed description considered in conjunction with the drawings.
本発明によれば、複数装置管理の方法およびシステムを提供し、この方法およびシステムは、とりわけ、1つのコントローラコンピュータ上で単一のコマンドを実行し、ノードと呼ばれる1つまたは複数の他の制御されるコンピュータ上の処理(オペレーション)を開始するメカニズムを提供する。オペレーションは、スクリプト記述された1組のコマンドの実行、2進プログラムの実行、またはいくつかの他のタイプのオペレーションを含むことが可能である。メカニズムは、数セットのコンピュータとともに、あたかもそれらのコンピュータが単一のコンピュータであるかのように機能し、これにより、例えば、コンピュータ装置の管理が大幅に単純化され、データセンタ内でコンピュータ装置を管理する費用が、相当に削減される。 In accordance with the present invention, a method and system for managing multiple devices is provided, which performs, among other things, a single command on one controller computer and one or more other controls called nodes. Provides a mechanism for initiating operations on the computer to be executed. An operation may include execution of a scripted set of commands, execution of a binary program, or some other type of operation. The mechanism works with a few sets of computers as if they were a single computer, which greatly simplifies the management of computer devices, for example, in a data center. Management costs are significantly reduced.
例としてのオペレーション環境
図1は、本発明を実装することができる適切なコンピュータシステム環境100の例を示している。コンピュータシステム環境100は、適切なコンピュータ環境の一例に過ぎず、本発明の使用または機能性の範囲に関するいかなる限定を示唆するものでもない。また、コンピュータ環境100は、例としてのオペレーション環境100に示す構成要素にいずれか1つまたはその組み合わせに関連するいかなる依存関係または要件を有するものとしても解釈されるべきではない。
Exemplary Operating Environment FIG. 1 illustrates an example of a suitable
本発明は、他の多くの汎用または専用のコンピュータシステム環境またはコンピュータシステム構成でオペレーションする。本発明とともに使用するのに適する可能性のある周知のコンピュータシステム、コンピュータ環境、および/またはコンピュータ構成の例には、パーソナルコンピュータ、サーバコンピュータ、ハンドヘルド型装置またはラップトップ型装置、タブレット型装置、マルチプロセッサシステム、マイクロプロセッサベースのシステム、セットトップボックス、プログラム可能家庭用電化製品、ネットワークPC、ミニコンピュータ、メインフレームコンピュータ、ルータ、以上のシステムまたは装置のどれかを含む分散コンピュータ環境等が含まれるが、それらには限定されない。 The invention is operational with numerous other general purpose or special purpose computer system environments or configurations. Examples of well-known computer systems, computer environments, and / or computer configurations that may be suitable for use with the present invention include personal computers, server computers, handheld devices or laptop devices, tablet devices, multiple devices Processor systems, microprocessor-based systems, set-top boxes, programmable consumer electronics, network PCs, minicomputers, mainframe computers, routers, distributed computing environments including any of the above systems or devices, etc. It is not limited to them.
本発明は、コンピュータによって実行されるプログラムモジュールなどのコンピュータ実行可能命令の一般的コンテキストにおいて説明することができる。一般に、プログラムモジュールは、特定のタスクを実行する、または特定の抽象データタイプを実装するルーチン、プログラム、オブジェクト、構成要素、データ構造等を含む。本発明は、一般に、通信網を介してリンクされた遠隔処理装置によってタスクが行われる分散コンピュータ環境において実施されるものとする。分散コンピュータ環境では、プログラムモジュールは、メモリ記憶装置を含むローカルおよび/または遠隔のコンピュータ記憶媒体の中にあることが可能である。 The invention can be described in the general context of computer-executable instructions, such as program modules, being executed by a computer. Generally, program modules include routines, programs, objects, components, data structures, etc. that perform particular tasks or implement particular abstract data types. The invention is generally intended to be practiced in distributed computing environments where tasks are performed by remote processing devices that are linked through a communications network. In a distributed computing environment, program modules may be in local and / or remote computer storage media including memory storage devices.
図1を参照すると、本発明を実施するための例としてのシステムが、コンピュータ110の形態で汎用コンピュータ装置を含み、コンピュータ110は、ノードを制御するための図2のコントローラコンピュータ210としてオペレーションすることができる。コンピュータ110の構成要素には、処理装置120、システムメモリ130、およびシステムメモリを含む様々なシステム構成要素を処理装置120に結合するシステムバス121が含まれることが可能であるが、それらには限定されない。システムバス121は、様々なバスアーキテクチャのどれかを使用するメモリバスまたはメモリコントローラ、周辺バス、およびローカルバスを含むいくつかのタイプバス構造のどれであることも可能である。例として、限定としてではなく、そのようなアーキテクチャには、Industry Standard Architecture(ISA)バス、Micro Channel Architecture(MCA)バス、Enhanced ISA(EISA)バス、Video Electronics Standards Association(VESA)ローカルバス、およびMezzanineバスとしても知られるPeripheral Component Interconnect(PCI)バスが含まれる。
Referring to FIG. 1, an exemplary system for implementing the present invention includes a general purpose computing device in the form of a
コンピュータ110は、通常、様々なコンピュータ可読媒体を含む。コンピュータ可読媒体は、コンピュータ110がアクセスすることの可能な任意の利用可能な媒体であることが可能であり、揮発性媒体と不揮発性媒体、ならびに取外し可能の媒体と取外し不可能の媒体をともに含む。例として、限定としてではなく、コンピュータ可読媒体は、コンピュータ記憶媒体および通信媒体を含むことが可能である。コンピュータ記憶媒体は、コンピュータ可読命令、データ構造、プログラムモジュール、またはその他のデータなどの情報を記憶するための任意の方法または任意の技術で実装される揮発性と不揮発性、取外し可能と取外し不可能の両方の媒体を含む。コンピュータ記憶媒体は、RAM、ROM、EEPROM、フラッシュメモリまたは他のメモリ技術、CD−ROM、デジタルバーサタイルディスク(DVD)または他の光ディスクストーレッジ、磁気カセット、磁気テープ、磁気ディスクストーレッジまたは他の磁気記憶装置、または所望の情報を記憶するのに使用することができ、コンピュータ110がアクセスすることのできる他の任意の媒体を含むが、それらには限定されない。通信媒体は、通常、搬送波などの変調されたデータ信号または他のトランスポートメカニズムでコンピュータ可読命令、データ構造、プログラム・モジュール、または他のデータを実現し、任意の情報伝達媒体を含む。「変調されたデータ信号」という用語は、その特性セットの1つまたは複数を有する、または信号の中に情報を符号化するように変化させられた信号を意味する。例として、限定としてではなく、通信媒体は、有線網または直接有線接続などの有線媒体、ならびに音響、RF、赤外線などの無線媒体および他の無線媒体を含む。また、以上のいずれかの組み合わせも、コンピュータ可読媒体の範囲内に含まれる。
システムメモリ130は、読取り専用メモリ(ROM)131およびランダムアクセスメモリ(RAM)132などの揮発性および/または不揮発性メモリの形態でコンピュータ記憶装置を含む。始動中などに、コンピュータ110内の要素間における情報の転送を助ける基本ルーチンを含む基本入力/出力システム133(BIOS)が、通常、ROM131の中に記憶されている。RAM132は、通常、処理装置120にとって即時にアクセス可能であり、かつ/または処理装置120によって現在、演算が行われているデータおよび/またはプログラム・モジュールを含む。例として、限定としてではなく、図1は、オペレーティングシステム134、アプリケーションプログラム135、他のプログラムモジュール136、およびプログラムデータ137を示す。
The
また、コンピュータ110は、他の取外し可能/取外し不可能の揮発性/不揮発性コンピュータ記憶媒体も含むことが可能である。単に例として、図1は、取外し不可能の不揮発性磁気媒体に対して読取りまたは書込みを行うハードディスクドライブ141、取外し可能の不揮発性磁気ディスク152に対して読取りおよび書込みを行う磁気ディスクドライブ151、およびCD ROMまたは他の光媒体などの取外し可能の不揮発性光ディスク156に対して読取りおよび書込みを行う光ディスクドライブ155を示している。例としてのオペレーション環境で使用することのできる他の取外し可能/取外し不可能の揮発性/不揮発性のコンピュータ記憶装置には、磁気テープカセット、フラッシュメモリカード、デジタルバーサタイルディスク、デジタルビデオテープ、ソリッドステートRAM、ソリッドステートROM等が含まれるが、それらには限定されない。ハードディスクドライブ141は、通常、インターフェース140などの取外し不可能のメモリインターフェースを介してシステムバス121に接続され、また磁気ディスクドライブ151および光ディスクドライブ155は、通常、インターフェース150などの取外し可能メモリインターフェースでシステムバス121に接続される。
The
前述し、図1に示したドライブおよび関連するコンピュータ記憶媒体は、コンピュータ110に対してコンピュータ可読命令、データ構造、プログラムモジュール、および他のデータのストーレッジを提供する。図1では、ハードディスクドライブ141が、記憶オペレーティングシステム144、アプリケーションプログラム145、その他のプログラムモジュール146、およびプログラムデータ147として示されている。以上の構成要素は、オペレーティングシステム134、アプリケーションプログラム135、その他のプログラムモジュール136、およびプログラムデータ137と同じ、またはそれらとは異なることが可能である。オペレーティングシステム144、アプリケーションプログラム145、その他のプログラムモジュール146、およびプログラムデータ147には、少なくとも異なるコピーであることを示すため、本明細書では、異なる番号を付している。ユーザは、一般にマウス、トラックボール、またはタッチパッドと呼ばれるタブレット、または電子デジタイザ164、マイクロホン163、キーボード162、およびポインティングデバイス161などの入力装置を介してコマンドおよび情報をコンピュータ20に入力することができる。図1に示していないその他の入力装置には、ジョイステック、ゲームパッド、サテライトディッシュ、スキャナ等が含まれる可能性がある。以上およびその他の入力は、しばしば、システムバスに結合されたユーザ入力インターフェース160を介して処理装置120に接続されるが、パラレルポート、ゲームポート、またはユニバーサルシリアルバス(USB)などの他のインターフェースおよびバス構造で接続されることも可能である。また、モニタ191またはその他のタイプの表示装置も、ビデオインターフェース190などのインターフェースを介してシステムバス121に接続される。また、モニタ191は、タッチスクリーンパネル等と統合することも可能である。モニタおよび/またはタッチスクリーンパネルは、タブレット型パーソナルコンピュータの中など、コンピュータ装置110が組み込まれたハウジングに物理的に結合することができる。さらに、コンピュータ装置110などのコンピュータは、出力周辺インターフェース194等を介して接続することが可能なスピーカ195およびプリンタ196などの他の周辺出力装置を含むことも可能である。
The drive described above and shown in FIG. 1 and associated computer storage media provide
コンピュータ110は、一般に、ネットワーク化された環境の中でオペレーションして、ノード204あるいはノード2041〜204nと呼ぶいくつかの遠隔サーバコンピュータ180を制御する(図2および3)。通常、そのようなノードは、前述したコンピュータ110の構成要素のいくつか、またはそのすべてを含む。ノードは、キーボード、マウス、ディスプレイなどのユーザインターフェースメカニズムを含まない可能性がある。そのようなノードは、ネットワーク化された環境の中の他のコンピュータ、またはユーザにサービスを通常、提供する様々なプログラムを実行することができる。そのようなプログラムの例には、Webページを提供する、またはデータベースを管理するプログラムが含まれる。例として、限定としてではなく、図1は、遠隔アプリケーションプログラム185が、メモリ装置181上に常駐しているのを示している。示したネットワーク接続は、例としてのものであり、コンピュータ間において通信リンクを確立する他の手段も使用できることが理解されよう。
複数装置管理
図2は、コントローラコンピュータ202(図1のコンピュータシステム110に該当することが可能である)、およびノード2041〜204nと呼ばれる複数の管理されたコンピュータ装置(図1の遠隔コンピュータ180に該当することが可能である)を含むアーキテクチャ200を一般的に表すブロック図である。ただし、本発明の態様は、データセンタ内で使用するのに適するが、そのような態様は、1つまたは複数のコンピュータ上で1つまたは複数のタスクを行う必要がある任意の環境において適用可能であることに留意されたい。例えば、複数のコンピュータおよびサービス(PDA、モバイルコンピュータ、デスクトップシステム、ホームメディアセンタシステムなどの)を有するユーザが、本発明を使用してそのような複数の装置にわたるオペレーションを実行することが可能である。したがって、データセンタ環境の中で一般的に説明しているが、本発明は、特定の1つまたは複数の構成に限定されるべきものではなく、以上に提示したコンピュータ装置の実質的にあらゆる構成、ならびにパーソナルコンピュータ、サーバ、ルータ、および様々な記憶装置とともに使用することが企図される。
Multiple Device Management FIG. 2 shows a controller computer 202 (which may correspond to the
通常のデータセンタは、多数の異なるコンピュータを含む。データセンタの管理をより容易にするため、管理者等が、コンピュータのどれかをコントローラコンピュータ202(またはコントローラ202)として指定する。とりわけ、本発明の一態様に即して、コントローラコンピュータ202は、データセンタ内のコンピュータ、コンピュータがどのように構成されているか、またコンピュータ上でどのようなオペレーションを行うことができるかについてのマスタレコードを保持する。コントローラは、ローカルで接続されたデータスストア(例えば、図3に一般的に表すとおりの)の中に、または遠隔データストア上にこのデータを記憶することができる。ノード2041〜204nは、コントローラ202によって管理されていることが可能であるデータセンタ内のコンピュータを含む。ノードは、Webページを提供すること、またはデータベースを管理することなどのデータセンタの実際の作業を行うノードプログラム2061〜206nを含む。
A typical data center includes a number of different computers. In order to make management of the data center easier, an administrator or the like designates one of the computers as the controller computer 202 (or the controller 202). In particular, in accordance with one aspect of the present invention, the
本発明の一態様によれば、データセンタ内の数百または数千のコンピュータを操作するため、管理者は、コンピュータに論理的オーガニゼーションを適用する。つまり、管理者は、データセンタ内のすべてのノードの単なるリストの代りに、論理構造としてノードを表すセットに様々なノード2041〜204nをグループ化する。単一のデータセンタに関してコンピュータの複数のそのような構造が、例えば、顧客または機能ごとにグループ化されて存在することが可能であり、またノードは、複数のセットに属することが可能である。セット情報は、コンピュータを、例えば、Unicode文字で命名されたセットに配置することにより、コントローラによって維持されるデータストア302(図3)の中に、コントローラサービス208等によって記憶される。セットを介して、管理者は、論理的に編成されたグループのコンピュータをあたかも単一のコンピュータであるかのように操作することができる。データセンタ内に複数のコントローラが存在する場合、コントローラをグループ化することも実施可能であることに留意されたい。
In accordance with one aspect of the present invention, an administrator applies a logical organization to computers to operate hundreds or thousands of computers in a data center. That is, the administrator groups the various nodes 204 1 -204 n into sets that represent the nodes as a logical structure instead of just a list of all the nodes in the data center. Multiple such structures of computers for a single data center can exist, for example grouped by customer or function, and nodes can belong to multiple sets. The set information is stored by the
セットを確立し、維持するため、1つまたは複数のアプリケーション、プロセス、スレッド、オブジェクト、および/またはその他のソフトウェア構成要素を含む管理プログラム210等は、1つまたは複数のユーザインターフェースを介するなどして、管理者が、コントローラサービス208と対話できるようにする。管理プログラム210により、管理者は、セットを作成し、ノードをセットに追加し、セットからノードを除去し、セットを削除し、セットの中の現在のノードをリストし、ノードが属するセットをリストすることができるようになる。
To establish and maintain a set, such as a
例えば、データセンタ管理は、ノードコンピュータの構成に様々な概念上の構造、ノードコンピュータが、データセンタ内の物理的位置(例えば、ケージ、ラック、およびスロットロケーション)によって識別される物理レイアウトに対応する構成などの構造を適用することができる。データセンタのこの見方により、管理部門は、例えば、ノードを取り替えることが必要な場合、ノードの物理ロケーションを探し出すことができる。あるいは、物理レイアウトセットにより、管理部門は、新しく購入されたコンピュータ(ノード)の設置場所を指定することができる。 For example, data center management corresponds to various conceptual structures in the configuration of node computers, the physical layout in which the node computers are identified by their physical location within the data center (eg, cages, racks, and slot locations). A structure such as a configuration can be applied. This view of the data center allows the management department to find the physical location of the node, for example, when it is necessary to replace the node. Alternatively, the physical layout set allows the management department to specify the installation location of a newly purchased computer (node).
各ノードを使用する顧客ごとにノードを編成する論理構造を含め、データセンタ内のノードを編成する他のやり方が存在する。これにより、管理者は、顧客と、その顧客によって現在、使用されている1つまたは複数のノードの間でマッピングを行い、特定の顧客の使用を追跡または監視する、またはその顧客のすべてのノードに変更を加えるようにすることができるようになる。データセンタの別の論理的な見方は、機能ごとにノードを編成することであり、機能とは、ノード上で実行されるアプリケーションである。例えば、特定のノードを、それらがWebサーバ、メディアサーバ、またはデータベースであるという理由でグループ化することができる。機能ごとにデータセンタを見ることにより、管理部門は、ある処理(特定のアプリケーションにパッチを適用するなどの)を、それ必要とするノードだけに対して行うことができる。以上は単なる例であることに留意されたい。というのは、例えば、ネットワークトポロジ(特定のスイッチに接続されたノードまたは負荷平衡)による、VLANによる、顧客サービスレベルによる、マシン機能による、および/またはインストールされたOSおよびサービスパッチレベルによって編成するというように、データセンタの管理部門が、自らのデータセンタ内のノードを編成するのを望む可能性があるやり方には、他の様々なものが存在するからである。次の例としてのテーブルで提示するとおり、任意の所与のノードを任意の数のセットにグループ化することができることに留意されたい。 There are other ways to organize the nodes in the data center, including a logical structure that organizes the nodes for each customer that uses each node. This allows an administrator to map between a customer and one or more nodes currently used by that customer to track or monitor the use of a particular customer, or all nodes of that customer You will be able to make changes. Another logical view of the data center is to organize nodes by function, which is an application that runs on the node. For example, certain nodes can be grouped because they are web servers, media servers, or databases. By looking at the data center for each function, the management department can perform a certain process (such as applying a patch to a specific application) only for the nodes that need it. Note that the above is just an example. For example by network topology (nodes connected to a specific switch or load balancing), by VLAN, by customer service level, by machine function and / or by installed OS and service patch level. As such, there are various other ways in which a data center management department may wish to organize nodes in its own data center. Note that any given node can be grouped into any number of sets, as presented in the following example table.
本発明のこの態様に即して、ノードをセット(例えば、簡単な名前で区別される)にグループ化できることは、様々なオペレーションのパフォーマンスを単純化する。例えば、セットは、ある顧客によって使用中のノードコンピュータを、その顧客が問題を報告したときに識別することができ、したがって、それらのノードコンピュータのステータスに迅速にアクセスし、問題を解決することができる。ノードから収集された監視情報は、特定の顧客のためにWebサイトを介して閲覧可能な形態などに集約して、顧客が、自らのマシンのステータスをアクセスして見ることができるようにするのが可能である。ノードは、リソース消耗(例えば、ディスク空間が不足する)について監視し、マシンを使用して顧客のための警報を生成することができる。警報は、顧客に報告され(例えば、電子メールで)、かつ/または顧客に接触して、例えば、よりよいハードウェアまたは追加のサーバに構成をアップグレードするように勧めるため、販売スタッフによって使用可能である。 Consistent with this aspect of the invention, the ability to group nodes into sets (eg, distinguished by simple names) simplifies the performance of various operations. For example, the set can identify the node computers that are in use by a customer when that customer reports a problem, thus quickly accessing the status of those node computers and solving the problem. it can. Monitoring information collected from nodes is aggregated into a form that can be viewed via a website for a specific customer so that the customer can access and view the status of their own machine Is possible. The node can monitor for resource exhaustion (eg, running out of disk space) and use the machine to generate alerts for customers. Alerts are reported to the customer (eg, via email) and / or can be used by sales staff to contact the customer and encourage them to upgrade the configuration to better hardware or additional servers, for example. is there.
本発明の別の態様によれば、データセンタを管理するため、開始プロセス304を介するなどして、コントローラサーバ208上でオペレーションを開始することにより、データセンタ内の1つまたは複数のノードに対してオペレーションが行われる。図3で、開始プロセス304は、管理プログラム210の一環として表されているが、理解されようが、開始プロセスと管理プログラムは別々であることが可能であり、実際、開始プロセスは、スクリプトまたはその他の実行可能コードとすることが可能であることに留意されたい。さらに、簡明にするため、図3は、1つのノード204だけを示しているが、理解されるとおり、コントローラ202は、例えば、一度に、または何らかの順序で、複数のノードを制御できることに留意されたい。
In accordance with another aspect of the invention, for managing one or more nodes in the data center by initiating operations on the
図3に一般的に表すとおり、コントローラコンピュータ202上で、本発明のコントローラサービス204のコントローラプログラム306は、スキーマインターフェース310を介してアクセスされ、実行される。このスキーマ(図4〜図12で一般的に示す)は、データセンタ内の利用可能なノード、セット、利用可能なオペレーション、および各オペレーションを実行することの結果の表現を提供する。一般に、コントローラコンピュータ202上で、コントローラサービス208は、スキーマインターフェース310、コントローラプログラム306、およびデータストア302を含むものと見なすことができる。コントローラサービス208にアクセスするのを望むどのプロセス、スクリプト、またはユーザインターフェースも、スキーマインターフェース310を介してそれを行う。コントローラプログラム306は、行うべき処理を決定する。この処理は、データストア302にアクセスすること、および/またはトランスポート層212を介して1つまたは複数のノード(ノード204などの)と通信することが含まれる。例えば、結果データ、および表現(representation)を管理者に提供するのに必要とされるその他の情報は、一般に、データストア302の中に保持される。データストアには、管理者が、スキーマインターフェース310を介してアクセスすることができる。通常の実施形態では、スキーマインターフェースは、本発明の譲受人に譲渡された米国特許第出願番号09/020146に記載されるような、コンピュータプロセスおよびコンピュータ装置を表現するためのCommon Information Model(CIM)標準から導出することが可能である。
As generally represented in FIG. 3, on the
一般に、オペレーションを行うためには、まず、管理プログラム210を介するなどして、そのオペレーションが行われる1つまたは複数のノードまたはノードのセットが選択される。その選択は、単一のコンピュータ、セットの中のすべてのコンピュータ、いくつかのセットの中のすべてのコンピュータ、または個々のコンピュータとセットの中のコンピュータが混合したものを指定することができる。選択からは、例えば、2つ以上の選択されたセットを介して同一のノードが指定されている場合、あらゆる重複を取り除くことができる。セットが、データセンタのオーガニゼーションの管理者によって選択された表現であるのに対し、選択は、一般に、少なくとも1つのオペレーションがそれに対して行われるように一時的に指定されたコンピュータの集合である。このため、選択は、セットとは異なっていることに留意されたい。言い換えれば、セットメンバ(およびセット自体)は、時間の経過とともに変化する可能性があるが、コンピュータノードのオーガニゼーションの継続する表現であるのに対し、選択は、特定のオペレーションの意図的な目標を表すコンピュータノードの一時的セットである。選択は、所与の集められた数のコンピュータに対してオペレーションまたは一連のオペレーションを行う必要があるときに作成される。オペレーションまたは一連のオペレーションが完了すると、選択の表現は、データセンタ内のコンピュータのオーガニゼーションに関する情報を失うことなしに、削除することができる。選択は、「一時的」セットと見なすことができる。いくつかの実施形態では、選択は、選択が、単一のセットまたは単一のノードだけを含むことができる縮退(degenerate)ケースに限定することができる。
In general, to perform an operation, first, one or more nodes or sets of nodes on which the operation is to be performed are selected, such as via the
管理者が行うことができる特定のオペレーション(例えば、管理プログラム210を介して)には、選択を作成すること、選択を削除すること、および選択中のコンピュータをリストすることが含まれる。一実施形態では、選択は、コントローラ202上に記憶され、各選択は、選択が作成されたときに割振られた固有のシリアル番号で識別される。選択は、数千のコンピュータを含むデータセンタ内のオペレーションをサポートすることができ、各選択は、1つからデータセンタ内のメンバの総数まで、任意の数のコンピュータを含むことが可能である。どのオペレーションがどの装置上で実行されるかを追跡するため、レコードが保持され、これにより、何が実行されたかの監査を提供する。この監査は、通常、定期的にアーカイブされ、消去される。
Specific operations that can be performed by the administrator (eg, via management program 210) include creating a selection, deleting the selection, and listing the computers being selected. In one embodiment, the selections are stored on the
データセンタ環境においては、コントローラ202は、データセンタ(少なくともその一部分の)の制御ポイントであり、データセンタに関する情報のリポジトリであることに留意されたい。この結果、そのような環境においては、コントローラは、災害が生じた場合、高度に使用可能であり回復可能である必要がある。可用性に関して、コントローラは、複数のクラスタ化されたマシンの共用ディスククラスタ環境を含むことができ、この環境では、いくつかのクラスタ化されたコンピュータに障害が起きても、コントローラ202のオペレーションに影響を与えないことが可能である。災害時回復に関して、グループ、スクリプト、スクリプトコード、ならびに前に完了したジョブおよび処理中のジョブの結果の詳細を含め、コントローラの状態をバックアップすることができる。バックアッププロセスは文書化して、管理者または他のサービスが、バックアップを定期的に行うために使用することができるスクリプトにカプセル化することができる。バックアップの後、コントローラ状態は新しいコントローラ上で復元する必要があり、またさらに、新しいコントローラは、前のコントローラによって前に制御されていたノードを管理下におく必要がある。同時に、不正コントローラがノードを管理下におくことができないよう、セキュリティが提供される。
Note that in a data center environment, the
ノード上で実行できるスクリプトは、コントローラ202上で(例えば、データストア302内のスクリプトデータベースの中、または別の場所に)記憶する。スクリプトは、目標ノード上で利用可能である任意のスクリプトホストを使用するように書くことが可能である。スクリプトデータベースは、遠隔ノード上で実行するのに利用可能なスクリプトに関する情報を含み、スクリプト自体は、コントローラのファイルシステム上に記憶することができ、データベースが、スクリプトに対するパスを含む。一実施形態では、スクリプトは、コントローラのファイルシステム上のいずれかの場所に置かれる。管理プログラム210等により、ファイルシステム上のスクリプトの作成および編集、スクリプトデータベースの中のスクリプトエントリの作成、スクリプトエントリの編集、スクリプトエントリの削除、スクリプトを使用する可能性のあるジョブ(以下に説明する)の作成、ジョブの削除、ジョブの編集、ジョブの実行、ジョブのステータスおよび結果の検索が可能になる。
Scripts that can be executed on the node are stored on the controller 202 (eg, in a script database in the
本発明の一態様によれば、1つまたは複数の選択されたノード上でオペレーションまたは一連のオペレーションを行うため、選択が終わると、コントローラサービス208が、実行されるべきジョブを含むあるメッセージ(または複数のメッセージ)を作成する。メッセージは、好ましくは、XMLを使用してフォーマットされ、コントローラ上のメッセージ交換プロトコルおよびトランスポート層プロトコル212、ならびに選択中で指定された1つまたは複数のノードのそれぞれの上の対応するプロトコル2141〜214nを使用して、各選択された目標ノード(例えば、図3のノード204)に送信される。簡明にするため、コントローラプログラム306は、定義されたXMLメッセージ交換プロトコル314(図3)を使用して、ノードコンピュータ204上のエージェントプログラム312を含むエージェントサービス218と直接に通信するものと見なすことができ、一方、コントローラ202上のトランスポート層212は、トランスポートプロトコル316(図3)を使用してノード204上のトランスポート層214と直接に通信するものと見なすことができる。トランスポート層212は、コントローラから複数のノード2041〜204nにメッセージを確実に送信することができ、ノード204が、メッセージをコントローラ202に送信するために使用することができる任意のシステムを含む。例えば、コントローラから複数のノードにメッセージを送信するために、マルチキャストを使用することができる。マルチキャストが利用可能ではない場合、またはターゲットが、単一のノードである場合、ユニキャストを使用することができる。代替のトランスポート層としては、メッセージを含めるのに標準のHTTPプロトコルを使用し、ユニキャストを使用することである。
In accordance with one aspect of the invention, to perform an operation or series of operations on one or more selected nodes, once a selection is made, the
一実施形態では、コントローラ202とノード204の間における通信は、Multiple Device Management(MDM)プロトコルを使用してスクリプトをエージェントサービス218に送信し、スクリプトを実行した結果を戻し、2進実行可能コードを実行するようにエージェントサービス218に告げ、エージェントサービス218を介してノード204上で他のオペレーションを実行し、エージェントサービス218からコントローラ202に警報およびイベント情報を送信する。この実施形態では、MDMプロトコルは、Sender−side Guaranteed Multicast(SGM)を使用することなどにより、コントローラと1つまたは複数のエージェントの間においてネットワーク通信を確実に提供するトランスポート層プロトコル上でオペレーションする。本発明は、メッセージ交換プロトコルおよび/またはトランスポートプロトコルを介する論理通信によって主に説明するが、基礎となる物理ネットワーク216(有線であれ、無線であれ)がコントローラ202とノード2041〜204nを接続するものと理解されることに留意されたい。
In one embodiment, communication between the
1つの一般的タイプのオペレーションの例として、管理者は、コントローラコンピュータ202を介して、1つまたは複数の選択されたノード上で1組のコマンド(例えば、スクリプト)を実行する。これは、一般に、ノードの選択、およびメッセージを選択したノードに送信することによって達せられる。スクリプトに加えて、メッセージ交換プロトコル314は、事前コンパイルされたプログラム、またはその他のあるオペレーションの実行などの代替のタイプのオペレーションを可能にするように拡張可能である。
As an example of one general type of operation, an administrator executes a set of commands (eg, a script) on one or more selected nodes via the
本発明のその他の態様によれば、ノード204は、エージェントプログラム312を含むエージェントサービス218を含む。一般に、エージェントサービス218は、コントローラ202の要求時に処理を行うこと、ならびに警報およびイベントをコントローラ202に送信することを担う。この目的で、エージェントプログラム312は、コントローラ202から通信(メッセージ)を受信し、メッセージの中で指定された要求される1つまたは複数の処理をどのように行うかを決定し(存在する場合)、また必要に応じて、処理を任意の引数(パラメータ)とともに適切な実行エンジン320に渡す。例として、コントローラ202が、エージェントプログラム318にスクリプトを送信する場合、実行エンジン320は、通常、対応するスクリプトインタープリタである。また、エージェントプログラムは、ノード204上における2進実行可能コードの実行などの、コントローラとコンピュータの間におけるプロトコルの一環である何らかの他のオペレーションも可能にしている。2進実行可能コードを送信する代りに、コントローラ202は、好ましくは、ノード204のためにそのコードに関するネットワークアドレスを送信して、そのコードをそのロケーションから実行するか、またはそのコードをダウンロードして実行することに留意されたい。完全にするため、ノードオペレーティングシステム220、ならびにコントローラオペレーティングシステム222を示している。
In accordance with another aspect of the invention,
スクリプトおよびプログラムの実行に加えて、リブート、シャットダウン、またはサスペンド(低電力状態に移行する)などの他のオペレーションが、制御されるノードに要求される可能性がある。そのようなオペレーションが、即時に行われた場合(スクリプトを介するなどして)、ノード204は、結果をコントローラに提供できない可能性があるからである。代りに、そのようなオペレーションは、コマンドメッセージが受信され、理解されたことを基本的に明言する結果をコントローラ202にまず通信する特別機能取扱い構成要素322によって行われる。結果を送信した後、ノードは、要求を満たす適切な処理を行う。
In addition to script and program execution, other operations such as reboot, shutdown, or suspend (go to a low power state) may be required of the controlled node. This is because if such an operation is performed immediately (such as via a script), the
要するに、MDMプロトコルにより、コントローラ202は、エージェント上でスクリプトを実行すること、標準のスクリプト記述ホストを使用すること、またはエージェント上で2進コードを実行することなどの特定のオペレーションを実行するように1つまたは複数のノードに要求することができる。プロトコルは、実行されるオペレーションの理解はしておらず、これにより、プロトコルが単純なままに保たれ、特別ケースオペレーションが回避される。ただし、いくつかのオペレーションは、プロトコル自体のオペレーションに対する影響を有し、したがって、プロトコルの中で表現される。そのような特別オペレーションには、ノードコンピュータをリブートすること、サスペンドすること、またはシャットダウンすることが含まれる可能性がある。また、MDMプロトコルは、コントローラが、ノードを制御するために最初にノードと通信するときなどの、管理情報を交換することを可能にする。
In short, the MDM protocol allows the
また、MDMプロトコルは、スクリプトまたはバイナリ、あるいは特別オペレーションを実行した結果をコントローラ202に送り返すのに使用される。ノード警報およびノードイベントをMDMプロトコルならびにハートビートを介して送信して、ノードが適切にオペレーションしていることをコントローラに定期的に知らせることができる。間隔情報は、構成可能であり、またコントローラ202は、MDMプロトコルを介して間隔情報をノードに送信することができる。
The MDM protocol is also used to send back to the
オペレーションの結果を受信すると、コントローラ202は、オペレーションのレコードを保持する。この目的で、ノード2041〜204nから結果が入ってくるにつれ、結果は、戻されたメッセージから抽出されて、データベース302の中に記憶される。これは、各ノードごとに各オペレーションの継続中の完全なレコードを提供する。管理者またはプロセス(スクリプトなどの)は、コントローラ202上でこの情報を問い合わせて、各ノード上のオペレーションの成功を判定することができ、必要な場合、障害を調査または解決することができる。メッセージフォーマットは、ノード上のあらゆる警報のステータスを含め、各ノードの状態に関する情報をコントローラが保持するための手立ても提供する。
Upon receiving the result of the operation, the
理解されようが、スクリプトの実行およびその他の処理の実行を含む、様々なエージェントサービスオペレーションが、データセンタ内のサーバに対して任意の操作を行う相当な柔軟性を管理者に与える。例えば、多くの通常の管理オペレーションでは、既成の試験済みのスクリプトを、事前構成されたサーバであることが可能なコントローラまたはノードコンピュータとともに提供する。そのようなスクリプトは、データセンタの管理者に、一般のオペレーションのためにデータセンタ内のサーバを管理する能力を与え、使用の準備のできたコントローラ202とともに提供する。さらなるスクリプトが、特定の機器サーバ等(キャッシュ機器などの新しいタイプの機器を含む)とともに提供される。そのような場合、管理者は、コントローラ202にスクリプトをロードし、この新しいスクリプトに関して知るためにコントローラプログラム306を構成するだけでよい。さらに、ノードコンピュータは、例えば、機能に基づき、関係のあるスクリプトを搭載して出荷し、このスクリプトをコントローラ202に自動的に提供することが可能である。特別な状況に関して、カスタムスクリプトを書き、試験して、新しいスクリプトに関して知るためにコントローラを構成することによってコントローラ202に追加することができる。
As will be appreciated, various agent service operations, including the execution of scripts and other processes, give the administrator considerable flexibility to perform any operation on the servers in the data center. For example, many normal management operations provide pre-built, tested scripts with a controller or node computer that can be a preconfigured server. Such scripts provide data center managers with the ability to manage servers in the data center for general operation and are provided with the
前述したとおり、各ノードコンピュータは、エージェントサービス218を含む。任意の所与のコントローラと同様に、エージェントのインストールは、ノードとともに提供される、例えば、コンピュータは、インストールを全く必要としない機器として出荷されることが可能である。あるいは、エージェントサービスは、管理されるべき各コンピュータに対してインストールを行う供給されたインストールスクリプトを介するなどして、インストールする必要のある別個のソフトウェアを含むことが可能である。
As described above, each node computer includes an
データセンタの処理の負担を単純化するため、エージェントサービス218を含むコンピュータをブートしたとき、エージェントサービス318が、Universal Plug−n−Play(ネットワーク上の自動検出コンピュータ装置に関する標準であるuPnP)によって提供されるような自動検出プロトコルを介するなどして、検出構成要素330を介して自らの存在をネットワーク上で自動的に同報通信することが可能である。複数のネットワークインターフェースカード(NIC)を有するノード上では、同報通信を行うのに使用されるNICを制限することができ、例えば、複数のNICが使用される場合には、次のリブートまで、応答するコントローラを含む最初ののNICだけが使用される。
Provided by Universal Plug-n-Play (uPnP, the standard for automatic detection computer devices on the network) when the computer including the
コントローラ202は、検出リスニングプロセス332を介して同報通信を認識し、コンピュータが、コントローラが知っているコンピュータに関するコントローラの表現の中に既に存在していない場合、同報通信を行うコンピュータが追加され、コントローラは、そのコンピュータをノードとして参照する。この目的で、コントローラ202は、自動検出同報通信を認識したとき、自らが、そのノードについて既に知っているかどうかを判定する。既に知っている場合、そのノードは、データセンタ内で前にブートされたことがあり、制御されないノードまたは制御されるノードのリストの中にある。それが制御されるノードである場合、コントローラ202は、そのノードの制御を再確立する。どちらの場合も、コントローラは、ノードレコードにマークを付けて、ノードがネットワーク上でブートされたことを示す。ノードが、コントローラによって知られていない場合、コントローラ202は、それに応答して、そのノードに関する情報を自らの内部データベース302に追加する。コントローラ202によって獲得される情報は、ノードの固有識別子(ネットワークインターフェースカードのBIOS GUIDまたはMACアドレスなどの大域的に固有のハードウェア識別子など)。ノードは、新しく検出されたとき、まず、制御されないノードと見なされ、管理者は、そのノードをコントローラ202によって制御されるノードにするかどうかの決定を行うことができる。
The
制御を単純化することに加えて、自動検出は、新しいマシンの自動構成の使用方法をさらに提供する。例えば、管理者は、すべての新しいマシンに対して、所与の1組のコマンド、例えば、新しいシステムをインベントリに記入するか、または現在、必要とされるホストフィックスを適用するか、あるいは所与の顧客に合せてそのマシンを構成するコマンドを実行するかを指定することができる。次に、管理者は、新しいコンピュータがコントローラ上に追加されたときに生じたイベントを消費するスクリプトを書き、適切な処理を行うことができる。検出の後、管理者は、データセンタ内のすべての新しいノードをリストすることができ、必要に応じてそれらのノードをセットに追加する、またはそれらのノードに対するオペレーションを行うことができる。容易に理解できるとおり、データセンタ内で新しいコンピュータを探し出すための自動検出メカニズムを使用することにより、すべての新しいコンピュータに関して情報(例えば、名前、シリアル情報およびIP情報)を手作業で入力しなければならないことがなくなり、したがって、可能なデータエントリの誤りが回避される。このようにして、管理者は、データセンタ内容に関するインベントリ情報を保持するのを助ける、利用可能なコンピュータノードのオンライン参照リストを保有する。 In addition to simplifying control, auto-discovery further provides a way to use new machine auto-configuration. For example, an administrator can either inventory a new set of commands, for example a new system, apply the currently required host fixes for all new machines, or You can specify whether to run commands that configure the machine for different customers. The administrator can then write a script that consumes the events that occurred when a new computer was added on the controller and took appropriate action. After discovery, the administrator can list all new nodes in the data center and can add them to the set or perform operations on those nodes as needed. As you can easily understand, you have to manually enter information about all new computers (eg name, serial information and IP information) by using an auto-discovery mechanism to find new computers in the data center. This avoids possible data entry errors. In this way, the administrator maintains an online reference list of available computer nodes that helps to maintain inventory information regarding data center content.
セキュリティを提供するため、本発明は、データセンタの管理者によって許可されていないコントローラソフトウェアおよびエージェントソフトウェア(それぞれ、「不正コントローラ」および「不正エージェント」)に対して防御を行う。データセンタの管理者の管理下にあるコントローラおよびエージェントは、それぞれ、「承認されたコントローラ」および「承認されたエージェント」と呼ばれる。この目的で、いくつかのコントローラが存在する可能性があるネットワーク上に自動検出情報を同報通信するノードは、最初に応答するコントローラからの応答だけを受け入れるように構成される。ノードは、公開キー、秘密キー技術を使用して応答を受信すると、以降、そのコントローラおよび他の承認されたコントローラからの制御情報だけを受け入れる。通常、これは、ノードを最初に制御したコントローラだけとなるが、コントローラに障害が起き、取り替える必要があることが予期される。ただし、そのような取替え用コントローラは、秘密キーを介して承認される。応答する最初のコントローラが、不正コントローラである可能性があり、その場合、ノードは、データセンタの制御から失われることになるが、これは、エージェントを最初にブートする前にエージェントの上に適切な証明書データを配備することによって回避できることに留意されたい。新しいノードが、不正コントローラに取られた場合、データセンタの管理者にとってリソースの損失が生じる可能性があるが、不正コントローラは、ノード上の顧客情報に対するアクセスを全く有さない。 In order to provide security, the present invention protects against controller software and agent software ("Rogue Controller" and "Rogue Agent", respectively) that are not allowed by the data center administrator. Controllers and agents under the control of the data center administrator are referred to as “approved controllers” and “approved agents”, respectively. For this purpose, nodes that broadcast auto-discovery information on a network where there may be several controllers are configured to accept only responses from the first responding controller. When a node receives a response using public and private key technology, it will only accept control information from that controller and other authorized controllers. Usually this will be only the controller that first controlled the node, but it is expected that the controller will fail and need to be replaced. However, such a replacement controller is authorized via a secret key. The first controller to respond may be a rogue controller, in which case the node will be lost from data center control, which is appropriate on top of the agent before the agent is first booted. Note that this can be avoided by deploying secure certificate data. If a new node is taken by a rogue controller, there may be a loss of resources for the data center administrator, but the rogue controller has no access to customer information on the node.
コントローラとノードの間で承認が確立されると、そのノードは、制御されるようになり、承認されたコントローラは、ノードの制御を引き継ぐことができる(例えば、元のコントローラに取って代るため)が、不正コントローラは、ノードの制御を引き継ぐことができない。不正コンピュータは、ネットワークをスニフィングすることもできるので、機密情報は、暗号化されずにネットワーク上で渡されることはなく、暗号化は、セキュリティ確保されたメッセージの目標ノードだけが、そのメッセージを暗号化解除できるようになっている。オペレーションは、呼び出されたとき、通信を暗号化する必要があるかどうかを指定することができる。これは、開始プロセスの要求で行われる、またはスクリプトデータベースの中で暗号化を必要とするものとしてスクリプトにマークが付けられているために行われる可能性がある。 Once authorization is established between the controller and the node, the node becomes controlled and the authorized controller can take over control of the node (eg to replace the original controller). However, the unauthorized controller cannot take over control of the node. An unauthorized computer can also sniff the network, so sensitive information is not passed over the network without being encrypted, and only the target node of the secured message encrypts the message. It can be released. The operation can specify whether the communication needs to be encrypted when invoked. This can be done at the request of the initiating process or because the script is marked as requiring encryption in the script database.
コントローラ202によって保持されるデータストア302は、定義されたスキーマとして構成される。一般に、コントローラは、データセンタ内のノードの詳細、セット情報、利用可能なオペレーション、現在、進行中のオペレーション、および完了したオペレーションの結果を保持する。必要ではないが、便宜のため、このデータベーススキーマは、管理プログラム304がそれを介してコントローラプログラム306およびデータストア302とインターフェースを取る(スキーマインターフェース310を介して)オブジェクトモデルスキーマと同様に構成される。一実施形態では、オブジェクトモデルスキーマは、定義されたオブジェクトの形態で情報を表現するが、一般には、データベーススキーマは、照会されたときにオブジェクトを構築するのに使用されるレコード等を保持することに留意されたい。スキーマを一般的に図4〜図12に表しており、また、付録Aでさらに説明している。ただし、説明するスキーマは、一例に過ぎず、本発明は、データを保持または提示する特定のやり方は、全く対象としていない。
The
したがって、コントローラ202は、データベースの中に各ノードに関するある量の情報を保持する。例えば、各ノードは、通信関連データ(例えば、TCP−IPホストネーム)、固有識別子、およびその他の各種データを含む装置データ構造で表現される。この情報のほとんどは、ノードの名前などの、ノードの状態のキャッシュされた表現である。キャッシュされた情報には、次のテーブルに提示する項目が含まれる可能性があり、このテーブルは、ノード上で情報が変化した場合、どのようにその情報がコントローラ上で更新されるかに関する詳細も含む。
Thus, the
コントローラ上で保持されるノードに関する情報のその他の項目には、以下が含まれる。 Other items of information about nodes held on the controller include:
ノードは、ノード名(ノードの名前の短縮形、例えば、「server07」)やノード上のNICカードのMACアドレスなどの様々な情報によってコントローラ上で識別される。ノード名は、コントローラ上のノードレコードに関する固有識別子として使用することができる。ノードがブートするたびに毎回、自動検出を使用して、これら両方の情報がノードからコントローラに送信される。自動検出が、ネットワーク上において利用可能ではない場合には、管理者は、少なくともノード名を含むノードレコードを手作業で追加する必要がある。 A node is identified on the controller by various information such as the node name (short form of the node name, for example, “server07”) and the MAC address of the NIC card on the node. The node name can be used as a unique identifier for the node record on the controller. Each time the node boots, both of these information are sent from the node to the controller using auto-discovery. If auto-discovery is not available on the network, the administrator needs to manually add a node record that includes at least the node name.
また、ノード名は、ノードと通信するためにコントローラ202によって使用されることも可能である。一実施形態では、コントローラは、DNSを使用して名前をIPアドレスにまで解決する。これは、ノード名を管理NIC上のIPアドレスにマップするDNSサーバに対するアクセスをコントローラが有するのを管理者が確実にする必要があることを意味する。DNSサーバは、静的データに基づき、または動的DNSを使用して現在のサーバ名およびIPアドレスを把握していることが可能である。管理ネットワークが、現在、DNSサーバを有さない場合には、コントローラ自体をDNSサーバとして使用できることに留意されたい。ノード上のIP変更を見張り、コントローラに更新を送信するプロセスなどの動的DNSに対する同様のプロセスも使用することができる。ノードが制御されるようになると、コントローラは、ノードに対する永久接続を確立する。
The node name can also be used by the
自動検出は、ノードと、マルチキャスト検出パケットの転送をサポートするコントローラの間のネットワークに基づき、例えば、パケットは、事前定義された(固定)マルチキャストIPアドレスおよびポートに対してノードによって送信される。すべてのデータセンタ環境が、マルチキャスト転送をサポートするわけではないので(例えば、ルータの限界またはポリシーのため)、データセンタは、マルチキャストドメインごとにコントローラを使用するように(通常、サブネットごとに1つのコントローラ)、または自動検出なしにオペレーションするように、その他のモードでオペレーションすることが可能である。その場合、そうでなければ自動であるいくつかのオペレーションが、手作業で行われる。 Auto-discovery is based on a network between a node and a controller that supports forwarding multicast detection packets, for example, packets are sent by a node to a predefined (fixed) multicast IP address and port. Because not all data center environments support multicast forwarding (eg due to router limitations or policies), data centers should use a controller per multicast domain (usually one per subnet) Controller), or other modes, such as operating without automatic detection. In that case, some operations that are otherwise automatic are performed manually.
管理されるノードがリブートするとき、コントローラは、ノードに対するあらゆる永久接続を解く。現在の実施形態で、コントローラ202は、通信を自動的に再確立しようと試みるのではなく、ノードからの自動検出パケットを待つ。コントローラ202は、このパケットを受信したとき、ノードが利用可能であることを知り、そのノードとの接続を再確立する。自動検出が作業上、利用可能でない場合、管理者は、適切なメソッド、例えば、Controller.RecoverManagedNodeメソッドを介するなどして、コントローラとリブートされたノードの間の通信を手作業で再確立する。一般に、メソッドは、値を戻さず、したがって、所望される場合、付録Aに説明するとおり、呼出し元は、言語別メソッドを使用して、メソッド(または他のオペレーション)が失敗したかどうかを判定する必要があることに留意されたい。
When the managed node reboots, the controller breaks any permanent connection to the node. In the current embodiment, the
スキーマを実装するオブジェクトモデルは、3つの主な特徴、つまりセット、装置、およびジョブを含む。セットは、装置のグループを表す。各セットは、固有名を有し、装置を全く含まない、あるいは1つまたは複数の装置を含むことが可能である。所与の装置は、複数のセットの中にあることが可能である。セットは、コントローラ上だけで表され、一実施形態では、装置は、どのセットに自らが入っているかについて、全く知識を有しておらず、セットに追加されたとき、またはセットから削除されたとき、通知を受けない。セットは、オブジェクト「セット(Sets)」として実装される。一実施形態では、装置だけが、セットのメンバであることが可能であるが、他の実施形態では、セットが、他のセットのメンバであることが可能であることに留意されたい。 The object model that implements the schema includes three main features: sets, devices, and jobs. A set represents a group of devices. Each set has a unique name and may contain no devices or may contain one or more devices. A given device can be in multiple sets. A set is represented only on the controller, and in one embodiment, the device has no knowledge of which set it is in and has been added to or removed from the set When you do not receive notifications. The set is implemented as an object “Sets”. It should be noted that in one embodiment, only a device can be a member of a set, while in other embodiments, a set can be a member of another set.
装置は、コントローラが管理することのできるデータセンタ内の個々のサーバである。1つの現行の実施形態では、管理できる装置は、エージェントソフトウェアがインストールされたコンピュータだけである。装置は、その名前によって識別され、コントローラは、装置と通信するため、DNSを使用してこの名前をIPアドレスにまで解決する。 A device is an individual server in a data center that can be managed by a controller. In one current embodiment, the only devices that can be managed are computers with agent software installed. The device is identified by its name, and the controller uses DNS to resolve this name to an IP address to communicate with the device.
装置情報は、いくつかのオブジェクトの中に記憶される。デバイス(Devices)オブジェクトが、名前を含む基本情報を記憶し、一方、MACアドレスは、DevicesオブジェクトにリンクされるDeviceHWAddrsオブジェクトの中に記憶される。他のハードウェア情報(SMBIOS GUIDおよびディスクドライブ署名など)も、このオブジェクトのインスタンスの中に記憶することができる。異なるタイプの情報の区別をするため、DeviceTypesオブジェクトが、異なるタイプのハードウェアアドレスの定義を保持する。DeviceHWAddrsの各インスタンスは、デバイスタイプ(DeviceTypes)の対応するインスタンスにリンクされる。また、特定のMACアドレスに関連するIPアドレスも、特定のMACアドレスを表すDeviceHWAddrsインスタンスに関連するDeviceHWIPAddrsのインスタンスの中に記憶することができる。現在、IPアドレス情報は、MACアドレスに関しては記憶されない。 Device information is stored in several objects. The Device object stores basic information including the name, while the MAC address is stored in a DeviceHWAddrs object linked to the Devices object. Other hardware information (such as SMBIOS GUID and disk drive signature) can also be stored in an instance of this object. In order to differentiate between different types of information, the DeviceTypes object holds definitions for different types of hardware addresses. Each instance of DeviceHWAddrs is linked to a corresponding instance of device type (DeviceTypes). An IP address associated with a specific MAC address can also be stored in an instance of DeviceHWIPAddrs associated with a DeviceHWAddrs instance that represents the specific MAC address. Currently, IP address information is not stored for MAC addresses.
ジョブとは、一般に、2つのタイプのジョブ情報、すなわち、実行される準備のできているジョブであるジョブテンプレート、および前に実行されたジョブであるジョブ履歴を指す。ジョブテンプレートは、ジョブインスタンス(JobInstances)オブジェクトの中に記憶される。このJobInstancesオブジェクトのインスタンスは、2つのプロパティ、ジョブ名とジョブ識別子の組み合わせで識別される。ジョブテンプレートは、ゼロのジョブ識別子、およびゼロのジョブ識別子を有するジョブ呼び出し(JobInvocations)の中で固有の名前とともに記憶される。ジョブテンプレートのプロパティは(ジョブ識別子を別にして)、ユーザが編集することができる。現行の実施形態では、ジョブテンプレートを記憶するのに、他のオブジェクトは全く使用されない。 A job generally refers to two types of job information: a job template that is ready to be executed and a job history that is a previously executed job. The job template is stored in a job instance (JobInstances) object. An instance of this JobInstances object is identified by a combination of two properties, a job name and a job identifier. The job template is stored with a unique name in the Job Invocations with a zero job identifier and a zero job identifier. Job template properties (apart from job identifiers) can be edited by the user. In the current embodiment, no other object is used to store the job template.
ジョブ履歴は、いくつかのオブジェクトの中に記憶される。JobInvocationsオブジェクトが、名前、ジョブ識別子、およびジョブが実行された時刻を含む基本情報を記憶する。ジョブ識別子は、ゼロ以外の値である。名前は、ブランクであることが可能であり、また他のJobInvocationsインスタンスと同一であることが可能である(ジョブ識別子が、ジョブ履歴を一意的に識別するため)。ジョブ履歴を表す各JobInvocationは、Jobsオブジェクトのインスタンスにリンクされる。これは、ジョブが実行された装置の数にかかわらず、ジョブのステータスを表す。これは、個々の装置のそれぞれにおけるジョブのステータスに対する「親」であると見なすことができる。各装置上のジョブに関する実際のステータスは、装置ごとに1つのJobsクラスのさらなるインスタンスの中に記憶される。これらのインスタンスのそれぞれは、親Jobsインスタンスにリンクされ、親インスタンスの「子」と見なすことができる。これにより、2つのレベルの親−子関係が形成され、この関係をさらなるレベルに拡張することができる。ジョブが、どの装置上でも実行されない場合(ジョブが実行されるセットが空であるため)には、親Jobsインスタンスは、どの子Jobsインスタンスにもリンクされないことに留意されたい。 The job history is stored in several objects. The JobInformations object stores basic information including name, job identifier, and time the job was executed. The job identifier is a non-zero value. The name can be blank and can be the same as other JobInvocations instances (since the job identifier uniquely identifies the job history). Each JobInvocation representing a job history is linked to an instance of a Jobs object. This represents the status of the job regardless of the number of devices on which the job was executed. This can be considered the “parent” for the status of the job on each of the individual devices. The actual status for jobs on each device is stored in a further instance of one Jobs class per device. Each of these instances is linked to a parent Jobs instance and can be considered a “child” of the parent instance. This creates a two-level parent-child relationship that can be extended to further levels. Note that if a job is not run on any device (because the set on which the job is run is empty), the parent Jobs instance is not linked to any child Jobs instance.
個別の装置上のジョブのステータスに対応するJobsインスタンスは、ジョブの実際の出力を記憶しない。代りに、出力は、ジョブログ(JobLogs)オブジェクトの1つまたは複数のインスタンスの中に記憶される。JobLogsの各インスタンスは、ジョブの出力の一部を記憶する。部分的出力を順番に配置するようにこのオブジェクトのシーケンスプロパティを使用することにより、完全な出力を再構成することができる。JobLogsは、標準の誤り出力、標準の出力、およびジョブが実際にエグジットしたときのエグジットステータスを含む3つのタイプの出力を記憶する。JobLogsインスタンスは、ジョブからの出力がコントローラに入る際、作成される。ジョブが装置上で開始しなかったため(その場合、Jobsレコードは誤り指示を含む)、または出力ステータスまたはエグジットステータスが、まだ全く装置から受信されていないため、所与の(子)Jobsレコードに関連するJobLogsが存在しないのが可能であることに留意されたい。 The Jobs instance corresponding to the job status on an individual device does not store the actual output of the job. Instead, the output is stored in one or more instances of a job log (JobLogs) object. Each instance of JobLogs stores a portion of the job output. By using the sequence property of this object to arrange the partial outputs in order, the complete output can be reconstructed. JobLogs stores three types of output including standard error output, standard output, and exit status when the job actually exits. A JobLogs instance is created when output from a job enters the controller. Related to a given (child) Job record because the job did not start on the device (in which case the Jobs record contains an error indication) or no output status or exit status has been received from the device yet Note that it is possible that no JobLogs exist.
図4〜図12から理解されるとおり、付録A、および本発明の以上の説明、アーキテクチャ、構造、およびプロトコルにより、データセンタを管理する際に相当な柔軟性および効率が可能になる。第1の例をいくつかのコンピュータ上にアップグレードまたはパッチをインストールする際に見ることができる。管理者に各コンピュータのところに行かせて(場合により、遠隔式に)、アップグレードパッケージを実行する代りに、本発明のアーキテクチャおよび構造では、管理者は、コントローラのところに行き(場合により、遠隔式に)、コントローラ上に保持されるセットおよびノードリストから目標ノードを選択し、アップグレードを開始することができ、将来は、これを一度に行うことができる可能性がある。アップグレードが開始された後、管理者は、コントローラ上の結果を検査し、どのノードが更新を完了するのに失敗したか(存在する場合)を調べる。これは、アップグレードを行うのに必要とされる労力を相当に低減させ、アップグレードを行った結果の監査可能なログを自動的に保持し、また、(例えば、)アップグレードが、以前には手作業で各コンピュータに入力されなければならなかった特定の処理を必要とする場合、誤りの可能性も抑える。さらに、本発明の態様を使用して、オペレーションをコントローラの中に記憶し、実動システム上で同一のオペレーションを行う前に試験システム上で試験することができる。 As can be seen from FIGS. 4-12, Appendix A and the above description, architecture, structure, and protocol of the present invention allow considerable flexibility and efficiency in managing a data center. A first example can be seen when installing an upgrade or patch on several computers. Instead of having the administrator go to each computer (possibly remotely) and execute the upgrade package, in the architecture and structure of the present invention, the administrator goes to the controller (possibly remote). In formula), the target node can be selected from the set and node list maintained on the controller and the upgrade can begin, and in the future this may be done at once. After the upgrade is initiated, the administrator examines the results on the controller to see which nodes have failed to complete the update (if any). This significantly reduces the effort required to perform the upgrade, automatically maintains an auditable log of the results of the upgrade, and (for example) an upgrade has previously been manual If a specific process that had to be input to each computer is required, the possibility of an error is also reduced. Further, aspects of the present invention can be used to store operations in a controller and test them on a test system before performing the same operations on a production system.
この柔軟性および効率の第2の例を新しいホスティング顧客のために新しいサーバを追加する際に見ることができる。オペレーティングシステムを手作業でインストールし、次に、顧客に合せてコンピュータを構成する代りに、本発明の様々な態様で、管理者は、電源オンになっているが、実際に使用されていないいくつかの利用可能な「予備の」コンピュータを維持することができる。新しい顧客が契約したとき、1組のオペレーションを開始して(自動的または手作業で)、予備のコンピュータの1つを選択し、特定の顧客に合せてそれを構成することができる。また、この構成には、その顧客にサービスを提供するのに必要なあらゆるさらなる装置(スイッチまたは負荷平衡器)を構成することも含まれる。構成ステップは、手作業によってではなく、スクリプトによって行われるため、誤りのリスクが相当に低減される。さらに、構成ステップは、自動的に行われることが可能であり、(例えば、)顧客がデータセンタのWebサイト上で購入要求を完了した後、顧客に合せてシステムを自動的に構成するように、データセンタの管理者がシステムを構成するのを可能にする。 A second example of this flexibility and efficiency can be seen when adding a new server for a new hosting customer. Instead of manually installing the operating system and then configuring the computer for the customer, in various aspects of the present invention, the administrator can turn on a number of power supplies that are turned on but not actually used. You can maintain any available “spare” computers. When a new customer signs up, a set of operations can be initiated (automatically or manually) to select one of the spare computers and configure it for a particular customer. This configuration also includes configuring any additional equipment (switches or load balancers) necessary to service the customer. Since the configuration steps are performed by scripts rather than manually, the risk of errors is significantly reduced. In addition, the configuration step can be performed automatically, such as automatically configuring the system for the customer after the customer completes the purchase request on the data center website (for example). Enables data center managers to configure the system.
第3の例を一群のコンピュータのステータスに関するデータを監視し、収集する際に見ることができる。収集システムを手作業でセットアップすることにより、いくつかのコンピュータからデータを収集しなければならないのではなく、オペレーションをいくつかのコンピュータのそれぞれにおいて自動的に実行することができる。オペレーションは、コントローラに使用情報を定期的に報告することが可能であり、コントローラは、データストアまたは他の適切なメモリなどのストーレッジの中にその情報を記憶する。情報は、どのようにコンピュータがオペレーションしているかを理解するため、サービスにおける障害の理由を調査するため、または別の適切な目的で、管理者が後の時点で分析することができる。 A third example can be seen when monitoring and collecting data regarding the status of a group of computers. By manually setting up the collection system, operations can be performed automatically on each of several computers rather than having to collect data from several computers. The operation can periodically report usage information to the controller, which stores the information in storage, such as a data store or other suitable memory. Information can be analyzed at a later point in time by the administrator to understand how the computer is operating, to investigate the reason for failure in the service, or for another suitable purpose.
図13〜図15を特に参照して本発明のオペレーションの説明に移ると、いくつかのノード上でオペレーションを行うため、ステップ500で表すとおり、目標ノードが、まず選択され、行われるべきオペレーションを含むジョブがそのノードのために作成される。選択は、個別のノード、複数の個々のノード、セット、複数のセット、または以上の任意の組み合わせを選択することを含む可能性がある。行われるべきオペレーションは、スクリプト、2進プログラム、または他のタイプのタスクであることが可能である。開始プロセス304(これは、アプリケーション、Web UI、またはコマンドラインを介するユーザ、またはスクリプトまたは規則の中の自動化されたポリシーであることが可能である)が、選択を行ってオペレーションを選択することに留意されたい。ジョブ404が、選択上のこのオペレーションのためにデータストアの中で作成される。
Turning now to the description of the operation of the present invention with particular reference to FIGS. 13-15, to perform operations on several nodes, as represented by
ジョブは、実行される時点で、ステップ504で表されるとおり、提供される任意の引数で開始される。開始されたとき、ステップ506で、コントローラ202が、タスクに関する情報(例えば、スクリプトの場合、スクリプト自体および任意のパラメータ)を含むメッセージを作成する。次に、このメッセージが、コントローラ202上で、目標ノードに関連付けられる。
When run, the job is started with any provided arguments, as represented by
目標ノードのメッセージおよび表現がコントローラによって使用されてオペレーションが開始され、オペレーションは、一実施形態では、ステップ508で適切なXMLメッセージを作成し、ステップ510でトランスポート層を使用してそのメッセージを目標ノードに送信することによって達せられる。この時点で、コントローラ202上のトランスポート層212には、目標ノードに関する情報、およびそのノードに送信されるべきメッセージが与えられている。制御は、開始プロセス304(コントローラ202上でオペレーションを開始したユーザインターフェース、スクリプト、またはプロセス)に戻されており、開始プロセスは、すべてのノード上でオペレーションが完了するのを待つ必要がないことに留意されたい。これにより、開始プロセス304が、所望どおり複数のオペレーションを開始し、これらのオペレーションの結果を後に収集するのが可能になる。
The message and representation of the target node is used by the controller to initiate the operation, which in one embodiment creates an appropriate XML message at
メッセージは、トランスポート層に渡され、トランスポート層は、例えば、TCP/IPネットワークを介して正しいノードにメッセージが届くのを確実にすることを担う。目標ノードで受け取られたとき、ステップ512で表されるとおり、ジョブが開始する。
The message is passed to the transport layer, which is responsible for ensuring that the message arrives at the correct node, eg via a TCP / IP network. When received at the target node, the job starts as represented by
図14は、一般に、メッセージが受信されるステップ600で開始する、ノード204などのノード上で実行されるジョブを表す。図14では、垂直バーの左側が、ノード上のエージェントプログラムまたはエージェントサービスによって行われる処理を示し、一方、右側が、ノードのオペレーティングシステムによって行われる処理を示している。ノード上で、エージェントのトランスポート層が、メッセージを受信し、解釈のためにエージェントサービス218までメッセージを渡す。一般に、エージェントサービス218は、どのように処理を行うかを決定し、処理を実行し、結果が、トランスポート層を介してコントローラに戻される。
FIG. 14 generally represents a job executed on a node, such as
より詳細には、ステップ602は、メッセージからオペレーションを抽出することを表し、またステップ604は、使用する実行エンジンを決定することを表す。例えば、異なるタイプのスクリプトは、異なる実行エンジンを必要とし、実行の前に2進コードをダウンロードする必要がある。いずれにしても、ステップ606は、決定された実行エンジンにオペレーションおよびメッセージの中で渡されるあらゆる引数を送信することを表し、一方、ステップ608は、オペレーションを実行するオペレーティングシステムを表す。
More particularly,
ステップ610は、収集され、かつ/または別の仕方で記憶されたオペレーションの出力を表し、出力は、簡単な成功または失敗から、オペレーションによって要求されたデータの集合に至るまで、あらゆるものであることが可能である。ステップ612が、メッセージ(例えば、XMLフォーマットにおけるMDMプロトコルの)を作成し、ステップ614が、トランスポート層を介してそのメッセージをコントローラ202に戻す。この方式では、オペレーションのあらゆる結果(スクリプトまたはプログラムからの出力などの)が、メッセージにフォーマットされ、トランスポート層を使用してコントローラに戻される。
Step 610 represents the output of the operation collected and / or otherwise stored, the output being anything from a simple success or failure to the collection of data requested by the operation Is possible. Step 612 creates a message (eg, of the MDM protocol in XML format) and step 614 returns the message to the
図15は、コントローラ202上でオペレーションを開始した開始プロセス304が、各ノード上でオペレーションの結果を判定できるやり方を表す。一般に、ステップ700〜704を介して、コントローラは、オペレーションのレコードを保持する。例えば、ステップ700で、ノードから結果が入って来るにつれ、ステップ702で、オペレーションごとに戻されたメッセージから結果が抽出され、ステップ704で、コントローラ202上のデータストア302(または他の適切なストーレッジ)の中に記憶される。この活動は、各ノードごとにオペレーションの進行中の完全なレコードを提供する。
FIG. 15 illustrates how an initiating
ステップ708〜712を介して表すとおり、必ずしも開始プロセス304ではない管理者またはプロセス(スクリプトなどの)が、コントローラ202からこの情報を問い合わせて、各ノード上のオペレーションの成功を判定し、他のデータを照会し、必要な場合、障害を調査または解決することができる。
As represented through steps 708-712, an administrator or process (such as a script) that is not necessarily the initiating
以上の詳細な説明から理解することができるとおり、データセンタ内などにおけるコンピュータ装置の管理を円滑にする複数装置管理の方法およびシステムが提供される。本方法および本システムは、非常に柔軟性があり、効率的で、複数のコンピュータ装置を管理することに関する費用を相当に削減する。 As can be understood from the foregoing detailed description, a method and system for managing multiple devices that facilitates the management of computer devices within a data center or the like is provided. The method and system are very flexible, efficient, and significantly reduce the costs associated with managing multiple computing devices.
本発明は、様々な変更および代替の構成が可能であるが、本発明のいくつかの例示としての実施形態を図面で示し、以上に詳細に説明してきた。ただし、本発明を開示した特定の形態に限定する意図はなく、反対に、本発明は、本発明の趣旨および範囲の中に入るすべての変更形態、代替構成、および等価形態をカバーするものとする。 While the invention is susceptible to various modifications and alternative constructions, certain illustrated embodiments thereof are shown in the drawings and have been described above in detail. However, it is not intended that the invention be limited to the particular forms disclosed, but on the contrary, the invention covers all modifications, alternative constructions, and equivalents falling within the spirit and scope of the invention. To do.
付録A
1つの通常のMDM(Multiple Device Management)実施形態では、コンピュータプロセスおよびコンピュータ装置を表現するためのCommon Information Model(CIM)標準からスキーマインターフェースを導出することができる。例えば、Microsoft(登録商標)Windows(登録商標)オペレーティングシステム上のそのような実施形態が、WMIスキーマと呼ばれる。本明細書における様々な情報は、そのような適切なスキーマおよびその他の関連データを説明するが、単に例であると考えられたい。
Appendix A
In one common MDM (Multiple Device Management) embodiment, a schema interface can be derived from a Common Information Model (CIM) standard for representing computer processes and computer devices. For example, such an embodiment on a Microsoft® Windows® operating system is referred to as a WMI schema. The various information herein describes such a suitable schema and other relevant data, but should be considered merely as examples.
識別子の定義
セット名
セット名は、セットを一意的に識別する。セット名は、Sets.Nameプロパティの中に記憶され、最大で256のUnicode文字であることが可能である。どの文字も有効であるが、印刷不可能な文字は、推奨されない。名前は、ケースインセンシティブ(case−insensitive)であるが、ケースは、保存される。セット名は、すべてのセット名のなかで固有である必要がある。
Definition of identifier Set name The set name uniquely identifies the set. The set name is Sets. It is stored in the Name property and can be up to 256 Unicode characters. Any character is valid, but unprintable characters are not recommended. The name is case-insensitive, but the case is preserved. The set name must be unique among all set names.
装置名
装置名は、装置を一意的に識別し、装置との通信を行うために装置のIPアドレスを探し出すのに使用される。装置名は、Devices.Nameプロパティの中に記憶される。装置名は、最大で256のUnicode文字であることが可能である。どの文字も有効であるが、印刷不可能な文字は、推奨されない。名前は、ケースインセンシティブであるが、ケースは、保存される。セット名は、すべての装置名の中で固有である必要がある。装置名およびセット名は、JobInvocationsオブジェクトの中の単一のフィールド内に記憶されるため、同数の文字を有することに留意されたい。
Device Name The device name is used to uniquely identify the device and locate the device's IP address to communicate with the device. The device name is Devices. Stored in the Name property. The device name can be up to 256 Unicode characters. Any character is valid, but unprintable characters are not recommended. The name is case insensitive, but the case is preserved. The set name must be unique among all device names. Note that the device name and set name have the same number of characters because they are stored in a single field in the JobInformations object.
ジョブ名
ジョブ名は、ジョブテンプレートを一意的に識別するのに使用され、ジョブ履歴レコードに関する1つの識別情報として使用される。ジョブ名は、JobInvocations.NameプロパティおよびJobs.Nameプロパティの中に記憶される。ジョブ名は、最大で50のUnicode文字であることが可能である。どの文字も有効であるが、印刷不可能な文字は、推奨されない。名前は、ケースインセンシティブであるが、ケースは、保存される。ジョブテンプレート(ジョブ識別子がゼロであるジョブ)に関して、ジョブ名は、固有である必要がある。ただし、ジョブ履歴レコードの中で、場合によっては複数回、同一の名前を使用することも可能である。
Job name The job name is used to uniquely identify the job template, and is used as one piece of identification information regarding the job history record. The job name is JobInformations. Name property and Jobs. Stored in the Name property. The job name can be up to 50 Unicode characters. Any character is valid, but unprintable characters are not recommended. The name is case insensitive, but the case is preserved. For job templates (jobs with a job identifier of zero), the job name needs to be unique. However, the same name can be used multiple times in the job history record depending on circumstances.
装置タイプ名
装置タイプ名は、装置のタイプを識別するのに使用される。装置タイプ名は、Devices.Typeプロパティの中に記憶され、DeviceTypes.Nameプロパティの値において定義される。装置タイプ名は、最大で50のUnicode文字であることが可能である。すべての文字が有効であるが、印刷不可能な文字は、推奨されない。名前は、ケースインセンシティブであるが、ケースは、保存される。装置タイプ名は、DeviceTypesのすべてのインスタンスのなかで固有である必要がある。
Device type name The device type name is used to identify the type of device. The device type name is Devices. Stored in the Type property, and the DeviceTypes. Defined in the value of the Name property. The device type name can be up to 50 Unicode characters. All characters are valid, but unprintable characters are not recommended. The name is case insensitive, but the case is preserved. The device type name must be unique among all instances of DeviceTypes.
記述
記述は、通常、256のUnicode文字である(ただし、特定の値に関しては、個々のオブジェクトの定義を参照すること)。キャリッジリターン(carriage return)および改行文字を含め、どのUnicode文字も有効である。
Description The description is typically 256 Unicode characters (but see the individual object definitions for specific values). Any Unicode character is valid, including carriage return and newline characters.
オブジェクト
各オブジェクトは、プロパティおよびメソッドを含むことが可能であり、また他のオブジェクトとの関連を有することが可能である。一実施形態では、オブジェクト、プロパティ、メソッド、および関連は、WMIを介して露出される。以下に説明するとおり、関連を実施するのに追加の関連クラスが使用される。
Objects Each object can contain properties and methods, and can have associations with other objects. In one embodiment, objects, properties, methods, and associations are exposed via WMI. As described below, additional association classes are used to implement associations.
各オブジェクトの定義は、要約で始まり、その後に以下の形式の定義が続く。 Each object definition begins with a summary, followed by a definition of the form:
クラスを作成することができる条件およびクラスを削除することができる条件を以下に説明し、このクラスが関連するその他のクラスに関する情報も説明している。クラスの各プロパティも、以下の形式でリストする。 The conditions under which a class can be created and the conditions under which a class can be deleted are described below, as well as information about other classes with which this class is associated. Each property of the class is also listed in the following format:
各メソッドは、以下のとおり記述される。 Each method is described as follows.
セット
基本的に、セットは、複数装置管理の構成要素であり、何らかの論理グループ化または物理グループ化に従って装置をグループ化するオブジェクトを含む。SetsオブジェクトとDevicesオブジェクトの間には、1対多関係が存在する。Executeメソッドにより、Setsオブジェクトの各メンバ上でコマンドを実行することができる。
Set Basically, a set is a component of multi-device management and contains objects that group devices according to some logical or physical grouping. There is a one-to-many relationship between the Sets object and the Devices object. The Execute method can execute a command on each member of the Sets object.
Setsクラスのインスタンスは、ユーザ(または他のプロセス)によって作成される。一実施形態では、インスタンスは、決して他のモデルによって自動的に作成されることはない。Setsクラスの新しいインスタンスのために必要な唯一のプロパティは、Nameである。Nameの値は、コントローラ上のSetsのインスタンスのなかで固有である必要がある。Setsクラスのインスタンスは、ユーザ(または他のプロセス)によって削除されることが可能である。インスタンスは、説明する実施形態では、決してオブジェクトモデルによって自動的に削除されることはない。あるインスタンスが削除されるとき、他のインスタンス(削除されるクラスを参照するインスタンスも含め)には、全く変更が行われない。 An instance of the Sets class is created by the user (or other process). In one embodiment, instances are never automatically created by other models. The only property needed for a new instance of the Sets class is Name. The value of Name needs to be unique among the instances of Sets on the controller. An instance of the Sets class can be deleted by the user (or other process). Instances are never automatically deleted by the object model in the described embodiment. When an instance is deleted, other instances (including instances that reference the deleted class) are not changed at all.
Setsのインスタンスは、Devicesのインスタンスに対する関連を有することが可能である。Setsのインスタンスは、セットのメンバであるDevicesの各インスタンスに対する関連を有する。Setsの各インスタンスは、Devicesのゼロ、1つ、または複数のインスタンスに関連していることが可能である。また、Setsのインスタンスは、JobInvocationsのインスタンスに対する関連を有することも可能である。JobInvocationsインスタンスがテンプレートである(JobInvocationsのRootJobIDプロパティがゼロである)場合には、関連は、JobInvocationsインスタンスによって表されるジョブテンプレートが、関連セット上で実行されるべきことを表す。JobInvocationsインスタンスが、履歴レコードである(RootJobIDがゼロではない)場合には、関連は、JobInvocationsの中のジョブが、関連セット上で実行されたという事実を表す。 An instance of Sets can have an association to an instance of Devices. An instance of Sets has an association to each instance of Devices that is a member of the set. Each instance of Sets can be associated with zero, one, or multiple instances of Devices. An instance of Sets can also have an association with an instance of JobInvocations. If the JobInvocations instance is a template (JobInstructions RootJobID property is zero), the association indicates that the job template represented by the JobInvocations instance is to be executed on the association set. If the JobInvocations instance is a history record (RootJobID is not zero), the association represents the fact that the job in JobInvocations was executed on the association set.
セットプロパティ
Name
Set property Name
このプロパティの値は、Renameメソッドを使用して変更することができる。値は、システム上のSetsインスタンスのなかで固有でなければならない。
Description
The value of this property can be changed using the Rename method. The value must be unique among the Sets instances on the system.
Description
これは、セットの自由テキスト記述である。この記述は、NULLつまり空であることが可能であり、更新することができる。 This is a free text description of the set. This description can be NULL or empty and can be updated.
未使用のプロパティ
Captionプロパティ、InstallDateプロパティ、およびStatusプロパティが、親クラスから継承されるが、現行の実施形態では、現在、未使用である。
Unused Properties The Caption property, InstallDate property, and Status property are inherited from the parent class, but are currently unused in the current embodiment.
メソッド
AddDevice
AddDeviceを使用して、セットに制御された装置または制御されない装置を追加する。
Method AddDevice
Use AddDevice to add controlled or uncontrolled devices to the set.
RemoveDevice Remove Device
Rename Rename
Execute Execute
このメソッドは、ジョブが実行されるセットのメンバに対してジョブが実行されるようにする。ジョブは、うまく作成された場合、そのジョブに対してJobInvocationsインスタンスが作成されることを引き起こす。新しいJobInvocationsインスタンスのRootJobIDプロパティの値が、このメソッドの戻り値として戻される。ジョブ実行は、非同期であり、したがって、このメソッドの成功は、ジョブ自体がエージェント上でうまくいくことを意味するのではないことに留意されたい。 This method causes the job to be executed for members of the set where the job is executed. If a job is successfully created, it will cause a JobInformations instance to be created for the job. The value of the RootJobID property of the new JobInvocations instance is returned as the return value of this method. Note that job execution is asynchronous, so the success of this method does not mean that the job itself will work on the agent.
CommandType引数は、CommandフィールドおよびParameterフィールドがどのように解釈されるべきかを指定する。 The CommandType argument specifies how the Command and Parameter fields are to be interpreted.
これは、新しいJobInvocationsインスタンスのCommandプロパティに書き込まれる。Prameters引数フィールドの値は、CommandTypeが3である場合、暗黙に無視される。Description引数の最大長は、256のUnicode文字である。これは、新しいJobInvocationsインスタンスのDescriptionプロパティの中に記憶される。これは、セットが空であることに関する誤りではない。この場合、JobInvocationsインスタンスは、親Jobsインスタンスとともに通常どおり作成される。ただし、子Jobsインスタンスは存在しない。オブジェクトモデルのユーザは、この状況に備えていなければならない。 This is written to the Command property of the new JobInformations instance. The value of the Parameters argument field is silently ignored if CommandType is 3. The maximum length of the Description argument is 256 Unicode characters. This is stored in the Description property of the new JobInformations instance. This is not an error about the set being empty. In this case, the JobInformations instance is created as usual with the parent Jobs instance. However, there is no child Jobs instance. The user of the object model must be prepared for this situation.
特別コマンド
CommandTypeが3である場合には、Command引数は、以下の値のどれかを含む。
If the special command CommandType is 3, the Command argument contains one of the following values:
テキストは、ケースインセンシティブである(つまり、例えば、「Reboot」、「REBOOT」、および「reboot」はすべて、サーバをリブートさせる)。Command引数の値が、以上のどれかではない場合、メソッドは、誤りを戻す。 The text is case insensitive (ie, “Reboot”, “REBOOT”, and “reboot” all cause the server to reboot). If the value of the Command argument is not one of the above, the method returns an error.
Devices
Devicesは、セットのメンバである。セットは、装置のグループである。Devicesは、例えば、通常、サーバ機器である物理コンピュータシステムを表す。複数装置管理では、1つの目標は、複数のマシンに対して同時に管理を行うことである。それでも、装置オブジェクトでコマンドも実行することができる。
Devices
Devices is a member of the set. A set is a group of devices. Devices represents, for example, a physical computer system that is typically a server device. In multi-device management, one goal is to manage multiple machines simultaneously. Nevertheless, commands can also be executed on device objects.
作成
Devicesのインスタンスは、ユーザまたは他のプロセスの要求時に作成されること、またはエージェントからの自動検出パケットの受領に基づき、コントローラによって自動的に作成されることが可能である。Devicesクラスのインスタンスは、ユーザによって手作業で、または他のプロセスによって作成されることが可能である。新しいインスタンスは、少なくとも、Nameプロパティに対する値を必要とし、この値は、システム上のDevicesクラスの別のインスタンスのNameとして既存であることはできない。Nameプロパティの値は、装置自体の上の管理インターフェースのIPアドレスにまで、コントローラ上で解決されることが可能な名前である必要がある。通常、この解決は、DNSサーバを使用して行われる。
Creation An instance of Devices can be created at the request of a user or other process, or can be created automatically by the controller based on receipt of an auto-detection packet from an agent. Instances of the Devices class can be created manually by the user or by other processes. The new instance requires at least a value for the Name property, and this value cannot exist as the Name of another instance of the Devices class on the system. The value of the Name property needs to be a name that can be resolved on the controller up to the IP address of the management interface on the device itself. This resolution is usually done using a DNS server.
新しいインスタンスは、1つまたは複数のMACアドレスに関連していることが可能であり、また各MACアドレスは、1つまたは複数のIPアドレスに関連していることが可能である。これは、Devicesクラスの新しいインスタンスをDeviceHWAddrsのインスタンスに関連付け、またDeviceHWAddrsをDeviceHWIPAddrsに関連付けることによって示される。ただし、マシンと通信を行うには、名前だけがあればよい。コントローラは、DNSを使用して名前をIPアドレスにまで解決する。MACおよびIPは、通信には使用されず、基本的に、コントローラ上の情報としてだけ使用される。インスタンスが作成された際、コントローラは、要求をエージェントに送り、IPアドレスおよびMACアドレスを含むノード情報を獲得する。手作業で作成されたすべてのDevicesインスタンスに関して、LastDiscoveryTimeは、NULLである。いつか後の時点で、このDevicesインスタンスにマッチする自動検出パケットが受領された場合、このフィールドは、パケットが受領された時刻で更新される。 A new instance can be associated with one or more MAC addresses, and each MAC address can be associated with one or more IP addresses. This is indicated by associating a new instance of the Devices class with an instance of DeviceHWAddrs and associating DeviceHWAddrs with DeviceHWIPAddrs. However, to communicate with the machine, only the name is required. The controller uses DNS to resolve names to IP addresses. MAC and IP are not used for communication, but are basically used only as information on the controller. When the instance is created, the controller sends a request to the agent to obtain node information including the IP address and MAC address. For all Devices instances created manually, LastDiscoveryTime is NULL. If at some later time an auto-detect packet matching this Devices instance is received, this field is updated with the time the packet was received.
別法では、SMBIOS GUIDをコントローラの中に記憶し、装置を一意的に識別するのに使用することができる。これは、オブジェクトモデルに全く変更を加えずに行うことができる。というのは、SMBIOS GUIDは、新しい装置タイプ(SMBIOS GUIDを表すDeviceTypesにリンクされたDeviceHWAddrsの中の)として記憶することができるからである。 Alternatively, the SMBIOS GUID can be stored in the controller and used to uniquely identify the device. This can be done without any changes to the object model. This is because the SMBIOS GUID can be stored as a new device type (in DeviceHWAddrs linked to DeviceTypes representing the SMBIOS GUID).
削除
Devicesクラスのインスタンスは、ユーザまたは他のプロセスによって削除されることが可能である。インスタンスは、Controller.RefreshDeviceList()メソッドが呼び出された場合、システムによって削除されることが可能である。Devicesのインスタンスが削除されるとき、当該の装置を参照するDeviceHWAddrsのあらゆるインスタンスも削除される(これは、リンクされたDeviceHWIPAddrsの削除も引き起こす可能性がある)。
Delete An instance of the Devices class can be deleted by a user or other process. The instance is Controller. If the RefreshDeviceList () method is called, it can be deleted by the system. When an instance of Devices is deleted, any instance of DeviceHWAddrs that references the device is also deleted (this may also cause the deletion of linked DeviceHWIPAddrs).
関連
Devicesのインスタンスは、以下のクラスに対する関連を有することが可能である。
Associations Instances of Devices can have associations to the following classes:
・Setsのインスタンスに対して
Devicesのインスタンスは、自らがメンバであるSetsの各インスタンスに対する関連を有する。Devicesの各インスタンスは、Setsのゼロ、1つ、または複数のインスタンスに関連していることが可能である。
For Sets instance A Devices instance has an association to each instance of Set that it is a member of. Each instance of Devices can be associated with zero, one, or multiple instances of Sets.
・JobInvocationsのインスタンスに対して
Devicesのインスタンスは、JobInvocationsに対する関連を有する。JobInvocationsのインスタンスが、テンプレートである(JobInvocationsのRootJobIDがゼロである)場合には、関連は、JobInvocationsのインスタンスによって表されるジョブテンプレートが、関連装置上で実行されるべきことを表す。JobInvocationsのインスタンスが履歴レコードである(RootJobIDがゼロでない)場合には、関連は、JobInvocationsの中のジョブが、関連装置上で実行されたことを表す。
• For instances of JobInvocations An instance of Devices has an association to JobInvocations. If the JobInvocations instance is a template (JobInvocations RootJobID is zero), the association indicates that the job template represented by the JobInvocations instance is to be executed on the associated device. If the JobInvocations instance is a history record (RootJobID is not zero), the association indicates that the job in JobInvocations has been executed on the associated device.
・Jobsのインスタンスに対する
Deviceのインスタンスは、その装置上で実行される各ジョブの親ジョブを表すJobsのインスタンスに対する関連を有する。
A Device instance for a Job instance has an association to a Job instance that represents the parent job of each job executed on that device.
・DeviceHWAddrsのインスタンスに対する
Deviceのインスタンスは、コントローラが知識を有する装置上の各ハードウェアアドレスごとのDeviceHWAddrsのインスタンスに対する関連を有する。現行のバージョンでは、コントローラ上に記憶されたハードウェアアドレスは、NICカードのMACアドレスだけである。
A Device instance to a DeviceHWAddrs instance has an association to a DeviceHWAddrs instance for each hardware address on the device that the controller has knowledge of. In the current version, the only hardware address stored on the controller is the NIC card MAC address.
・DeviceTypesの単一のインスタンスに対する
Devicesのインスタンスは、装置タイプを与えるDeviceTypesのインスタンスに対する関連を有する。現行のバージョンでは、単一の装置タイプだけがサポートされ、したがって、すべてのDevicesのインスタンスは、DeviceTypesの単一のインスタンスに関連する。
A Device instance for a single instance of DeviceTypes has an association to an instance of DeviceTypes that gives the device type. In the current version, only a single device type is supported, so every instance of Devices is associated with a single instance of DeviceTypes.
プロパティ
Name
これは、親クラスから継承される。
Property Name
This is inherited from the parent class.
このプロパティの値は、Renameメソッドを使用して変更することができる。 The value of this property can be changed using the Rename method.
Alive Alive
装置が制御されていない場合、このプロパティは、常に偽である。それ以外の場合、このプロパティは、装置が制御されるようになったとき、装置からハートビート(heartbeat)が受け取られるたびに毎回、真に設定される(現在、偽に設定されている場合)。ハートビート期間は、コントローラに関するグローバルな設定である。エージェントは、ハートビート期間のたびに毎回、ハートビートパケットを送らなければならない。コントローラは、ハートビート期間の1.5倍の期間中に装置からハートビートを受け取らなかった場合、このプロパティを偽に設定する。使用されるハートビート期間は、コントローラ上で現在、設定されている期間である。この期間は、装置のハートビート期間とは異なる可能性がある。 If the device is not controlled, this property is always false. Otherwise, this property is set to true each time a heartbeat is received from the device when the device becomes controlled (if it is currently set to false). . The heartbeat period is a global setting for the controller. The agent must send a heartbeat packet every time the heartbeat period. If the controller does not receive a heartbeat from the device for 1.5 times the heartbeat period, it sets this property to false. The heartbeat period used is a period currently set on the controller. This period may be different from the device heartbeat period.
Controlled Controlled
このプロパティの値は、Manageメソッドを使用して装置の制御を開始する、または終了することによって設定される。 The value of this property is set by starting or ending control of the device using the Manage method.
HeartBeatTime HeartbeatTime
装置が制御されていない、または制御されなくなった場合、これはNULLである。それ以外の場合、装置が制御されるようになったとき、これは、装置が制御されるようになった時刻に設定される。装置が制御されている間、これは、装置から最新のハートビートが受領された時刻に設定される。 This is NULL if the device is not controlled or becomes uncontrolled. Otherwise, when the device comes to be controlled, this is set to the time when the device came to be controlled. While the device is in control, this is set to the time when the latest heartbeat was received from the device.
AlertStatus AlertStatus
装置が制御されていない、または制御されなくなった場合、これは、常にUnavailableに設定される。それ以外の場合、装置が制御されるようになったとき、これは、Status not Knownに初期設定される。EnableAlerts()に対するコールが行われた後、これは、Unavailable、Enabled、またはDisabledであることが可能なエージェントから戻された値に設定される。 If the device is not controlled or is no longer controlled, it is always set to Unavailable. Otherwise, when the device becomes controlled, it is initialized to Status not Known. After a call to EnableAlerts () is made, this is set to the value returned from the agent that can be Enabled, Enabled, or Disabled.
Type Type
Description Description
LastDiscoveryTime LastDiscoveryTime
このDevicesのインスタンスにマッチする自動検出パケットが受領されるたびに毎回、その日付が現在の日付に更新される。これを使用して今までにネットワーク上になかった手作業で入力されたレコードを識別することができる。 Each time an auto-detect packet is received that matches this Device instance, the date is updated to the current date. This can be used to identify manually entered records that were not previously on the network.
以下のプロパティは、親クラスから継承されるが、現在、未使用である。Caption、CreationClassName、InitialLoadInfo、InstallDate、LastLoadInfo、NameFormat PowerManagementSupported、PowerManagementCapabilities、PowerState、PrimaryOwnerContact、PrimaryOwnerName、ResetCapability、Roles、Status、およびTime。 The following properties are inherited from the parent class but are currently unused. Caption, CreationClassName, InitialLoadInfo, InstallDate, LastLoadInfo, NameFormat PowerManagementCapitalCapabilities, PowerRightCapabilities, PowerRightCapabilities, PowerRatio
メソッド
EnableAlerts
Method EnableAlerts
この呼出しは、同期である。警報が装置上でイネーブルにされる場合、装置は、現在の警報を戻す。警報がディセーブルにされている場合、コントローラは、この装置に関する警報の詳細を削除する。 This call is synchronous. If the alarm is enabled on the device, the device returns the current alarm. If the alarm is disabled, the controller deletes the alarm details for this device.
RecoverManageDevice RecoverManagerDevice
装置上の構成が破壊されているとユーザが考える場合、このメソッドを呼び出すことができる。コントローラは、以下の情報を装置に送る。 This method can be called if the user thinks that the configuration on the device has been destroyed. The controller sends the following information to the device:
・装置情報の要求
・この装置を管理する制御要求
・現行のハートビート構成情報(ハートビート間隔)
・この装置に関する現行の警報ステータス(イネーブルにされている、またはイネーブルにされていない)
この呼出しは、以上のすべてが処理された後、戻り、したがって、多少の時間がかかる可能性がある。
-Request for device information-Control request to manage this device-Current heartbeat configuration information (heartbeat interval)
Current alarm status for this device (enabled or not enabled)
This call returns after all the above has been processed and may therefore take some time.
Manage Manage
これは、装置に関する制御の状態を変更し、変更が完了したときに戻る。ControlFlagの値は、装置に対して行うオペレーションを指定する。 This changes the state of control for the device and returns when the change is complete. The value of ControlFlag specifies the operation to be performed on the device.
プロトコルバージョンの誤りのために装置を制御しようとする試みが失敗した場合、Errorが戻される。 If an attempt to control the device fails due to an incorrect protocol version, Error is returned.
Execute Execute
SetPowerStateメソッドは、親クラスから継承されるが、本実施形態では、現在、未使用である。 The SetPowerState method is inherited from the parent class, but is currently unused in this embodiment.
DeviceTypes
一実施形態では、装置は、同一の装置タイプ、「Microsoft Server Appliance」を報告する。
DeviceTypes
In one embodiment, the device reports the same device type, “Microsoft Server Appliance”.
DeviceTypesのインスタンスは、手作業で、または自動的に作成されることが可能である。手作業で作成されるとき、Nameは、既存のDeviceTypesインスタンス全体のなかで固有である必要がある。手作業による作成は、自動検出が機能しないネットワーク上で利用することができる。 Instances of DeviceTypes can be created manually or automatically. When manually created, the Name needs to be unique among the entire existing DeviceTypes instance. Manual creation can be used on networks where automatic detection does not work.
DeviceTypesのインスタンスは、着信する自動検出パケットに基づき、またはDevicesのインスタンスの作成に基づいて自動的に作成されることが可能である。DevicesTypesのインスタンスが作成される別ののやり方は、Devicesのインスタンスの作成に基づく。各Devicesインスタンスは、DeviceTypeのストリングを含む。上記のストリングに対応するDeviceTypesのインスタンスが存在しない場合、そのNameとして上記のストリングを有し、ブランク(blank)のDescriptionを有するDeviceTypesの新しいインスタンスが作成される。 An instance of DeviceTypes can be created automatically based on incoming auto-discovery packets or based on the creation of an instance of Devices. Another way in which an instance of DevicesTypes is created is based on the creation of an instance of Devices. Each Devices instance includes a DeviceType string. If an instance of DeviceTypes corresponding to the above string does not exist, a new instance of DeviceTypes is created that has the above string as its Name and a Blank Description.
削除
DeviceTypesのインスタンスは、削除することができるが、削除することができるのは、削除されるインスタンスと同一タイプのストリングを有するDevicesのインスタンスが全く存在しない場合だけである。この理由の削除が失敗した場合、WMI DeleteInstanceメソッドは、誤りWBEM_E_FAILEDを伴って戻らなければならない。
Deleted DeviceTypes instances can be deleted, but can only be deleted if there are no instances of Devices with the same type of string as the deleted instance. If deletion of this reason fails, the WMI DeleteInstance method must return with the error WBEM_E_FAILED.
関連
DeviceTypesのインスタンスは、同一タイプのDevicesの各インスタンスに関連している。
Associated An instance of DeviceTypes is associated with each instance of the same type of Devices.
プロパティ
Name
Property Name
デバイスタイプの名前は、変更することができない。 The device type name cannot be changed.
Description Description
Captionプロパティ、InstallDateプロパティ、およびStatusプロパティが、親クラスから継承されるが、現行の実施形態では、現在、未使用である。このオプションに関するメソッドは存在しない。 The Caption, InstallDate, and Status properties are inherited from the parent class, but are currently unused in the current embodiment. There is no method for this option.
HWADDRTYPES
すべての装置は、通常、多数の個々に識別可能なハードウェア部分を含む。各ハードウェア部分は、アドレス、つまり固有識別子を含むことが可能である。
HWADDRTYPES
All devices typically include a number of individually identifiable hardware parts. Each hardware part can contain an address, ie a unique identifier.
1つのバージョンでは、内部で使用されるアドレスタイプは、「MAC」だけである。これは、装置のMACアドレスを記憶するのに使用される。HWAddrTypesのインスタンスは、手作業で、または自動的に作成されることが可能である。インスタンスは、Typeプロパティ値が、既存のHWAddrTypesインスタンスのNameプロパティにマッチしないときにDeviceHWAddrsのインスタンスが作成される場合、自動的に作成される。この場合、HWAddrTypesの新しいインスタンスは、DeviceHWAddrs Typeプロパティの中の値と同じ値を有するNameプロパティを伴って作成され、Descriptionプロパティは、ブランクになる。 In one version, the only address type used internally is “MAC”. This is used to store the device's MAC address. An instance of HWAddrTypes can be created manually or automatically. An instance is automatically created if an instance of DeviceHWAddrs is created when the Type property value does not match the Name property of an existing HWAddrTypes instance. In this case, a new instance of HWAddrTypes is created with a Name property that has the same value as the value in the DeviceHWAddrs Type property, and the Description property is blank.
削除
HWAddrTypesのインスタンスは、削除することができる。削除は、Devicesのインスタンスのどれかが、削除されるインスタンス上のNameプロパティと同じTypeプロパティを含む場合、失敗する。
Delete An instance of HWAAddrTypes can be deleted. Deletion fails if any instance of Devices contains the same Type property as the Name property on the deleted instance.
関連
HWAddrTypesのインスタンスは、このタイプのハードウェアに関するハードウェアアドレス情報を含むDeviceHWAddrsのすべてのインスタンスに関連している。
The associated HWAddrTypes instance is associated with all instances of DeviceHWAddrs that contain hardware address information for this type of hardware.
プロパティ
Name
Property Name
Description Description
Captionプロパティ、InstallDateプロパティ、およびStatusプロパティが、親クラスから継承されるが、現行の実施形態では、現在、未使用である。このオブジェクトに関するメソッドは存在しない。 The Caption, InstallDate, and Status properties are inherited from the parent class, but are currently unused in the current embodiment. There are no methods on this object.
DEVICEHWADDRS
装置ハードウェアアドレスは、NICなどのハードウェア部品を一意的に識別する。
DEVICEHWADDRS
The device hardware address uniquely identifies a hardware component such as a NIC.
1つの現行の実施形態では、内部で使用されるハードウェアアドレスのタイプは、「MAC」だけである。これは、装置のMACアドレスを記憶するのに使用される。DeviceHWAddrsのインスタンスは、自動的に、または手作業で作成されることが可能である。自動作成は、受領された自動検出パケットに基づいて行われる。パケットが、ハードウェアアドレス(タイプおよびアドレスを含む)を含む場合には、そのハードウェアアドレスに対してDeviceHWAddrsの新しいインスタンスが作成される(これには、HWAddrTypesのインスタンスの作成も伴う可能性がある)。 In one current embodiment, the only hardware address type used internally is “MAC”. This is used to store the device's MAC address. An instance of DeviceHWAddrs can be created automatically or manually. The automatic creation is performed based on the received automatic detection packet. If the packet contains a hardware address (including type and address), a new instance of DeviceHWAddrs will be created for that hardware address (this may also involve creating an instance of HWAddrTypes) ).
削除
DeviceHWAddrsのインスタンスは、削除することができる。また、インスタンスは、対応するDeviceインスタンスが削除されたとき、自動的に削除される。
Delete An instance of DeviceHWAddrs can be deleted. Also, the instance is automatically deleted when the corresponding Device instance is deleted.
関連
・Devicesの単一のインスタンスに対して
DeviceHWAddrsのインスタンスが、ハードウェアアドレスを含むDevicesのインスタンスに関連している。
Association For a single instance of Devices An instance of DeviceHWAddrs is associated with an instance of Devices that contains a hardware address.
・HWAddrTypesの単一のインスタンスに対して
DeviceHWAddrsのインスタンスが、このDeviceHWAddrsインスタンスの中に記憶されたハードウェアアドレスのタイプを定義するHWAddrTypesのインスタンスに関連している。
For a single instance of HWAddrTypes An instance of DeviceHWAddrs is associated with an instance of HWAddrTypes that defines the type of hardware address stored in this DeviceHWAddrs instance.
・DeviceHWIPAddrsのインスタンスに対して
DeviceHWAddrsのインスタンスが、DeviceHWAddrsのこのインスタンスに関連する各IPアドレスごとにDeviceHWIPAddrsのゼロまたはいくつかのインスタンスに関連している。この関連は、NICハードウェアのアドレスを含むDeviceHWAddrsのためにだけ使用される。
For an instance of DeviceHWIPAddrs An instance of DeviceHWAddrs is associated with zero or several instances of DeviceHWIPAddrs for each IP address associated with this instance of DeviceHWAddrs. This association is only used for DeviceHWAAddrs that contain the address of the NIC hardware.
プロパティ
HWAddr
Property HWAAddr
DeviceName DeviceName
Type Type
未使用のプロパティ
Captionプロパティ、InstallDateプロパティ、NameおよびStatusプロパティが、親クラスから継承されるが、現行の実施形態では、現在、未使用である。このオブジェクトに関するメソッドは存在しない。
Unused Properties The Caption property, InstallDate property, Name, and Status properties are inherited from the parent class, but are currently unused in the current embodiment. There are no methods on this object.
DEVICEHWIPADDRS
このオブジェクトは、現在、使用されない。
DEVICEHWIPADDRS
This object is not currently used.
JOBINVOCATIONS
2つのカテゴリのJobs Invocationsが存在する。第1のカテゴリは、テンプレートである。ゼロに等しいRootJobIDを有するJobs Invocationsが存在する。つまり、これらは、単にテンプレートであり、特定の実行に関連していない。第2のカテゴリのJobs Invocationsは履歴である。つまり、これらは、ジョブ呼出しの履歴レコードである。
JOBINVOCATIONS
There are two categories of Job Innovations. The first category is a template. There are Job Invocations with a RootJobID equal to zero. That is, they are simply templates and are not related to a specific execution. The second category of Jobs Informations is history. That is, these are job call history records.
JobInvocationsのインスタンスは、手作業で、または自動的に作成されることが可能である。ジョブテンプレートは、手作業で作成され、一方、Job履歴レコードは、自動的に作成される。JobInvocationsのインスタンスは、ユーザによって手作業で(または他のプロセスによって)作成されることが可能である。ジョブテンプレートだけを作成することができ(定義により、RootJobIDがゼロであるJobInvocationsのインスタンス)、ゼロ以外のRootJobIDを有するJobInvocationsインスタンスを作成しようと試みるのは誤りである。JobInvocationsの手作業で作成されたインスタンスは、その書込み可能なプロパティのどれも、後に変更することができる。 Instances of JobInvocations can be created manually or automatically. Job templates are created manually, while job history records are created automatically. Instances of JobInvocations can be created manually (or by other processes) by the user. Only a job template can be created (by definition, an instance of JobInvocations with a RootJobID of zero), and it is an error to attempt to create a JobInvocations instance with a non-zero RootJobID. An instance created manually by JobInformations can later change any of its writable properties.
自動作成(ジョブ履歴)
ジョブが実行されたとき(Devices.ExecuteまたはSets.Executeを使用して)、JobInvocationsのインスタンスが作成される。これには、RootJobIDの新しい固有の値(ゼロではない)が与えられる。新しいインスタンスのプロパティ、Name、Command、Parameters、およびDescriptionが、ジョブを作成したDevices.ExecuteメソッドまたはSets.Executeメソッドに対するJobInvocationName引数、Command引数、Parameters引数、およびDescription引数の値でポピュレートされる。プロパティTargetNameおよびTargetTypeは、ジョブが実行されているセットまたは装置の名前、およびセットまたは装置のタイプで埋められる。自動的に作成されたJobInvocationsインスタンスのプロパティは、変更することができない。WMIの中で、JobInvocationsインスタンスのプロパティを変更しようと試みることにより、PutInstance(Put_from script)メソッドがWBEM_E_FAILED(scriptOnlyからのWbemErrFailedを戻すことが引き起こされ、ジョブテンプレート(RootJobIDがゼロであるインスタンス)とジョブ履歴(RootJobIDがゼロではない場合)の両方を削除することができる。ジョブ履歴が削除された場合、すべての関連するJobsインスタンスおよびJobLogsインスタンスも削除される。これは、WMIの中で実施される。
Automatic creation (job history)
When a job is executed (using Devices.Execute or Sets.Execute), an instance of JobInvocations is created. This is given a new unique value (not zero) for RootJobID. The properties of the new instance, Name, Command, Parameters, and Description are the Devices. Execute method or Sets. Populated with the values of JobInvocationName, Command, Parameters, and Description arguments for the Execute method. The properties TargetName and TargetType are filled with the name of the set or device on which the job is running, and the type of set or device. The properties of automatically created JobInformations instances cannot be changed. Attempting to change the properties of a JobInvocations instance in WMI causes the PutInstance (Put_from script) method to return WBEM_E_FAILED (WbemErrFailed from scriptOnly) and the job template (RootJob ID and history job ID is zero) (If the RootJobID is not zero) can be deleted, and if the job history is deleted, all related Jobs instances and JobLogs instances are also deleted, which is implemented in WMI.
関連
・Devicesの単一のインスタンスに対して
JobInvocationsのインスタンスは、ジョブテンプレートがその装置上で実行されるように定義されている場合、またはジョブ履歴がその装置上で実行された場合、Devicesのインスタンスに関連している。この関連は、TargetTypeの値がDevicesである場合にだけ存在し、そうである場合、関連は、TargetNameプロパティの中で与えられているのと同じ名前を有するDevicesインスタンスに対するものである。
Related • For a single instance of Devices An instance of JobInvocations is an instance of Devices if the job template is defined to run on that device, or if the job history is run on that device. Is related to. This association exists only if the value of TargetType is Devices, and if so, the association is for a Devices instance that has the same name as given in the TargetName property.
・Setsの単一のインスタンスに対して
JobInvocationsのインスタンスは、ジョブテンプレートがそのセット上で実行されるように定義されている場合、またはジョブ履歴がそのセット上で実行された場合、Setsのインスタンスに関連している。この関連は、TargetTypeの値がSetsである場合にだけ存在し、そうである場合、関連は、TargetNameプロパティの中で与えられているのと同じ名前を有するSetsインスタンスに対するものである。
For a single instance of Sets An instance of JobInvocations is set to an instance of Sets if a job template is defined to run on that set, or if job history is run on that set. Related. This association exists only if the value of TargetType is Sets, and if so, the association is for a Sets instance that has the same name as given in the TargetName property.
・Jobsの単一のインスタンスに対して
JobInvocationsのインスタンスは、JobInvocationsによって表されるジョブを実行した結果を与えるJobsのインスタンスに関連している。この関連は、JobInvocationsインスタンスが履歴レコードである(つまり、RootJobIDがゼロではない)場合にだけ存在する。
For a single instance of Job An instance of JobInstructions is associated with an instance of Job that gives the result of executing the job represented by JobInvocations. This association exists only when the JobInformations instance is a history record (ie, the RootJobID is not zero).
プロパティ
RootJobID
Property RootJobID
ルートジョブ固有識別子。これは、任意の64ビットの値であることが可能である。この値は、ゼロである場合、このJobInvocationsインスタンスが、前に実行されたジョブに関する履歴レコードではなく、テンプレートであることを示す。この値がゼロ以外である場合には、このインスタンスは、履歴レコードである。 Root job unique identifier. This can be any 64-bit value. If this value is zero, it indicates that this JobInformations instance is a template, not a history record for a previously executed job. If this value is non-zero, this instance is a history record.
Name Name
これは、Devices.ExecuteまたはSets.ExecuteにJobInvocationName引数として渡されたジョブの名前を記憶する。 This is because of Devices. Execute or Sets. Stores the name of the job passed to Execute as a JobInvocationName argument.
TargetName TargetName
ジョブがそこで実行されたターゲット名、DevicesまたはSets
TargetType
The target name, Devices or Sets where the job was run
TargetType
Command Command
ターゲット上で呼び出されるコマンド。 The command that is called on the target.
Parameters Parameters
呼び出されるコマンドに対するパラメータ
Description
Parameter Description for the command to be called
未使用のプロパティ
以下のプロパティが親クラスから継承されるが、現在、未使用である。Caption、ElapseTime、InstallDate、Notify、Owner、Priority、StartTime、Status、TimeSubmitted、UntilTime。
Unused properties The following properties are inherited from the parent class, but are currently unused. Caption, ElapseTime, InstallDate, Notify, Owner, Priority, StartTime, Status, TimeSubmitted, UntilTime.
メソッド
Rename
Method Rename
JOBS
Jobsオブジェクトは、Job Invocationのトポロジをキャプチャする。例えば、ユーザが、セットオブジェクトを有し、そのセット上でExecuteを呼び出した場合には、Root Jobとして作成された1つのJobs Objectが存在し、またセットの各装置ごとに作成されたJobsオブジェクトも存在する。Root Jobsオブジェクトは、Jobsのトポロジ構造に対するエントリとして使用される。一実施形態では、親子関係だけが使用されるが、モデルは、深さNのツリーとしてインスタンス化することができる。
JOBS
The Jobs object captures the Job Innovation topology. For example, if a user has a set object and invokes Execute on that set, there will be one Job Object created as a Root Job, and there will also be a Jobs object created for each device in the set. Exists. The Root Jobs object is used as an entry for the Jobs topology structure. In one embodiment, only parent-child relationships are used, but the model can be instantiated as a tree of depth N.
Jobsは、ジョブが開始されたとき、システムによって自動的に作成される(例えば、メソッドSets.ExecuteまたはDevices.Executeにより)。
Jobsのインスタンスは、更新することができない。親ジョブを表すJobsのインスタンスが削除された場合、以下もまた、削除される。
Jobs are automatically created by the system when a job is started (eg, by the method Sets.Execute or Devices.Execute).
An instance of Jobs cannot be updated. If a job instance representing a parent job is deleted, the following are also deleted:
・関連するJobInvocationsインスタンス
・Jobsインスタンスに関連するJobsの子インスタンス
・子Jobインスタンスのそれぞれに関連するJobLogsインスタンス
これは、ジョブ呼出しのレコード、各装置上のジョブのステータス、および各装置上のジョブの結果を削除する。
現在、進行中のジョブを削除することが可能である。これが行われた場合、コントローラから受け取られたジョブからのさらなる出力は、全く記憶されず、誤りが全く報告されない。
The related JobInvocations instance The child instance of Jobs related to the Jobs instance The JobLogs instance related to each of the child Job instances This is the record of the job invocation, the status of the job on each device, and the result of the job on each device Is deleted.
It is possible to delete a job that is currently in progress. If this is done, no further output from the job received from the controller is stored at all and no errors are reported.
関連
・JobInvocationsの単一のインスタンスに対して
Jobsのインスタンスは、ジョブを表すJobInvocationsのインスタンスに関連している。
Association • For a single instance of JobInvocations An instance of Jobs is associated with an instance of JobInvocations that represents a job.
・JobLogsのインスタンスに対して
Jobsのインスタンスは、特定の装置上におけるこのジョブの実行からの出力を含むJobLogsのインスタンスに関連する。この関連は、Jobsのインスタンスが、親インスタンスではなく単一の装置を表す場合にだけ存在する。
For an instance of JobLogs An instance of Jobs is associated with an instance of JobLogs that contains the output from the execution of this job on a particular device. This association exists only when an instance of Job represents a single device, not a parent instance.
・Jobsのインスタンスに対して
Jobsのインスタンスは、親Jobsインスタンスの子プロセスを表す親Jobsのインスタンスに関連している。現行のバージョンでは、親が、複数の装置上で実行されるジョブを表し、子が、個々の装置からの結果を表す1つのレベルの親−子関係だけがサポートされている。
For a job instance A job instance is associated with a parent job instance that represents a child process of the parent job instance. In the current version, only one level of parent-child relationships is supported, where the parent represents a job that runs on multiple devices and the children represent results from individual devices.
・Devicesの単一のインスタンスに対して
Jobsのインスタンスは、Jobsインスタンスが、単一の装置上でジョブを実行した結果を保持する場合、Devicesのインスタンスに関連している。この関連は、ジョブが実行されている装置を与える。
For a single instance of Devices An instance of Jobs is related to an instance of Devices if the Jobs instance holds the results of running a job on a single device. This association gives the device on which the job is running.
プロパティ
JobID
Property JobID
ParentJobID ParentJobID
DeviceName DeviceName
StartTime StartTime
EndTime EndTime
JobStatus
JobStatus
Sets.ExecuteメソッドまたはDevices.Executeメソッドが戻ったとき、ステータスの値は、2、3、または11のうちの1つである。どの装置上でもジョブを開始できない場合、ステータスは、2に設定される。装置のいくつかでジョブを開始できない場合、ステータスは、11に設定される。それ以外の場合、ジョブは、すべての装置上で開始されており、ステータスは、3に設定される。 Sets. Execute method or Devices. When the Execute method returns, the status value is one of 2, 3, or 11. If the job cannot be started on any device, the status is set to 2. If some of the devices cannot start the job, the status is set to 11. Otherwise, the job has been started on all devices and the status is set to 3.
Executeメソッドが戻った後、呼出し元は、親Jobsインスタンスに関するステータスの値をポーリングすることができる。ジョブが、少なくとも1つの装置上でまだ実行されている場合、ステータスは、3または11である。ジョブが、すべての装置上で終了した場合、ステータスは、0または1である。どの装置上でもジョブが全く開始しなかった場合、ステータスは、2である。 After the Execute method returns, the caller can poll the status value for the parent Jobs instance. The status is 3 or 11 if the job is still running on at least one device. If the job is completed on all devices, the status is 0 or 1. The status is 2 if no job has started on any device.
子ジョブに関して、有効な値は、0および3ないし10である。値は、子Jobsオブジェクトが作成されたとき、3に初期設定される。ジョブ実行中に誤りが生じた場合、JobStatusが、5または7ないし10のどれかに更新される。ジョブが、装置にうまく伝送された場合、JobStatusは、4に設定される。
Jobs.Stopを呼び出すユーザによってジョブが停止された場合、JobStatusは、6に設定される。ジョブがうまく完了した場合、JobStatusは、0に設定される。
Valid values for child jobs are 0 and 3-10. The value is initialized to 3 when a child Jobs object is created. If an error occurs during job execution, JobStatus is updated to either 5 or 7-10. If the job is successfully transmitted to the device, JobStatus is set to 4.
Jobs. JobStatus is set to 6 when the job is stopped by the user calling Stop. If the job completes successfully, JobStatus is set to zero.
以下のプロパティが親クラスから継承されるが、現在、未使用である。Caption、Description、InstallData、Name、およびStatus。 The following properties are inherited from the parent class but are currently unused. Caption, Description, InstallData, Name, and Status.
メソッド
Stop
Method Stop
このメソッドは、装置上で実行中のジョブを停止させる。このメソッドが、親ジョブを表すインスタンス上で実行された場合、まだ実行中のすべての子チルが停止される。ユーザによって停止させられたジョブは、「ユーザによりジョブ停止」のStatusプロパティ値を有する。 This method stops a job that is running on the device. If this method is executed on the instance representing the parent job, all child chills still running are stopped. A job stopped by the user has a Status property value of “job stopped by user”.
GetOutput GetOutput
OutputTypeに関する値は、以下のとおりである。 Values for OutputType are as follows:
・0=エグジット(exit)ステータスを獲得する
・1=標準の出力を獲得する
・2=標準の誤りを獲得する
・3=すべての出力を獲得する(順次に)
このメソッドは、子Jobインスタンスに対してだけ有効である。OutputTypeが0である場合、エグジットステータスがOutputストリングの中で戻される。例えば、32のエグジットステータスは、Outputの中でストリング「32」として戻される。
• 0 = get exit status • 1 = get standard output • 2 = get standard error • 3 = get all outputs (sequentially)
This method is valid only for child Job instances. If OutputType is 0, the exit status is returned in the Output string. For example, 32 exit statuses are returned in Output as the string “32”.
JOBLOGS
JobLogsは、スクリプトまたは実行ファイルの実行の出力をキャプチャする。ジョブログは、Jobsに関連している。任意のJobsに対してN個のJobLogsが存在することが可能である。
JOBLOGS
JobLogs captures the output of script or execution file execution. The job log is related to Jobs. There can be N JobLogs for any Jobs.
JobLogsは、ジョブが開始されたとき、システムによって常に自動作成される(例えば、メソッドSets.ExecuteまたはメソッドDevices.Executeによって)。
JobLogsクラスのインスタンスは、更新することができず、JobLogsのインスタンスは、WMIの中で削除することができない。関連は、Jobsの単一のインスタンスに対するものである。JobLogsのインスタンスは、この出力を生成した装置およびジョブを与えるJobsのインスタンスに関連している。
JobLogs are always automatically created by the system when a job is started (eg, by method Sets.Execute or method Devices.Execute).
An instance of the JobLogs class cannot be updated, and an instance of the JobLogs class cannot be deleted in WMI. The association is for a single instance of Jobs. An instance of JobLogs is associated with the instance of Job that gives the device and job that generated this output.
プロパティ
JobID
Property JobID
Sequence Sequence
1で開始して上昇する。stdout、stderr、エグジットステータスに関して使用されるのと同じ順序番号。 Start at 1 and climb. The same sequence number used for stdout, stderr, exit status.
LogTime LogTime
OutputType OutputType
OutputData OutputData
以上のプロパティが親クラスから継承されるが、現在、未使用である。Caption、Description、InstallDate、Name、およびステータス。このオブジェクトに関するメソッドは存在しない。 These properties are inherited from the parent class, but are currently unused. Caption, Description, InstallDate, Name, and status. There are no methods on this object.
ALERTS
装置ハードウェアアドレスは、NICなどのハードウェア部品を一意的に識別する。
ALERTS
The device hardware address uniquely identifies a hardware component such as a NIC.
警報オブジェクトは、コントローラに警報を報告する管理される装置からのすべての警報のコピーを保持する。装置が警報を報告するか否かは、Devices.EnableAlerts()メソッドを使用して設定される。Alerts(アラート)オブジェクトの各インスタンスは、単一の装置からの単一の警報を表す。Alertインスタンスは、装置から提供される情報に基づいて常に自動的に作成される。Alertインスタンスは、手作業で作成することはできない(WMIの中で)。
このクラスのインスタンスは、更新することができず、Allertsクラスのインスタンスを削除することにより、装置自体において警報が消去されることが生じる。
関連は、Devicesの単一のインスタンスに対するもの、警報が作成された装置を表すDevicesのインスタンスに対するものである。
The alarm object holds a copy of all alarms from managed devices that report alarms to the controller. Whether or not the device reports an alarm is determined by Devices. Set using the EnableAlerts () method. Each instance of the Alerts object represents a single alert from a single device. Alert instances are always automatically created based on information provided by the device. Alert instances cannot be created manually (in WMI).
Instances of this class cannot be updated, and deleting an instance of the Alerts class will cause the alarm to disappear on the device itself.
Associations are for a single instance of Devices, for a Device instance that represents the device on which the alert was created.
プロパティ
DeviceName
Property DeviceName
これは、警報がそこで作成された装置の名前を含む。 This includes the name of the device for which the alert was created.
Cookie Cookie
AlertType AlertType
AlertID AlertID
AlertLog AlertLog
AlertSource AlertSource
AlertReplaceString AlertReplaceString
これは、装置から受け取られたフォーマットで記憶される。現在、これは、改行文字(文字コード10進法10)によって分けられた値のリストとしてのフォーマットである。値がコンマを含む場合、エスケープは全く行われない。 This is stored in the format received from the device. Currently, this is a format as a list of values separated by newline characters (character code decimal 10). If the value contains a comma, no escaping is done.
ReceivedTime ReceivedTime
これは、コントローラが装置から警報通知を受け取った時刻である。 This is the time at which the controller received an alarm notification from the device.
以下のプロパティが親クラスから継承されるが、現在、未使用である。Caption、Description、InstallDate、Name、およびStatus。このオブジェクトに関するメソッドは存在しない。 The following properties are inherited from the parent class but are currently unused. Caption, Description, InstallDate, Name, and Status. There are no methods on this object.
CONTROLLER
Controllerクラスが、コントローラを構成し、制御するために使用される。コントローラは、ハートビート間隔などのいくつかのグローバルな構成可能パラメータを有する。さらに、コントローラのサービスおよびサブサービスを開始および停止することができる。
CONTROLLER
The Controller class is used to configure and control the controller. The controller has some global configurable parameters such as heartbeat interval. In addition, controller services and sub-services can be started and stopped.
これは、作成および削除に関する単一要素のみからなるクラスであり、このインスタンスは、更新することができない。関連は、全く存在しない。 This is a class with only a single element for creation and deletion, and this instance cannot be updated. There is no association at all.
プロパティ
HeartbeatInterval
Property HeartbeatInterval
指定されない場合、値120秒(2分)が使用される。設定することができる最小値は、60秒である。以下のプロパティが親クラスから継承されるが、現在、未使用である。Caption、Description、、およびName。
If not specified, the
メソッド
RefreshDeviceList
Method RefreshDeviceList
リフレッシュ装置リストは、2つのステップを有するプロセスである。まず、制御されていない装置が、データストアから除去される。次に、「Microsoft Server Appliance」タイプを有する装置に関して請求された検出が開始される。その後、メソッドは戻る。この時点で、検出を開始したことの結果は、コントローラによって受け取られていない可能性があり、したがって、Devicesテーブルは、空または部分的に完成している可能性がある。 The refresh device list is a process having two steps. First, uncontrolled devices are removed from the data store. Next, the claimed detection is initiated for a device having the “Microsoft Server Appliance” type. Then the method returns. At this point, the result of initiating detection may not have been received by the controller, so the Devices table may be empty or partially complete.
SetHeartbeatInterval SetHeartbeatInterval
このメソッドは、Controller.HeartbeatIntervalプロパティの中のハートビート間隔を更新する。次に、このメソッドは、この更新された間隔をすべての管理される装置に送信する。その後、メソッドは戻る。メソッドは、更新されたハートビートを装置に送信することのステータスを待たない。この値は、秒数で与えられる。設定することのできる最小値は、60である。値を60を下回って設定しようとする試みがなされた場合、記憶された値は、一実施形態では、60に設定される。 This method is called Controller. Update the heartbeat interval in the HeartbeatInterval property. The method then sends this updated interval to all managed devices. Then the method returns. The method does not wait for the status of sending an updated heartbeat to the device. This value is given in seconds. The minimum value that can be set is 60. If an attempt is made to set the value below 60, the stored value is set to 60 in one embodiment.
この値が増加された場合、装置は、1.5*オールドハートビート間隔の後、活動状態にないように見える可能性がある(Devices.Aliveプロパティは、偽に設定される)。WMIの中で、関連クラスと呼ばれる特別クラスが、オブジェクトのインスタンスをリンクするのに使用される。このセクションは、オブジェクトモデルを実装するWMIクラスをリンクするのに使用される関連クラスを定義する。
関連クラスは、CIM_ComponetまたはCIM_Dependencyから導出される。
If this value is increased, the device may appear to be inactive after 1.5 * old heartbeat interval (Devices.Alive property is set to false). Within WMI, special classes called association classes are used to link object instances. This section defines the related classes used to link WMI classes that implement the object model.
The related class is derived from CIM_Component or CIM_Dependency.
CIM_Componentは、親インスタンスおよび子インスタンスをそれぞれ指定するプロパティGroupComponentおよびプロパティPartComponentを含む。CIM_Dependencyは、依存関係を指定するプロパティAntecedentおよびプロパティDependentを含む。以下に説明するとおり、親クラスがリストされ、次に、プロパティ(GroupComponentおよびPartComponent、またはAntecedentおよびDependent)の値が記述される。どのクラスも、追加のプロパティを追加すること、あるいは記述またはその他の属性を取り消すことをしない。 CIM_Component includes a property GroupComponent and a property PartComponent that specify a parent instance and a child instance, respectively. CIM_Dependency includes a property Antecentent and a property Dependent that specify a dependency relationship. As described below, the parent class is listed and then the value of the property (GroupComponent and PartComponent, or Antecedent and Dependent) is described. None of the classes add additional properties or revoke descriptions or other attributes.
DEVICEHWADDRTODEVICEHWIPADDR DEVICEHWADDRTODEVICEHWIPADDR
GroupComponentは、DeviceHWAddrsのインスタンスに対するリファレンスであり、PartComponentは、DeviceHWIPAddrsのインスタンスに対するリファレンスである。 GroupComponent is a reference to an instance of DeviceHWAddrs, and PartComponent is a reference to an instance of DeviceHWIPAddrs.
DEVICEHWADDRTOHWADDRTYPE DEVICEHWADDRTOHWADDRTYPE
Antecedentは、DeviceHWAddrsのインスタンスに対するリファレンスであり、Dependentは、HWAddrTypesのインスタンスに対するリファレンスである。 Antecedent is a reference to an instance of DeviceHWAddrs, and Dependent is a reference to an instance of HWAAddrTypes.
DEVICETOALERT DEVICEOALERT
Antecedentは、Devicesのインスタンスに対するリファレンスであり、Dependentは、Alertsのインスタンスに対するリファレンスである。 Antecedent is a reference to an instance of Devices, and Dependent is a reference to an instance of Alerts.
DEVICETODEVICEHWADDR DEVICEICE DEVICEHWADDR
GroupComponentは、Devicesのインスタンスに対するリファレンスであり、PartComponentは、DeviceHWAddrsのインスタンスに対するリファレンスである。 GroupComponent is a reference to an instance of Devices, and PartComponent is a reference to an instance of DeviceHWAddrs.
DEVICETODEVICETYPE DEVICEICEDEVICETYPE
Antecedentは、Devicesのインスタンスに対するリファレンスであり、Dependentは、DeviceTypesのインスタンスに対するリファレンスである。 Antecedent is a reference to an instance of Devices, and Dependent is a reference to an instance of DeviceTypes.
DEVICETOJOBINVOCATION DEVICETECOBINVOCATION
Antecedentは、Devicesのインスタンスに対するリファレンスであり、Dependentは、JobInvocationsのインスタンスに対するリファレンスである。 Antecedent is a reference to an instance of Devices, and Dependent is a reference to an instance of JobInvocations.
SETTOJOBINVOCATION SETTOJOBINVOCATION
Antecedentは、Setsのインスタンスに対するリファレンスであり、Dependentは、JobInvocationsのインスタンスに対するリファレンスである。 Antecedent is a reference to the instance of Sets, and Dependent is a reference to the instance of JobInvocations.
DEVICETOJOB DEVICETECJOB
Antecedentは、Devicesのインスタンスに対するリファレンスであり、Dependentは、Jobsのインスタンスに対するリファレンスである。 Antecedent is a reference to an instance of Devices, and Dependent is a reference to an instance of Jobs.
JOBTOJOB JOBTOJOB
GroupComponentは、Jobsのインスタンス(親を表す)に対するリファレンスであり、PartComponentは、Jobsのインスタンス(子に関する)に対するリファレンスである。 GroupComponent is a reference to an instance of Job (representing a parent), and PartComponent is a reference to an instance of Job (related to a child).
JOBINVOCATIONTOJOB JOBINVOCATIONTOJOB
Antecedentは、JobInvocationsのインスタンスに対するリファレンスであり、Dependentは、Jobsのインスタンスに対するリファレンスである。 Antecedent is a reference to an instance of JobInvocations, and Dependent is a reference to an instance of Jobs.
JOBTOJOBLOG JOBTOJOBLOG
Antecedentは、Jobsのインスタンスに対するリファレンスであり、Dependentは、JobLogsのインスタンスに対するリファレンスである。 Antecedent is a reference to an instance of Jobs, and Dependent is a reference to an instance of JobLogs.
SETTODEVICE SETTODEVICE
GroupComponentは、Setsのインスタンスに対するリファレンスであり、PartComponentは、Devicesのインスタンスに対するリファレンスである。 GroupComponent is a reference to an instance of Sets, and PartComponent is a reference to an instance of Devices.
100 コンピュータシステム環境
110 コンピュータ装置
120 処理装置
121 システムバス
130 システムメモリ
131 読取り専用メモリ
132 ランダムアクセスメモリ
133 基本入力/出力システム
134 オペレーティングシステム
135 アプリケーションプログラム
136 他のプログラムモジュール
137 プログラムデータ
140 取外し不可能の不揮発性メモリインターフェース
141 ハードディスクドライブ
144 オペレーティングシステム
145 アプリケーションプログラム
146 他のプログラムモジュール
147 プログラムデータ
150 取外し可能の不揮発性メモリインターフェース
151 磁気ディスクドライブ
152 取外し可能の不揮発性磁気ディスク
155 光ディスクドライブ
156 取外し可能の不揮発性光ディスク
160 ユーザ入力インターフェース
161 マウス
162 キーボード
163 マイクロホン
164 タブレット
170 ネットワークインターフェース
171 ローカルエリアネットワーク
172 モデム
173 ワイドエリアネットワーク
180 遠隔コンピュータ
181 メモリ装置
185 遠隔アプリケーションプログラム
190 ビデオインターフェース
191 モニタ
194 出力周辺インターフェース
195 スピーカ
196 プリンタ
200 アーキテクチャ
202 コントローラコンピュータ
2041、2042、204n ノードコンピュータ
2061、2062、206n ノードプログラム
208 コントローラサービス
210 管理プログラム
212 トランスポート層
2141、2142、214n トランスポート層
216 物理ネットワーク
2181、2182、218n エージェントサービス
2201、2202、220n ノードオペレーティングシステム
222 オペレーティングシステム
302 データストア
304 開始プロセス
306 コントローラプログラム
310 スキーマインターフェース
312 エージェントプログラム
314 XMLメッセージ交換プロトコル
316 トランスポートプロトコル
320 スクリプト/実行エンジン
322 リブート/シャットダウン/サスペンド構成要素
330 検出構成要素(発見構成要素)
332 検出リスニング構成要素(検出聴取構成要素)
100
332 detection listening component (detection listening component)
Claims (30)
複数の特有のセットをコントローラにおいて保持することであって、各特有のセットが、オペレーションの能力、顧客との関連、または実行アプリケーションによって区別され、ジョブを処理するように構成された少なくとも1つのコンピュータ装置のグループを備えることと、
前記特有のセットの少なくとも1つに属するコンピュータ装置が前記コンピュータ装置に割り当てられた前記ジョブの一部を終了したと判定することと、
前記複数の特有のセットに属するコンピュータ装置上で行われる少なくとも1つのオペレーションに対応する新しいジョブをコントローラで提供することと、
前記割り当てられたジョブの一部を終了した前記コンピュータ装置を再デプロイするコマンドを受信することであって、前記再デプロイすることは新しい特有のセットに前記コンピュータ装置を割り当てることを備えることと、
前記再デプロイされたコンピュータ装置を含む、前記新しい特有のセットの中の各コンピュータ装置へ前記コントローラからメッセージを送信することであって、前記メッセージが、前記メッセージを受信する各コンピュータ装置に、前記新しいジョブを実行するように命令することと、
前記コントローラで前記新しい特有のセットの中の各コンピュータ装置からの前記新しいジョブの結果を格納することと
を備えることを特徴とする方法。 A method for controlling a plurality of computer systems from a controller in a data center computer network, comprising:
Maintaining at least one unique set in the controller, each distinct set being distinguished by operational capabilities, customer relevance, or executing application and configured to process jobs Providing a group of devices;
Determining that a computing device belonging to at least one of the unique sets has completed part of the job assigned to the computing device;
Providing at the controller a new job corresponding to at least one operation performed on a computing device belonging to the plurality of unique sets;
Receiving a command to redeploy the computing device that has completed part of the assigned job, the redeploying comprising assigning the computing device to a new unique set;
Sending a message from the controller to each computer device in the new unique set comprising the redeployed computer device, wherein the message is sent to each computer device receiving the message Instructing the job to run,
Storing the result of the new job from each computing device in the new unique set at the controller.
複数の特有のセットを保持するように構成されたコントローラであって、各セットがジョブを処理するように構成された少なくとも1つのコンピュータ装置のグループを備え、各特有のセットがオペレーションの能力、顧客との関連、または実行アプリケーションによって区別されるコントローラと、
前記コントローラ上のコントローラソフトウェアとの通信のために接続されたエージェントソフトウェアを含む、前記特有のセットの中で識別されたコンピュータ装置と、
前記特有のセットの中で識別された前記コンピュータ装置上で行われる少なくとも1つのオペレーションに対応する、前記コントローラによって保持されたジョブであって、前記コンピュータ装置は前記ジョブを処理した後に新しいジョブを処理するように構成されるジョブと、
コンピュータ装置が前記コンピュータ装置に割り当てられた前記ジョブの一部を終了したと判定した後に、前記ジョブに対応するデータを含むメッセージを前記コントローラソフトウェアから前記コンピュータ装置の前記エージェントソフトウェアに通信するように構成されたトランスポートであって、前記メッセージが、前記割り当てられたジョブの一部を終了した前記コンピュータ装置に新しい特有のセットの一部にし、新しいジョブを実行するように前記エージェントソフトウェアに命令し、前記コンピュータ装置の前記エージェントソフトウェアが、前記メッセージを受信したのに応答して、前記新しいジョブを実行し、結果を前記コントローラに戻すトランスポートと、
前記コントローラのデータストアであって、前記コントローラが前記エージェントソフトウェアからの前記結果を前記データストアに格納するデータストアと
を備えたことを特徴とするシステム。 A system for controlling a plurality of computer systems from a controller in a computer network of a data center,
A controller configured to hold a plurality of unique sets, each set comprising a group of at least one computing device configured to process a job, each unique set being capable of operation, customer Controllers that are related to or running applications,
A computer device identified in the unique set comprising agent software connected for communication with controller software on the controller;
A job held by the controller corresponding to at least one operation performed on the computing device identified in the unique set, wherein the computing device processes the job and then processes the new job A job configured to, and
After determining that the computer device has finished part of the job assigned to the computer device, a message including data corresponding to the job is communicated from the controller software to the agent software of the computer device. Wherein the message causes the agent software to make part of the assigned job part of a new unique set for the computing device that has finished and to execute the new job, A transport in which the agent software of the computing device executes the new job in response to receiving the message and returns a result to the controller;
A data store of the controller, wherein the controller comprises a data store for storing the result from the agent software in the data store.
複数の特有のセットをコントローラにおいて保持することであって、各特有のセットが、ネットワークアドレスによって識別可能であり、オペレーションの機能、顧客との関連、または実行アプリケーションによって区別され、2進プログラムを処理するように構成された少なくとも1つのコンピュータ装置のグループを備えることと、
前記特有のセットの少なくとも1つに属するコンピュータ装置が前記コンピュータ装置に割り当てられた前記2進プログラムの一部を処理することを終了したと判定することと、
前記複数の特有のセットに属するコンピュータ装置上で処理する少なくとも1つのスクリプトを含む新しい2進プログラムをコントローラで提供することと、
前記割り当てられた2進プログラムの一部を終了した前記コンピュータ装置を再デプロイするコマンドをエージェントにより受信することと、
前記コマンドに応答して前記割り当てられた2進プログラムの一部を終了した前記コンピュータ装置を再デプロイすることであって、前記再デプロイすることは、前記コンピュータ装置を新しい特有のセットに割り当てることを備えることと、
前記再デプロイされたコンピュータ装置を含む、前記新しい特有のセットの中の各コンピュータ装置へ前記コントローラからメッセージを送信することであって、前記メッセージが、前記メッセージを受信する各コンピュータ装置に、前記新しい2進プログラムを実行するように命令することと、
前記新しい特有のセットの中の各コンピュータ装置からの前記新しい2進プログラムの結果を前記コントローラで格納することと
を備えることを特徴とする方法。 A method for controlling a plurality of computer systems from a controller in a data center computer network, comprising:
Maintaining multiple unique sets in the controller, each unique set being identifiable by network address, distinguished by function of operation, customer relationship, or executing application, processing binary programs Comprising a group of at least one computer device configured to:
Determining that a computing device belonging to at least one of the unique set has finished processing a portion of the binary program assigned to the computing device;
Providing at the controller a new binary program comprising at least one script for processing on a computer device belonging to the plurality of unique sets;
Receiving by the agent a command to redeploy the computer device that has completed part of the assigned binary program;
Redeploying the computing device that has terminated a portion of the assigned binary program in response to the command, wherein the redeploying assigns the computing device to a new unique set. Preparing,
Sending a message from the controller to each computer device in the new unique set comprising the redeployed computer device, wherein the message is sent to each computer device receiving the message Instructing to execute a binary program;
Storing the result of the new binary program from each computer device in the new unique set at the controller.
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US29747301P | 2001-06-11 | 2001-06-11 | |
US60/297,473 | 2001-06-11 | ||
US10/075,633 | 2002-02-14 | ||
US10/075,633 US7237243B2 (en) | 2001-06-11 | 2002-02-14 | Multiple device management method and system |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002170566A Division JP2003099410A (en) | 2001-06-11 | 2002-06-11 | Multiple device management method and system |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2009205687A true JP2009205687A (en) | 2009-09-10 |
JP5394123B2 JP5394123B2 (en) | 2014-01-22 |
Family
ID=26757088
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002170566A Pending JP2003099410A (en) | 2001-06-11 | 2002-06-11 | Multiple device management method and system |
JP2009113069A Expired - Lifetime JP5394123B2 (en) | 2001-06-11 | 2009-05-07 | Multiple device management method and system |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002170566A Pending JP2003099410A (en) | 2001-06-11 | 2002-06-11 | Multiple device management method and system |
Country Status (5)
Country | Link |
---|---|
US (1) | US7237243B2 (en) |
EP (1) | EP1267518B1 (en) |
JP (2) | JP2003099410A (en) |
AT (1) | ATE302512T1 (en) |
DE (1) | DE60205539T2 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2017049939A (en) * | 2015-09-04 | 2017-03-09 | 株式会社日立ソリューションズ | Computer system and data distribution method |
Families Citing this family (105)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7882253B2 (en) | 2001-04-05 | 2011-02-01 | Real-Time Innovations, Inc. | Real-time publish-subscribe system |
US7054853B2 (en) * | 2001-07-02 | 2006-05-30 | Sun Microsystems, Inc. | Methods and system for efficient association traversals |
DE50104402D1 (en) * | 2001-07-30 | 2004-12-09 | Alcatel Sa | Method for the visual representation of states of network elements of a network to be monitored, as well as a monitoring device and a program module therefor |
US7171554B2 (en) * | 2001-08-13 | 2007-01-30 | Hewlett-Packard Company | Method, computer program product and system for providing a switch user functionality in an information technological network |
US20030084219A1 (en) * | 2001-10-26 | 2003-05-01 | Maxxan Systems, Inc. | System, apparatus and method for address forwarding for a computer network |
DE60324106D1 (en) * | 2002-03-06 | 2008-11-27 | Pharos Systems Internat Inc | DOCUMENT PROCESSING SYSTEM WITH A COMPATIBLE INTERFACE TO MULTIPLE DEVICES AND CORRESPONDING METHODS |
US7295561B1 (en) | 2002-04-05 | 2007-11-13 | Ciphermax, Inc. | Fibre channel implementation using network processors |
US20030195956A1 (en) * | 2002-04-15 | 2003-10-16 | Maxxan Systems, Inc. | System and method for allocating unique zone membership |
US20030202510A1 (en) * | 2002-04-26 | 2003-10-30 | Maxxan Systems, Inc. | System and method for scalable switch fabric for computer network |
JP2003323364A (en) * | 2002-05-08 | 2003-11-14 | Canon Inc | Network device management device and method, computer program and computer-readable storage medium |
US20030212889A1 (en) * | 2002-05-13 | 2003-11-13 | Khieu Andrew K. | Method and system for exchanging data over networks using public key encryption |
US20040003007A1 (en) * | 2002-06-28 | 2004-01-01 | Prall John M. | Windows management instrument synchronized repository provider |
US20040030766A1 (en) * | 2002-08-12 | 2004-02-12 | Michael Witkowski | Method and apparatus for switch fabric configuration |
US20040034577A1 (en) * | 2002-08-15 | 2004-02-19 | Van Hoose Jeffrey N. | Methods and apparatus for analyzing an inventory for consolidation |
US20040042416A1 (en) * | 2002-08-27 | 2004-03-04 | Ngo Chuong Ngoc | Virtual Local Area Network auto-discovery methods |
US7246159B2 (en) * | 2002-11-01 | 2007-07-17 | Fidelia Technology, Inc | Distributed data gathering and storage for use in a fault and performance monitoring system |
FR2846821B1 (en) * | 2002-11-04 | 2005-03-11 | Cit Alcatel | DEVICE AND METHOD FOR CONTROLLING NETWORK EQUIPMENT MANAGEMENT DATA, FOR A COMMUNICATIONS NETWORK MANAGEMENT SYSTEM |
US8275811B2 (en) * | 2002-11-27 | 2012-09-25 | Accenture Global Services Limited | Communicating solution information in a knowledge management system |
US7200614B2 (en) | 2002-11-27 | 2007-04-03 | Accenture Global Services Gmbh | Dual information system for contact center users |
US8572058B2 (en) | 2002-11-27 | 2013-10-29 | Accenture Global Services Limited | Presenting linked information in a CRM system |
US7769622B2 (en) * | 2002-11-27 | 2010-08-03 | Bt Group Plc | System and method for capturing and publishing insight of contact center users whose performance is above a reference key performance indicator |
US20050014116A1 (en) * | 2002-11-27 | 2005-01-20 | Reid Gregory S. | Testing information comprehension of contact center users |
US9396473B2 (en) | 2002-11-27 | 2016-07-19 | Accenture Global Services Limited | Searching within a contact center portal |
US7418403B2 (en) | 2002-11-27 | 2008-08-26 | Bt Group Plc | Content feedback in a multiple-owner content management system |
US7502997B2 (en) | 2002-11-27 | 2009-03-10 | Accenture Global Services Gmbh | Ensuring completeness when publishing to a content management system |
US7062505B2 (en) | 2002-11-27 | 2006-06-13 | Accenture Global Services Gmbh | Content management system for the telecommunications industry |
US20040167906A1 (en) * | 2003-02-25 | 2004-08-26 | Smith Randolph C. | System consolidation tool and method for patching multiple servers |
JP2004288091A (en) * | 2003-03-25 | 2004-10-14 | Fuji Xerox Co Ltd | Information processing device and method |
JP4228777B2 (en) * | 2003-05-21 | 2009-02-25 | 株式会社日立製作所 | Branch flow control system |
US7257623B2 (en) * | 2003-05-28 | 2007-08-14 | Oracle International Corporation | Method and apparatus for ensuring an allowable client configuration for an application |
US7725473B2 (en) | 2003-12-17 | 2010-05-25 | International Business Machines Corporation | Common information model |
JP2005182481A (en) * | 2003-12-19 | 2005-07-07 | Hitachi Ltd | Network device |
US20050198398A1 (en) * | 2004-01-21 | 2005-09-08 | Bishop Thomas P. | Methods and systems for managing a network while physical components are being provisioned or de-provisioned |
US8782654B2 (en) | 2004-03-13 | 2014-07-15 | Adaptive Computing Enterprises, Inc. | Co-allocating a reservation spanning different compute resources types |
CA2559584A1 (en) | 2004-03-13 | 2005-09-29 | Cluster Resources, Inc. | System and method of providing a self-optimizing reservation in space of compute resources |
US20050256935A1 (en) * | 2004-05-06 | 2005-11-17 | Overstreet Matthew L | System and method for managing a network |
US20070266388A1 (en) | 2004-06-18 | 2007-11-15 | Cluster Resources, Inc. | System and method for providing advanced reservations in a compute environment |
US7529898B2 (en) | 2004-07-09 | 2009-05-05 | International Business Machines Corporation | Method for backing up and restoring data |
US9264384B1 (en) | 2004-07-22 | 2016-02-16 | Oracle International Corporation | Resource virtualization mechanism including virtual host bus adapters |
WO2006011464A1 (en) * | 2004-07-28 | 2006-02-02 | Nec Corporation | Connection method, communication system, device, and program |
US8176490B1 (en) | 2004-08-20 | 2012-05-08 | Adaptive Computing Enterprises, Inc. | System and method of interfacing a workload manager and scheduler with an identity manager |
CA2586763C (en) | 2004-11-08 | 2013-12-17 | Cluster Resources, Inc. | System and method of providing system jobs within a compute environment |
US8863143B2 (en) | 2006-03-16 | 2014-10-14 | Adaptive Computing Enterprises, Inc. | System and method for managing a hybrid compute environment |
US9231886B2 (en) | 2005-03-16 | 2016-01-05 | Adaptive Computing Enterprises, Inc. | Simple integration of an on-demand compute environment |
EP2360587B1 (en) | 2005-03-16 | 2017-10-04 | III Holdings 12, LLC | Automatic workload transfer to an on-demand center |
WO2006108187A2 (en) | 2005-04-07 | 2006-10-12 | Cluster Resources, Inc. | On-demand access to compute resources |
US8055744B2 (en) * | 2005-04-07 | 2011-11-08 | International Business Machines Corporation | Resolution of group membership for resources |
US9813283B2 (en) | 2005-08-09 | 2017-11-07 | Oracle International Corporation | Efficient data transfer between servers and remote peripherals |
US7957301B2 (en) * | 2005-08-15 | 2011-06-07 | Mitsubishi Electric Research Laboratories, Inc. | Method, apparatus and system for multicast communication in a wireless multi-hop network |
US7845012B2 (en) * | 2005-11-18 | 2010-11-30 | Toyota Motor Engineering & Manufacturing North America, Inc. | System and method of intelligent agent identification for vehicle diagnostics |
US8156208B2 (en) | 2005-11-21 | 2012-04-10 | Sap Ag | Hierarchical, multi-tiered mapping and monitoring architecture for service-to-device re-mapping for smart items |
US8005879B2 (en) * | 2005-11-21 | 2011-08-23 | Sap Ag | Service-to-device re-mapping for smart items |
US7860968B2 (en) | 2005-11-21 | 2010-12-28 | Sap Ag | Hierarchical, multi-tiered mapping and monitoring architecture for smart items |
US7836433B2 (en) * | 2006-01-26 | 2010-11-16 | Microsoft Corporation | Analyzing binary code |
US7599861B2 (en) | 2006-03-02 | 2009-10-06 | Convergys Customer Management Group, Inc. | System and method for closed loop decisionmaking in an automated care system |
US7421361B2 (en) * | 2006-03-27 | 2008-09-02 | Dell Products L.P. | Automated factory install printer test process |
US8522341B2 (en) | 2006-03-31 | 2013-08-27 | Sap Ag | Active intervention in service-to-device mapping for smart items |
US7827559B1 (en) | 2006-04-24 | 2010-11-02 | Real-Time Innovations, Inc. | Framework for executing multiple threads and sharing resources in a multithreaded computer programming environment |
US8671135B1 (en) * | 2006-04-24 | 2014-03-11 | Real-Time Innovations, Inc. | Flexible mechanism for implementing the middleware of a data distribution system over multiple transport networks |
US7783853B1 (en) | 2006-04-24 | 2010-08-24 | Real-Time Innovations, Inc. | Memory usage techniques in middleware of a real-time data distribution system |
US8060285B2 (en) * | 2006-04-26 | 2011-11-15 | Toyota Motor Engineering & Manufacturing North America, Inc. | System and method of intelligent agent management using an overseer agent for use in vehicle diagnostics |
US7890568B2 (en) * | 2006-04-28 | 2011-02-15 | Sap Ag | Service-to-device mapping for smart items using a genetic algorithm |
US8296408B2 (en) * | 2006-05-12 | 2012-10-23 | Sap Ag | Distributing relocatable services in middleware for smart items |
US20070271584A1 (en) * | 2006-05-16 | 2007-11-22 | Microsoft Corporation | System for submitting and processing content including content for on-line media console |
US8379830B1 (en) | 2006-05-22 | 2013-02-19 | Convergys Customer Management Delaware Llc | System and method for automated customer service with contingent live interaction |
US7809663B1 (en) | 2006-05-22 | 2010-10-05 | Convergys Cmg Utah, Inc. | System and method for supporting the utilization of machine language |
US8296413B2 (en) | 2006-05-31 | 2012-10-23 | Sap Ag | Device registration in a hierarchical monitor service |
US8131838B2 (en) | 2006-05-31 | 2012-03-06 | Sap Ag | Modular monitor service for smart item monitoring |
US8065411B2 (en) | 2006-05-31 | 2011-11-22 | Sap Ag | System monitor for networks of nodes |
US7729825B2 (en) * | 2006-06-29 | 2010-06-01 | Toyota Motor Engineering & Manufacturing North America, Inc. | System and method of intelligent agent management using an agent interface for use in vehicle diagnostics |
US8396788B2 (en) | 2006-07-31 | 2013-03-12 | Sap Ag | Cost-based deployment of components in smart item environments |
US7873441B2 (en) * | 2006-09-25 | 2011-01-18 | Andreas Joanni Synesiou | System for execution of a load operating plan for load control |
JP4838748B2 (en) * | 2007-03-30 | 2011-12-14 | 株式会社日立ソリューションズ | Home appliance automatic driving system |
US20080306798A1 (en) * | 2007-06-05 | 2008-12-11 | Juergen Anke | Deployment planning of components in heterogeneous environments |
US20090007157A1 (en) * | 2007-06-28 | 2009-01-01 | Microsoft Corporation | Mapping Data Sources to a Procedural API |
KR100974880B1 (en) | 2007-07-30 | 2010-08-11 | 영남대학교 산학협력단 | Mathod for service discovery and Fault Management in UPnP based |
US7827266B2 (en) * | 2007-07-31 | 2010-11-02 | Hewlett-Packard Development Company, L.P. | System and method of controlling multiple computer platforms |
US8041773B2 (en) | 2007-09-24 | 2011-10-18 | The Research Foundation Of State University Of New York | Automatic clustering for self-organizing grids |
US8527622B2 (en) | 2007-10-12 | 2013-09-03 | Sap Ag | Fault tolerance framework for networks of nodes |
US20090182812A1 (en) * | 2008-01-14 | 2009-07-16 | Paritosh Bajpay | Method and apparatus for dynamic scaling of data center processor utilization |
US7519701B1 (en) * | 2008-02-15 | 2009-04-14 | International Business Machines Corporation | System and method of propagating status among related entities |
JP2009266106A (en) * | 2008-04-28 | 2009-11-12 | Hitachi Ltd | Management apparatus and method |
US20100031242A1 (en) * | 2008-07-31 | 2010-02-04 | Motorola, Inc. | Method and apparatus for provisioning a node with executable code |
US8346735B1 (en) * | 2008-09-30 | 2013-01-01 | Emc Corporation | Controlling multi-step storage management operations |
US8250196B2 (en) * | 2008-10-27 | 2012-08-21 | Microsoft Corporation | Script based computer health management system |
US8495657B1 (en) * | 2009-06-12 | 2013-07-23 | American Megatrends, Inc. | Virtualized management objects |
US9973446B2 (en) | 2009-08-20 | 2018-05-15 | Oracle International Corporation | Remote shared server peripherals over an Ethernet network for resource virtualization |
WO2011044949A1 (en) * | 2009-10-16 | 2011-04-21 | Frischknecht, Harry | Method to link devices with each other via a network |
US10877695B2 (en) | 2009-10-30 | 2020-12-29 | Iii Holdings 2, Llc | Memcached server functionality in a cluster of data processing nodes |
US11720290B2 (en) | 2009-10-30 | 2023-08-08 | Iii Holdings 2, Llc | Memcached server functionality in a cluster of data processing nodes |
KR101698354B1 (en) * | 2010-07-16 | 2017-01-23 | 삼성전자주식회사 | Apparatus and method for controlling a plurality of remote user interface servers in a home network |
US9331963B2 (en) | 2010-09-24 | 2016-05-03 | Oracle International Corporation | Wireless host I/O using virtualized I/O controllers |
US10194314B2 (en) * | 2010-10-22 | 2019-01-29 | Blackberry Limited | Method and system for identifying an entity in a mobile device ecosystem |
US9032053B2 (en) * | 2010-10-29 | 2015-05-12 | Nokia Corporation | Method and apparatus for upgrading components of a cluster |
US9547575B2 (en) * | 2011-08-30 | 2017-01-17 | Amazon Technologies, Inc. | Managing host computing devices |
US9063764B2 (en) * | 2012-05-24 | 2015-06-23 | Kaseya Limited | Automated software script creator and editor |
US9262208B2 (en) | 2012-08-20 | 2016-02-16 | International Business Machines Corporation | Automated, controlled distribution and execution of commands and scripts |
US9083550B2 (en) | 2012-10-29 | 2015-07-14 | Oracle International Corporation | Network virtualization over infiniband |
US9916068B1 (en) * | 2013-03-13 | 2018-03-13 | Ca, Inc. | Graphical user interface for displaying alarm security level of groups of elements |
AT515454A3 (en) * | 2013-03-14 | 2018-07-15 | Fts Computertechnik Gmbh | Method for handling errors in a central control unit and control unit |
CN105451310A (en) * | 2015-03-12 | 2016-03-30 | 白昀 | Sensor energy saving method of available Wi-Fi in internet of things and deriving method thereof |
US10654339B2 (en) * | 2016-06-24 | 2020-05-19 | Thermo King Corporation | Method of pairing a sensor node for a transport refrigeration system using an assisting device, an assisting device for pairing a sensor node and a pairing system for a transport refrigeration system |
US10305750B1 (en) * | 2016-07-29 | 2019-05-28 | Juniper Networks, Inc. | Methods and apparatus for centralized configuration management of heterogenous network devices through software-based node unification |
US10514993B2 (en) | 2017-02-14 | 2019-12-24 | Google Llc | Analyzing large-scale data processing jobs |
US11153173B1 (en) * | 2019-09-10 | 2021-10-19 | Juniper Networks, Inc. | Dynamically updating compute node location information in a distributed computing environment |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6412364A (en) * | 1987-07-06 | 1989-01-17 | Nippon Telegraph & Telephone | System constitution control system |
JPH08152903A (en) * | 1994-11-28 | 1996-06-11 | Fujitsu Ltd | Multiprocessor system |
JPH09218842A (en) * | 1996-02-14 | 1997-08-19 | Fujitsu Ltd | Load sharing system |
WO1998000790A1 (en) * | 1996-07-01 | 1998-01-08 | Fujitsu Limited | Device and method of controlling intergroup resource utilization |
WO1998009402A1 (en) * | 1996-08-27 | 1998-03-05 | Metrix S.A. | Management of computer workstations |
JPH11316747A (en) * | 1997-11-04 | 1999-11-16 | Digital Equip Corp <Dec> | Multiple operating system instances and multiprocesor computer architecture with software control-type resource allocation |
JP2000057116A (en) * | 1998-08-06 | 2000-02-25 | Hitachi Ltd | Computer complex system operation control method |
JP2000151599A (en) * | 1998-11-12 | 2000-05-30 | Toshiba Corp | Network management system and network nanagement method applied to the system |
US6220768B1 (en) * | 1996-06-28 | 2001-04-24 | Sun Microsystems, Inc. | Network asset survey tool for gathering data about node equipment |
WO2001057685A1 (en) * | 2000-01-31 | 2001-08-09 | Fujitsu Limited | Server determining method and device |
US20010032239A1 (en) * | 2000-04-18 | 2001-10-18 | Atsushi Sashino | Object management system and method for distributed object system |
US6728748B1 (en) * | 1998-12-01 | 2004-04-27 | Network Appliance, Inc. | Method and apparatus for policy based class of service and adaptive service level management within the context of an internet and intranet |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6594688B2 (en) * | 1993-10-01 | 2003-07-15 | Collaboration Properties, Inc. | Dedicated echo canceler for a workstation |
US5987504A (en) * | 1996-12-31 | 1999-11-16 | Intel Corporation | Method and apparatus for delivering data |
US5978381A (en) * | 1997-06-06 | 1999-11-02 | Webtv Networks, Inc. | Transmitting high bandwidth network content on a low bandwidth communications channel during off peak hours |
US6125394A (en) * | 1997-06-06 | 2000-09-26 | At&T Corporation | Computer system having a plurality of resources and utilizing a selection mechanism to select the resources based upon historical loading |
IL121898A0 (en) | 1997-10-07 | 1998-03-10 | Cidon Israel | A method and apparatus for active testing and fault allocation of communication networks |
US6324580B1 (en) * | 1998-09-03 | 2001-11-27 | Sun Microsystems, Inc. | Load balancing for replicated services |
US6839723B2 (en) * | 2000-08-29 | 2005-01-04 | Fujitsu Limited | Information management system |
-
2002
- 2002-02-14 US US10/075,633 patent/US7237243B2/en not_active Expired - Lifetime
- 2002-06-10 EP EP02012442A patent/EP1267518B1/en not_active Expired - Lifetime
- 2002-06-10 DE DE60205539T patent/DE60205539T2/en not_active Expired - Lifetime
- 2002-06-10 AT AT02012442T patent/ATE302512T1/en not_active IP Right Cessation
- 2002-06-11 JP JP2002170566A patent/JP2003099410A/en active Pending
-
2009
- 2009-05-07 JP JP2009113069A patent/JP5394123B2/en not_active Expired - Lifetime
Patent Citations (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6412364A (en) * | 1987-07-06 | 1989-01-17 | Nippon Telegraph & Telephone | System constitution control system |
JPH08152903A (en) * | 1994-11-28 | 1996-06-11 | Fujitsu Ltd | Multiprocessor system |
JPH09218842A (en) * | 1996-02-14 | 1997-08-19 | Fujitsu Ltd | Load sharing system |
US6220768B1 (en) * | 1996-06-28 | 2001-04-24 | Sun Microsystems, Inc. | Network asset survey tool for gathering data about node equipment |
WO1998000790A1 (en) * | 1996-07-01 | 1998-01-08 | Fujitsu Limited | Device and method of controlling intergroup resource utilization |
WO1998009402A1 (en) * | 1996-08-27 | 1998-03-05 | Metrix S.A. | Management of computer workstations |
JPH11316747A (en) * | 1997-11-04 | 1999-11-16 | Digital Equip Corp <Dec> | Multiple operating system instances and multiprocesor computer architecture with software control-type resource allocation |
JP2000057116A (en) * | 1998-08-06 | 2000-02-25 | Hitachi Ltd | Computer complex system operation control method |
JP2000151599A (en) * | 1998-11-12 | 2000-05-30 | Toshiba Corp | Network management system and network nanagement method applied to the system |
US6728748B1 (en) * | 1998-12-01 | 2004-04-27 | Network Appliance, Inc. | Method and apparatus for policy based class of service and adaptive service level management within the context of an internet and intranet |
WO2001057685A1 (en) * | 2000-01-31 | 2001-08-09 | Fujitsu Limited | Server determining method and device |
US20020116437A1 (en) * | 2000-01-31 | 2002-08-22 | Fujitsu Limited | Server decision method and device thereof |
US20010032239A1 (en) * | 2000-04-18 | 2001-10-18 | Atsushi Sashino | Object management system and method for distributed object system |
JP2001306537A (en) * | 2000-04-18 | 2001-11-02 | Hitachi Ltd | Distributed object system |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2017049939A (en) * | 2015-09-04 | 2017-03-09 | 株式会社日立ソリューションズ | Computer system and data distribution method |
Also Published As
Publication number | Publication date |
---|---|
JP5394123B2 (en) | 2014-01-22 |
ATE302512T1 (en) | 2005-09-15 |
EP1267518A3 (en) | 2003-11-19 |
US7237243B2 (en) | 2007-06-26 |
DE60205539T2 (en) | 2006-02-16 |
JP2003099410A (en) | 2003-04-04 |
DE60205539D1 (en) | 2005-09-22 |
US20030037177A1 (en) | 2003-02-20 |
EP1267518B1 (en) | 2005-08-17 |
EP1267518A2 (en) | 2002-12-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5394123B2 (en) | Multiple device management method and system | |
US8312115B2 (en) | Network booting apparatus and method | |
US7290258B2 (en) | Managing multiple devices on which operating systems can be automatically deployed | |
US8639798B2 (en) | Managing configuration items | |
US8782098B2 (en) | Using task sequences to manage devices | |
JP4473153B2 (en) | Method, system and program for network configuration checking and repair | |
US8234365B2 (en) | Method and system of alert notification | |
US8612574B2 (en) | Computer system for managing configuration item, and method and computer program therefor | |
US7600005B2 (en) | Method and apparatus for provisioning heterogeneous operating systems onto heterogeneous hardware systems | |
US8171119B2 (en) | Program deployment apparatus and method | |
US7856496B2 (en) | Information gathering tool for systems administration | |
JP5340610B2 (en) | Computer system, method and computer program for managing a plurality of components | |
US11706080B2 (en) | Providing dynamic serviceability for software-defined data centers | |
US20060080667A1 (en) | Method and apparatus for applying policies | |
US20030009657A1 (en) | Method and system for booting of a target device in a network management system | |
JP2009277081A (en) | Computer system for managing password for detecting information about component arranged on network, its method, and computer program | |
JP2010009552A (en) | Computer system for backing up software constituent elements, method therefor, and computer program | |
US8819200B2 (en) | Automated cluster node configuration | |
US8086659B2 (en) | Task sequence interface | |
JP5239072B2 (en) | Computer system, method and computer program for managing components | |
US8200823B1 (en) | Technique for deployment and management of network system management services | |
Heiss | Enterprise Rollouts with JumpStart. | |
Kim et al. | Design of platform management provider based on HPI manageability block using CIM/WBEM standards | |
JP2006172385A (en) | Computer system, method for calling storage management program and storage system | |
Agent et al. | PATROL® for Microsoft Windows Servers Release Notes |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20120614 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120622 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120924 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20130308 |
|
RD03 | Notification of appointment of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7423 Effective date: 20130701 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20130708 |
|
RD03 | Notification of appointment of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7423 Effective date: 20130723 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20130725 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20130801 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20131008 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20131016 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5394123 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313113 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
EXPY | Cancellation because of completion of term |