JP6729567B2 - パラメータ決定装置、パラメータ決定方法、および、プログラム - Google Patents

パラメータ決定装置、パラメータ決定方法、および、プログラム Download PDF

Info

Publication number
JP6729567B2
JP6729567B2 JP2017520226A JP2017520226A JP6729567B2 JP 6729567 B2 JP6729567 B2 JP 6729567B2 JP 2017520226 A JP2017520226 A JP 2017520226A JP 2017520226 A JP2017520226 A JP 2017520226A JP 6729567 B2 JP6729567 B2 JP 6729567B2
Authority
JP
Japan
Prior art keywords
parameter
rule
group
setting
elements
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
JP2017520226A
Other languages
English (en)
Other versions
JPWO2016189834A1 (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.)
NEC Corp
Original Assignee
NEC 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 NEC Corp filed Critical NEC Corp
Publication of JPWO2016189834A1 publication Critical patent/JPWO2016189834A1/ja
Application granted granted Critical
Publication of JP6729567B2 publication Critical patent/JP6729567B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Description

本発明は、パラメータ決定装置、パラメータ決定方法、および、プログラム、特に、システム構成定義のパラメータを決定する装置、方法、及び、プログラムに関する。
近年、情報システムの構成情報を構造化文書として記述し管理する動きがある。特に、仮想サーバやネットワークなどの情報システムの構成要素に関する情報をXML(Extensible Markup Language)やJSON(JavaScript(登録商標) Object Notation)で記述し、情報システムの構成定義ファイルとして管理することが広く行われている。このような管理をおこなう目的は、クラウド基盤への仮想サーバのデプロイである。
これらの構成定義ファイルは構造化文書であるため、構造化文書一般の取り扱い上の利点、例えば部分的な切り出し/コピー/再利用が容易、を持つ。そのため、類型化されたシステム設計(デザインパターン)を組み合わせることで、比較的容易に個別の要件に合わせた複雑な情報システムを構築することが可能となる。
しかし、単純に構造化を行っただけでは、一部の項目の変更に起因して他の項目に変更が発生した場合、それらの変更点すべてを確認し適切な変更作業(パラメータ決定)を人出で行うことが必要となる。この変更作業は、システムの各要素間の依存関係を完全に把握した作業者が注意深く行う必要がある。さらに、多数の設定項目を持つ複数の構成要素が依存関係を持っているシステムを対象とした場合、この変更作業は、非常に負荷の高い作業となってしまう。また、システムの規模が一定以上に大きい場合や変更を複数回繰り返す必要がある場合は作業量が膨大となり、そもそも作業自体が困難となる。そのため、この変更作業は、既存構成定義の組み合わせによる再利用の実施を阻害する要因となっている。
この作業を軽減するためには、いかにシステム変更後の設定値間の整合性を変更回数や変更の規模に影響を受けずに維持できるかが課題となる。この課題の解決には設定項目(パラメータ)間の依存関係とその内容を定義し、必要に応じてパラメータを再計算する手法が必要となる。
特許文献1は、設定項目間の依存関係を定義する手法を開示している。具体的に、特許文献1は、ソフトウェア開発に関する定義情報内のパラメータへパラメータ間の依存関係をルールとして割り付けることで、定義情報の変更後に特定の変更パターンにおける依存項目の自動変更や変更必要箇所の提示を、行う技術を開示する。
依存関係の内容を定義する表現としては参照モデルを用いた参照表現が、特許文献1のほか、一般的なプログラミング言語や表計算ソフトウェアで広く用いられている。例えば、依存関係が、パラメータAがパラメータBと同じ値であるという場合、パラメータAの設定値として、現在のパラメータBと同じ設定値を記述する代わりに「=B」などと「パラメータBの設定値と同じ」という抽象表現が用いられる。これにより、パラメータBが変更された際に、パラメータAの再設定が自動化される。
特開平5−081001号公報
情報システムの構成情報設定ファイルにおいて、特定の構成要素群をグループ化しそのグループ内で一意となるパラメータを割り振りたいという要件が多く存在する。例えば、サーバに付与するIP(Internet Protocol)アドレスは通信を行うサーバ群の中で一意である必要がある。この場合、サーバ群が1つのクループとなり、IPアドレスがグループ内で一意に設定したい対象のパラメータとなる。
また、同時に特定の構成要素群をグループ化し、そのグループ内で同一のパラメータを割り振りたいという要件も多く存在する。例えば、通信を行うサーバ群にごとにVLANを用いたネットワーク隔離を行う場合における、VLAN−IDの採番がこの例に該当する。
これらのグループに対するパラメータ決定問題は、ある設定項目の設定値を参照したり加工したりすることだけでは解決できない。すなわち、この決定問題は、グループ化するための基準やグループ化対象の範囲指定などが必要となるため、特許文献1のように、単純に参照モデルを用いた表現のみを用いただけでは解決できない。
また、グループ化条件を指定して各要素に連番を割当てる為に、一部のRDBMS(Relational Database Management System)は、専用の関数表現をSQL(Structured Query Language)の一部として提供している。この関数は、典型的にはRow numberといった名称で提供されている。例えば「select row number() over ( partition by col1 order by id) as col2 from tbl;」というSQLは、テーブルtblの列col1ごとに行をグループ化して、列idでソートした順に連番(1,2,3,,,)を列col2に出力することを記述する。この機能を利用することで、テーブル化された設定パラメータ群に対しては特定の列のパラメータ値ごとにグループ化を行い、グループごとに同一のパラメータ値を設定するということが可能となる。
しかし、この手法は、システム構成情報の設定に関するグループ化とその要素のパラメータを決定する課題を解決できない。その理由は、割り振るパラメータが連番に限定され、設定パラメータごとにSQLのプログラミングが必要である、からである。この手法では、そもそもRDBデータ化することで、構造化文書としてシステム構成データを扱うことの利点が失われてしまう。
本発明は、上述の課題を解決するためのパラメータ決定装置、パラメータ決定方法、および、プログラムを提供することを目的とする。
本発明の一実施の形態のパラメータ決定装置は、システムの構成を定義する設定項目に設定されたパラメータである要素を、複数含むシステム構成定義を格納する構成定義格納手段と、第一と第二の設定項目の識別子を含むルールを格納するルール格納手段と、要素を、当該要素の前記第二の設定項目のパラメータに基づいてグループ分けするグループ化手段と、グループ内の各要素の前記第一の設定項目に、グループ内同一、または、グループ内一意のパラメータを設定して出力する割当実行手段と、を備える。
本発明の一実施の形態のパラメータ決定方法は、システムの構成を定義する設定項目に設定されたパラメータである要素を、複数含むシステム構成定義を記憶し、第一と第二の設定項目の識別子を含むルールを記憶し、要素を、当該要素の前記第二の設定項目のパラメータに基づいてグループ分けし、グループ内の各要素の前記第一の設定項目に、グループ内同一、または、グループ内一意のパラメータを設定して出力する。
本発明の一実施の形態のプログラムは、システムの構成を定義する設定項目に設定されたパラメータである要素を、複数含むシステム構成定義を記憶する処理と、第一と第二の設定項目の識別子を含むルールを記憶する処理と、要素を、当該要素の前記第二の設定項目のパラメータに基づいてグループ分けする処理と、グループ内の各要素の前記第一の設定項目に、グループ内同一、または、グループ内一意のパラメータを設定して出力する割当実行処理と、をコンピュータに実行させる。
本発明にかかるパラメータ決定装置は、システム構成定義の作成において、システム構成に含まれる要素、例えば、装置、アプリケーションプログラム、をグループ化し、グループ構成に基づいて当該要素のパラメータ決定を柔軟に行うことが出来る。
図1は、第一の実施形態のパラメータ決定装置10の構成図である。 図2は、実施形態のパラメータ決定装置10の動作フローチャートである。 図3は、情報システムの構成例を示す図である。 図4は、図3の構成例を記述したシステム構成定義の例を示す図である。 図5は、ルールの構成図である。 図6は、決定順序制御部11が行うルールの処理順序決定処理フローチャートである。 図7は、図4のシステム構成定義例について、図5の最後のルール(割当対象項目をVLAN_IDとするルール)に基づくグループ化の結果を示す図である。 図8は、割当実行部13の割当実行処理フローチャートである。 図9は、図4システム構成定義に関して、図5の最後のルールに基づいて、設定項目VLAN_IDのパラメータ決定を行った結果を示す。 図10は、図4システム構成定義に関して、図5の最初のルールに基づいて、設定項目act/sbyのパラメータ決定を行った結果を示す。 図11は、図4のシステム構成定義に、パラメータ決定装置により設定された設定要素が追記されたあとの様子を示す。 図12は、コンピュータ装置20の構成図である。 図12は、第三の実施形態のパラメータ決定装置10の構成図である。
<第一の実施の形態>
図1は、本発明の第一の実施形態のパラメータ決定装置10の構成図である。本実施の形態のパラメータ決定装置10は、決定順序制御部11、グループ化部12、割当実行部13、ルール格納部14、および、構成定義格納部15を含む。また、端末装置30が、パラメータ決定装置10に接続されている。
図2は、実施形態のパラメータ決定装置10の動作フローチャートである。パラメータ決定装置10は、まず、パラメータ(設定値)決定を行いたいシステム構成定義、および、決定のためのルールを受け付けて記憶する(S1)。ここで、決定順序制御部11は、例えば、端末装置30からシステム構成定義とルールを受信して、システム構成定義を構成定義格納部15に、ルールをルール格納部14に格納する。
次いで、決定順序制御部11は、ルールの適用順序、即ち、決定するパラメータの順序を決定し、決定した順番にしたがってグループ化部12、および、割当実行部13を起動してルールを実行していく(S2、S3,S4の繰り返し)。
具体的には、決定順序制御部11は、後述する方法で実行するルールを選択する(S2)。次いで、グループ化部12が、システム構成定義から後述する要素を抽出して、当該ルールで指定されるパラメータに基づいて要素をグループ化する(S3)。そして、割当実行部13が、グループ毎に要素のパラメータ決定を行う(S4)。決定したパラメータは、構成定義格納部15部内のシステム構成定義に追記される。追記されたパラメータは、次のルールの実行時に要素のグループ分けに使用されても良い。
すべてのルールを実行した後、決定順序制御部11は、構成定義格納部15から完成したシステム構成定義を取り出して、端末装置30やVMのデプロイ先システムに送信する(S5)。
なお、システム構成定義、および、決定のためのルールは、構成定義格納部15、および、ルール格納部14に予め格納されていても良い。この場合、ステップS1は不要である。さらに、VMがデプロイされるシステムが構成定義格納部15を共有し、決定順序制御部11はシステム定義を構成定義格納部15内で完成させたところで動作を終了しても良い。この場合、ステップS5は不要である。
ここで、決定順序制御部11、グループ化部12、および、割当実行部13は、論理回路で構成される。ルール格納部14、および、構成定義格納部15は、ディスク装置、または、半導体記憶装置等の記憶装置である。
なお、パラメータ決定装置10は、コンピュータ装置20により実現されても良い。図12は、コンピュータ装置20の構成図である。コンピュータ装置20は、バス24で相互に接続された、PU21(Processing Unit)、主記憶装置22、および、補助記憶装置25を備える。PU21は、バス24を経由して、主記憶装置22、および、補助記憶装置25に対してデータの読み書きを行う。また、PU21は、主記憶装置22に格納されているプログラム23を実行する。なお、プログラム23は、当初補助記憶装置25に格納されており、コンピュータ装置20の初期設定時に、PU21が補助記憶装置25から主記憶装置22にロードしても良い。
ここで、主記憶装置22は半導体メモリ装置である。補助記憶装置25はディスク装置、または、半導体記憶装置等の記憶装置である。
PU21は、プログラム23を実行することにより、決定順序制御部11、グループ化部12、および、割当実行部13として機能する。すなわち、PU21は、プログラム23を実行することにより、決定順序制御部11、グループ化部12、および、割当実行部13が行う処理を実行する。補助記憶装置25は、ルール格納部14、および、構成定義格納部15として機能する。
システム構成定義は、構造化文書で記述された、情報システムの構成を表現した定義ファイルである。システム構成定義は、複数の設定要素を含んでいる。設定要素は、例えば、設定項目の識別子(以降、項目IDと略記)と設定値(パラメータ)の組である。
システム構成定義において、設定要素は入れ子やリスト構造をとっており、例えば、XMLやJSONで記述されている。ここで、入れ子は設定値として設定要素が入っている構造であり、リストは設定値が複数の値や設定要素となる構造である。
図3は、情報システムの構成例を示す図である。図4は、図3の構成例を記述したシステム構成定義の例を示す図である。
図3の情報システムは、イーサネット(登録商標)で相互に接続されたA、B、Cの3台のサーバコンピュータ(図中ではServerと略記)を包含する。サーバコンピュータAでは、X、Y、Zの3つのアプリケーションプログラム(図中ではapp.と略記)が稼働している。サーバコンピュータBではX、Yの2つのアプリケーションプログラムが、サーバコンピュータCではアプリケーションプログラムXが、稼働している。
サーバコンピュータAにおいて、アプリケーションプログラムXとYは、NIC(Network Interface Card)のeth0とeth1を利用して通信を行う。アプリケーションプログラムZは、NICのeth2を利用して通信を行う。サーバコンピュータBにおいて、アプリケーションプログラムXは、NICのeth0とeth1を利用して通信を行う。アプリケーションプログラムYは、NICのeth2を利用して通信を行う。サーバコンピュータCにおいて、アプリケーションプログラムXは、NICのeth0とeth1を利用して通信を行う。
図4のシステム構成定義例は、上述した情報システムの構成を構造化文書で記述している。このシステム構成定義例において、例えば、「Server : A」、「NIC : eth 0」、および、「application : X」が設定要素である。1行目の設定要素「Server : A」は、設定項目serverにパラメータAが設定され、サーバコンピュータAを定義する。2行目の設定要素「NIC : eth 0」は、設定項目NICにパラメータeth0が設定され、NICのeth0を定義する。3行目の設定要素「application : X」は、設定項目applicationにパラメータXが設定され、アプリケーションプログラムXを定義する。
また、図4のシステム構成定義例は、インデントで設定要素の入れ子を、インデントなしの改行によってリストを表現している。例えば、このシステム構成定義例において、サーバコンピュータAに、NICのeth0、eth1、および、eth2が入れ子で定義されている。これは、サーバコンピュータAがNICのeth0、eth1、とeth2を備えていることを表す。さらに、NICのeth0にアプリケーションプログラムXとYが、NICのeth1にアプリケーションプログラムXとYが、NICのeth2にアプリケーションプログラムZが各々入れ子で定義されている。これは、サーバコンピュータAにおいて、NICのeth0とeth1がアプリケーションプログラムXとYにより使用され、NICのeth2がアプリケーションプログラムZにより使用されていることを定義している。サーバコンピュータBとCについても、同様に、図3の状態が記載されている。
システム構成定義において、設定要素が設定しているパラメータの組み合わせを要素と呼ぶ。図4のシステム構成定義例における要素は、サーバコンピュータ設定項目のパラメータ、NIC設定項目のパラメータ、アプリケーションプログラム設定項目のパラメータの組み合わせである。具体的には、図4のシステム構成定義例は、(A、eth0、X)、(A、eth0、Y)、(B、eth0、X)、(C、eth0、)、(A、eth1、X)、(A、eth1、Y)、(B、eth1、X)、(C、eth1、)、(A、eth2、Z)、(B、eth2、Y)の10個の要素を含んでいる。
すなわち、システム構成定義は要素を複数定義しているといえる。なお、システム構成定義は、複数の要素を定義できるのであれば、図4に示す例と異なる記述形式で記述されても良い。例えば、システム構成定義は、複数の要素のリストであっても良い。なお、要素は、項目IDを含んでいても良い。
図5は、本実施の形態のパラメータ決定装置10が扱うルールの構成図である。ルールは、パラメータの割当対象となる項目ID(図中、割当対象項目IDと記載)、および、要素をグループ化するときの基準となる項目ID(図中、グループ化基準項目IDと記載)を包含する。さらに、ルールは、候補パラメータ集合、割当方法、および、スコープの指定を含む。
ここで、候補パラメータ集合は、割当対象項目IDで示される設定項目に割当てるパラメータの集合であり、例えば、値の範囲、要素の列挙、集合名称で指定される。図5の例において、「1->254」は1以上254以下の自然数の集合、「Class C」はクラスCのIPアドレスの集合、「”act”,”sby” 」は当該2値を要素とする集合、「100->200」は100以上200以下の自然数の集合を意味する。
また、割当方法は、候補パラメータ集合からどのようにパラメータを払い出してくるかを定義する。図5の例において、「循環」は集合の要素を順次サイクリックに払い出すことを、「降順」は未割当の候補パラメータのうち最大の候補値を、「昇順」は未割当の候補パラメータのうち最小の候補値を払い出すことを意味する。
また、スコープは、要素のグループごとに、各要素に同一パラメータを設定するのか(global)、または、グループ内の各要素にグループ内一意のパラメータを設定するのか(local)を指定する。
図5において、例えば、最後のルールは、パラメータ設定を行う設定項目は「VLAN_ID」であり、NIC設定項目で要素をグループ化することを指定している。このルールの実行でグループ化された要素のグループは、図7に示されている。さらに、このルールは、グループごとに、100から始まる候補パラメータのうち最小の未割当候補値を払い出し、グループ内の各要素に同じ当該値を設定することも定義している。なお、この設定は、図9に示されている。
図5において、例えば、最初のルールは、パラメータ設定を行う設定項目は「act/sby」(現用/予備)であり、サーバコンピュータ設定項目とアプリケーションプログラム設定項目のパラメータの組み合わせで要素をグループ化することを指定している。さらに、このルールは、グループ内の要素に、交互にact(現用)とsby(予備)を設定することも指定している。なお、このグループと設定は、図10に示されている。
さらに、図5において、3番目のルールは、パラメータ設定を行う設定項目は「ホストIPアドレス」であり、2番目のルールにより決定されたサブネットIPアドレス設定項目のパラメータで要素をグループ化することを指定している。さらに、このルールは、グループ内の要素に、1以上254以下の自然数の集合から、割当が実行される度に254、253、252、、と順次払い出して設定することを定義している。
なお、上述のことから明らかなように、3番目のルールは、2番目のルールの実行後でないと実行できない。決定順序制御部11が、この状況を判断し、ルールの実行順序を調整する。
<図2のステップS2で実行される処理について>
図6は、決定順序制御部11が行うルールの処理順序決定処理フローチャートである。これは、図2のステップS2で実行される。
決定順序制御部11は、本図にしたがって実行すべきルールを選択する。上述したように、ルールの中には他のルールの実行後でないと実行できないものが有る。すなわち、ルールが指定しているグループ化基準項目IDが示す設定項目に未決定の設定項目が含まれているとき、その時点では当該ルールを用いたパラメータ決定が行えない。そこで、決定順序制御部11は、この順序決定処理により、当該ルールの実行を、グループ化基準項目IDで指定している設定項目のパラメータ決定後に遅らせる。
まず、決定順序制御部11は、ルール格納部14からルールのリストを取得し(S21)、そのリストのルールを1つ取り出す(S22)。そして、決定順序制御部11は、ルールのグループ化基準項目IDが示す設定項目が、パラメータ決定済みの項目のみで構成されているか確認する(S23)。
このとき決定順序制御部11は、利用者から与えられたシステム構成定義上であらかじめパラメータまで決まっているものは初めからパラメータ決定済みの設定項目として扱う。図4のシステム構成定義例では、サーバコンピュータ設定項目「Server」、NIC設定項目「NIC」、および、アプリケーションプログラム設定項目「application」が、処理開始時からの決定済み設定項目となる。
決定順序制御部11は、割当実行部13がパラメータ決定を行った設定項目を、割当実行部13から受け取って要素に追加していく。こうすることで、実行が送らされたルールも、やがて実行可能となる。
決定順序制御部11は、要素に追加されたパラメータを、システム構成定義に追記する。具体的には、決定順序制御部11は、例えば、決定されたパラメータを含む設定要素を、システム構成定義の最初の要素を表した設定要素から一段深く入れ子にして追加する。図11は、図4のシステム構成定義に、パラメータ決定装置10により追加された設定要素が追記されたあとの様子を示す。例えば、図5の最初のルールによって追加された設定要素「act/sby: act」は、設定要素「application: X」の一段深い入れ子にされている。但し、新たな設定要素は、どの要素に追加されたものかが判別できるのであれば、他の記載形式で追記されても良い。
取り出したルールのグループ化基準項目IDが示す設定項目が、パラメータ決定済みの項目のみで構成されている場合(S23でY)、決定順序制御部11は、当該ルールを出力する。決定順序制御部11は、当該ルールを、例えば、グループ化部12、および、割当実行部13に送信する(S24)。
取り出したルールのグループ化基準項目IDが示す設定項目が、パラメータ決定済みの項目のみで構成されていない場合(S23でN)、決定順序制御部11は、S22へ戻り別のルールを取り出し、再度S23を実行する。図5のルール例では、2番目のルールは最初のルールが実行されてact/sby設定項目のパラメータが決定されるまで待たされ、3番目のルールは2番目のルールが実行されて、サブネットIPアドレス設定項目が決定されるまで待たされる。
<図2のステップS3で実行される処理について>
図2のステップS3で示されるグループ化処理では、グループ化部12が、決定順序制御部11から受信したルールに基づいて、システム構成定義から抽出された要素をグループ化する。グループ化対象となる要素は、例えば、システム構成定義で最も入れ子が深いところまでの設定項目の組み合わせである。図4のシステム構成定義例では、要素は、サーバコンピュータ設定項目のパラメータ、NIC設定項目のパラメータ、アプリケーションプログラム設定項目のパラメータの組み合わせである。
図7は、図4のシステム構成定義例について、図5の最後のルール(割当対象項目をVLAN_IDとするルール)に基づくグループ化の結果を示す図である。本図において、3つの枠がつながった長方形1つ1つがグループ化対象の要素である。枠内は、左から順に、サーバコンピュータ設定項目、NIC設定項目、アプリケーションプログラム接敵項目の各パラメータを表している。
図5の最後のルールのグループ化基準項目IDが示す設定項目がNIC設定項目であるため、図7が示すようにNICのパラメータ値ごとにグループが作成された。図7において、左から順に、NIC設定項目のパラメータがeth0、eth1、eth2である要素からなるグループである。
<図2のステップS4で実行される処理について>
グループ化部12でグループ化された要素群は割当実行部13へ渡され、図2のステップS4で割当実行処理が実行される。図8は、割当実行部13の割当実行処理フローチャートである。
割当実行処理ではまず、割当実行部13は要素のグループを1つ取りだし(S41)、パラメータ決定ルールのスコープを判定する(S42)。スコープがglobalだった場合(S42でglobal)、割当実行部13はパラメータ決定ルールの割当方法を参照し、候補パラメータ集合から該当する割当方法でパラメータを払出す(S43)。そして、割当実行部13は、払い出したパラメータをグループ内のすべての要素に設定する(S44)。未取出のグループがあれば(S45で有)、割当実行部13は、もう一度S41へ戻り別のグループの要素にパラメータを割り当てる。割当実行部13は、全てのグループへパラメータを割当る(S45で無)までこの一連の処理をグループごとに繰り返して行う。
スコープがlocalだった場合(S42でlocal)、割当実行部13は、グループから要素を1つ取り出し(S46)、候補パラメータ集合からルールの割当方法でパラメータを払出し(S47)、取り出した要素に払い出したパラメータを設定(S48)する。割当実行部13は、これらの一連の処理をグループ内に未取出の要素が無くなる(S49で無)まで、要素ごとに繰り返して行う。
割当実行部13は、払い出しを行う度に払い出し済み候補値を記憶し、次の払出をする際にはその払い出し済み候補値以外から払い出しを行う。この払い出し済み候補値の消去は、グループ内に未取出の要素が無くなり(S49で無)、割当対象のグループを切り替える際に実行される。
但し、割当実行部13は、割当方法が「循環」であれば、払い出しを行う度に払い出した候補値を記憶し、次の払出をする際にはその循環する順番における次の候補値の払い出しを行う。この払い出し済み候補値の記憶の消去は、グループ内に未取出の要素が無くなり(S49で無)、割当対象のグループを切り替える際に実行される。
なお、スコープがglobalの場合、1回の割当実行処理内では継続して、払い出し済み候補値は保存される。
図9は、図4システム構成定義に関して、図5の最後のルールに基づいて、設定項目VLAN_IDのパラメータ決定を行った結果を示す。前述したように、図7が当該ルールにより振り分けられた要素のグループを示している。当該ルールにおいて、スコープがglobal、候補パラメータ集合および割当方法が100から昇順である。したがって、割当実行部13は、NIC設定項目のパラメータがeth0、eth1、eth2の各グループにたいしてパラメータとして100、101、102を払い出し、グループ内の各要素のVLAN_ID設定項目には同一値を割り当てる。
図10は、図4システム構成定義に関して、図5の最初のルールに基づいて、設定項目act/sbyのパラメータ決定を行った結果を示す。
当該ルールにおいて、グループ化基準項目は、ServerとApplicationの2つの設定項目の組み合わせである。したがって、グループ化部12は、当該2つの設定項目のパラメータのバリエーション(A、X)、(AY)、(AZ)、(B、X)、(B、Y)、および、(C、X)ごとに要素をグループ化する。さらに、当該ルールにおいて、スコープがlocal、候補パラメータ集合および割当方法が”act”と”sby”の循環、即ち交互割当である。したがって、割当実行部13は、各グループの要素に、”act”と”sby”を交互に割り当てる。すなわち、割当実行部13は、グループ内の設定要素が2つの場合は”act”と”sby”を1つずつ、1つの場合は”act”を割当てる。
<図2のステップS5で実行される処理について>
ルール格納部14に格納されているすべてのルールを実行した後、決定順序制御部11は、構成定義格納部15から完成したシステム構成定義を取り出して外部に出力する(S5)。図11は、図4のシステム構成定義と図5のルールが入力された場合に、決定順序制御部11が出力するシステム構成定義である。
<効果>
本実施の形態のパラメータ決定装置10は、ネットワークアドレスやクラスタリングに代表される特定の装置、プログラム等のグループごとに設定値(パラメータ)を割当てる必要がある情報システムに関し、柔軟なパラメータ決定を可能とする。具体的には、パラメータ決定装置10は、システム構成定義の作成において、システム構成に含まれる要素をグループ化し、グループ構成に基づいてグループ内の要素のパラメータ決定を柔軟に行うことが出来る。
その第一の理由は、グループ化部12が、システム構成定義から抽出された要素を、様々な設定項目のパラメータに基づいてグループ化し、種々の候補パラメータ集合から種々の方法で値を取り出して、パラメータを決定するからである。
第二の理由は、利用者がパラメータ決定のバリエーションをルールとして定義し、パラメータ決定装置10が当該ルールに従って、パラメータの決定を行うからである。利用者は、対象とする情報システムに合わせて、ルールを定義すればよい。
第三の理由は、決定順序制御部11が、パラメータの決定過程で、ルールの実行順序を適切に制御するからである。このため、利用者は、初期状態のシステム構成定義では、まだ決定されていないパラメータに基づくグループ化を、ルールに記述することが出来る。
<第2の実施形態>
本発明の第2の実施形態のパラメータ決定装置10は、パラメータ決定済みのシステム構成定義に変更を加える際に、割当済みのパラメータをできるだけ変更することなく、新規に決定する必要のあるパラメータの決定を行う。
ここで、本実施の形態のパラメータ決定装置10に入力されるシステム構成定義は、既に一度、当該装置で処理されたもので良い。また、幾つかのルールは、最初のパラメータ決定時にルール格納部14に格納されており、今回は新たなルールだけが入力されてルール格納部14に追加されても良い。
決定順序制御部11は、図2のステップS1とS2の間で、システム構成定義とルール格納部14のルールを照らし合わせる。決定順序制御部11は、システム構成定義中に、何れかのルールの割当対象項目IDで指定されている設定項目にパラメータが既に割り当てられていることを判別すると、その情報を記憶する。
割当実行部13は、パラメータを払い出す時(図8のステップS44、及び、ステップS47)にこの情報を参照し、割当対象の要素に割当済みのパラメータを払い出す。すなわち、割当実行部13は、候補パラメータ集合から新たなパラメータの払い出しは行わず、もともと割当てられていたパラメータの割当を継続させる。但し、この時、割当実行部13は、下記のチェックを行う。
ア)当該パラメータが既に他の要素に割当済みでないこと。
イ)当該パラメータが実行中のルールが指定する候補パラメータ集合に含まれていること。
当該パラメータが、上記条件を満足しないとき、割当実行部13は、通常の割当方法で決定されるパラメータ値を払い出す。
その他の処理は、第1の実施の形態のパラメータ決定装置10と同じである。
<効果>
本実施の形態のパラメータ決定装置10は、パラメータ決定したシステムに変更を加えた際、必要最小限のパラメータ変更で変更後のパラメータを決定できる。その理由は、割当実行部13が、割当対象の要素に割当済みのパラメータが有る場合は、当該パラメータを払い出すからである。
<第3の実施形態>
図13は、本発明の第三の実施形態のパラメータ決定装置10の構成図である。本実施の形態のパラメータ決定装置10は、グループ化部12、割当実行部13、ルール格納部14、および、構成定義格納部15を含む。

