JP6386422B2 - 装置設定プログラムおよび装置設定方法 - Google Patents

装置設定プログラムおよび装置設定方法 Download PDF

Info

Publication number
JP6386422B2
JP6386422B2 JP2015127010A JP2015127010A JP6386422B2 JP 6386422 B2 JP6386422 B2 JP 6386422B2 JP 2015127010 A JP2015127010 A JP 2015127010A JP 2015127010 A JP2015127010 A JP 2015127010A JP 6386422 B2 JP6386422 B2 JP 6386422B2
Authority
JP
Japan
Prior art keywords
setting
type
external
external script
script
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
JP2015127010A
Other languages
English (en)
Other versions
JP2017010404A (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.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone 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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2015127010A priority Critical patent/JP6386422B2/ja
Publication of JP2017010404A publication Critical patent/JP2017010404A/ja
Application granted granted Critical
Publication of JP6386422B2 publication Critical patent/JP6386422B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Computer And Data Communications (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Description

本発明は、装置設定プログラムおよび装置設定方法に関する。
従来、通信ネットワーク設計システム等から設計データ等の装置設定情報を受け取り、装置設定情報に基づいてネットワーク装置の設定を行う装置設定システム(EMS:Element Management System)および装置設定システムにおいて実行される装置設定プログラムが知られている。装置設定情報にはネットワーク装置の設定のためのパラメータが記載されている。そして、装置設定システムは、装置設定情報からパラメータを読み取り、読み取ったパラメータを決められた装置設定シナリオに当てはめてネットワーク装置への設定を行う。
従来、装置設定シナリオをプログラム本体とは別のテンプレートファイルとして実現し、テンプレートファイルを変更することで装置への設定シナリオを簡易に変更する装置設定システムが知られている(例えば、特許文献1)。ここで、図19を用いて従来の装置設定システムについて説明する。図19は、従来の装置設定システムを示す図である。図19に示すように、従来の装置設定システム1aにおいては、装置設定プログラムが実行される処理部10aにおいて、装置設定情報の受信、装置設定情報に含まれるパラメータの分解、テンプレートファイルに対してパラメータを付与する外部スクリプトの呼出し、外部スクリプトの実行を行っていた。
特開2012−53667号公報
しかしながら、従来の装置設定システムにおいては、装置設定情報のパラメータ項目の追加、削除および変更またはシナリオの追加を行うためには、装置設定システムのプログラム本体の改造が必要であったため、装置設定情報のパラメータ項目の追加、削除および変更またはシナリオの追加を迅速かつ簡易に行うことができないという問題があった。
例えば、図19に示すように、従来の装置設定システムにおいては、処理部において装置設定情報のパラメータの分解が行われている。図19の(a)に示すように、初回開発の際に、処理部は[XX]および[YY]というパラメータを取得することができていたものとする。これに対し、図19の(b)に示すように、ネットワーク装置へのオプションサービスの追加に伴い、[ZZ]というパラメータが追加された場合、処理部のプログラムを改造し、再コンパイル等を行う必要がある。そのため、大規模なプログラム修正が必要となり、システム開発期間の長期化や、開発費用の増大という問題が発生する。
本発明の装置設定プログラムは、コンピュータを、ネットワーク装置の設定を行う装置設定システムとして機能させる装置設定プログラムであって、前記ネットワーク装置の設定を行うために必要なパラメータを少なくとも含んだ装置設定情報を受信する装置設定情報受信ステップと、前記装置設定情報から前記パラメータを抽出する第1の処理および第1の処理により抽出されたパラメータに基づいて前記ネットワーク装置の設定を行うための命令を作成する第2の処理を、外部スクリプトに実行させる外部スクリプト実行ステップと、前記外部スクリプトによって作成された前記命令を、前記ネットワーク装置に送信する命令送信ステップと、を実行させることを特徴とする。
本発明の装置設定方法は、ネットワーク装置の設定を行う装置設定システムで実行される装置設定方法であって、前記ネットワーク装置の設定を行うために必要なパラメータを少なくとも含んだ装置設定情報を受信する装置設定情報受信工程と、前記装置設定情報から前記パラメータを抽出する第1の処理および第1の処理により抽出されたパラメータに基づいて前記ネットワーク装置の設定を行うための命令を作成する第2の処理を、外部スクリプトに実行させる外部スクリプト実行工程と、前記外部スクリプトによって作成された前記命令を、前記ネットワーク装置に送信する命令送信工程と、を含んだことを特徴とする。
本発明によれば、装置設定情報のパラメータ項目の追加、削除および変更を迅速かつ簡易に変更することができる。
図1は、第1の実施形態に係る装置設定システムの構成の一例を示す図である。 図2は、第1の実施形態に係る装置設定システムが参照する設定種別と外部スクリプトの対応関係の一例を示す図である。 図3は、第1の実施形態に係る装置設定システムで実行される外部スクリプトの機能の一例を示す図である。 図4は、第1の実施形態に係る装置設定システムの処理の一例を示すシーケンス図である。 図5は、第1の実施形態に係る装置設定システムの処理の一例を説明するための図である。 図6は、第1の実施形態に係る装置設定システムの処理の一例を説明するための図である。 図7は、第2の実施形態に係る装置設定システムの構成の一例を示す図である。 図8は、第2の実施形態に係る装置設定システムが参照する装置識別子と装置種別の対応関係の一例を示す図である。 図9は、第2の実施形態に係る装置設定システムが参照する設定種別と装置種別と外部スクリプトの対応関係の一例を示す図である。 図10は、第2の実施形態に係る装置設定システムの処理の一例を示すシーケンス図である。 図11は、第2の実施形態に係る装置設定システムの処理の一例を説明するための図である。 図12は、第3の実施形態に係る装置設定システムが参照するIPアドレスと装置種別の対応関係の一例を示す図である。 図13は、第3の実施形態に係る装置設定システムの処理の一例を示すシーケンス図である。 図14は、第3の実施形態に係る装置設定システムの処理の一例を説明するための図である。 図15は、第4の実施形態に係る装置設定システムが参照する装置情報と装置種別の対応関係の一例を示す図である。 図16は、第4の実施形態に係る装置設定システムの処理の一例を示すシーケンス図である。 図17は、第4の実施形態に係る装置設定システムの処理の一例を説明するための図である。 図18は、プログラムが実行されることにより装置設定システムが実現されるコンピュータの一例を示す図である。 図19は、従来の装置設定システムを示す図である。
以下に、本願に係る装置設定プログラムおよび装置設定方法の実施形態を図面に基づいて詳細に説明する。なお、この実施形態により本願に係る装置設定プログラムおよび装置設定方法が限定されるものではない。
[第1の実施形態]
以下の実施形態では、第1の実施形態に係る装置設定システムの構成および処理の流れを説明し、最後に第1の実施形態による効果を説明する。
[第1の実施形態の構成]
まず、図1を用いて第1の実施形態に係る装置設定システムの構成について説明する。図1は、第1の実施形態に係る装置設定システムの構成の一例を示す図である。図1に示すように、装置設定システム1は、上位オペレーションシステム2およびネットワーク装置3と接続されている。そして、装置設定システム1は、上位オペレーションシステム2から受け取った装置設定情報に基づいて、ネットワーク装置3の設定を行う。なお、1つの装置設定システム1に対して、上位オペレーションシステム2およびネットワークシステム3は1つであってもよいし、複数であってもよい。また、上位オペレーションシステム2は、例えば設計システムである。また、ネットワーク装置3は、例えばルータである。また、装置設定情報は、サービスオーダと呼ばれる場合もある。
また、図1に示すように、装置設定システム1は、処理部10および記憶部11を有する。処理部10は、装置設定システム1のAPL本体であり、プログラムに従って処理を行い、必要に応じて記憶部11を参照する。また、処理部10は、処理の過程において、記憶部11等から外部のスクリプトを呼出し実行することもできる。また、処理部10で実行されるプログラムは、コンパイルされた状態であってもよい。
処理部10は、装置設定情報受信部101、外部スクリプト選択部102、外部スクリプト実行部103および命令送信部104を有する。また、記憶部11は、対応関係記憶部111および外部スクリプト記憶部112を有する。
装置設定情報受信部101は、ネットワーク装置3の設定を行うために必要なパラメータおよびネットワーク装置3に対して行う設定の種別を少なくとも含んだ装置設定情報を受信する。外部スクリプト選択部102は、設定の種別に対応する外部スクリプトが記載された外部定義ファイルを参照し、装置設定情報に含まれる設定の種別に対応する外部スクリプトを選択する。外部スクリプト実行部103は、装置設定情報からパラメータを抽出する第1の処理および第1の処理により抽出されたパラメータに基づいてネットワーク装置の設定を行うための命令を作成する第2の処理を、外部スクリプトに実行させる。命令送信部104は、外部スクリプトによって作成された命令を、ネットワーク装置3に送信する。なお、外部定義ファイルは、対応関係記憶部111に記憶される。また、外部スクリプト記憶部112には、複数の外部スクリプトが記憶される。
図2を用いて、対応関係記憶部111に記憶される外部定義ファイルの例について説明する。図2は、第1の実施形態に係る装置設定システムが参照する設定種別と外部スクリプトの対応関係の一例を示す図である。図2に示すように、外部定義ファイルには、設定種別に対応する外部スクリプトのファイル名が記載されている。例えば、装置設定情報に含まれている設定種別が「LAG開通」である場合、外部スクリプト選択部102は、外部スクリプト「LAG.sc」を選択する。なお、この時、外部スクリプト選択部102は、装置設定情報における設定種別以外の情報は参照しない。
図3を用いて、外部スクリプトの機能について説明する。図3は、第1の実施形態に係る装置設定システムで実行される外部スクリプトの機能の一例を示す図である。図3に示すように外部スクリプト12は、パラメータ抽出部121、パラメータ投入部122およびテンプレート123を有する。ここで、装置設定情報には、パラメータがオブジェクトとして含まれているものとする。
パラメータ抽出部121は、装置設定情報に含まれているオブジェクトから、各パラメータを、例えば文字列や数値等の利用可能な状態で抽出する。そして、パラメータ投入部122は、テンプレート123に対して、パラメータを投入する。テンプレート123は、例えば、各設定の種別によって予め用意されたXML文書等であってもよい。この場合、パラメータ投入部122は、XML文書の所定の箇所に抽出したパラメータを記入する。
このように、外部スクリプトには、装置設定情報からパラメータを抽出し、抽出したテンプレートに投入する機能があるため、処理部10で実行されるプログラムにおいては、例えばハードコーディング等によってパラメータを定義する必要がない。そのため、パラメータ項目の追加、削除および変更が行われた場合は、処理部10の改造ではなく、外部スクリプトの改造が行われる。
[第1の実施形態の処理]
図4を用いて、装置設定システム1の処理について説明する。図4は、第1の実施形態に係る装置設定システムの処理の一例を示すシーケンス図である。図4に示すように、まず、処理部10の装置設定情報受信部101は、上位オペレーションシステム2から装置設定情報を受信する(ステップS101)。次に、処理部10の外部スクリプト選択部102は、記憶部11の対応関係記憶部111に装置設定情報を送信し、外部スクリプトのファイル名を取得する(ステップS102)。そして、外部スクリプト実行部103は、外部スクリプトに処理を実行させる(ステップS103)。
ここで、外部スクリプトは、装置設定情報からパラメータの抽出を行う(ステップS151)。そして、外部スクリプトは、パラメータをテンプレートに投入する(ステップS152)。そして、処理部10の命令送信部104は、ネットワーク装置3に命令を送信する(ステップS104)。
図4に示すように、処理部10は、装置設定情報受信、外部スクリプト選択、外部スクリプト実行を行う。そして、外部スクリプトがパラメータ抽出およびパラメータ投入を行った後、処理部10は、命令を送信する。そのため、パラメータ項目の追加、削除および変更が行われた場合は、処理部10の改造ではなく、外部スクリプトの改造が行われる。なお、装置設定情報にパラメータが含まれていない場合であっても、外部スクリプトは実行される。例えば、外部スクリプトは空のパラメータを抽出し(ステップS151)、空のパラメータを投入する(ステップS152)。
(パラメータの追加)
図5を用いて、オプションサービス追加に伴い、装置設定情報に新たなパラメータが追加され、2回目開発を行う場合の処理の例について説明する。図5は、第1の実施形態に係る装置設定システムの処理の一例を説明するための図である。
まず、図5の(a)に示すように、初回開発において、処理部10の装置設定情報受信部101は、LAG開通のための装置設定情報を受信する。この時、装置設定情報には、LAG開通オブジェクトが含まれ、LAG開通オブジェクトには「VLAN1001」および「LAG1」という値が含まれる。
装置設定情報受信部101は、外部スクリプト選択部102に装置設定情報を受け渡す。そして、外部スクリプト選択部102は、記憶部11の対応関係記憶部111に記憶されている外部定義ファイルを参照し、設定種別「LAG開通」に対応する外部スクリプトファイルの名称「LAG.sc」を取得する。
処理部10の外部スクリプト実行部103は、外部スクリプト記憶部112に記憶されている外部スクリプト選択部102が取得した外部スクリプトのファイル名「LAG.sc」に対応する外部スクリプトに処理を実行させる。外部スクリプト「LAG.sc」は、記憶部11の外部スクリプト記憶部112に記憶されているファイル群に含まれる。
ここで、外部スクリプト「LAG.sc」は、装置設定情報のLAG開通オブジェクトを解釈し、パラメータを分解し、[XX]および[YY]というパラメータを取得する。この場合、外部スクリプト「LAG.sc」は、パラメータ[XX]の値として「VLAN1001」、パラメータ[YY]の値として「LAG1」を抽出する。そして、外部スクリプト「LAG.sc」は、抽出したパラメータをテンプレートに投入する。その後、処理部10は、パラメータが投入されたテンプレートを基に、ネットワーク装置3に命令を送信する。
次に、図5の(b)に示すように、2回目開発においては、LAG開通オブジェクトに「高優先」という値が追加されている。2回目開発の場合においては、外部スクリプト「LAG.sc」における処理が初回開発の場合と異なる。図5の(b)に示すように、外部スクリプト「LAG.sc」は、装置設定情報のLAG開通オブジェクトを解釈し、パラメータを分解し、[XX]および[YY]に加えて[ZZ]というパラメータを取得する。そして、パラメータ[ZZ]の値として「高優先」を抽出する。また、テンプレートも追加されたパラメータ[ZZ]に対応したものとなっており、外部スクリプト「LAG.sc」は、抽出したパラメータ[XX]、[YY]および[ZZ]をテンプレートに投入する。
図5の(b)に示す2回目開発においては、追加されたパラメータ[ZZ]に対応するため、外部スクリプト「LAG.sc」の修正が行われるが、処理部10において実行されるプログラム等は変更されない。
(外部スクリプトの追加)
図6を用いて、オプションサービス追加に伴い、外部スクリプトが追加され、2回目開発を行う場合の処理の例について説明する。図6は、第1の実施形態に係る装置設定システムの処理の一例を説明するための図である。図6の(a)に示す、初回開発の場合の処理は、図5の(a)に示す場合と同様であるため、説明を省略する。
図6の(b)に示すように、2回目開発においては、外部定義ファイルに設定種別「ETH−OAM設定」および対応する外部スクリプトのファイル名「ETH−OAM.sc」が追加されている。2回目開発の場合においては、装置設定情報受信部101が受信する装置設定情報の設定種別およびパラメータを含むオブジェクトが初回開発の場合と異なる。
そして、設定種別「ETH−OAM設定」に対応した外部スクリプトのファイル名「ETH−OAM.sc」が外部定義ファイルに追加される。また、外部スクリプト群には外部スクリプト「ETH−OAM.sc」が追加される。外部スクリプト「ETH−OAM.sc」は、ETH−OAM設定オブジェクトからパラメータを抽出し、ETH−OAM設定用に用意されたテンプレートにパラメータを投入する。また、2回目開発においては、外部定義ファイルの変更および新たな外部スクリプトの追加が行われるが、処理部10において実行されるプログラム等は変更されない。
[第1の実施形態の効果]
第1の実施形態において、装置設定システム1の処理部10は、ネットワーク装置3の設定を行うために必要なパラメータおよびネットワーク装置3に対して行う設定の種別を含んだ装置設定情報を受信する。そして、処理部10は、設定の種別に対応する外部スクリプトが記載された外部定義ファイルを参照し、装置設定情報に含まれる設定の種別に対応する外部スクリプトを選択する。そして、処理部10は、外部スクリプトに処理を実行させる。この時、外部スクリプトは、装置設定情報からパラメータを抽出し、抽出されたパラメータに基づいてネットワーク装置の設定を行うための命令を作成する。そして、処理部10は、外部スクリプトによって作成された命令をネットワーク装置3に送信する。
これにより、装置設定情報のパラメータ項目の追加、削除および変更またはシナリオの追加を行う場合であっても、プログラム本体である処理部10を改造する必要がない。そのため、大掛かりな再コンパイルや検証等を行う必要がなく、装置設定情報のパラメータ項目の追加、削除および変更またはシナリオの追加を迅速かつ簡易に行うことができる。また、結果として、開発期間の短縮および開発費用の低減が実現される。
[第2の実施形態]
ネットワーク装置は複数のベンダによって提供されるものであり、異なる種別のネットワーク装置が存在している。そのため、装置設定システムにおいては、例えば、設定種別が同じであっても、ネットワーク装置の種別によっては異なる外部スクリプトを使用するようにしてもよい。第2の実施形態においては、ネットワーク装置の種別に応じて異なる外部スクリプトを使用する場合の例について説明する。
[第2の実施形態の構成]
まず、図7を用いて、第2の実施形態の構成について説明する。図7は、第2の実施形態に係る装置設定システムの構成の一例を示す図である。図7に示すように、装置設定システム1は、装置種別判定部105を有する。その他の構成は第1の実施形態の場合と同様である。
第2の実施形態において、装置設定情報受信部101が受信する装置設定情報には、装置識別子が含まれる。そして、図8に示すように、対応関係記憶部111には、装置識別子と装置種別との対応関係がさらに記憶されている。図8は、第2の実施形態に係る装置設定システムが参照する装置識別子と装置種別の対応関係の一例を示す図である。例えば、装置識別子「100」は、「A社装置」を示している。なお、装置識別子は、上位オペレーションシステム2と装置設定システム1との間で予め定められているものとする。
また、図9に示すように、対応関係記憶部111の外部定義ファイルには、設定種別、装置種別および外部スクリプトの対応関係が記憶されている。図9は、第2の実施形態に係る装置設定システムが参照する設定種別と装置種別と外部スクリプトの対応関係の一例を示す図である。例えば、設定種別が「LAG開通」かつ装置種別が「A社装置」である場合は、外部スクリプト「LAG_A.sc」が選択される。また、設定種別が「LAG開通」であっても、装置種別が「B社装置」である場合は、外部スクリプト「LAG_B.sc」が選択される。なお、外部定義ファイルには、設定種別と装置識別子と外部スクリプトとの対応関係を直接記載するようにしてもよい。また、外部スクリプト「LAG_A.sc」および外部スクリプト「LAG_B.sc」においては、抽出するパラメータまたはテンプレートが異なっているものとする。
[第2の実施形態の処理]
図10を用いて、装置設定システム1の処理について説明する。図10は、第2の実施形態に係る装置設定システムの処理の一例を示すシーケンス図である。図10に示すように、まず、処理部10の装置設定情報受信部101は、上位オペレーションシステム2から装置設定情報を受信する(ステップS201)。この時、装置設定情報には装置識別子が含まれている。次に、処理部10の装置種別判定部105は、装置識別子に対応する装置種別を取得しているものとする。そして、処理部10の外部スクリプト選択部102は、記憶部11の対応関係記憶部111に装置種別を含んだ装置設定情報を送信し、外部スクリプトのファイル名を取得する(ステップS202)。そして、外部スクリプト実行部103は、外部スクリプトに処理を実行させる(ステップS203)。
ここで、外部スクリプトは、装置設定情報からパラメータの抽出を行う(ステップS251)。そして、外部スクリプトは、パラメータをテンプレートに投入する(ステップS252)。そして、処理部10の命令送信部104は、ネットワーク装置3に命令を送信する(ステップS204)。
(装置種別の変更)
図11を用いて、2回目開発において装置種別が追加された場合の処理の例について説明する。図11は、第2の実施形態に係る装置設定システムの処理の一例を説明するための図である。
まず、図11の(a)に示すように、初回開発において、処理部10の装置設定情報受信部101は、LAG開通のための装置設定情報を受信する。この時、装置設定情報には、LAG開通オブジェクトが含まれ、LAG開通オブジェクトには「VLAN1001」および「LAG1」という値が含まれる。また、装置設定情報には、装置識別子として「100」という値が含まれている。
装置設定情報受信部101は、装置種別判定部105に装置識別子「100」を受け渡し、外部スクリプト選択部102に装置設定情報を受け渡す。装置種別判定部105は、記憶部11の対応関係記憶部111に記憶されている装置識別子と装置種別の対応関係を参照し、装置種別「A社装置」を取得し、取得した装置種別を外部スクリプト選択部102に受け渡す。そして、外部スクリプト選択部102は、記憶部11の対応関係記憶部111に記憶されている外部定義ファイルを参照し、設定種別「LAG開通」および装置種別「A社装置」に対応する外部スクリプトファイルの名称「LAG_A.sc」を取得する。
処理部10の外部スクリプト実行部103は、外部スクリプト記憶部112に記憶されている外部スクリプト選択部102が取得した外部スクリプトのファイル名「LAG_A.sc」に対応する外部スクリプトに処理を実行させる。外部スクリプト「LAG_A.sc」は、記憶部11の外部スクリプト記憶部112に記憶されているファイル群に含まれる。
ここで、外部スクリプト「LAG_A.sc」は、装置設定情報のLAG開通オブジェクトを解釈し、パラメータを分解し、[XX]および[YY]というパラメータを取得する。この場合、外部スクリプト「LAG_A.sc」は、パラメータ[XX]の値として「VLAN1001」、パラメータ[YY]の値として「LAG1」を抽出する。そして、外部スクリプト「LAG_A.sc」は、抽出したパラメータをテンプレートに投入する。その後、処理部10は、パラメータが投入されたテンプレートを基に、A社ネットワーク装置に命令を送信する。
また、図11の(b)に示すように、2回目開発においては、外部定義ファイルに装置種別「B社装置」に対応する外部スクリプトのファイル名「LAG_B.sc」が追加されている。また、2回目開発以降、装置設定情報受信部101が受信する装置設定情報の装置識別子が「200」である場合、装置種別判定部105は、記憶部11の対応関係記憶部111に記憶されている装置識別子と装置種別の対応関係を参照し、装置種別「B社装置」を得る。
また、外部スクリプト「LAG_A.sc」と外部スクリプト「LAG_B.sc」は、それぞれA社ネットワーク装置とB社ネットワーク装置に対応した異なるテンプレートを有する。そして、処理部10はB社ネットワーク装置に命令を送信する。このように、2回目開発において装置種別が追加された場合であっても、装置識別子と装置種別の対応関係および外部定義ファイルの変更、および新たな外部スクリプトの追加が行われるが、処理部10において実行されるプログラム等は変更されない。
[第2の実施形態の効果]
第2の実施形態において、装置設定システム1の処理部10は、前記装置設定情報に基づいて前記ネットワーク装置の種別を判定する。そして、処理部10は、設定の種別および装置の種別に対応する外部スクリプトが記載された外部定義ファイルを参照し、前記装置設定情報に含まれる設定の種別および前記ネットワークの種別に対応する外部スクリプトを選択する。これにより、装置種別が追加された場合であっても、迅速かつ簡易な対応が可能となる。
[第3の実施形態]
第2の実施形態において、装置設定システムは、ネットワーク装置の装置識別子を基に装置種別を判定していた。これに対し、第3の実施形態では、装置設定システムがIPアドレスを基に装置種別を判定する場合について説明する。
[第3の実施形態の構成]
第3の実施形態の基本的な構成は第2の実施形態と同様である。第3の実施形態において、装置設定情報受信部101が受信する装置設定情報には、IPアドレスが含まれる。そして、図12に示すように、対応関係記憶部111には、IPアドレスと装置種別の対応関係がさらに記憶されている。図12は、第3の実施形態に係る装置設定システムが参照するIPアドレスと装置種別の対応関係の一例を示す図である。例えば、IPアドレス「192.0.2.100」は、「A社装置」を示している。また、第3の実施形態においても、対応関係記憶部111の外部定義ファイルには、設定種別、装置種別および外部スクリプトの対応関係が記憶されている。
[第3の実施形態の処理]
図13を用いて、装置設定システム1の処理について説明する。図13は、第3の実施形態に係る装置設定システムの処理の一例を示すシーケンス図である。図13に示すように、まず、処理部10の装置設定情報受信部101は、上位オペレーションシステム2から装置設定情報を受信する(ステップS301)。そして、処理部10の装置種別判定部105は、IPアドレスを照会し、装置種別を取得する(ステップS302)。次に、処理部10の外部スクリプト選択部102は、記憶部11の対応関係記憶部111に装置設定情報および装置種別を送信し、外部スクリプトのファイル名を取得する(ステップS303)。そして、外部スクリプト実行部103は、外部スクリプトに処理を実行させる(ステップS304)。
ここで、外部スクリプトは、装置設定情報からパラメータの抽出を行う(ステップS351)。そして、外部スクリプトは、パラメータをテンプレートに投入する(ステップS352)。そして、処理部10の命令送信部104は、ネットワーク装置3に命令を送信する(ステップS305)。
(装置種別の変更)
図14を用いて、2回目開発において装置種別が追加された場合の処理の例について説明する。図14は、第3の実施形態に係る装置設定システムの処理の一例を説明するための図である。
まず、図14の(a)に示すように、初回開発において、処理部10の装置設定情報受信部101は、LAG開通のための装置設定情報を受信する。この時、装置設定情報には、LAG開通オブジェクトが含まれ、LAG開通オブジェクトには「VLAN1001」および「LAG1」という値が含まれる。また、装置設定情報には、IPアドレス「192.0.2.100」という値が含まれている。
装置設定情報受信部101は、装置種別判定部105にIPアドレス「192.0.2.100」を受け渡し、外部スクリプト選択部102に装置設定情報を受け渡す。装置種別判定部105は、記憶部11の対応関係記憶部111に記憶されているIPアドレスと装置種別の対応関係を参照し、IPアドレス「192.0.2.100」の照会を行い、装置種別「A社装置」を取得し、取得した装置種別を外部スクリプト選択部102に受け渡す。そして、外部スクリプト選択部102は、記憶部11の対応関係記憶部111に記憶されている外部定義ファイルを参照し、設定種別「LAG開通」および装置種別「A社装置」に対応する外部スクリプトファイルの名称「LAG_A.sc」を取得する。
処理部10の外部スクリプト実行部103は、外部スクリプト記憶部112に記憶されている外部スクリプト選択部102が取得した外部スクリプトのファイル名「LAG_A.sc」に対応する外部スクリプトに処理を実行させる。外部スクリプト「LAG_A.sc」は、記憶部11の外部スクリプト記憶部112に記憶されているファイル群に含まれる。
ここで、外部スクリプト「LAG_A.sc」は、装置設定情報のLAG開通オブジェクトを解釈し、パラメータを分解し、[XX]および[YY]というパラメータを取得する。この場合、外部スクリプト「LAG_A.sc」は、パラメータ[XX]の値として「VLAN1001」、パラメータ[YY]の値として「LAG1」を抽出する。そして、外部スクリプト「LAG_A.sc」は、抽出したパラメータをテンプレートに投入する。その後、処理部10は、パラメータが投入されたテンプレートを基に、A社ネットワーク装置に命令を送信する。
また、図14の(b)に示すように、2回目開発においては、外部定義ファイルに装置種別「B社装置」に対応する外部スクリプトのファイル名「LAG_B.sc」が追加されている。また、2回目開発以降、装置設定情報受信部101が受信する装置設定情報のIPアドレスが「192.0.2.101」である場合、装置種別判定部105は、記憶部11の対応関係記憶部111に記憶されているIPアドレスと装置種別の対応関係を参照し、装置種別「B社装置」を得る。
また、外部スクリプト「LAG_A.sc」と外部スクリプト「LAG_B.sc」は、それぞれA社ネットワーク装置とB社ネットワーク装置に対応した異なるテンプレートを有する。そして、処理部10はB社ネットワーク装置に命令を送信する。このように、2回目開発において装置種別が追加された場合であっても、IPアドレスと装置種別の対応関係および外部定義ファイルの変更、および新たな外部スクリプトの追加が行われるが、処理部10において実行されるプログラム等は変更されない。
[第3の実施形態の効果]
第3の実施形態においても第2の実施形態と同様の効果を奏する。また、ネットワーク装置のIPアドレスは、もともと装置設定情報に含まれている場合があり得る。このような場合は、第2の実施形態と比較すると、識別子を新たに定める必要がないため、開発をより簡易化することができる。
[第4の実施形態]
第2の実施形態および第3の実施形態において、装置設定システムは、ネットワーク装置の装置識別子またはIPアドレスを基に装置種別を判定していた。これに対し、第3の実施形態において、装置設定システムは、ネットワーク装置に対して装置情報を問合わせる。
[第4の実施形態の構成]
第4の実施形態の基本的な構成は第2の実施形態と同様である。第4の実施形態において、装置設定情報受信部101が受信する装置設定情報には、装置識別子やIPアドレスは含まれていなくてもよい。そして、図15に示すように、対応関係記憶部111には、装置情報と装置種別の対応関係がさらに記憶されている。図15は、第4の実施形態に係る装置設定システムが参照する装置情報と装置種別の対応関係の一例を示す図である。例えば、装置情報「C1234」は、「A社装置」を示している。また、第4の実施形態においても、対応関係記憶部111の外部定義ファイルには、設定種別、装置種別および外部スクリプトの対応関係が記憶されている。なお、装置情報とは、ネットワーク装置から取得可能で、各装置を特定することができる情報であればよく、例えば製品を示すコード等が考えられる。
[第4の実施形態の処理]
図16を用いて、装置設定システム1の処理について説明する。図16は、第4の実施形態に係る装置設定システムの処理の一例を示すシーケンス図である。図16に示すように、まず、処理部10の装置設定情報受信部101は、上位オペレーションシステム2から装置設定情報を受信する(ステップS401)。そして、処理部10の装置種別判定部105は、ネットワーク装置3に装置情報を問合せ、装置情報を取得する(ステップS402)。そして、処理部10の装置種別判定部105は、装置情報をに対応する装置種別を取得する(ステップS403)。次に、処理部10の外部スクリプト選択部102は、記憶部11の対応関係記憶部111に装置設定情報および装置種別を送信し、外部スクリプトのファイル名を取得する(ステップS404)。そして、外部スクリプト実行部103は、外部スクリプトに処理を実行させる(ステップS405)。
ここで、外部スクリプトは、装置設定情報からパラメータの抽出を行う(ステップS451)。そして、外部スクリプトは、パラメータをテンプレートに投入する(ステップS452)。そして、処理部10の命令送信部104は、ネットワーク装置3に命令を送信する(ステップS406)。
(装置種別の変更)
図17を用いて、2回目開発において装置種別が追加された場合の処理の例について説明する。図17は、第4の実施形態に係る装置設定システムの処理の一例を説明するための図である。
まず、図17の(a)に示すように、初回開発において、処理部10の装置設定情報受信部101は、LAG開通のための装置設定情報を受信する。この時、装置設定情報には、LAG開通オブジェクトが含まれ、LAG開通オブジェクトには「VLAN1001」および「LAG1」という値が含まれる。
装置設定情報受信部101は、装置種別判定部105に装置設定情報を受け渡す。そして、装置種別判定部105はA社ネットワーク装置に対して、装置情報を問合せ、装置情報を取得する。この時、装置情報の問合せおよび取得は、SNMP(Simple Network Management Protocol)を利用するものであってもよい。そして、装置種別判定部105は、例えば「C1234」という装置情報を取得し、記憶部11の対応関係記憶部111に記憶されている装置情報と装置種別の対応関係を参照し、装置種別「A社装置」を得る。
装置種別判定部105は、外部スクリプト選択部102に装置設定情報および装置種別を受け渡す。そして、外部スクリプト選択部102は、記憶部11の対応関係記憶部111に記憶されているIPアドレスと装置種別の対応関係および外部定義ファイルを参照し、設定種別「LAG開通」および装置種別「A社装置」に対応する外部スクリプトファイルの名称「LAG_A.sc」を取得する。
処理部10の外部スクリプト実行部103は、外部スクリプト記憶部112に記憶されている外部スクリプト選択部102が取得した外部スクリプトのファイル名「LAG_A.sc」に対応する外部スクリプトに処理を実行させる。外部スクリプト「LAG_A.sc」は、記憶部11の外部スクリプト記憶部112に記憶されているファイル群に含まれる。
ここで、外部スクリプト「LAG_A.sc」は、装置設定情報のLAG開通オブジェクトを解釈し、パラメータを分解し、[XX]および[YY]というパラメータを取得する。この場合、外部スクリプト「LAG_A.sc」は、パラメータ[XX]の値として「VLAN1001」、パラメータ[YY]の値として「LAG1」を抽出する。そして、外部スクリプト「LAG_A.sc」は、抽出したパラメータをテンプレートに投入する。その後、処理部10は、パラメータが投入されたテンプレートを基に、A社ネットワーク装置に命令を送信する。
また、図17の(b)に示すように、2回目開発においては、外部定義ファイルに装置種別「B社装置」に対応する外部スクリプトのファイル名「LAG_B.sc」が追加されている。また、2回目開発以降、B社ネットワーク装置の設定を行う場合、装置種別判定部105は、B社ネットワーク装置に問合せを行い、装置情報「ABC−1」を取得し、記憶部11の対応関係記憶部111に記憶されている装置情報と装置種別の対応関係を参照し、装置種別「B社装置」を得る。
また、外部スクリプト「LAG_A.sc」と外部スクリプト「LAG_B.sc」は、それぞれA社ネットワーク装置とB社ネットワーク装置に対応した異なるテンプレートを有する。そして、処理部10はB社ネットワーク装置に命令を送信する。このように、2回目開発において装置種別が追加された場合であっても、装置情報と装置種別の対応関係および外部定義ファイルの変更、および新たな外部スクリプトの追加が行われるが、処理部10において実行されるプログラム等は変更されない。
[第4の実施形態の効果]
第4の実施形態においても第2の実施形態と同様の効果を奏する。また、第2の実施形態と比較すると、装置設定情報に特別な情報を持たせる必要がないため、開発をより簡易化することができる場合もある。
[システム構成等]
また、図示した各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各構成要素の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況等に応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。さらに、各構成要素にて行なわれる各処理機能は、その全部または任意の一部が、CPU(Central Processing Unit)および当該CPUにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
また、本実施形態において説明した各処理のうち、自動的におこなわれるものとして説明した処理の全部または一部を手動的におこなうこともでき、あるいは、手動的におこなわれるものとして説明した処理の全部または一部を公知の方法で自動的におこなうこともできる。この他、上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。
[プログラム]
図18は、プログラムが実行されることにより、装置設定システムが実現されるコンピュータの一例を示す図である。コンピュータ1000は、例えば、メモリ1010、CPU1020を有する。また、コンピュータ1000は、ハードディスクドライブインタフェース1030、ディスクドライブインタフェース1040、シリアルポートインタフェース1050、ビデオアダプタ1060、ネットワークインタフェース1070を有する。これらの各部は、バス1080によって接続される。
メモリ1010は、ROM(Read Only Memory)1011およびRAM(Random Access Memory)1012を含む。ROM1011は、例えば、BIOS(Basic Input Output System)等のブートプログラムを記憶する。ハードディスクドライブインタフェース1030は、ハードディスクドライブ1090に接続される。ディスクドライブインタフェース1040は、ディスクドライブ1100に接続される。例えば磁気ディスクや光ディスク等の着脱可能な記憶媒体が、ディスクドライブ1100に挿入される。シリアルポートインタフェース1050は、例えばマウス1110、キーボード1120に接続される。ビデオアダプタ1060は、例えばディスプレイ1130に接続される。
ハードディスクドライブ1090は、例えば、OS1091、アプリケーションプログラム1092、プログラムモジュール1093、プログラムデータ1094を記憶する。すなわち、装置設定システムの各処理を規定するプログラムは、コンピュータにより実行可能なコードが記述されたプログラムモジュール1093として実装される。プログラムモジュール1093は、例えばハードディスクドライブ1090に記憶される。例えば、装置設定システムにおける機能構成と同様の処理を実行するためのプログラムモジュール1093が、ハードディスクドライブ1090に記憶される。なお、ハードディスクドライブ1090は、SSD(Solid State Drive)により代替されてもよい。
また、上述した実施形態の処理で用いられる設定データは、プログラムデータ1094として、例えばメモリ1010やハードディスクドライブ1090に記憶される。そして、CPU1020が、メモリ1010やハードディスクドライブ1090に記憶されたプログラムモジュール1093やプログラムデータ1094を必要に応じてRAM1012に読み出して実行する。
なお、プログラムモジュール1093やプログラムデータ1094は、ハードディスクドライブ1090に記憶される場合に限らず、例えば着脱可能な記憶媒体に記憶され、ディスクドライブ1100等を介してCPU1020によって読み出されてもよい。あるいは、プログラムモジュール1093およびプログラムデータ1094は、ネットワーク(LAN(Local Area Network)、WAN(Wide Area Network)等)を介して接続された他のコンピュータに記憶されてもよい。そして、プログラムモジュール1093およびプログラムデータ1094は、他のコンピュータから、ネットワークインタフェース1070を介してCPU1020によって読み出されてもよい。
1 装置設定システム
2 上位オペレーションシステム
3 ネットワーク装置
10 処理部
11 記憶部
12 外部スクリプト
101 装置設定情報受信部
102 外部スクリプト選択部
103 外部スクリプト実行部
104 命令送信部
111 対応関係記憶部
112 外部スクリプト記憶部
121 パラメータ抽出部
122 パラメータ投入部
123 テンプレート

Claims (5)

  1. コンピュータを、ネットワーク装置の設定を行う装置設定システムとして機能させる装置設定プログラムであって、
    前記ネットワーク装置に対して行う設定の種別およびIPアドレスを少なくとも含んだ装置設定情報を受信する装置設定情報受信ステップと、
    IPアドレスと装置の種別とを対応付けて記憶する記憶部を参照し、前記装置設定情報に含まれるIPアドレスに基づいて前記ネットワーク装置の種別を判定する装置種別判定ステップと、
    設定の種別および装置の種別に対応する外部スクリプトが記載された外部定義ファイルを参照し、前記装置設定情報に含まれる設定の種別および前記装置種別判定ステップにおいて判定された装置の種別に対応する外部スクリプトを選択する外部スクリプト選択ステップと、
    前記ネットワーク装置の設定を行うための命令を作成する処理を、前記外部スクリプトに実行させる外部スクリプト実行ステップと、
    前記外部スクリプトによって作成された前記命令を、前記ネットワーク装置に送信する命令送信ステップと、
    を実行させることを特徴とする装置設定プログラム。
  2. コンピュータを、ネットワーク装置の設定を行う装置設定システムとして機能させる装置設定プログラムであって、
    前記ネットワーク装置に対して行う設定の種別を少なくとも含んだ装置設定情報を受信する装置設定情報受信ステップと、
    前記ネットワーク装置に問合せを行うことで前記ネットワーク装置の装置情報を取得し、装置情報と装置の種別とを対応付けて記憶する記憶部を参照し、前記ネットワーク装置から取得した装置情報に基づいて前記ネットワーク装置の種別を判定する装置種別判定ステップと、
    設定の種別および装置の種別に対応する外部スクリプトが記載された外部定義ファイルを参照し、前記装置設定情報に含まれる設定の種別および前記装置種別判定ステップにおいて判定された装置の種別に対応する外部スクリプトを選択する外部スクリプト選択ステップと、
    前記ネットワーク装置の設定を行うための命令を作成する処理を、前記外部スクリプトに実行させる外部スクリプト実行ステップと、
    前記外部スクリプトによって作成された前記命令を、前記ネットワーク装置に送信する命令送信ステップと、
    を実行させることを特徴とする装置設定プログラム。
  3. 前記装置設定情報受信ステップは、前記ネットワーク装置の設定を行うために必要なパラメータを少なくとも含んだ装置設定情報を受信し、
    前記外部スクリプト実行ステップは、前記装置設定情報から前記パラメータを抽出する第1の処理および第1の処理により抽出されたパラメータに基づいて前記ネットワーク装置の設定を行うための命令を作成する第2の処理を、前記外部スクリプトに実行させることを特徴とする請求項1又は2に記載の装置設定プログラム。
  4. 前記コンピュータに、
    前記装置設定情報に基づいて前記ネットワーク装置の種別を判定する装置種別判定ステップをさらに実行させ、
    前記外部スクリプト選択ステップは、設定の種別および装置の種別に対応する外部スクリプトが記載された外部定義ファイルを参照し、前記装置設定情報に含まれる設定の種別および前記ネットワーク装置の種別に対応する外部スクリプトを選択することを特徴とする請求項1からのいずれか1項に記載の装置設定プログラム。
  5. ネットワーク装置の設定を行う装置設定システムで実行される装置設定方法であって、
    前記ネットワーク装置に対して行う設定の種別およびIPアドレスを少なくとも含んだ装置設定情報を受信する装置設定情報受信工程と、
    IPアドレスと装置の種別とを対応付けて記憶する記憶部を参照し、前記装置設定情報に含まれるIPアドレスに基づいて前記ネットワーク装置の種別を判定する装置種別判定工程と、
    設定の種別および装置の種別に対応する外部スクリプトが記載された外部定義ファイルを参照し、前記装置設定情報に含まれる設定の種別および前記装置種別判定工程において判定された装置の種別に対応する外部スクリプトを選択する外部スクリプト選択工程と、
    前記ネットワーク装置の設定を行うための命令を作成する処理を、前記外部スクリプトに実行させる外部スクリプト実行工程と、
    前記外部スクリプトによって作成された前記命令を、前記ネットワーク装置に送信する命令送信工程と、
    を含んだことを特徴とする装置設定方法。
JP2015127010A 2015-06-24 2015-06-24 装置設定プログラムおよび装置設定方法 Active JP6386422B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2015127010A JP6386422B2 (ja) 2015-06-24 2015-06-24 装置設定プログラムおよび装置設定方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015127010A JP6386422B2 (ja) 2015-06-24 2015-06-24 装置設定プログラムおよび装置設定方法

Publications (2)

Publication Number Publication Date
JP2017010404A JP2017010404A (ja) 2017-01-12
JP6386422B2 true JP6386422B2 (ja) 2018-09-05

Family

ID=57764438

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015127010A Active JP6386422B2 (ja) 2015-06-24 2015-06-24 装置設定プログラムおよび装置設定方法

Country Status (1)

Country Link
JP (1) JP6386422B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6760868B2 (ja) * 2017-02-21 2020-09-23 日本電信電話株式会社 通信装置設定システムおよび通信装置設定方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5499584B2 (ja) * 2009-09-09 2014-05-21 株式会社リコー 印刷制御プログラム、情報処理装置、及び記録媒体
JP5806688B2 (ja) * 2013-01-04 2015-11-10 日本電信電話株式会社 OpS装置

Also Published As

Publication number Publication date
JP2017010404A (ja) 2017-01-12

Similar Documents

Publication Publication Date Title
US20210055952A1 (en) Methods and apparatus to manage monitoring agents
US20180225108A1 (en) Applying update to snapshots of virtual machine
JP6291134B2 (ja) サーバ選択装置、サーバ選択方法及びサーバ選択プログラム
US20180101371A1 (en) Deployment manager
US11556369B2 (en) Virtual machine deployment method and OMM virtual machine
JP5903822B2 (ja) 設定制御装置、設定制御方法および設定制御プログラム
US11989540B2 (en) Systems and methods for non-disruptive continuous software delivery
JP6996629B2 (ja) 検証自動化装置、検証自動化方法、およびプログラム
US11405266B2 (en) Automatic configuration of virtual network functions
KR102118487B1 (ko) 지속적인 통합 및 배포를 위한 컨테이너 기반 애플리케이션의 자동 품질검사 시스템 및 방법
US10769153B2 (en) Computer system and method for setting a stream data processing system
US20200053150A1 (en) Network topology templates for internal states of management and control planes
US9898273B1 (en) Dynamically updating APIS based on updated configuration file of a computing system
JPWO2014020771A1 (ja) テンプレート生成プログラム、テンプレート生成方法およびテンプレート生成装置
US9886271B2 (en) Change method, apparatus, and recording medium
JP6386422B2 (ja) 装置設定プログラムおよび装置設定方法
CN107124292B (zh) 一种信息系统运行方式关联关系动态生成方法
US20150178074A1 (en) Method, a system, and a non-transitory computer-readable medium for supporting application development
US20140282492A1 (en) Information processing apparatus and information processing method
US10620968B2 (en) Parameter determination device, parameter determination method, and medium
CN114721686A (zh) 配置数据更新方法、装置、电子设备和存储介质
CN114157569A (zh) 集群系统及其构建方法和构建装置
US11954469B2 (en) Bases for pattern-based cloud computing
JPWO2018230352A1 (ja) 変更手順生成装置、変更手順生成方法および変更手順生成プログラム
US20230393876A1 (en) Landing zones for pattern-based cloud computing

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170224

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20180126

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180206

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180328

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180809

R150 Certificate of patent or registration of utility model

Ref document number: 6386422

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150