JP6950437B2 - 情報処理システム、情報処理装置及びプログラム - Google Patents

情報処理システム、情報処理装置及びプログラム Download PDF

Info

Publication number
JP6950437B2
JP6950437B2 JP2017197101A JP2017197101A JP6950437B2 JP 6950437 B2 JP6950437 B2 JP 6950437B2 JP 2017197101 A JP2017197101 A JP 2017197101A JP 2017197101 A JP2017197101 A JP 2017197101A JP 6950437 B2 JP6950437 B2 JP 6950437B2
Authority
JP
Japan
Prior art keywords
information
cluster
configuration
construction
information processing
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
JP2017197101A
Other languages
English (en)
Other versions
JP2019070972A (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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2017197101A priority Critical patent/JP6950437B2/ja
Priority to US16/151,633 priority patent/US11003519B2/en
Publication of JP2019070972A publication Critical patent/JP2019070972A/ja
Application granted granted Critical
Publication of JP6950437B2 publication Critical patent/JP6950437B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0709Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a distributed system consisting of a plurality of standalone computer nodes, e.g. clusters, client-server systems
    • 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1479Generic software techniques for error detection or fault masking
    • G06F11/1482Generic software techniques for error detection or fault masking by means of middleware or OS functionality
    • G06F11/1484Generic software techniques for error detection or fault masking by means of middleware or OS functionality involving virtual machines
    • 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
    • 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/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5077Logical partitioning of resources; Management or configuration of virtualized resources
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • G06F11/2038Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant with a single idle spare processing component

Description

本発明は、情報処理システム、情報処理装置及びプログラムに関する。
従来、複数の情報処理装置を用いてクラスタシステムを構築する場合、図13に示すように、ユーザは、クラスタ構築を管理する管理装置92から、各クラスタノード93にログインしてコマンドの実行、設定ファイルの作成を行っていた。ここで、ユーザは、クラスタシステムの構築者である。また、図13において、クラスタノードX及びクラスタノードYで表されるクラスタノード93は、構築されるクラスタシステムに含まれる情報処理装置である。
コマンドの実行、設定ファイルの作成により、死活監視用ネットワークのインタフェースの設定、スプリットブレイン発生時の挙動の設定、クラスタノード間で引き継ぐボリュームの設定、クラスタノード間で引き継ぐネットワークの設定等が行われる。
なお、クラウド環境下に設置した集中管理サーバが冗長化プログラム及び設定情報を含むインストーラを生成し、コンピュータが集中管理サーバからインストーラをダウンロードして冗長化プログラムをインストールするとともに設定情報を設定する技術がある。この技術によれば、クラスタシステムを簡単に構築することができる。
また、サーバを構成する各リソースの状態情報及び障害情報を参照してリソースを組み替えて、構成カタログに要求されたシステムを構築するための計算を行うと共に結線も含めて該システムを構成するハードウェアの実装を行う技術がある。この技術によれば、共用リソースを配備する情報処理センタの可用性を向上させることができる。
また、コンピュータシステムのシステム構成情報及びコンピュータシステムの物理サーバで稼動可能な仮想サーバの数を制限するための制約情報を参照し、入力された可用性要件を満たす、物理サーバに対する仮想サーバの配置を決定する技術がある。この技術によれば、仮想マシン技術を利用してコンピュータシステムの冗長化を実現することができる。
特開2016−122421号公報 特開2012−173751号公報 国際公開第2009/081736号
図13に示したクラスタ構築には、手番数が100を超え、ユーザが簡単にクラスタシステムを構築することができないという問題がある。ここで、手番数とは、クラスタ構築のためにユーザが行うファイル編集、コマンド実行等の数である。
本発明は、1つの側面では、ユーザが簡単にクラスタシステムを構築できるようにすることを目的とする。
1つの態様では、情報処理システムは、複数の情報処理装置と該複数の情報処理装置を用いたクラスタシステムの構築を管理する管理装置とを有する。前記管理装置は、前記クラスタシステムの構成に関する情報をユーザから受け付けて該クラスタシステムの構成を定義する情報であるクラスタ構成定義情報を生成する生成部を有する。各情報処理装置は、記憶部と構築部を有する。前記記憶部は、前記クラスタシステムの設定に用いられる設定情報及び前記クラスタシステムの構築に用いられる構築プログラムのひな型であって前記クラスタ構成定義情報からの情報の抽出方法を指定する情報を含む複数のテンプレートを記憶する。また、前記記憶部は、前記クラスタシステムを構築する構築手順に含まれる各手順と前記複数のテンプレートに含まれるテンプレートを対応付ける対応付け情報を記憶する。前記構築部は、前記生成部により生成されたクラスタ構成定義情報、前記記憶部が記憶する複数のテンプレート及び前記対応付け情報に基づいて前記設定情報及び前記構築プログラムを生成して該構築プログラムを実行する。
1つの側面では、本発明は、ユーザが簡単にクラスタシステムを構築できるようにすることができる。
図1は、実施例1に係る情報処理システムの構成を示す図である。 図2は、クラスタ構成定義情報の一例を示す図である。 図3は、自動構築部の機能構成を示す図である。 図4は、テンプレートエンジンによる設定ファイルの作成を説明するための図である。 図5は、スクリプトテンプレートとレンダリングの例を示す図である。 図6は、設定ファイルテンプレートとレンダリングの例を示す図である。 図7は、構築手順の例を示す図である。 図8は、情報処理システムによる処理のフローを示すフローチャートである。 図9は、構成管理装置との連携を説明するための図である。 図10は、実施例2に係る情報処理システムの構成を示す図である。 図11は、実施例2に係る情報処理システムによる処理の流れを示すシーケンス図である。 図12は、実施例に係る自動構築プログラムを実行するコンピュータのハードウェア構成を示す図である。 図13は、従来のクラスタシステム構築を説明するための図である。
以下に、本願の開示する情報処理システム、情報処理装置及びプログラムの実施例を図面に基づいて詳細に説明する。なお、実施例は開示の技術を限定するものではない。
まず、実施例1に係る情報処理システムの構成について説明する。図1は、実施例1に係る情報処理システムの構成を示す図である。図1に示すように、実施例1に係る情報処理システム1は、管理装置2とクラスタノードA及びクラスタノードBで表されるクラスタノード3とを有する。なお、クラスタノード3の数は3以上でもよい。
管理装置2は、クラスタシステムの構築を管理する装置である。クラスタノード3は、構築されるクラスタシステムに含まれる情報処理装置である。
管理装置2は、定義情報生成部21を有する。定義情報生成部21は、ユーザがキーボード、マウス等を用いてクラスタシステムに関して入力した設計情報を受け付けてクラスタ構成定義情報を生成する。ユーザがクラスタシステムに関して入力する設計情報には、クラスタシステムの名前、クラスタノード3の名前、クラスタノード3間のインターコネクトのポート数、運用形態等がある。
クラスタ構成定義情報は、クラスタシステムの構成等を定義する情報である。図2は、クラスタ構成定義情報の一例を示す図である。図2(a)はクラスタシステムの例を示し、図2(b)はクラスタシステムの設計情報を示し、図2(c)はクラスタ構成定義情報を示す。
図2(a)に示すように、クラスタシステムは、ノード#1及びノード#2で表されるクラスタノード3を有する。ノード#1は運用ノードであり、ノード#2は待機ノードである。各クラスタノード3は、App#1で表されるアプリケーションを実行する。ノード#1とノード#2は2パスの死活監視ネットワーク4で接続される。ノード#1及びノード#2は1パスの業務ネットワーク5に接続される。
また、図2(b)に示すように、運用形態、クラスタノード3、死活監視ネットワーク4、業務ネットワーク5等に関する情報が設計情報として管理装置2に入力される。管理装置2は、図2(b)に示す設計情報に基づいて図2(c)に示すクラスタ構成定義情報を生成する。
図2(c)において、“policy”:{・・・}は運用形態を定義する情報であり、“type”:“1×1”は1:1運用待機であることを定義する。“primary”:“node−1”は運用ノードがノード#1であることを定義し、“secondary”:“node−2”は待機ノードがノード#2であることを定義する。
“networks”:[・・・]はネットワークを定義し、“type”:“hearbeat”は死活監視ネットワーク4を定義する。“interfaces”[・・・]はインタフェースを定義する。“type”:“app”は業務ネットワーク5を定義する。
クラスタノード3は、自動構築部10を有する。自動構築部10は、クラスタ構成定義情報を管理装置2から受け取り、コマンドを実行することによってクラスタシステムを構築する。管理装置2は、クラスタ構成定義情報を各クラスタノード3に送信すると共に、各クラスタノード3の自動構築部10をリモート実行する。
図3は、自動構築部10の機能構成を示す図である。図3に示すように、自動構築部10は、記憶部11と、制御部12と、テンプレートエンジン13とを有する。
記憶部11は、クラスタシステムの構築に用いられる情報を記憶する。記憶部11は、スクリプトテンプレート群14と、設定ファイルテンプレート群15と、構築手順16とを記憶する。
スクリプトテンプレート群14は、スクリプトテンプレートの集まりである。スクリプトテンプレートは、クラスタシステムの構築に用いられるスクリプトを生成するために用いられるひな型である。スクリプトテンプレートは、クラスタ構成定義情報からの情報の抽出方法を指定する情報を含む。スクリプトは、クラスタシステムの構築に用いられるコマンドが並べられたプログラムである。
設定ファイルテンプレート群15は、設定ファイルテンプレートの集まりである。設定ファイルテンプレートは、クラスタシステムの構築に用いられる設定ファイルを生成するために用いられるひな型である。設定ファイルテンプレートは、クラスタ構成定義情報からの情報の抽出方法を指定する情報を含む。
構築手順16は、クラスタシステムを構築するために行われる一連の手順に含まれる手順とテンプレートとを対応付ける情報である。ここで、テンプレートは、スクリプトテンプレート又は設定ファイルテンプレートである。
制御部12は、クラスタ構成定義情報に基づいて構築手順16を作成し、記憶部11に格納する。そして、制御部12は、構築手順16の先頭から順番に手順に対応するテンプレートを1つ読み込む。そして、制御部12は、読み込んだテンプレートに関係する部分をクラスタ構成定義情報から抽出して構成定義情報とする。そして、制御部12は、テンプレートと構成定義情報をテンプレートエンジン13に渡す。
テンプレートエンジン13は、テンプレートに基づいて構成定義情報から情報を抽出し、設定ファイル又はスクリプトを作成する。制御部12は、テンプレートエンジン13が作成したスクリプトを実行する。そして、制御部12は、構築手順16の手順がなくなるまで、次の手順を同様に処理する。
図4は、テンプレートエンジン13による設定ファイルの作成を説明するための図である。図4(a)は構成定義情報を示し、図4(b)はテンプレートを示し、図4(c)は作成された設定ファイルを示す。
図4(b)において、1行目の{{#nodes}}と3行目の{{/nodes}}は、構成定義情報の‘nodes’という名前のキーを持つ配列の要素分ループすることを指定する。2行目の{{ip}}{{hostname}}は、‘nodes’の要素であるオブジェクトについて、‘ip’というキーを持つ値と、‘hostname’というキーを持つ値をスペース区切りで並べることを指定する。
図4(a)に示すように、‘nodes’という名前のキーを持つ配列は2つの要素を持つので、‘ip’というキーを持つ値と、‘hostname’というキーを持つ値をスペース区切りで並べることを2回行う。
1回目で、‘ip’というキーを持つ値として‘192.168.0.2’が構成定義情報から抽出され、‘hostname’というキーを持つ値として‘node−1’が構成定義情報から抽出される。そして、図4(c)に示すように、‘192.168.0.2’と‘node−1’がスペース区切りで並べられる。
同様に、2回目で、‘ip’というキーを持つ値として‘192.168.0.3’が構成定義情報から抽出され、‘hostname’というキーを持つ値として‘node−2’が構成定義情報から抽出される。そして、図4(c)に示すように、‘192.168.0.3’と‘node−2’がスペース区切りで並べられる。
図5は、スクリプトテンプレートとレンダリングの例を示す図である。ここで、レンダリングとは、テンプレートに基づいて構成定義情報から情報を抽出し、設定ファイル又はスクリプトを作成することである。
図5の例#1では、全クラスタノード3のホスト名を出力するスクリプトが作成される。‘#!/bin/sh’は、コマンドを実行するインタプリタである。構成定義情報から‘host−1’及び‘host−2’が抽出され、それぞれ‘echo’とスペース区切りで並べられる。‘echo host−1’は、‘host−1’を出力するコマンドである。
図5の例#2では、全クラスタノード3をシャットダウンするスクリプトが作成される。構成定義情報から‘node−1’及び‘node−2’が抽出され、それぞれ、‘cfsh’とスペース区切りで並べられ、その後に‘shutdown −h 60’が スペース区切りで並べられる。‘cfsh node−1 shutdown −h 60’は、‘node−1’をシャットダウンするコマンドである。
図6は、設定ファイルテンプレートとレンダリングの例を示す図である。図6の例#1では、テンプレートエンジン13は、全クラスタノード3のクラスタノード名をプレースホルダに埋め込んで設定ファイルを作成する。ここで、プレースホルダとは、{{キー}}であり、例#1では{{name}}である。構成定義情報から‘node−1’及び‘node−2’が抽出され、それぞれ、スペース区切りで2つ並べられ、その後に‘RMS:netmask:255.255.255.0’が並べられる。
図6の例#2では、テンプレートエンジン13は、全クラスタノード3のcipとクラスタノード名をプレースホルダに埋め込んで設定ファイルを作成する。構成定義情報から‘192.168.1.1’と‘node−1’、及び、‘192.168.1.2’と‘node−2’が抽出され、それぞれ、スペース区切りで並べられ、その後に‘RMS’が並べられる。
図7は、構築手順16の例を示す図である。図7では、テンプレートを記憶するテンプレートファイルの名前が4つの手順それぞれに対応付けられている。例えば、1番目の手順‘/etc/cip.cfの作成’には“CF/cip.cf.template”が対応付けられる。
次に、情報処理システム1による処理のフローについて説明する。図8は、情報処理システム1による処理のフローを示すフローチャートである。図8に示すように、管理装置2は、ユーザからクラスタシステムの設計情報を受け付ける(ステップS1)。そして、管理装置2は、クラスタノード3にクラスタ構成定義情報を送信する(ステップS2)。
そして、クラスタノード3の制御部12は、受信したクラスタ構成定義情報を基に構築手順16を作る(ステップS3)。そして、制御部12は、構築手順16を先頭から実行する(ステップS4)。制御部12は、構築手順16が完了したか否かを判定し(ステップS5)、構築手順16が完了した場合には、処理を終了する。
一方、構築手順16が完了していない場合には、制御部12は、手順に対応したテンプレートとクラスタ構成定義情報の関連する一部(構成定義情報)をテンプレートエンジン13に出力する(ステップS6)。そして、テンプレートエンジン13は、入力した構成定義情報とテンプレートを基に設定ファイル又はスクリプトを作成又は更新する(ステップS7)。そして、制御部12は、スクリプトを実行し(ステップS8)、ステップS5に戻る。
上述してきたように、実施例1では、管理装置2の定義情報生成部21がユーザから設計情報を受け付けてクラスタ構成定義情報を作成し、各クラスタノード3に送信して自動構築部10を起動する。そして、自動構築部10は、テンプレート群と構築手順16を記憶し、クラスタ構成定義情報、テンプレート群及び構築手順16に基づいて設定ファイル及びスクリプトを作成し、スクリプトを実行する。したがって、ユーザは、簡単にクラスタシステムを構築することができる。
また、実施例1では、自動構築部10の制御部12が、構築手順16に基づいて、手順に対応するテンプレートと構成定義情報をテンプレートエンジン13に渡す。そして、テンプレートエンジン13が、テンプレートと構成定義情報に基づいて設定ファイル又はスクリプトを作成する。そして、制御部12が、スクリプトを実行する。したがって、自動構築部10は、制御部12とテンプレートエンジン13によりクラスタ自動構築を実現することができる。
また、実施例1では、テンプレートには、スクリプトテンプレートと設定ファイルテンプレートが含まれる。したがって、テンプレートエンジン13は、スクリプトテンプレートを用いてスクリプトを作成し、設定ファイルテンプレートを用いて設定ファイルを作成することができる。
また、実施例1では、クラスタ構成定義情報には、クラスタシステムに関して、運用形態の情報、死活監視ネットワーク4の情報及び業務ネットワーク5の情報が含まれる。したがって、情報処理システム1は、運用形態、死活監視ネットワーク4、業務ネットワーク5を含めてクラスタシステムを構築することができる。
クラスタシステムの構築が行われた後、構成管理装置によりクラスタノード3へのミドルウェアのインストール等の構成管理が行われることが多い。したがって、構成管理装置と連携して、クラスタシステムの構築の後、構成管理まで行われるとユーザの負担をさらに軽減することができる。そこで、実施例2では、構成管理装置と連携して自動的に構成管理まで行う情報処理システムについて説明する。
図9は、構成管理装置との連携を説明するための図である。図9(a)は構成管理装置による構成管理を示し、図9(b)は実施例2に係る情報処理システムによる構成管理を示す図である。
図9(a)に示すように、構成管理装置Aは、手順書Aに定義された手順(手順#1、手順#2、手順#3、・・・)に基づいてクラスタノード93aにおいて定義ファイルの作成及び内部コマンドの実行を行う。同様に、構成管理装置Bは、手順書Bに定義された手順(手順#1、手順#2、手順#3、・・・)に基づいてクラスタノード93aにおいて定義ファイルの作成及び内部コマンドの実行を行う。手順書Aと手順書Bは、構成管理装置Aと構成管理装置Bが異なると、書式が異なる。したがって、ユーザは、手順書Aと手順書Bの両方を作成する必要がある。
一方、図9(b)に示すように、実施例2に係る情報処理システムでは、手順書A及び手順書Bには所定の手順αだけが定義される。構成管理装置Aは、手順αだけが定義された手順書Aを参照してクラスタノード3aで自動構築部10aを実行する。自動構築部10aは、内部に手順Aの手順#1、手順#2、手順#3、・・・の定義を有する。したがって、自動構築部10aは、内部の定義に基づいて定義ファイルの作成及び内部コマンドの実行を行う。
同様に、構成管理装置Bは、手順αだけが定義された手順書Bを参照してクラスタノード3aで自動構築部10aを実行する。自動構築部10aは、内部に手順Bの手順#1、手順#2、手順#3、・・・の定義を有する。したがって、自動構築部10aは、内部の定義に基づいて定義ファイルの作成及び内部コマンドの実行を行う。
このように、実施例2に係る情報処理システムでは、ユーザは、所定の手順αだけを定義することでクラスタノード3aを構成管理装置と連携させることができ、クラスタノード3aの構成管理を簡単に行うことができる。
図10は、実施例2に係る情報処理システムの構成を示す図である。図10に示すように、実施例2に係る情報処理システム1aは、管理装置2aと、構成管理装置6aと、クラスタノードP及びクラスタノードQで表されるクラスタノード3aとを有する。なお、構成管理装置6aの数は2以上でもよく、クラスタノード3の数は3以上でもよい。
管理装置2aは、定義情報生成部21aを有する。定義情報生成部21aは定義情報生成部21と同様に、ユーザから設計情報を受け付けてクラスタ構成定義情報を生成する。ただし、生成されたクラスタ構成定義情報は構成管理装置6aが入力する。
構成管理装置6aは、情報処理装置の構成管理を行う装置であり、手順実行部61を有する。手順実行部61は、手順書を参照し、手順書に所定の手順αだけが定義されていると、クラスタノード3aにクラスタ構成定義情報を送信し、自動構築部10aを起動する。
クラスタノード3aは、構築されるクラスタシステムに含まれる情報処理装置である。クラスタノード3aは、自動構築部10aを有する。自動構築部10aは、テンプレートを用いて、クラスタシステムの構築に加えて、定義ファイルの作成及び内部コマンドを実行することにより構成管理を行う。
図11は、実施例2に係る情報処理システム1aによる処理の流れを示すシーケンス図である。なお、図11は、構成管理装置Aと連携する場合を示す。図11に示すように、管理装置2aの定義情報生成部21aは、ユーザが入力する設計情報を受け付け(t1)、クラスタ構成定義情報を作成する(t2)。
そして、構成管理装置Aの手順実行部61が、クラスタ構成定義情報を読み込み(t3)、手順書Aを読み込む(t4)。そして、構成管理装置Aは、クラスタ構成定義情報をクラスタノード3aに送信し、自動構築部10aを実行する(t5)。
そして、自動構築部10aがテンプレートを読み込み(t6)、設定ファイル及びスクリプトを生成し、生成したスクリプトを実行する(t7)。設定ファイルの生成には構成管理に用いられる定義ファイルの生成が含まれる。また、生成されるスクリプトには構成管理用の内部コマンドを実行するスクリプトが含まれる。
上述してきたように、実施例2では、構成管理装置6aの手順実行部61が、手順書に所定の手順αだけが定義されていると、クラスタ構成定義情報をクラスタノード3aに送信し、自動構築部10aを実行する。そして、自動構築部10aは、クラスタ構築と構成管理を行う。したがって、ユーザは、クラスタシステムの構築と構成管理を簡単に行うことができる。
なお、実施例1及び2では、自動構築部10及び10aについて説明したが、自動構築部10及び10aが有する構成をソフトウェアによって実現することで、同様の機能を有する自動構築プログラムを得ることができる。そこで、自動構築プログラムを実行するコンピュータについて説明する。
図12は、実施例に係る自動構築プログラムを実行するコンピュータのハードウェア構成を示す図である。図12に示すように、コンピュータ50は、メインメモリ51と、CPU(Central Processing Unit)52と、LAN(Local Area Network)インタフェース53と、HDD(Hard Disk Drive)54とを有する。また、コンピュータ50は、スーパーIO(Input Output)55と、DVI(Digital Visual Interface)56と、ODD(Optical Disk Drive)57とを有する。
メインメモリ51は、プログラムやプログラムの実行途中結果などを記憶するメモリである。CPU52は、メインメモリ51からプログラムを読み出して実行する中央処理装置である。CPU52は、メモリコントローラを有するチップセットを含む。
LANインタフェース53は、コンピュータ50をLAN経由で他のコンピュータに接続するためのインタフェースである。HDD54は、プログラムやデータを格納するディスク装置であり、スーパーIO55は、マウスやキーボードなどの入力装置を接続するためのインタフェースである。DVI56は、液晶表示装置を接続するインタフェースであり、ODD57は、DVDの読み書きを行う装置である。
LANインタフェース53は、PCIエクスプレス(PCIe)によりCPU52に接続され、HDD54及びODD57は、SATA(Serial Advanced Technology Attachment)によりCPU52に接続される。スーパーIO55は、LPC(Low Pin Count)によりCPU52に接続される。
そして、コンピュータ50において実行される自動構築プログラムは、コンピュータ50により読み出し可能な記録媒体の一例であるDVDに記憶され、ODD57によってDVDから読み出されてコンピュータ50にインストールされる。あるいは、自動構築プログラムは、LANインタフェース53を介して接続された他のコンピュータシステムのデータベースなどに記憶され、これらのデータベースから読み出されてコンピュータ50にインストールされる。そして、インストールされた自動構築プログラムは、HDD54に記憶され、メインメモリ51に読み出されてCPU52によって実行される。
また、管理装置2及び2aが有する構成をソフトウェアによって実現することで、同様の機能を有する管理プログラムを得ることができ、管理プログラムは、コンピュータ50と同様なコンピュータで実行される。また、構成管理装置6aが有する構成をソフトウェアによって実現することで、同様の機能を有する構成管理プログラムを得ることができ、構成管理プログラムは、コンピュータ50と同様なコンピュータで実行される。
1,1a 情報処理システム
2,2a,92 管理装置
3,3a,93,93a クラスタノード
4 死活監視ネットワーク
5 業務ネットワーク
6a 構成管理装置
10,10a 自動構築部
11 記憶部
12 制御部
13 テンプレートエンジン
14 スクリプトテンプレート群
15 設定ファイルテンプレート群
16 構築手順
21,21a 定義情報生成部
50 コンピュータ
51 メインメモリ
52 CPU
53 LANインタフェース
54 HDD
55 スーパーIO
56 DVI
57 ODD
61 手順実行部

Claims (7)

  1. 複数の情報処理装置と該複数の情報処理装置を用いたクラスタシステムの構築を管理する管理装置とを有する情報処理システムにおいて、
    前記管理装置は、
    前記クラスタシステムの構成に関する情報をユーザから受け付けて該クラスタシステムの構成を定義する情報であるクラスタ構成定義情報を生成する生成部を有し、
    各情報処理装置は、
    前記クラスタシステムの設定に用いられる設定情報及び前記クラスタシステムの構築に用いられる構築プログラムのひな型であって前記クラスタ構成定義情報からの情報の抽出方法を指定する情報を含む複数のテンプレートと、前記クラスタシステムを構築する構築手順に含まれる各手順と前記複数のテンプレートに含まれるテンプレートを対応付ける対応付け情報とを記憶する記憶部と、
    前記生成部により生成されたクラスタ構成定義情報、前記記憶部が記憶する複数のテンプレート及び前記対応付け情報に基づいて前記設定情報及び前記構築プログラムを生成して該構築プログラムを実行する構築部と
    を有することを特徴とする情報処理システム。
  2. 前記構築部は、
    前記対応付け情報を用いてテンプレートを選択し、該選択したテンプレートにより情報が抽出される部分を前記クラスタ構成定義情報から取り出して構成定義情報を生成する制御部と、
    前記制御部により選択されたテンプレートと前記構成定義情報に基づいて前記設定情報及び前記構築プログラムを生成するテンプレート処理部と
    を有し、
    前記制御部は、前記テンプレート処理部により生成された構築プログラムを実行することを特徴とする請求項1に記載の情報処理システム。
  3. 前記記憶部が記憶する複数のテンプレートは、前記設定情報を生成するときに用いられる設定テンプレートと、前記構築プログラムを生成するときに用いられるプログラムテンプレートを含むことを特徴とする請求項1又は2に記載の情報処理システム。
  4. 前記生成部が生成するクラスタ構成定義情報は、クラスタシステムに関して、運用形態の情報、死活監視ネットワークの情報及び業務ネットワークの情報を含むことを特徴とする請求項1〜3のいずれか1つに記載の情報処理システム。
  5. 前記複数の情報処理装置の構成を管理する構成管理装置をさらに有し、
    前記構成管理装置は、
    前記クラスタ構成定義情報を前記管理装置から受け取り、異なる構成管理装置の間で共通に使用できる構成管理手順書を参照してクラスタ構成定義情報を各情報処理装置に出力し、
    前記記憶部は、前記情報処理装置の構成管理に用いられる構成管理定義情報及び前記情報処理装置の構成管理に用いられる構成管理プログラムを前記クラスタ構成定義情報からクラスタ構成に関する情報を抽出して生成する複数の構成管理テンプレートをさらに記憶し、
    前記構築部は、前記クラスタ構成定義情報と構成管理テンプレートに基づいて前記構成管理定義情報と前記構成管理プログラムを生成し、該構成管理プログラムを実行することを特徴とする請求項1〜4のいずれか1つに記載の情報処理システム。
  6. 複数の情報処理装置を用いたクラスタシステムの構築を管理する管理装置及び他の情報処理装置と情報処理システムを構築する情報処理装置において、
    前記管理装置が前記クラスタシステムの構成に関する情報をユーザから受け付けて生成した該クラスタシステムの構成を定義する情報であるクラスタ構成定義情報を前記管理装置から受信する受信部と、
    前記クラスタシステムの設定に用いられる設定情報及び前記クラスタシステムの構築に用いられる構築プログラムのひな型であって前記クラスタ構成定義情報からの情報の抽出方法を指定する情報を含む複数のテンプレートと、前記クラスタシステムを構築する構築手順に含まれる各手順と前記複数のテンプレートに含まれるテンプレートを対応付ける対応付け情報とを記憶する記憶部と、
    前記受信部により受信された前記クラスタ構成定義情報、前記記憶部が記憶する複数のテンプレート及び前記対応付け情報に基づいて前記設定情報及び前記構築プログラムを生成して該構築プログラムを実行する構築部と
    を有することを特徴とする情報処理装置。
  7. 複数の情報処理装置を用いたクラスタシステムの構築を管理する管理装置及び他の情報処理装置と情報処理システムを構築する情報処理装置で実行されるプログラムにおいて、
    前記クラスタシステムの構成に関する情報をユーザから受け付けて該クラスタシステムの構成を定義する情報であるクラスタ構成定義情報を生成する処理を前記管理装置に実行させ
    前記クラスタシステムの設定に用いられる設定情報及び前記クラスタシステムの構築に用いられる構築プログラムのひな型であって前記クラスタ構成定義情報からの情報の抽出方法を指定する情報を含む複数のテンプレートと、前記クラスタシステムを構築する構築手順に含まれる各手順と前記複数のテンプレートに含まれるテンプレートを対応付ける対応付け情報とを記憶部に記憶し、
    前記クラスタ構成定義情報、前記記憶部が記憶する複数のテンプレート及び前記対応付け情報に基づいて前記設定情報及び前記構築プログラムを生成して該構築プログラムを実行する
    処理を前記情報処理装置に実行させることを特徴とするプログラム。
JP2017197101A 2017-10-10 2017-10-10 情報処理システム、情報処理装置及びプログラム Active JP6950437B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2017197101A JP6950437B2 (ja) 2017-10-10 2017-10-10 情報処理システム、情報処理装置及びプログラム
US16/151,633 US11003519B2 (en) 2017-10-10 2018-10-04 Information processing system, cluster system construction method, and non-transitory computer-readable storage medium for storing cluster construction program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017197101A JP6950437B2 (ja) 2017-10-10 2017-10-10 情報処理システム、情報処理装置及びプログラム

Publications (2)

Publication Number Publication Date
JP2019070972A JP2019070972A (ja) 2019-05-09
JP6950437B2 true JP6950437B2 (ja) 2021-10-13

Family

ID=65993246

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017197101A Active JP6950437B2 (ja) 2017-10-10 2017-10-10 情報処理システム、情報処理装置及びプログラム

Country Status (2)

Country Link
US (1) US11003519B2 (ja)
JP (1) JP6950437B2 (ja)

Family Cites Families (35)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11143701A (ja) * 1997-11-10 1999-05-28 Toshiba Corp 高可用性システムの設計支援機能を有する計算機システム
US7469279B1 (en) * 2003-08-05 2008-12-23 Cisco Technology, Inc. Automatic re-provisioning of network elements to adapt to failures
US8984101B1 (en) * 2004-02-26 2015-03-17 Oracle America Inc. System and method for model-based configuration of a server cluster
US20050289388A1 (en) * 2004-06-23 2005-12-29 International Business Machines Corporation Dynamic cluster configuration in an on-demand environment
EP1782246B1 (en) * 2004-07-07 2020-02-12 Sciencelogic, LLC Self configuring network management system
US20060026267A1 (en) * 2004-08-02 2006-02-02 Andre Godin Method, system, and cluster for the update of management objects
US20060248371A1 (en) * 2005-04-28 2006-11-02 International Business Machines Corporation Method and apparatus for a common cluster model for configuring, managing, and operating different clustering technologies in a data center
JP4437470B2 (ja) * 2005-12-12 2010-03-24 株式会社日立情報システムズ コマンド列作成システムと方法およびプログラム
US8838750B2 (en) * 2005-12-30 2014-09-16 Sap Ag System and method for system information centralization
US9038023B2 (en) * 2005-12-30 2015-05-19 Sap Se Template-based configuration architecture
US7954087B2 (en) * 2005-12-30 2011-05-31 Sap Ag Template integration
US7689600B2 (en) * 2005-12-30 2010-03-30 Sap Ag System and method for cluster file system synchronization
US8843918B2 (en) * 2005-12-30 2014-09-23 Sap Ag System and method for deployable templates
JP4902282B2 (ja) * 2006-07-12 2012-03-21 株式会社日立製作所 業務システム構成変更方法、管理コンピュータ、および、業務システム構成変更方法のプログラム
CA2688509C (en) * 2007-05-31 2017-02-28 Informatica Corporation Distributed system for monitoring information events
US8719624B2 (en) * 2007-12-26 2014-05-06 Nec Corporation Redundant configuration management system and method
US10079723B2 (en) * 2008-12-31 2018-09-18 International Business Machines Corporation Dynamic high availability policy creation based upon entries in a configuration management database (CMDB) and a best practices template
US8799418B2 (en) * 2010-01-13 2014-08-05 Vmware, Inc. Cluster configuration
US9959147B2 (en) * 2010-01-13 2018-05-01 Vmware, Inc. Cluster configuration through host ranking
US10073706B2 (en) * 2010-06-25 2018-09-11 Oracle International Corporation Method and system for performing application server configuration using configuration groups
US8775626B2 (en) * 2010-09-17 2014-07-08 Microsoft Corporation Using templates to configure cloud resources
JP5732893B2 (ja) 2011-02-17 2015-06-10 日本電気株式会社 リソース管理装置
US9268590B2 (en) * 2012-02-29 2016-02-23 Vmware, Inc. Provisioning a cluster of distributed computing platform based on placement strategy
US10310911B2 (en) * 2014-03-14 2019-06-04 Google Llc Solver for cluster management system
US10298670B2 (en) * 2014-05-13 2019-05-21 Google Llc Real time cloud workload streaming
US9213903B1 (en) * 2014-07-07 2015-12-15 Google Inc. Method and system for cluster-based video monitoring and event categorization
WO2016007679A1 (en) * 2014-07-08 2016-01-14 Pneuron Corp. Virtualized execution across distributed nodes
US9495193B2 (en) * 2014-12-05 2016-11-15 International Business Machines Corporation Monitoring hypervisor and provisioned instances of hosted virtual machines using monitoring templates
JP6309442B2 (ja) * 2014-12-18 2018-04-11 株式会社日立製作所 システムテンプレート保守システム及びシステムテンプレート保守方法
WO2016095187A1 (en) * 2014-12-19 2016-06-23 Intel Corporation Apparatus and method for adding nodes to a computing cluster
JP5895043B1 (ja) 2014-12-25 2016-03-30 ウイングアーク1st株式会社 クラスタシステム、クラスタ管理サーバおよびクラスタ管理用プログラム
US10333784B2 (en) * 2015-06-30 2019-06-25 International Business Machines Corporation Cloud system order and configuration using customized templates
WO2017142599A1 (en) * 2016-02-15 2017-08-24 Level 3 Communications, Llc Systems and methods for system configuration for communication network devices
US10379835B2 (en) * 2016-12-19 2019-08-13 International Business Machines Corporation Optimized creation of distributed storage and distributed processing clusters on demand
US10635700B2 (en) * 2017-11-09 2020-04-28 Cloudera, Inc. Design-time information based on run-time artifacts in transient cloud-based distributed computing clusters

Also Published As

Publication number Publication date
JP2019070972A (ja) 2019-05-09
US11003519B2 (en) 2021-05-11
US20190108083A1 (en) 2019-04-11

Similar Documents

Publication Publication Date Title
AU2016259298B2 (en) Machine for development and deployment of analytical models
US10430204B2 (en) System and method for cloud provisioning and application deployment
US10387798B2 (en) Machine for development of analytical models
US9996333B2 (en) Apparatus and method for automating the installation and configuration of infrastructure
US10901804B2 (en) Apparatus and method to select services for executing a user program based on a code pattern included therein
JP6028641B2 (ja) 情報処理システム、情報処理装置の制御プログラム及び情報処理システムの制御方法
JP6673355B2 (ja) 配備装置、配備方法、及び、プログラム
WO2020008991A1 (ja) 検証自動化装置、検証自動化方法、およびコンピュータ読み取り可能な記録媒体
WO2019027597A1 (en) WORKFLOW MANAGEMENT FRAMEWORK
EP3230865B1 (en) Recovery execution system using programatic generation of actionable workflows
US10606567B2 (en) Method and system for configuring processes of software applications using activity fragments
WO2008063895A2 (en) Automatic configuration of network elements based on service contract definitions
WO2014020771A1 (ja) テンプレート生成プログラム、テンプレート生成方法およびテンプレート生成装置
JP6950437B2 (ja) 情報処理システム、情報処理装置及びプログラム
EP2889789B1 (en) Replication description model for data distribution
JP6044388B2 (ja) 自動運用プロセス生成方法、プログラム、および装置
JP6798340B2 (ja) 運用仕様分析装置、運用仕様分析方法及び運用仕様分析プログラム
JP7096190B2 (ja) データ収集サーバ及びデータ収集方法
US11126964B2 (en) Method and system for dynamic auto-generation of up-to-date deployment and operations guidance for solutions
WO2023100545A1 (ja) 更新内容検証システム及び更新内容検証方法
JP2013054485A (ja) 設定支援システム、これを構成するサーバ装置、管理装置、設定支援方法およびプログラム
JP2014241072A (ja) 命令生成装置、命令生成方法、及び、命令生成プログラム
JP2022154320A (ja) ネットワーク管理装置、ネットワーク管理システム、プログラムおよびネットワーク管理方法
CN117851088A (zh) 基于容器的共享内存构建方法及系统
JP2021064328A (ja) 業務手順作成システム、及び業務手順作成方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200709

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210603

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210615

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210729

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210906

R150 Certificate of patent or registration of utility model

Ref document number: 6950437

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150