構成定義格納部15は、システムの構成を定義する設定項目に設定されたパラメータである要素を、複数含むシステム構成定義を格納する。ルール格納部14は、第一と第二の設定項目の識別子を含むルールを格納する。
グループ化部12は、要素を、当該要素の第二の設定項目のパラメータに基づいてグループ分けする。割当実行部13は、グループ内の各要素の第一の設定項目に、グループ内同一、または、グループ内一意のパラメータを設定して出力する。
本実施の形態のパラメータ決定装置10は、ネットワークアドレスやクラスタリングに代表される特定の装置、プログラム等のグループごとに設定値(パラメータ)を割当てる必要がある情報システムに関し、柔軟なパラメータ決定を可能とする。具体的には、パラメータ決定装置10は、システム構成定義の作成において、システム構成に含まれる要素をグループ化し、グループ構成に基づいてグループ内の要素のパラメータ決定を柔軟に行うことが出来る。
その第一の理由は、グループ化部12が、システム構成定義から抽出された要素を、様々な設定項目のパラメータに基づいてグループ化し、種々の候補パラメータ集合から種々の方法で値を取り出して、パラメータを決定するからである。
第二の理由は、利用者がパラメータ決定のバリエーションをルールとして定義し、パラメータ決定装置10が当該ルールに従って、パラメータの決定を行うからである。利用者は、対象とする情報システムに合わせて、ルールを定義すればよい。
以上、実施形態を参照して本願発明を説明したが、本願発明は上記実施形態に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
この出願は、2015年05月25日に出願された日本出願特願2015-105111を基礎とする優先権を主張し、その開示の全てをここに取り込む。
10 パラメータ決定装置
11 決定順序制御部
12 グループ化部
13 割当実行部
14 ルール格納部
15 構成定義格納部
20 コンピュータ装置
21 PU
22 主記憶装置
23 プログラム
24 バス
25 補助記憶装置
30 端末装置

