JP5721750B2 - 構成ドリフトの効果的管理 - Google Patents

構成ドリフトの効果的管理 Download PDF

Info

Publication number
JP5721750B2
JP5721750B2 JP2012557141A JP2012557141A JP5721750B2 JP 5721750 B2 JP5721750 B2 JP 5721750B2 JP 2012557141 A JP2012557141 A JP 2012557141A JP 2012557141 A JP2012557141 A JP 2012557141A JP 5721750 B2 JP5721750 B2 JP 5721750B2
Authority
JP
Japan
Prior art keywords
configuration
computer
baseline
computers
rule
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.)
Active
Application number
JP2012557141A
Other languages
English (en)
Other versions
JP2013522729A5 (ja
JP2013522729A (ja
Inventor
ケー.シャー ション
ケー.シャー ション
エイチ.シュリダール プラサンナ
エイチ.シュリダール プラサンナ
ピー.フィニガン ジェイムズ
ピー.フィニガン ジェイムズ
パルタサラティ スリバトサン
パルタサラティ スリバトサン
エイチ.グッドマン アラン
エイチ.グッドマン アラン
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Corp
Original Assignee
Microsoft Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Corp filed Critical Microsoft Corp
Publication of JP2013522729A publication Critical patent/JP2013522729A/ja
Publication of JP2013522729A5 publication Critical patent/JP2013522729A5/ja
Application granted granted Critical
Publication of JP5721750B2 publication Critical patent/JP5721750B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • H04L41/0813Configuration setting characterised by the conditions triggering a change of settings
    • H04L41/0816Configuration setting characterised by the conditions triggering a change of settings the condition being an adaptation, e.g. in response to network events
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer Hardware Design (AREA)
  • Mathematical Physics (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Debugging And Monitoring (AREA)
  • Stored Programmes (AREA)
  • Hardware Redundancy (AREA)
  • Testing And Monitoring For Control Systems (AREA)

Description

[背景技術]
データーセンターは頻繁に、様々なプラットフォームにわたって展開される物理マシンおよび仮想マシンを含む複雑なサーバー環境、地理的に離れた場所にあるところでさえ管理し得る。データーセンターは何百または何千ものサーバーを含むことがあるので、データーセンターの管理者は、サーバーのプロビジョニングと更新を自動化し、データーセンターの拡張を計画し、データーセンター環境の多数の課題の処理を支援することを可能とするツールを喜んで受け入れる。
計画外のシステムのダウンタイムのうち半分程度が、構成上の問題が原因であろうと推定されている。構成とは、システムが特定の目的で動作するようにハードウェアとソフトウェアの属性の値を特定し設定するプロセスをいう。管理者が日々生ずる問題とニーズに対応すると、サーバーが徐々にポリシまたは基準から逸脱するように構成されることとなりうる。この過程が構成ドリフト(configuration drift)と呼ばれる。
複数のコンピューターが同じように構成されていない場合は、これらのコンピューターの管理が急速に複雑化するおそれがある。当初は同一に構成されたコンピューターであっても、時間とともに構成が変化しうる。構成ドリフトが増大すると、問題を解決することがより困難となり、コンピューターを効果的に管理し維持することがより困難となる。
望ましい構成は定義され、コンピューターの当該望ましい構成からの逸脱(構成ドリフト)は評価され、当該コンピューターを(手動でまたは自動的に)修復して当該構成ドリフトを除去することにより、コンピューターのソフトウェア構成のドリフトは管理することができる。望ましい構成は、良く構成されていると考えられる1つまたは複数の既存のコンピューターの構成を読み取ることによって定義することができる。構成ドリフトの修復は、自動的に、および、制御された形で行うことができる。サービス関連の展開ベースラインと修復を統合して、展開イメージ/資産と展開したシステムの間のドリフトを防止し、構成ドリフトのない、イメージ・ベースのサービス提供、再展開、およびスケール・アウトを可能とすることができる。
本要約は、選択した概念を簡潔な形で導入するために与えたものである。その概念は、下記の発明を実施するための形態においてさらに説明する。本要約は、クレーム主題の主要な特徴または本質的な特徴を特定しようとするものではなく、特許請求された主題の範囲を限定するために使用しようとするものでもない。
本明細書で開示した主題の態様に従う構成ドリフトを管理するためのシステム100の一例を示す図である。 図1に関して説明したとおりの本明細書で開示した主題の態様に従う構成ドリフトを自動的に管理するための方法200の一例の流れ図である。 図1に関して説明したとおりの本明細書で開示した主題の態様に従う構成ドリフトを管理するために生成できるレポートの一例を示す図である。 図2に関して説明したとおりの本明細書で開示した主題の態様に従う構成ドリフトを管理するために生成できる別のレポートの一例を示す図である。 本明細書で開示した主題の態様を実装できるコンピューティング環境の一例を示すブロック図である。
概要
モデルベースのアプローチを使用して、システムの望ましい構成は管理することができる。構成マネージャが、構成ベースラインを定義することによりシステムの構成ドリフトを測定し管理するための機能を提供する。構成ベースラインは、オペレーティングシステム構成、ソフトウェアのアップデート、禁止および許可されているアプリケーション、ならびにカスタマイズされた設定に関する情報を含むことができる。構成ベースラインを定義することでデーターセンターの管理者は構成ドリフトを管理することができる。メンテナンスウィンドウを実装して、一群の物理マシンおよび仮想マシンのメンバに変更を適用する時点を組織が選択できるようにすることができる。
本明細書で開示した主題では、構成の目的を定義し、構成ドリフトを評価し、構成ドリフトを修復することにより構成ドリフトを管理する機能を提供するための方法、システムおよびコンピュータープログラム製品について説明する。望ましい構成は、構成ベースラインを生成することにより定義することができる。構成ベースラインは、関連する一群の構成規則を含むことができる。例えば、セキュリティに関する構成ベースラインが、セキュリティ問題等に関する構成規則を含み得る。構成ベースラインは、コンピューターの管理者によって、または、ソフトウェアベンダーもしくは他のユーザによって定義することができる。コンピューターの管理者は多くは、ソフトウェアを自分のコンピューターにインストールし、複数の設定値を調節することにより、当該ソフトウェアを自分のニーズに合わせる。ソフトウェアベンダーが定義した構成ベースラインは、このようなケースでは有用でないことがある。なぜなら、ソフトウェアベンダーは管理者がどの値を変更する可能性があるかを予測できないからである。新たな構成ベースラインを定義するために、変更した設定を追跡し、設定の位置を発見するのは埒が明かないであろう。
本明細書で開示した主題の態様によれば、ユーザが、1つまたは複数の所定の構成規則を含む構成ベースラインを定義することができる。管理されているコンピューターの適合性をチェックするユーザの目的が捉えられるように、構成規則を定義することができる。構成規則は構成設定と関連付けることができ、構成規則により、ターゲットタイプ(target type)、構成設定の妥当性検証(validation)、および修復を定義することができる。
構成設定は、任意の着目する設定(例えば、レジストリ値の名前、バージョンまたは更新日のようなファイル・プロパティの名前、プログラム要素プロパティの名前、等)であることができる。ターゲットタイプは、設定が影響を及ぼす管理されたエンティティ(例えば、プログラムまたはアプリケーション。その例としては、SQLサーバー、IISサーバー、データーベース、サービス、ウェブサイト、オペレーティングシステム等があるがこれらに限らない。)のタイプを定義する。ターゲットタイプをより詳細なレベルで定義する(例えば、コンピューターレベルのようなあまり詳細でないレベルではなくSQLサーバーまたはIISサーバーのレベルでターゲットを定義する)ことが、幾つかの点で有用である。例えば、ターゲットタイプが規定されるので、特定のコンピューターには管理されたエンティティがない場合は、その構成規則に関して当該コンピューターを評価する必要はない。さらに、構成ドリフトをより詳細なレベル、即ち、管理されたエンティティのレベルで報告することができる。例えば、構成ドリフトのレポートでは、例えば、特定のコンピューターで何かが誤って構成されていると報告するのではなく、当該特定のコンピューターでSQLサーバーが誤って構成されているがIISサーバーはそうではないと報告することができる。
妥当性検証では、特定のマシンまたは一群のマシンの設定の適合性または不適合性を決定できるように、所望の設定値または所望の設定値の範囲(例えば、2より大きい、2009年11月23日に等しいなど)を定義する。修復では、妥当性検証で定められたように、設定を取得するか当該設定をその所望の値に戻すために実行される1組のコマンドを定義する。本明細書で開示した主題の諸態様によれば、既存のコンピューターの構成を読み取ることによって、構成ベースラインを生成することができる。例えば、望ましく構成されたコンピューターの構成を読み取り、当該構成を使用して他のコンピューターに対する構成ベースラインを生成することができる。ソフトウェアベンダーが定義した構成ベースラインを、ソフトウェアで更新することができる。当該ソフトウェアは、予め構成したコンピューターを読み取り、ベンダー定義のベースラインを適切に修復して、新たなソフトウェアのインスタンスに対する構成ベースラインを生成する。構成ベースライン、規則および設定は構成データー記憶に格納することができる。
構成ベースラインは定義されると、定義された構成は一群のコンピューターに割り当てることができる。定期的に、スケジュールに従って、または必要に応じて、当該一群のコンピューターまたは当該一群のコンピューターの部分集合に含まれる各コンピューターは、それに割り当てた構成ベースラインに対して評価することができる。当該評価により、同一の設定に対する構成規則で規定した値とマッチしない設定値をコンピューターが有することを確認し、当該コンピューターが望ましい構成からドリフトしたと判定される。本明細書で開示した主題の諸態様により、1つまたは複数のデーターセンターのコンピューターの適合性をチェックし、ユーザに適合性のドリフトを警告することができる。
コンピューターの構成が当該コンピューターのベースライン構成から逸脱したとき、構成ドリフトが生じている。コンピューターが構成規則に関して望ましい構成からドリフトしたと判定されたとき、コンピューターの管理者は当該構成規則に関する修復動作を当該コンピューターに対して行うことができる。当該修復動作では、修復に関して規定された1組のコマンドを実行して、当該構成規則に関する当該コンピューターの構成ドリフトを除去する。同一のコンピューターに対して複数の構成規則を修復することができる。本明細書で開示した主題の諸態様によれば、修復を制御された形で行うことができる。例えば、管理者は次のコンピューターのサービス提供ウィンドウで修復を自動的に行うこととすることで、例えば、コンピューターのユーザに影響を及ぼさないようにすることができる。あるいは、管理者に、修復を必要に応じて(ほぼ即座に)実施するという選択肢を提供する。
管理パックは構成ベースラインから生成することができる。管理パックは、適合ポリシの生成を容易にし、管理されたコンピューターを生成された適合ポリシに対して評価することを容易にする、ユーザ規定の目的モデルを含むことができる。管理パックを管理されたコンピューターに送信して、管理されたコンピューターのポリシ処理エンジンが現在の状態(例えば、実際の設定値)とユーザ規定の目的モデルに基づいて適合レポートを生成し、目的の値または期待される値を表示できるようにすることができる。データーセンター内の管理されたコンピューターにつき、スケジュールされた形でまたは必要に応じての何れかにより、1つまたは複数の定義された構成ベースラインの適合性をチェックすることができる。必要に応じたスキャンのため、システムは、データーセンター内の特定の管理されたコンピューターに対して所定の構成ベースラインまたは構成規則を選択的に実行できるようにする。構成ドリフトがない場合でも、システムは、意図した着目する設定の値、実際の設定値、最終スキャン時刻、およびスキャン自体の状態(例えば、スキャンが進行中か否か、または、スキャンが失敗したか成功したか)を含みうるスキャン情報をユーザに提供する。
適合状況は、分散的に計算することができる。即ち、データーセンター管理コンピューターで適合性を評価するのではなく、管理されたコンピューターの各々が、構成ポリシをその最新の状態に対して評価する適合ポリシ処理エンジンを実行することができる。全ての修復作業、即ち、構成ドリフトから復旧する作業は、データーセンター管理コンピューターでスケジュールすることができる。修復作業の状況(スケジュール済、進行中、完了または失敗)は構成規則の状態として設定することができる。
構成ベースラインは、具体的なインスタンスと関連付けられ、または、サービス・テンプレート内のマシン層テンプレートの全てのインスタンスと関連付けられる。これにより、妥当性検証および修復を含む構成規則は、テンプレート展開の一部として展開されているかまたはマシン層のスケール・アウトの最中に展開されている、新たにプロビジョニングされたマシンごとに適用することができる。修復はスケジュールすることができる、または、必要に応じて実行することができる。誘導型の適合動作は3段階で実施することができる。3段階は、設定のスキャン、適合スキャンの実施、および適合情報の報告である。着目する様々な設定を段階ごとに使用できるように、これらの3段階の各々を独立にモデル化することができる。
構成ドリフトの管理
図1は、本明細書で開示した主題の諸態様に従う構成ドリフトを管理するためのシステム100の一例を示している。システム100の全部または一部が、図5に関して後述するコンピューターのような1つまたは複数のコンピューターに存在してもよい。あるいは、システム100またはその一部をスタンドアロンのシステムとして、または、プラグインもしくはアドインとして提供してもよい。システム100の全部または一部が、データーセンターのシステムセンタコンピューターに存在してもよい。システム100の全部または一部が、管理されたコンピューターに存在することができる。
システム100により管理されるコンピューターが、1つもしくは複数の物理マシン、1つもしくは複数の仮想マシンまたは物理マシンと仮想マシンの任意の組合せを備えることができる。図1では、管理されたコンピューター140が物理マシン122を表す。管理されたコンピューター134が仮想マシンのホスト120を表し、管理されたホスト・コンピューター132が2つの仮想ゲスト・マシン、即ち、ゲスト136およびゲスト138をホストする。VM(virtual machine)は、物理マシンのようにプログラムを実行するコンピューターを、ソフトウェアで実装したものである。データーセンターの仮想化では、アプリケーションとそれを支えるサーバー、記憶域およびネットワーク基盤の間に抽象層が生成される。仮想マシンにより、それを支える物理マシンのリソースを様々な仮想マシン間で共有することができる。仮想化により、1つの論理エンティティを複数の物理エンティティから生成することができ、または、多数の論理エンティティを、コンピューティング、記憶域、ネットワークまたはアプリケーション、のリソースを含む1つの物理エンティティから生成することができる。
各仮想マシンが自己のオペレーティングシステムを実行してもよい。仮想化を提供するソフトウェア層は仮想マシン・モニタまたはハイパーバイザと呼ばれる。ハイパーバイザを、ハードウェアで直接的に実行することができ、または、オペレーティングシステムの上で実行することができる。仮想マシンの環境では、複数のオペレーティングシステム環境が同一のコンピューター上で共存できるが、互いからの隔離は保たれる。仮想マシンは、別の物理ホスト・コンピューターシステムの領域内で追加の相違なるコンピューターシステムとして動作する、1組の電子ファイルを備えることができる。
システム100が、コンピューター102のような1つまたは複数のコンピューターを備えてもよい。当該1つまたは複数のコンピューターが、(プロセッサー142のような)プロセッサ、メモリー144のようなメモリー、および1つまたは複数のコンピューターで構成ドリフトを管理するための1つまたは複数のモジュール、のうち1つまたは複数を備えてもよい。当業界で良く知られた他のコンポーネントを含めてもよいが、ここではこれらのコンポーネントは示していない。構成ドリフトを管理するためのモジュール(複数可)をメモリー144にロードして、プロセッサー142のような1つまたは複数のプロセッサに、構成ドリフトを管理するためのモジュール(複数可)の動作を実施させてもよいことは理解されよう。構成ドリフトを管理するためのモジュール(複数可)が、構成マネージャー106のような構成マネージャを備えてもよい。構成マネージャ106が、構成サービス108のような構成サービスと、修復サービス110のような修復サービスを備えることができる。
構成マネージャ106と修復サービス110とは、上述のように幾つかのコンピューター、物理または仮想のホストまたはゲストと通信することができる。本明細書で開示した主題の態様によれば、管理されたコンピューターまたは一群のコンピューターに関する構成情報は、コンピューター102のようなデータセンターのシステムセンタコンピューターに入力することができる。構成ベースラインを生成することができ、当該構成ベースラインをターゲットコンピューターまたは一群のターゲットコンピューター(管理されたコンピューター)に割り当てることができる。1組の構成規則112等を生成することにより、構成ベースラインを生成することができる。構成ベースラインは、データ記憶104のような構成データ記憶に格納することができる。
構成規則112のような構成規則は、構成設定112aのような特定の設定を選択され、当該設定に対して値、値のリスト、または、値の範囲を与えることにより、作成することができる。検証112bのような検証アルゴリズムを作成することができる。当該検証アルゴリズムは、割り当てられた値が受入可能な値または値のリスト/範囲に従うか否かを判定することができる。構成規則は、対象112cのようなターゲットタイプの仕様を含むこともできる。例えば、ターゲットタイプが任意の管理されたエンティティであることができ、当該エンティティには、プログラム、アプリケーション、サービス、データベース、ウェブサイト、オペレーティングシステム等が含まれるがこれらに限らない。ターゲットシステムまたは一群のターゲットコンピューターを指定することができる。構成規則は、設定を所望の値に戻すためにとるべき1つの措置または1組の措置を含むことができる。1つまたは複数の設定を1つまたは複数の所望の値に戻すプロセスは修復と呼ばれる。修復112dは図1のこれらの措置を表す。
設定の所望の値は、ユーザにより当該設定に割り当てることができ、または、当該設定に対する値を特定の管理されたコンピューターから、例えば、管理されたコンピューター134または管理されたコンピューター132または管理されたコンピューター140等から取得することによって、当該設定に割り当てることができる。どのように不適合の値を送信し誰に警告を送信するかを記述する警告規則を指定することもできる。他の情報を構成規則に追加してもよく、これを112eで表す。構成規則112、等のような1組の構成規則を作成し、構成ベースライン114のような1つまたは複数の構成ベースラインに集約することができる。構成ベースラインを、ターゲットコンピューター116のような1つまたは複数のターゲットコンピューターに割り当てることができる。構成ベースライン、規則およびターゲットグループを構成データ記憶またはデータベース(例えば、データ記憶104)に格納することができる。
上述の情報を収集して管理パック118のような管理パックを生成することができる。管理パックは、当該情報の送信先である場所を特定し、管理されたコンピューターが適合しているか否かを判定するテストをどのように実行するかを記述することができる。次いで、構成サービス108のような構成サービスが管理パック(例えば、管理パック118)を、構成ベースラインのターゲットにおいて特定されたコンピューターに配布することができる。
管理されたコンピューター134のような管理されたコンピューター上の健康サービス126のような健康サービスが、管理パックで記述された構成に関して作業を実施するように動作することができる。管理パックで記述された作業に、適合ポリシの生成を含めることができる。適合ポリシプロセッサー128のような適合ポリシプロセッサーが、管理されたコンピューター(例えば、管理されたコンピューター134)が1つまたは複数の構成ベースラインに適合しているか否かを判定することができる。種々のレポートを生成してもよい。当該レポートとしては例えば、図3および4に関して説明し下記でより完全に説明するレポートがあるがこれらに限らない。当該レポートを、モニタもしくは他の表示装置に表示することができ、または、印刷することができる。当該レポートが、提示された値に関する情報を含むことができる。当該値に対して、1つまたは複数の設定値を設定することができる。幾つかのプログラムが1つまたは複数の同一の設定を使用してもよいことは理解されよう。この場合、提示された値が複数のアプリケーションの要求に従うように、規則を組み合わせることができる。例えば、1つのアプリケーションが、特定の設定の値が3より大きいと規定し、第2のアプリケーションがその設定の値が7未満であると規定してもよい。適合レポートにより、設定の値が4、5、または6であると示唆することができる。さらに、適合レポートにより、5のような特定の選択肢を提示してもよい。
構成ドリフト情報を含む適合結果は、データセンターのシステムセンタコンピューターに送信する、または、データセンターのシステムセンタコンピューターにより受け取ることができ、適合データ記憶124のような適合データ記憶に格納することができる。修復を、例えば次のメンテナンスウィンドウの間に、即座に(必要に応じて)、または、将来に向かってスケジュールして、自動的に行うことができる。それ以外にも、ユーザに修復の必要性を通知してもよく、修復を手動で実施することができる。コンピューターの適合状況とユーザが取った措置の両方を含む情報をユーザに提示することができる。例えば、特定のコンピューター上の特定のアプリケーションのインスタンスが特定の規則に適合しておらず、修復が次のメンテナンスウィンドウにスケジュールされているかまたはまだスケジュールされていないことを示す情報をユーザに提示することができる。
長期間にわたって行われた全ての修復は修復データ記憶105のような修復データ記憶に保持されまたは格納され、別の同様なシステムまたはインスタンスが追加された場合に、保持された修復の全てを新たなシステムに適用できるようにすることができる。例えば、予め生成した動作システムイメージを用いてマシンがセットアップされ、続いて修復がマシンに適用されたと仮定する。同じイメージを使用して別のシステムを展開する場合は、修復により行われた変更が失われるであろう。本明細書で開示した主題の諸態様によれば、行われた全ての修復が保持される。オペレーティングシステムのイメージを使用して別のシステムを展開するときは、保持された修復を新たなシステムに適用して、構成ドリフトを排除する。
図3は、作成できる適合レポートの一例である。図3は、WoodgroveITという企業(WG IT 302)に対する適合レポートを表し、当該企業は2つのサイトを、1つはニューヨークに(ニューヨーク304)、1つはサンフランシスコ(サンフランシスコ306)に有する。ニューヨークのサイトは3つのマシングループ、即ち、開発グループ(DEV308)、生産グループ(PROD310)およびステージンググループ(staging group)(STAG312)を有する。本例では、ユーザが生産グループのマシンを選択して(生産グループを検索314という見出しで示す)、それに関するレポートを受け取っている。レポートの本体316で列挙したマシンがニューヨークのサイトの生産マシンを表す。当該レポートから、識別子C1_NewYorkProd 318を有するコンピューターが適合しており(320)、識別子Computer2_NYP2 322を有するコンピューターが不適合である(324)ことが分かる。さらに、適合レポート300はどの種類のベースラインが不適合であるかを示す。
図3では、パッチベースライン326が不適合である(328)。不適合である(332)Computer5_NYP2 330を除いて、レポートに列挙された他の全てのコンピューターは適合している。Computer5_NYP2 330を選択することで、Computer5_NYP2 330に対する適合および不適合のアプリケーションベースラインのリストを生成することができる。したがって、このレポートにより、所与のコンピューターまたは一群のコンピューターの、これらのコンピューターに関連付けられた構成ベースラインの適合または不適合の状況に関する情報を提供することができる。特定のコンピューターまたは一群のコンピューターが適合していない場合は、当該レポートにより、どのマシンが適合しておりどのマシンが適合していないか、および、構成ベースライン内のどの特定の1つまたは複数の規則に関してマシンが不適合であるかを特定する情報を提供することができる。提示された他の情報には、最終スキャン日時334および次のスケジュールされたスキャン日時336を含めることができるがこれらに限らない。
図2は、本明細書で開示した主題の諸態様に従う構成ドリフトを管理するための方法200の一例を示している。図1に関して上述したように、説明した方法またはその一部をシステム100またはその一部により行ってもよい。202で、設計の目的を定義することができる。
コンピューターを構成することは、単に設定を選択して値を当該設定に割り当てることではなく、困難な作業でありうる。最初に、関係する非常に多くの設定が難題である。どのコンピューターにも、非常に多くの可能な設定が存在する。当該可能な設定の数は、ユーザが管理できる範囲を確実に超えている可能性があり、自動システムが検証できる範囲さえも超えているかもしれない。これらの設定の各々に複数の値を割り当てることができる。本明細書で開示した主題の諸態様によれば、1組の特定の設定を識別して監視する。
次に、アプリケーションプロバイダもユーザも、自力では、構成ベースラインを効果的に作成することができないかもしれない。アプリケーションベンダーは、どの設定がそのアプリケーションに影響を及ぼすかを知っているかもしれないが、当該設定に対するどの値がユーザの環境において最も効果的に動作するかは知らないかもしれない。例えば、SQLアプリケーションのプロバイダは、アプリケーションの機能が特定のレジストリキーに依存することを知っているかもしれないが、当該レジストリキーがユーザの環境においてどの値に設定されるかは知らないかもしれない。同様に、ユーザは、どの設定が自分のシステムで実行されているアプリケーションに影響を及ぼすかを知らないかもしれないが、或る設定の値を、アプリケーションが当該ユーザの環境で良く動作することとなる値に設定することによってシステムを調整してしまう可能性はある。本明細書で開示した主題の諸態様によれば、どの設定が関係しているかまたは当該設定に対する値は何かを知らないかもしれないユーザが、望ましく構成されたマシンを特定することができる。自動機能が、良く動作するマシンの設定を読み取ることができ、特定したマシンの設定に対する値を使用してベースライン構成またはその一部を生成することができる。特定されたマシンから読み取った値と設定は、オペレーティングシステムの設定またはアプリケーションレベルの設定を含むことができる。生成したベースライン構成を使用して、新たなサービスのインスタンスまたは新たなマシンの適合性を評価することができる。
最後に、上述の課題に加えて、別の課題は、各設定の間に1つまたは複数の依存性が存在しうることである。即ち、任意の所与の設定が複数のプログラムまたはアプリケーションによって使用されることがある。したがって、或る設定の値を変更する過程において、ユーザが別のプログラムまたはアプリケーションの実行に悪影響を及ぼしてしまうことがある。例えば、或る設定がアプリケーションAとアプリケーションBの両方により使用されていると仮定する。ユーザがアプリケーションAの設定を変更した場合、アプリケーションBを再起動する必要があるかもしれない。なぜならば、アプリケーションBがその実行中に不変であると期待する値が不意に変更されたからである。これはアプリケーション間の依存性がどのように構成管理に影響を及ぼすかの一例にすぎないことは理解されよう。したがって、本明細書で開示した主題の諸多様によれば、自動機能が、設定値の変更の影響を受けるアプリケーションを決定することができ、影響を受けた任意のプログラムまたはアプリケーションを自動的に再開することができる。
さらに、複数のプログラムが特定の設定に依存し、第1のプログラムが第1の範囲にあるべき設定の値に依存し、第2のプログラムが第2の範囲にあるべき設定の値に依存する場合は、自動機能により、規則を組み合わせて、第1のプログラムおよび第2のプログラムの両方と連携する値を決定することができる。例えば、自動機能が、第1の範囲と第2の範囲の両方にある設定値を決定してもよい。上述の例では、両方とも特定の設定を使用する2つのプログラムが存在するが、自動機能は2つのアプリケーションに限定されず、任意数のアプリケーションの値の範囲を評価して、当該アプリケーションの全部または大部分と連携する値を決定することができる。設定の影響を受ける全てのプログラムを検証する妥当性検証を起こすことができる。自動機能が、影響を受けた任意の構成規則を調整してもよい。
あるいは、構成すべき設定を選択し、当該設定に対する値を選択することができる。ベンダーのモデル設定を用いて構成設定を定義することができ、または、ベンダーのモデル設定から始めて、別のマシンの設定を読み当該ベンダーのモデル設定をマッチするように変更することで当該ベンダーのモデル設定を修復することにより、構成設定を定義することができる。上述のように、構成規則は、構成設定、妥当性検証、ターゲットタイプおよび、構成ドリフトを修復する1組の動作(修復)を含むことができる。本明細書で開示した主題の諸態様によれば、ターゲットタイプを規則ごとに、アプリケーション、プログラムまたはオペレーティングシステムの粒度レベルのような管理されたエンティティのレベルで定義することができる。例えば、ユーザは、特定の規則に関連付けられたターゲットが、特定のアプリケーションであり、ウェブサイトであり、データベースであると規定することができる。上記特定のアプリケーションとしては例えば、SQLサーバー、ExchangeサーバーまたはアプリケーションA、等があるがこれらに限らない。上記ウェブサイトには例えばIISのウェブサイトがあるがこれに限らない。上記データベースにはSQLデータベース等があるがこれらに限らない。この粒度レベルで定義されたターゲットにより、上述のより有益なレポートが可能となり、また、以下でより完全に説明するが、より対象を絞った評価が可能となる。
204で、1つのマシンまたは1組のマシンを、当該1つのマシンまたは1組のマシンに対する構成ベースラインの適合に関して評価することができる。ユーザは、どのマシンまたは一群のマシンが評価されるかを制御することができる。ユーザは、どの構成規則に関して1つのマシンまたは一群のマシンを評価するかを制御することができる。評価のスケジューリングを制御することができ、あるいは、評価を必要に応じて即座に行うことができる。ターゲットが管理されたエンティティのレベルで定義されるので、評価プロセスが簡素化される。なぜならば、対象のアプリケーションまたはプログラムを有するマシンのみが評価されるからである。例えば、マシンAに対する構成ベースライン内の構成規則が、特定の設定に関して特定のタイプの電子メールアプリケーションのターゲットタイプのみを規定し、マシンAが当該特定のタイプの電子メールアプリケーションを有さない場合、その設定をそのマシンで評価する必要はない。
206で、評価に関する情報をユーザに提示することができる。当該情報を、印刷したレポートまたはディスプレイ、等の形で提示することができる。ターゲットが管理されたエンティティのレベルで定義されるので、当該ユーザに提示された情報はより有益でありうる。例えば、特定のマシンが構成ベースラインに適合しないとだけレポートするのではなく、図3に関して上述したように、ユーザに提示する情報に、適合しない特定のアプリケーションまたはプログラムを含めることもできる。
208で、修復を行うことができる。修復とは、修復されたマシンが構成ベースラインに適合する状態に戻るように構成ドリフトを補正するよう実施される1組の動作をいう。修復を手動で行うかまたは自動で行うことができる。修復を1つまたは複数のコンピューター(例えば、選択したコンピューターまたは一群のコンピューターのみ)で行うことができる。修復を、1つまたは複数のコンピューターの1つまたは複数の選択された構成規則に関連する設定にのみ制限することができる。マシンがドリフトしていると判定された場合、ユーザは修復を自動で行わせることとするか、または、ユーザは修復を手動で行うこととすることができる。ユーザが自動修復を選択した場合、自動修復を即座に、または、マシンの次のメンテナンスウィンドウで実施することができる。例えば、何人かのユーザがマシンを使用する場合、メンテナンスウィンドウで修復を行うことで、ユーザが使用したいときにシステムが動作可能であることを保証することができる。
210で、アプリケーション、プログラム、一群のアプリケーション、オペレーティングシステムまたはマシンの新たなインスタンスを、構成ドリフトなしに既存のオペレーティングシステムイメージから生成することができる。本明細書で開示した主題の諸態様によれば、適用される任意の修復が保持され、新たなインスタンスが生成されたときに使用される。
図4は、作成できるレポート400の一例である。レポート400は、選択されたコンピューター、即ち、選択されたコンピューター402の構成を読み取った結果を表示している。規則ごとに(例えば、規則1 404から規則4 406まで)、当該レポートは状況(例えば、規則の読み取りに成功した(408)または規則の読取準備が完了した(410))と検証規則(例えば、5に等しい(412))を示している。図4で、選択されたコンピューター402が、新たなインスタンスを生成するためのモデルであるコンピューターを表してもよい。自動機能が、当該選択されたコンピューターと通じて、構成ベースラインで定義された設定ごとに値を読み取ることができる。この構成ベースラインを必要に応じて他のサーバーに適用することができる。妥当性検証規則列(規則1 404に関して、5に等しい(412))は、選択されたコンピューター402上の対応規則に対する構成設定の値を示す。各規則を異なるコンピューターに向けることができる。例えば、構成ベースラインにおける規則ごとに、規則1を、コンピューター1に向けるように設定することができ、規則2を、コンピューター2に向けるように設定することができる、等である。それに応答して、構成設定を、規則1の構成設定に対してコンピューター1から読み出し、規則2の構成設定に対してコンピューター2から読み出す。これにより、ユーザは構成ベースラインの一部を複数のマシンから生成することができる。即ち、構成ベースラインを、SQLアプリケーションのような第1のターゲットに対して良く構成された或るマシンの組合せ、オペレーティングシステムのような第2のターゲットに対して良く構成された第2のマシン、別のアプリケーションに対して良く構成された第3のマシン、等から生成することができる。
適切なコンピューティング環境の例
本明細書で開示した主題の様々な態様に対するコンテキストを提供するため、図5および以下の議論は、様々な実施形態を実装できる適切なコンピューティング環境510を簡潔かつ一般的に説明しようとするものである。本明細書で開示した主題を、プログラムモジュールのような、1つまたは複数のコンピューターまたは他のコンピューティング装置により実行されるコンピューター実行可能命令の一般的なコンテキストで説明するが、本明細書で開示した主題の一部を他のプログラムモジュールとの組合せおよび/またはハードウェアとソフトウェアの組合せで実装することもできることは当業者には理解されよう。一般に、プログラムモジュールは、特定のタスクを実施するかまたは特定のデータ型を実装するルーチン、プログラム、オブジェクト、物理アーチファクト(physical artifact)、データ構造、等を含む。一般に、プログラムモジュールの機能を様々な実施形態において必要に応じて組み合わせるかまたは分散させてもよい。コンピューティング環境510は適切な動作環境の一例にすぎず、本明細書で開示した主題の使用範囲または機能範囲を限定しようとするものではない。
図5を参照すると、線形スタック上の共通ルーチンを効率的に再開するためのコンピューティング装置がコンピューター512の形で記載されている。コンピューター512は、演算装置514、システムメモリ516、およびシステムバス518を備えてもよい。演算装置514は、様々な利用可能なプロセッサーのうち任意のものであることができる。デュアルマイクロプロセッサーおよび他のマルチプロセッサーキテクチャを演算装置514として使用することもできる。システムメモリ516には、揮発性メモリ520と不揮発性メモリ522を含めてもよい。不揮発性メモリ522には、ROM(read only memory)、PROM(programmable ROM)、EPROM(electrically programmable ROM)またはフラッシュメモリを含めることができる。揮発性メモリ520には、外部キャッシュメモリとして動作しうるRAM(random access memory)を含めてもよい。システムバス518は、システムメモリ516を含むシステム物理アーチファクトを演算装置514に接続する。システムバス518は、メモリバス、メモリコントローラ、周辺バス、外部バス、またはローカルバスを含む幾つかの種類のうち任意のものであることができ、任意の様々な利用可能なバスアーキテクチャを利用してもよい。
コンピューター512は一般に、揮発性および不揮発性の媒体、取り外し可能および取り外し不能な媒体のような、様々なコンピューター読取可能媒体を含む。コンピューター記憶媒体を、コンピューター読取可能命令、データ構造、プログラムモジュール、または他のデータのような情報を記憶するための任意の方法または技術で実装してもよい。コンピューター記憶媒体には、RAM、ROM、EEPROM、フラッシュメモリもしくは他のメモリ技術、CDROM、DVD(digital versatile disk)もしくは他の光ディスク記憶、磁気カセット、磁気テープ、磁気ディスク記憶もしくは他の磁気記憶装置、または所望の情報の記憶に使用できコンピューター512がアクセス可能な他の任意の非一時的媒体(non−transitory medium)が含まれるがこれらに限らない。
図5はユーザとコンピューターリソースの間の中間体として動作できるソフトウェアを説明するものであることは理解されよう。当該ソフトウェアには、ディスク記憶524に格納できるオペレーティングシステム528を含めてもよい。オペレーティングシステム528は、コンピューターシステム512のリソースを制御し割り当てることができる。ディスク記憶524は、インターフェース526のような取外し不能なメモリインターフェースを介してシステムバス518に接続されるハードディスクドライブであってもよい。システムアプリケーション530は、システムメモリ516またはディスク記憶524の何れかに格納されたプログラムモジュール532とプログラムデータ534を通じて、オペレーティングシステム528によるリソース管理を利用する。コンピューターを様々なオペレーティングシステムまたはオペレーティングシステムの組合せで実装できることは理解されよう。
ユーザは、入力装置(複数可)536を介してコマンドまたは情報をコンピューター512に入力することができる。入力装置536には、マウス、トラックボール、スタイラスペン、タッチパッド、キーボード、マイクロフォン、等のようなポインティングデバイスが含まれるがこれらに限らない。これらおよび他の入力装置は、インターフェースポート(複数可)538を介してシステムバス518により演算装置514に接続される。インターフェースポート(複数可)538は、シリアルポート、パラレルポート、USB(universal serial bus)等を表してもよい。出力装置(複数可)540が、入力装置を使用するのと同じ種類のポートを利用してもよい。特定のアダプタを要するモニタ、スピーカ、およびプリンタのような幾つかの出力装置540が存在することを示すために、出力アダプタ542が提供されている。出力アダプタ542には、出力装置540とシステムバス518の間の接続を提供するビデオカードおよびサウンドカードが含まれるがこれらに限らない。他の装置および/もしくはシステムまたはリモートコンピューター(複数可)544のような装置が、入力機能と出力機能の両方を提供してもよい。
コンピューター512は、リモートコンピューター(複数可)544のような1つまたは複数のリモートコンピューターへの論理接続を用いてネットワーク環境で動作することができる。リモートコンピューター544は、パーソナルコンピューター、サーバー、ルータ、ネットワークPC、ピアデバイスまたは他の共通ネットワークノードであることができ、一般に、コンピューター512に関して上述した要素のうち多数または全部を含むが、図4ではメモリ記憶装置546のみ示してある。リモートコンピューター(複数可)544を、通信接続550を介して論理的に接続することができる。ネットワークインターフェース548は、LAN(local area network)およびWAN(wide area network)のような通信ネットワークを包含するが、他のネットワークを含んでもよい。通信接続(複数可)550は、ネットワークインターフェース548をバス518に接続するために採用されるハードウェア/ソフトウェアを指す。接続550は、コンピューター512の内部または外部にあってもよく、(電話、ケーブル、DSLおよび無線の)モデム、ISDNアダプタ、イーサネットカード、等のような内部および外部の技術を含んでもよい。
図示したネットワーク接続は例にすぎず、コンピューター間の通信リンクを確立するための他の手段を利用してもよいことは理解されよう。コンピューター512または他のクライアント装置をコンピューターネットワークの一部として展開できることは当業者には理解されよう。これに関して、本明細書で開示した主題は、任意数のメモリまたは記憶ユニット、および任意数の記憶ユニットまたはボリュームにわたって生ずる任意数のアプリケーションおよびプロセスを有する任意のコンピューターシステムに関するものであってもよい。本明細書で開示した主題の態様は、リモート記憶またはローカル記憶を有するネットワーク環境に展開したサーバーコンピューターとクライアントコンピューターを有する環境に適用してもよい。本明細書で開示した主題の態様は、プログラミング言語の機能、解釈実行機能を有する、スタンドアロンのコンピューティング装置に適用してもよい。
本明細書で説明した様々な技法は、ハードウェアもしくはソフトウェアと関連して、または必要に応じてその両方の組合せで実装してもよい。したがって、本明細書で説明した方法および装置、またはその特定の態様もしくは部分が、フロッピディスク、CD−ROM、ハードドライブ、または他の任意の機械読取可能な記憶媒体のような有形の媒体で具体化されたプログラムコード(即ち、命令)の形式をとってもよく、プログラムコードがコンピューターのようなマシンにロードされ当該マシンにより実行されると、当該マシンは本明細書で開示した主題の態様を実施するための装置になる。プログラム可能コンピューター上でプログラムコードを実行する場合は、コンピューティング装置は一般に、プロセッサー、当該プロセッサーによる可読記憶媒体(揮発性および不揮発性のメモリおよび/または記憶要素)、少なくとも1つの入力装置、および、少なくとも1つの出力装置を含む。例えばデータ処理API等の利用を通じて、ドメイン固有のプログラミングモデルの態様の生成および/または実装を利用できる1つまたは複数のプログラムは、高レベルの手続型またはオブジェクト指向のプログラミング言語で実装してコンピューターシステムと通信してもよい。しかし、必要ならば、プログラム(複数可)をアセンブリ言語または機械語で実装することができる。いずれにせよ、言語はコンパイル型またはインタプリタ型の言語であってもよく、ハードウェア実装と組み合わせてもよい。
本明細書で開示した主題を添付の図面と関連して説明したが、修正を加えて同じ機能を様々な方法で実施してもよいことは理解されよう。

Claims (18)

  1. システムであって、
    プロセッサーと、
    前記プロセッサーに複数のコンピューターの構成ドリフトを、
    一群の構造規則の各々が、プログラム、サービス、アプリケーション、データベース、オペレーティングシステムまたはウェブサイトを含む管理されたエンティティを備えたターゲットに関連付けられた前記一群の構成規則を定義することにより、前記複数のコンピューターに対して構成ベースラインを定義し、
    前記一群の構成規則のうち1つの構成規則が、一組の命令を含み、ターゲットを前記構成ベースラインに適合する状態に戻すために、前記構成規則について構成ドリフトを修復するよう自動的にランし、
    前記構成ベースラインが、複数の既存のコンピューターの各々から読み出された少なくとも1つの構成設定を結合することにより生成され、
    前記一群の構成規則を含む定義された前記構成ベースラインに基づいて管理パックを生成し、
    前記管理パックを前記複数のコンピューターのうち少なくとも1つに送信し、
    前記複数のコンピューターのうち前記少なくとも1つから情報を受信し、該情報が、前記管理パックに基づいて前記複数のコンピューターのうち前記少なくとも1つによって実行される、前記複数のコンピューターのうち少なくとも1つの構成ドリフトの評価を含み、構成ドリフトが少なくとも1つのコンピューターの実際の構成の前記構成ベースラインからの逸脱を含む、
    ことにより管理させるように構成したモジュールを含むメモリと
    を含むことを特徴とするシステム。
  2. 前記モジュールが必要に応じて構成ドリフトを評価する、請求項1記載のシステム。
  3. 構成ドリフトが、前記一群の構成規則の特定の構成規則に関して前記複数のコンピューターのうち特定のコンピューターに対してのみ評価されることを特徴とする請求項1に記載のシステム。
  4. 時間期間にわたるサービスに対して実行された全ての修復を保持し、新たな前記サービスのインスタンスに適用して構成ドリフトを排除することを特徴とする請求項1に記載のシステム。
  5. 方法であって、
    データセンター管理コンピューターからの複数の管理されたコンピューターの構成ドリフトを、少なくとも1つのモジュールを前記データセンター管理コンピューターで実行することにより管理するステップであって、前記少なくとも1つのモジュールが、
    一群の構成規則の各々が、プログラム、サービス、アプリケーション、データベース、オペレーティングシステムまたはウェブサイトを含む管理されたエンティティを備えたターゲットに関連付けられた、前記一群の構成規則を定義することによって前記複数の管理されたコンピューターに対して構成ベースラインを定義し、該構成ベースラインが、複数のマシンの各々から読み出された少なくとも1つの構成設定を結合することにより生成され、
    前記一群の構成規則を含む定義された前記構成ベースラインに基づいて管理パックを生成し、
    前記管理パックを前記複数のコンピューターのうち少なくとも1つに送信し、
    前記複数のコンピューターのうち前記少なくとも1つから情報を受信し、該情報が、前記管理パックに基づいて前記複数のコンピューターのうち前記少なくとも1つによって実行される、前記複数のコンピューターのうち前記少なくとも1つの構成ドリフトの評価を含み、構成ドリフトが、前記少なくとも1つのコンピューターの実際の構成の定義された前記構成ベースラインからの逸脱を含み、
    前記少なくとも1つのコンピューターが、前記定義された構成ベースラインを含む前記一群の構成規則のうち少なくとも1つの構成規則からドリフトしたと判定し、
    一組の命令を用いて、ドリフトした前記少なくとも1つのコンピューターの前記少なくとも1つの構成規則に関連付けられた設定のみ、必要に応じて修復して、前記少なくとも1つのドリフトしたコンピューターを前記構成ベースラインに適合する状態に戻すように構成ドリフトを修復する、
    ステップを含むことを特徴とする方法。
  6. 前記一群の構成規則のうち第1の構成規則と第2の構成規則の間に存在する依存性を決定して、特定の設定が前記第1の構成規則と前記第2の構成規則の両方に関連付けられるようにしたことに応答して、前記第1の構成規則と前記第2の構成規則の両方に対する妥当性検証条件に適合する、前記特定の設定に対する値を決定するステップをさらに含むことを特徴とする請求項5に記載の方法。
  7. 前記第1の構成規則と前記第2の構成規則の両方に対する妥当性検証条件に適合する、前記特定の設定に対して提案された値を表示するステップをさらに含むことを特徴とする請求項6に記載の方法。
  8. 構成ベースラインを定義することが、第1のコンピューターに対し、第1のターゲットに関連付けられる、前記構成ベースラインについての第1の構成規則を識別すると共に、第2の異なるコンピューターに対し、第2の異なるターゲットに関連付けられる、前記構成ベースラインについての第2の構成規則を識別することによって実行されることを特徴とする請求項5記載の方法。
  9. 前記第1のコンピューターに対し前記構成ベースラインの前記第1の構成規則を識別したことに応答して、前記第1のターゲットの設定が前記第1の構成規則に対する前記第1のコンピューターの設定として設定され、前記第2のコンピューターに対し前記構成ベースラインの前記第2の構成規則を識別したことに応答して、前記第2のターゲットの設定が前記第2の構成規則に対する前記第2のコンピューターの設定として設定されることを特徴とする請求項8に記載の方法。
  10. 構成ドリフトに関して必要に応じた前記少なくとも1つのコンピューターの評価を実行するステップをさらに含むことを特徴とする請求項5に記載の方法。
  11. 前記一群の構成規則のうち第1の構成規則の設定値を変更するステップと、
    前記一群の構成規則のうち前記第1の構成規則と第2の構成規則の間に存在する依存性を決定したことに応答して、前記第2の構成規則のターゲットを自動的に再開するステップであって、前記第2の構成規則のターゲットが、プログラム、オペレーティングシステム、サービス、アプリケーション、データベース、またはウェブサイトを含む管理されたエンティティを備えたステップと
    をさらに含むことを特徴とする請求項5に記載の方法。
  12. コンピューター可読記憶媒体であって、
    実行時に少なくとも1つのプロセッサーに、複数のコンピューターの構成ドリフトを、
    一群の構成規則の各々がターゲットに関連付けられた前記一群の構成規則を定義することによって、前記複数のコンピューターに対して構成ベースラインを定義し、前記ターゲットが管理されたエンティティのレベルで定義され、前記構成ベースラインが複数の既存のコンピューターの各々から読み出された少なくとも1つの構成設定を結合することにより生成され、
    前記一群の構成規則を含む定義された前記構成ベースラインに基づいて管理パックを生成し、
    前記管理パックを前記複数のコンピューターのうち少なくとも1つに送信し、
    前記複数のコンピューターのうち前記少なくとも1つから情報を受信し、該情報が、前記管理パックに基づいて前記複数のコンピューターのうち前記少なくとも1つによって実行される、前記複数のコンピューターのうち少なくとも1つの構成ドリフトの評価を含み、構成ドリフトが、前記少なくとも1つのコンピューターの実際の構成の前記構成ベースラインからの逸脱を含み、
    前記複数のコンピューターのうち少なくとも1つのコンピューターが前記構成ベースラインの前記一群の構成規則のうち少なくとも1つの構成規則に適合しないと判定したことに応答して、前記少なくとも1つのコンピューターが適合しない前記少なくとも1つの構成規則に対する前記少なくとも1つのコンピューターの次のメンテナンスウィンドウにつき前記少なくとも1つのコンピューターの修復をスケジュールし、該修復が、一組の命令を備え、前記構成ベースラインへの適合の状態を前記少なくとも1つのコンピュータに戻すように構成ドリフトを修復する
    ことによって管理させるコンピューター実行可能命令を含むことを特徴とするコンピューター可読記憶媒体。
  13. 実行時に前記少なくとも1つのプロセッサーに、前記複数のコンピューターのうち前記少なくとも1つのコンピューターが適合せず、前記少なくとも1つの構成規則に対する修復がスケジュールされたことを報告させるコンピューター実行可能命令をさらに含むことを特徴とする請求項12に記載のコンピューター可読記憶媒体。
  14. 実行時に前記少なくとも1つのプロセッサーに、サービスの新たなインスタンスに対するベースライン構成を、前記サービスに対する既存のコンピューターの構成ベースラインの少なくとも1つの規則を読み取ると共に、前記新たなインスタンスに対する前記サービスの設定値を前記既存のコンピューターの設定値に設定することによって、定義させるコンピューター実行可能命令をさらに含むことを特徴とする請求項13に記載のコンピューター可読記憶媒体。
  15. 実行時に前記少なくとも1つのプロセッサーに、前記構成ベースラインに適合するコンピューターと前記構成ベースラインに適合しないコンピューターとのリストを表示させるコンピューター実行可能命令をさらに含むことを特徴とする請求項13に記載のコンピューター可読記憶媒体。
  16. 実行時に前記少なくとも1つのプロセッサーに、前記適合しないコンピュータについてのターゲットを表示させるコンピューター実行可能命令をさらに含むことを特徴とする請求項15に記載のコンピューター可読記憶媒体。
  17. 実行時に前記少なくとも1つのプロセッサーに、サービスの新たなインスタンスを作成させるコンピューター実行可能命令であって、時間期間にわたって前記サービスに行った全ての修復を保持すると共に、全ての保持した修復を前記サービスの前記新たなインスタンスに適用することによって、前記新たなインスタンスに対する構成ドリフトが排除される、コンピューター実行可能命令をさらに含むことを特徴とする請求項12に記載のコンピューター可読記憶媒体。
  18. 前記構成ベースラインが少なくとも1つの許可されたアプリケーションおよび少なくとも1つの禁止されたアプリケーションに関する情報を含む、請求項1記載のシステム。
JP2012557141A 2010-03-11 2011-03-04 構成ドリフトの効果的管理 Active JP5721750B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US12/721,579 US8762508B2 (en) 2010-03-11 2010-03-11 Effectively managing configuration drift
US12/721,579 2010-03-11
PCT/US2011/027307 WO2011112473A2 (en) 2010-03-11 2011-03-04 Effectively managing configuration drift

Publications (3)

Publication Number Publication Date
JP2013522729A JP2013522729A (ja) 2013-06-13
JP2013522729A5 JP2013522729A5 (ja) 2014-04-24
JP5721750B2 true JP5721750B2 (ja) 2015-05-20

Family

ID=44560979

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012557141A Active JP5721750B2 (ja) 2010-03-11 2011-03-04 構成ドリフトの効果的管理

Country Status (6)

Country Link
US (1) US8762508B2 (ja)
EP (1) EP2545446B1 (ja)
JP (1) JP5721750B2 (ja)
KR (1) KR101728579B1 (ja)
CN (1) CN102754075B (ja)
WO (1) WO2011112473A2 (ja)

Families Citing this family (56)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4976672B2 (ja) * 2005-09-13 2012-07-18 キヤノン株式会社 ネットワークデバイス装置、データ処理方法及びコンピュータプログラム
US8762508B2 (en) * 2010-03-11 2014-06-24 Microsoft Corporation Effectively managing configuration drift
US9110709B2 (en) * 2010-12-14 2015-08-18 International Business Machines Corporation Preserving changes to a configuration of a running virtual machine
US8543671B1 (en) * 2010-12-30 2013-09-24 United States Automobile Association (USAA) Grouped computing device configuration management
US20140040299A1 (en) * 2012-08-03 2014-02-06 Cisco Technology, Inc. Automated Method of Detecting Pattern Matches between Converged Infrastructure Models and an Operating Converged Infrastructure
WO2014088431A1 (en) * 2012-12-05 2014-06-12 Matthew Williams Method of analysing configuration data
US9904533B2 (en) 2013-03-15 2018-02-27 Oracle International Corporation Circular buffer of software versions
US9665366B2 (en) 2014-09-26 2017-05-30 Oracle International Corporation Creation of a software configuration signature for software
US10073690B2 (en) 2014-09-26 2018-09-11 Oracle International Corporation Populating content for a base version of an image
US10095501B2 (en) 2013-03-15 2018-10-09 Oracle International Corporation Deployment and activation of updates on target hosts
US9280741B2 (en) * 2013-05-01 2016-03-08 Citrix Systems, Inc. Automated alerting rules recommendation and selection
EP3097481B1 (en) 2014-01-21 2022-11-30 Oracle International Corporation System and method for supporting multi-tenancy in an application server, cloud, or other environment
US10951655B2 (en) * 2014-09-26 2021-03-16 Oracle International Corporation System and method for dynamic reconfiguration in a multitenant application server environment
WO2016049499A1 (en) * 2014-09-26 2016-03-31 Oracle International Corporation Drift management of images
US9378461B1 (en) * 2014-09-26 2016-06-28 Oracle International Corporation Rule based continuous drift and consistency management for complex systems
US9904534B2 (en) 2015-05-29 2018-02-27 Oracle International Corporation Inter-tenant and intra-tenant flock management
US10187492B2 (en) * 2015-07-02 2019-01-22 Entit Software Llc Maintenance window scheduling
US10027758B2 (en) 2015-10-05 2018-07-17 International Business Machines Corporation Distributed load processing using location-based internet of things device clusters
US9898325B2 (en) * 2015-10-20 2018-02-20 Vmware, Inc. Configuration settings for configurable virtual components
US10521325B2 (en) * 2016-01-25 2019-12-31 Micro Focus Llc Managing configuration drift
US9990234B2 (en) 2016-02-11 2018-06-05 International Business Machines Corporation Distributed load processing using clusters of interdependent internet of things devices
US10382530B2 (en) 2016-02-11 2019-08-13 International Business Machines Corporation Distributed load processing using drift-based dynamic clusters of Internet of Things devices
US9811387B2 (en) 2016-02-11 2017-11-07 International Business Machines Corporation Distributed load processing using sampled clusters of location-based internet of things devices
US9954953B2 (en) 2016-02-11 2018-04-24 International Business Machines Corporation Distributed load processing using forecasted location-based internet of things device clusters
US10970182B2 (en) 2016-03-03 2021-04-06 International Business Machines Corporation Learning-based drift detection tool
US11188655B2 (en) 2016-05-18 2021-11-30 Micro Focus Llc Scanning information technology (IT) components for compliance
US10789145B2 (en) * 2017-04-28 2020-09-29 Jpmorgan Chase Bank, N.A. System and method for implementing a server configuration drift monitoring tool
US10545755B2 (en) 2017-09-07 2020-01-28 Servicenow, Inc. Identifying customization changes between instances
US11023218B1 (en) * 2017-12-31 2021-06-01 Wells Fargo Bank, N.A. Metadata driven product configuration management
US10819731B2 (en) 2018-02-06 2020-10-27 Bank Of America Corporation Exception remediation logic rolling platform
US10812502B2 (en) * 2018-02-06 2020-10-20 Bank Of America Corporation Network device owner identification and communication triggering system
US10862915B2 (en) * 2018-02-06 2020-12-08 Bank Of America Corporation Exception remediation logic routing and suppression platform
US11089042B2 (en) 2018-02-06 2021-08-10 Bank Of America Corporation Vulnerability consequence triggering system for application freeze and removal
US11265340B2 (en) 2018-02-06 2022-03-01 Bank Of America Corporation Exception remediation acceptable use logic platform
JP6496058B1 (ja) * 2018-03-01 2019-04-03 株式会社東芝 エンジニアリングツール、コントローラ、および制御システム
US20190342338A1 (en) * 2018-05-01 2019-11-07 Microsoft Technology Licensing, Llc Automated compliance with security, audit and network configuration policies
US10860311B2 (en) * 2018-06-13 2020-12-08 Dell Products, L.P. Method and apparatus for drift management in clustered environments
US10868709B2 (en) 2018-09-10 2020-12-15 Oracle International Corporation Determining the health of other nodes in a same cluster based on physical link information
CN109582485B (zh) * 2018-10-26 2022-05-03 创新先进技术有限公司 一种配置变更异常检测方法及装置
US10778539B1 (en) * 2018-12-14 2020-09-15 Amazon Technologies, Inc. Resolving configuration drift for computing resource stacks
US10855536B1 (en) * 2019-01-25 2020-12-01 Wells Fargo Bank, N.A. Cloud compliance drift automation and root cause analysis tool
US11150165B2 (en) * 2019-03-01 2021-10-19 Dell Products, L.P. System and method for configuration drift detection and remediation
US11005972B2 (en) 2019-04-24 2021-05-11 Netapp, Inc. Systems, methods, and computer program products to implement changes in a converged infrastructure system
CN110851172A (zh) * 2019-11-13 2020-02-28 杭州安恒信息技术股份有限公司 一种操作系统的安全配置的修复方法、装置、设备及介质
US11595255B2 (en) * 2020-01-16 2023-02-28 Vmware, Inc. Visual tracking of logical network state
CN114902252A (zh) 2020-01-20 2022-08-12 甲骨文国际公司 用于检测部署编排器中的漂移的技术
US11153151B2 (en) * 2020-03-10 2021-10-19 Dish Network L.L.C. Centralized self-healing update and fix of network device configuration
US11349712B1 (en) * 2020-12-15 2022-05-31 Wells Fargo Bank, N.A. Configuration drift management tool
US11347601B1 (en) * 2021-01-28 2022-05-31 Wells Fargo Bank, N.A. Managing data center failure events
US11755740B2 (en) * 2021-08-02 2023-09-12 Dell Products L.P. Systems and methods for detecting and recovering BIOS configuration deviations
US11588694B1 (en) * 2021-08-26 2023-02-21 Dell Products L.P. Low-overhead real-time configuration drift detection
US11722372B2 (en) * 2021-12-14 2023-08-08 Vmware, Inc. Desired state management of software-defined data center
EP4449685A1 (en) 2021-12-14 2024-10-23 VMware LLC Desired state management of software-defined data center
US20230208715A1 (en) * 2021-12-29 2023-06-29 Salesforce.Com, Inc. Optimizing network transactions for databases hosted on a public cloud
US20230418483A1 (en) * 2022-06-27 2023-12-28 Jpmorgan Chase Bank, N.A. System and method for monitoring storage infrastructure configuration drift
US20240250990A1 (en) * 2023-01-23 2024-07-25 Servicenow, Inc. Control of Cloud Infrastructure Configuration

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6098098A (en) * 1997-11-14 2000-08-01 Enhanced Messaging Systems, Inc. System for managing the configuration of multiple computer devices
US20030135609A1 (en) * 2002-01-16 2003-07-17 Sun Microsystems, Inc. Method, system, and program for determining a modification of a system resource configuration
US7523184B2 (en) * 2002-12-31 2009-04-21 Time Warner Cable, Inc. System and method for synchronizing the configuration of distributed network management applications
US20050080811A1 (en) 2003-10-10 2005-04-14 Cendura Corporation Configuration management architecture
JP5038887B2 (ja) * 2004-04-15 2012-10-03 クリアパス・ネットワークス・インコーポレーテッド ネットワークを管理するシステムおよび方法
JP4364107B2 (ja) * 2004-11-11 2009-11-11 株式会社日立製作所 ネットワーク機器の構成情報管理方法、管理装置及び管理システム
US20070006205A1 (en) 2005-05-18 2007-01-04 Michael Kennedy System for virtual image migration
US7756828B2 (en) * 2006-02-28 2010-07-13 Microsoft Corporation Configuration management database state model
US8122111B2 (en) * 2006-07-25 2012-02-21 Network Appliance, Inc. System and method for server configuration control and management
US7853675B2 (en) * 2007-03-02 2010-12-14 International Business Machines Corporation Automatically enforcing change control in operations performed by operational management products
US20080271025A1 (en) * 2007-04-24 2008-10-30 Stacksafe, Inc. System and method for creating an assurance system in a production environment
US8539570B2 (en) * 2007-06-22 2013-09-17 Red Hat, Inc. Method for managing a virtual machine
US8429748B2 (en) * 2007-06-22 2013-04-23 Red Hat, Inc. Network traffic analysis using a dynamically updating ontological network description
JP2009015451A (ja) * 2007-07-02 2009-01-22 Nippon Telegraph & Telephone East Corp 設定情報修復システム、設定情報修復方法、修復コード生成装置、情報処理装置、修復コード生成方法、修復コード生成プログラム、及び、情報処理プログラム
US9262366B2 (en) * 2007-09-21 2016-02-16 Microsoft Technology Licensing, Llc Software deployment in large-scale networked systems
US8775574B2 (en) * 2008-11-26 2014-07-08 Red Hat, Inc. Remote network management having multi-node awareness
CN102273175A (zh) * 2008-12-30 2011-12-07 汤姆逊许可证公司 显示系统的配置的同步
US8762508B2 (en) * 2010-03-11 2014-06-24 Microsoft Corporation Effectively managing configuration drift
US8244839B2 (en) * 2010-06-30 2012-08-14 International Business Machines Corporation Network problem determination

Also Published As

Publication number Publication date
EP2545446B1 (en) 2021-02-17
EP2545446A2 (en) 2013-01-16
WO2011112473A2 (en) 2011-09-15
KR20130029047A (ko) 2013-03-21
CN102754075A (zh) 2012-10-24
US20110225275A1 (en) 2011-09-15
WO2011112473A3 (en) 2011-12-15
KR101728579B1 (ko) 2017-04-19
CN102754075B (zh) 2015-09-16
US8762508B2 (en) 2014-06-24
EP2545446A4 (en) 2014-09-03
JP2013522729A (ja) 2013-06-13

Similar Documents

Publication Publication Date Title
JP5721750B2 (ja) 構成ドリフトの効果的管理
US10164852B2 (en) Infrastructure management system for hardware failure remediation
EP2864881B1 (en) Establishing an initial configuration of a hardware inventory
US8972963B2 (en) End-to-end patch automation and integration
US9971671B2 (en) System and method for dynamic debugging in a multitenant application server environment
Delaet et al. A survey of system configuration tools
US7681179B2 (en) System and method providing single application image
WO2019137635A1 (en) Artifact lifecycle management on a cloud computing system
US20190250906A1 (en) Autonomous upgrade of deployed resources in a distributed computing environment
US20160043892A1 (en) System and method for cloud based provisioning, configuring, and operating management tools
EP1526453A2 (en) A system and method for providing user controlled migration of a client computer
US9239717B1 (en) Systems, methods, and computer medium to enhance redeployment of web applications after initial deployment
JP2014518425A (ja) あらかじめ構築された環境を瞬時に利用可能にすることによるテスト用の環境の展開
US10452387B2 (en) System and method for partition-scoped patching in an application server environment
US20090100158A1 (en) Backup and Recovery System for Multiple Device Environment
US11977449B2 (en) Distributed package management using meta-scheduling
US10313192B2 (en) Automated creation of test tenants for data center technical issue detection
CN115812298B (en) Supply failure blockchain management
US9736007B1 (en) Method and apparatus for automated data protection with IT infrastructure visibility
US20240311252A1 (en) Distributed package management using meta-scheduling
US20170041198A1 (en) Cloud models based on network definition data
US10740205B2 (en) Calculation of a software usage metric
GB2621140A (en) Configuration management system
Thio et al. Workload Migration to Cloud
Valkama Automating an IT environment with a service delivery platform

Legal Events

Date Code Title Description
RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20130701

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20130717

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140304

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20140304

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20150218

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: 20150223

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150324

R150 Certificate of patent or registration of utility model

Ref document number: 5721750

Country of ref document: JP

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

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250