Claims (10)

  1. システムの構成を定義する設定項目に設定されたパラメータの組み合わせである要素を、複数含むシステム構成定義を格納する構成定義格納手段と、
    第一と第二の前記設定項目の識別子を含むルールを格納するルール格納手段と、
    前記要素を、当該要素の前記第二の設定項目の前記パラメータに基づいてグループ分けするグループ化手段と、
    グループ内の各々の前記要素の前記第一の設定項目に、前記グループ内同一、または、前記グループ内一意のパラメータを設定して出力する割当実行手段と、を備えるパラメータ決定装置。
  2. 前記ルールは、候補パラメータ集合、および、スコープの指定を更に包含し、
    前記割当実行手段は、前記ルールの前記スコープにしたがって、a)前記候補パラメータ集合からグループごとに一意のパラメータを選択し、選択した当該パラメータを前記グループ内の各々の前記要素の前記第一の設定項目に設定、または、b)前記候補パラメータ集合から前記グループ内の前記要素ごとに一意のパラメータを選択し、選択した当該パラメータを当該要素の前記第一の設定項目に設定する、請求項1のパラメータ決定装置。
  3. 前記ルールは、割当方法の指定を更に包含し、
    前記割当実行手段は、前記ルールの前記割当方法にしたがって、前記候補パラメータ集合の各々の前記パラメータを順次、サイクリックに選択、昇順に選択、または、降順に選択する、請求項2のパラメータ決定装置。
  4. 前記ルール格納手段は、前記ルールを複数包含し、
    前記システム構成定義を参照して、複数の前記ルールの中から前記第二の設定項目の前記パラメータが設定されている前記ルールを選択して、選択した前記ルールを前記グループ化手段と前記割当実行手段に出力して処理させ、前記割当実行手段が前記要素の前記第一の設定項目に設定した前記パラメータを前記要素に追加する記述を前記システム構成定義に追記する決定順序制御手段を、さらに備える、請求項2乃至請求項3の何れか一項のパラメータ決定装置。
  5. 前記割当実行手段は、前記第一の設定項目に前記パラメータが設定されている前記要素を検出すると、当該パラメータが既に他の前記要素に使用中であるかを判定し、使用中でなければ、前記候補パラメータ集合から新たな前記パラメータの選択を行わず、当該パラメータの当該要素への設定を継続させる、請求項2乃至請求項4の何れか一項のパラメータ決定装置。
  6. コンピュータが、
    システムの構成を定義する設定項目に設定されたパラメータの組み合わせである要素を、複数含むシステム構成定義を記憶し、
    第一と第二の設定項目の識別子を含むルールを記憶し、
    前記要素を、当該要素の前記第二の設定項目の前記パラメータに基づいてグループ分けし、
    グループ内の各々の前記要素の前記第一の設定項目に、前記グループ内同一、または、前記グループ内一意の前記パラメータを設定して出力する、パラメータ決定方法。
  7. 前記ルールは、候補パラメータ集合、および、スコープの指定を更に包含し、
    前記ルールの前記スコープにしたがって、a)前記候補パラメータ集合から前記グループごとに一意の前記パラメータを選択し、選択した当該パラメータを前記グループ内の各々の前記要素の前記第一の設定項目に設定、または、b)前記候補パラメータ集合から前記グループ内の前記要素ごとに一意の前記パラメータを選択し、選択した当該パラメータを当該要素の前記第一の設定項目に設定する、請求項6のパラメータ決定方法。
  8. 前記ルールは、割当方法の指定を更に包含し、
    前記ルールの前記割当方法にしたがって、前記候補パラメータ集合の各々の前記パラメータを順次、サイクリックに選択、昇順に選択、または、降順に選択する、請求項7のパラメータ決定方法。
  9. システムの構成を定義する設定項目に設定されたパラメータの組み合わせである要素を、複数含むシステム構成定義を記憶する処理と、
    第一と第二の設定項目の識別子を含むルールを記憶する処理と、
    前記要素を、当該要素の前記第二の設定項目の前記パラメータに基づいてグループ分けする処理と、
    グループ内の各々の前記要素の前記第一の設定項目に、前記グループ内同一、または、前記グループ内一意のパラメータを設定して出力する割当実行処理と、をコンピュータに実行させるプログラム。
  10. 前記ルールは、候補パラメータ集合、および、スコープの指定を更に包含し、
    コンピュータに、前記ルールの前記スコープにしたがって、a)前記候補パラメータ集合から前記グループごとに一意の前記パラメータを選択し、選択した当該パラメータを前記グループ内の各々の前記要素の前記第一の設定項目に設定、または、b)前記候補パラメータ集合から前記グループ内の前記要素ごとに一意の前記パラメータを選択し、選択した当該パラメータを当該要素の前記第一の設定項目に設定する前記割当実行処理を実行させる請求項9のプログラム。
JP2017520226A 2015-05-25 2016-05-19 パラメータ決定装置、パラメータ決定方法、および、プログラム Active JP6729567B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2015105111 2015-05-25
JP2015105111 2015-05-25
PCT/JP2016/002440 WO2016189834A1 (ja) 2015-05-25 2016-05-19 パラメータ決定装置、パラメータ決定方法、および、プログラム

Publications (2)

Publication Number Publication Date
JPWO2016189834A1 JPWO2016189834A1 (ja) 2018-03-15
JP6729567B2 true JP6729567B2 (ja) 2020-07-22

Family

ID=57394057

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017520226A Active JP6729567B2 (ja) 2015-05-25 2016-05-19 パラメータ決定装置、パラメータ決定方法、および、プログラム

Country Status (3)

Country Link
US (1) US10620968B2 (ja)
JP (1) JP6729567B2 (ja)
WO (1) WO2016189834A1 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7028332B2 (ja) * 2018-08-28 2022-03-02 日本電気株式会社 パラメタ値付与装置、方法、およびプログラム
WO2022239227A1 (ja) * 2021-05-14 2022-11-17 日本電信電話株式会社 管理装置、管理方法及び管理プログラム

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0581001A (ja) 1991-09-19 1993-04-02 Hitachi Ltd ソフトウエア開発におけるカスタマイズ支援方式
US5842218A (en) * 1996-12-06 1998-11-24 Media Plan, Inc. Method, computer program product, and system for a reorienting categorization table
JP4238817B2 (ja) * 2004-11-05 2009-03-18 ブラザー工業株式会社 通信システム及び通信装置
EP1655943A3 (en) * 2004-11-05 2006-07-19 Brother Kogyo Kabushiki Kaisha Communication system
US20060204107A1 (en) * 2005-03-04 2006-09-14 Lockheed Martin Corporation Object recognition system using dynamic length genetic training
JP4529766B2 (ja) 2005-03-31 2010-08-25 日本電気株式会社 情報提供システム、情報提供方法、サーバ及び情報提供プログラム
JP5670965B2 (ja) * 2012-06-27 2015-02-18 株式会社コナミデジタルエンタテインメント 対比装置、プログラム、ならびに、システム
JP6107456B2 (ja) 2013-06-14 2017-04-05 富士通株式会社 構成要件作成プログラム、構成要件作成装置および構成要件作成方法
JP2015095035A (ja) 2013-11-11 2015-05-18 株式会社日立システムズ パラメータ設定支援システムおよびパラメータ設定支援方法ならびにパラメータ設定支援プログラム
US9647897B2 (en) * 2014-08-20 2017-05-09 Jamf Software, Llc Dynamic grouping of managed devices

Also Published As

Publication number Publication date
WO2016189834A1 (ja) 2016-12-01
US10620968B2 (en) 2020-04-14
JPWO2016189834A1 (ja) 2018-03-15
US20180129516A1 (en) 2018-05-10

Similar Documents

Publication Publication Date Title
US20120272228A1 (en) Method and apparatus for determining compatible versions of dependent entities in a computer system
JP2015215886A (ja) 高速変更計画システム、高速変更計画方法および高速変更計画プログラム
CN103797462A (zh) 一种创建虚拟机的方法和装置
JP2014123365A (ja) MapReduceフレームワークにおけるデータ処理の最適化のためのデバイスおよび方法
CN109189758B (zh) 运维流程设计方法、装置和设备、运行方法、装置和主机
US20220164222A1 (en) Execution of Services Concurrently
US20220131763A1 (en) System configuration derivation device and system configuration derivation method
US9141677B2 (en) Apparatus and method for arranging query
US10416976B2 (en) Deployment device, deployment method, and recording medium
US9535743B2 (en) Data processing control method, computer-readable recording medium, and data processing control device for performing a Mapreduce process
US20180239646A1 (en) Information processing device, information processing system, task processing method, and storage medium for storing program
US10579036B2 (en) Apparatus for program management of programmable logic controller
JP6729567B2 (ja) パラメータ決定装置、パラメータ決定方法、および、プログラム
CN109032751A (zh) 一种虚拟机部署方法及omm虚拟机
US10999369B2 (en) Network topology templates for internal states of management and control planes
CN111124382A (zh) Java中的属性赋值方法、装置及服务器
JP2016071886A5 (ja)
JP2015095096A (ja) MapReduceジョブ実行システム、MapReduceジョブ実行方法
US20210311843A1 (en) System verification program generation device, system verification program generation method, and recording medium storing system verification program generation program
KR101558807B1 (ko) 호스트 프로세서와 협업 프로세서 간에 협업 처리를 위한 프로세서 스케줄링 방법 및 그 방법을 수행하는 호스트 프로세서
US10180830B2 (en) Information processing device, deployment method, and recording medium
JP2016015672A (ja) ネットワーク制御装置、及びネットワーク設定システム
JP6387626B2 (ja) 情報処理システム、情報処理方法、および、スケジューリングプログラム
KR101916447B1 (ko) 가상 클러스터 시스템 제공 방법 및 가상 클러스터 시스템 제공 장치
JP7028332B2 (ja) パラメタ値付与装置、方法、およびプログラム

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20171020

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190415

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200407

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200421

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200615

R150 Certificate of patent or registration of utility model

Ref document number: 6729567

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150