JP5543333B2 - クラスタ化されたソフトウェアエンティティのための動的cliマッピング - Google Patents

クラスタ化されたソフトウェアエンティティのための動的cliマッピング Download PDF

Info

Publication number
JP5543333B2
JP5543333B2 JP2010504942A JP2010504942A JP5543333B2 JP 5543333 B2 JP5543333 B2 JP 5543333B2 JP 2010504942 A JP2010504942 A JP 2010504942A JP 2010504942 A JP2010504942 A JP 2010504942A JP 5543333 B2 JP5543333 B2 JP 5543333B2
Authority
JP
Japan
Prior art keywords
component
node
software
amf
identifier
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.)
Expired - Fee Related
Application number
JP2010504942A
Other languages
English (en)
Other versions
JP2010526362A (ja
Inventor
テレ、マリア
Original Assignee
テレフオンアクチーボラゲット エル エム エリクソン(パブル)
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 テレフオンアクチーボラゲット エル エム エリクソン(パブル) filed Critical テレフオンアクチーボラゲット エル エム エリクソン(パブル)
Publication of JP2010526362A publication Critical patent/JP2010526362A/ja
Application granted granted Critical
Publication of JP5543333B2 publication Critical patent/JP5543333B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation
    • 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
    • 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/2023Failover techniques
    • 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/2035Error 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 without idle spare hardware

Landscapes

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

Description

本発明は、一般的には高可用性(high availability)システム(ハードウェアおよびソフトウェア)に関し、特に、そのような高可用性システムに関連するプラットフォーム管理(platform management)に関する。
高可用性システム(HAシステムとしても知られる)は、本来、システムが提供するサービスの可用性を改善するという目的のために実装されるシステムである。可用性は、システムまたはサービスが“up”である時間のパーセンテージとして説明することができる。例えば、99.999%可用性(いわゆる“5つの9”可用性)に合わせて設計されたシステムは、およそ0.44分/月または5.26分/年のダウンタイムしかないシステムまたはサービスを指す。
高可用性システムは、システムコンポーネント(system components)に障害が発生した(fail)ときにサービスを提供するために用いられる、冗長(redundant)ノードを採用することにより、意図された可用性のレベルを提供する。例えば、サーバがある特定の(particular)アプリケーションクラッシュを起こした場合、HAシステムはクラッシュを検出して、別の冗長ノードでアプリケーションを再起動させるであろう。HAシステムにおいては、様々な冗長性モデルが用いられうる。例えば、N+1冗長性モデルは、障害が発生したノードの役割を引き継ぐためにオンライン接続された、単一のエクストラノード(多数の主ノード(primary nodes)に関連付けられる)を提供する。しかしながら、単一HAシステムが多くのサービスを管理している状況において、障害を処理するための単一の専用ノードは十分な冗長性を提供しないであろう。そのような状況において、例えば、1より多い(M)待機ノード(standby nodes)が含まれかつ利用可能である、N+M冗長性モデルが用いられるであろう。
HAシステムが、ファイル共有、インターネットカスタマーポータル、データベースその他のような重要なサービスのサポートのために、よりありふれたものになるにつれて、そのようなシステムの設計のための規格化された(standardized)モデルおよび方法論を提供することが望ましいとされるようになった。例えば、サービス可用性フォーラム(SAF:Service Availability Forum)は、移植可能で(portable)、可用性がより高いアプリケーションの開発における支援のための、アプリケーションインタフェースサービス(AIS:application interface services)を規格化した。図1の概念的なアーキテクチャスタックにおいて示されているように、AIS10は、HAアプリケーション14とHAミドルウェア16との間に規格化されたインタフェースを提供するように意図されており、それによってそれらをお互いに独立させる。後述するように、AISの一連の機能性はそれぞれ、オペレーティングシステム20およびハードウェアプラットフォーム22に関連付けられる。AIS標準仕様書に関するさらなる情報に興味がある読者は、ここで参照によって取り入れられる事項の開示であって、www.saforum.orgにおいて利用可能な、アプリケーションインタフェース仕様書(AIS:Application Interface Specifications)バージョンB.02.01を参照されたい。
本願にとって特に興味深いのは、AIS仕様書内で定義されているソフトウェアエンティティである、可用性管理フレームワーク(AMF:Availability Management Framework)である。AIS仕様書によれば、AMFは、単一障害点(single point of failure)のないシステムを実現するために、クラスタ内の冗長リソースを連携させる(coordinating)ことによって、サービス可用性を提供するための、規格化されたメカニズムである。AMFは、とりわけクラスタ内のコンポーネントの状態、およびそれらのコンポーネントの健全性を測定する、一連のアプリケーションプログラムインタフェース(API:application program interfaces)を提供する。コンポーネントはまた、それらの状態についての情報のために、AMFに問い合わせをする機能とともに提供される。AMF APIを用いて開発され、AMFシステムモデルに従うアプリケーションは、そのサービスの可用性管理の負担をAMFに委ねる。それゆえ、このようなアプリケーションは、コンポーネント障害や、メンテナンスなどに関係する動的再配置(dynamic reconfiguration)問題に対処する必要がない。
上記の規格において定められているように、それぞれのAMF(ソフトウェアエンティティ)は、図2においてその一例が示されている、多数のクラスタノードおよびコンポーネントから成る単一の論理クラスタ(logical cluster)のための可用性サポートを提供する。ここで、第1のクラスタAは、それ自身のAMF24、2つのAMFノード26,28および4つのAMFコンポーネント30〜36を含む。同様に、第2のクラスタBは、それ自身のAMF38、2つのAMFノード40,42および4つのAMFコンポーネント44〜50を備える。コンポーネント30〜36および44〜50は、それぞれ、AMF24および38によって管理されている一連のハードウェアおよびソフトウェアリソースを表す。物理的な意味においては、コンポーネントはHAアプリケーションのプロセスとして実現される。ノード26,28,40,42はそれぞれ、それらのノードの可用性を管理するために割り当てられる冗長要素(redundancy elements)だけではなく、AMFコンポーネントとして管理されるそれぞれのプロセスが実行されている物理的ノードに相当する論理エンティティ(logical entity)をも表す。
AIS規格はまた、一連のコンポーネントを統合し(aggregates)、これによって、それらの個別の機能性をより高いレベルのサービスを提供するために結合する論理エンティティとして、サービスユニット(SU:service unit)を定義する。サービスユニットはコンポーネントをいくつでも含むことができるが、ある特定のコンポーネントは1つのサービスユニットしか構成できない。AMFの観点からすれば、それぞれのコンポーネントは常にサービスユニットに含まれるため、サービスユニットは、冗長な方法、すなわち1回より多くインスタンス化され(instantiated)うる最小の論理エンティティであるという意味においては、冗長性の増分単位(incremental unit of redundancy)と考えることができる。サービスユニットおよびコンポーネントを含む、AMFの別の例が、以下で図3として提供される。
このモデルの葉の部分(leaves)において、それぞれのコンポーネント30〜36および40〜44は、対応するソフトウェアのインストールが位置する場所を特定する属性を備える。より具体的には、この属性は、対応するサービスユニットがインスタンス化されるときに用いられるパスプレフィックスを特定する。しかしながら、このパスプレフィックスは、コンポーネントが常に同じノードでインスタンス化される、または、コンポーネントが、同じパスを持つ場所にソフトウェアのインストールがあるノードでインスタンス化されると仮定する。現在のクラスタでは、この後半の特徴は一般的にあてはまる。すなわち、インストールのパスはノードのすべてにおいて常に同じである。しかしながら、この仮定が必ずしも当てはまらない場合、例えば、いくつかのクラスタがディスクレス(例えばRAMディスクを用いる)で、他のノードは組み込みディスクを用いるか、ローカルディスクを備える、異種(heterogeneous)クラスタにおいて(または、ノードが異なったオペレーティングシステムを実行している場合)、結果としてインスタンス化は失敗するであろう。
従って、例えば柔軟なサービスユニットのインスタンス化を可能にすることによって、上記の問題および欠点を回避する、HAアプリケーションのためのプラットフォーム管理システムおよび方法を提供することが望ましいであろう。
例示的な実施形態によれば、リモートノード上で、ローカルノードからコンポーネントをインスタンス化するための方法は、上記ローカルノードにおいて、インスタンス化されるべき上記コンポーネントの種類識別子(type identifier)を取得するステップと、上記ローカルノードにおいて、上記種類識別子から、上記コンポーネントに対応するソフトウェア識別子(software identifier)を特定するステップと、上記ローカルノードにおいて、上記ソフトウェア識別子に対応するソフトウェアがインストールされている、複数のリモートノードを特定するステップと、上記ローカルノードにおいて、上記複数のリモートノードから、上記コンポーネントがインスタンス化されるべき上記リモートノードを特定するステップと、上記ローカルノードにおいて、上記コンポーネントの種類および上記ソフトウェア識別子を用いて、上記リモートノード上の特定の(specific)ソフトウェアのインストール場所を取得するステップと、を含む。
別の例示的な実施形態によれば、可用性管理フレームワーク(AMF)論理ノードがリモートノード上でコンポーネントをインスタンス化するために用いられ、上記AMF論理ノードは、探索(lookup)モジュールを含み、上記探索モジュールは、上記ローカルノードにおいてインスタンス化されるべき上記コンポーネントの種類識別子を受信し、上記種類識別子から、上記コンポーネントに対応するソフトウェア識別子を特定し、上記ソフトウェア識別子に対応するソフトウェアがインストールされている複数のリモートノードを特定し、上記複数のリモートノードから、上記コンポーネントがインスタンス化されるべき上記リモートノードを特定し、上記コンポーネントの種類および上記ソフトウェア識別子を用いて、上記リモートノード上の特定のソフトウェアのインストール場所を取得する。
さらに別の例示的な実施形態によれば、可用性管理フレームワーク(AMF)ノードに関連するコンポーネントのために、コマンドラインインタフェース(CLI)コマンドを実行するための方法は、上記コンポーネントに関連付けられた種類を探索するステップと、上記種類に基づいて、上記コンポーネントに関連付けられたソフトウェアを識別するステップと、上記識別されたソフトウェアのためのパス名プレフィックスを探索するステップと、上記CLIコマンドを実行するために上記パス名プレフィックスを用いるステップと、を含む。
さらに別の例示的な実施形態によれば、コンポーネントを可用性管理フレームワーク(AMF)ノードにマッピングするための方法は、上記コンポーネントの種類を特定するステップと、上記特定された種類に基づいて、上記コンポーネントに関連付けられたソフトウェアのためのソフトウェア識別子を特定するステップと、上記コンポーネントがマッピングされるべき上記AMFノードを選択するステップと、上記特定された種類および上記特定されたソフトウェア識別子を用いたAMF属性から、上記AMFノード上の上記ソフトウェアについてのノード固有のインストール場所を特定するステップと、を含む。
別の例示的な実施形態によれば、コンピュータ読み取り可能な媒体は命令を含み、上記命令は、コンピュータまたはプロセッサ上で実行されたときに、上記コンポーネントに関連付けられた種類を探索するステップと、上記種類に基づいて、上記コンポーネントに関連付けられたソフトウェアを識別するステップと、上記識別されたソフトウェアのためのパス名プレフィックスを探索するステップと、上記CLIコマンドを実行するために上記パス名プレフィックスを用いるステップと、を実行する。
別の例示的な実施形態によれば、システムは、サービスをサポートするためのハードウェアプラットフォーム、および上記サービスの可用性をサポートする可用性管理機能(AMF:availability management function)ソフトウェアエンティティを含み、上記AMFソフトウェアは、上記コンポーネントに関連付けられた種類を探索する機能と、上記種類に基づいて、上記コンポーネントに関連付けられたソフトウェアを識別する機能と、上記識別されたソフトウェアのためのパス名プレフィックスを探索する機能と、上記コンポーネントのインスタンス化のために、上記パス名プレフィックスを用いる機能と、を実行することを含む、上記サービスに関連するコンポーネントのライフサイクル機能性(lifecycle functionality)を管理する。
明細書に組み込まれてその一部を構成する添付図面は、1またはそれ以上の実施形態を示し、また、記述とともにこれらの実施形態を説明する。
アプリケーションインタフェースサービス(AIS)に関連する概念的なアーキテクチャスタックを示す。 可用性管理フレームワーク(AMF)クラスタアーキテクチャを示す。 サービスユニットおよびコンポーネントを含む、AMFで管理される例示的なシステムを示す。 1つのサービスユニットがターミネートされ、他のサービスユニットが例示的な実施形態に従ってインスタンス化された、図3のAMFで管理される例示的なシステムを示す。 例示的な実施形態に係る可用性管理フレームワーク(AMF)ノードに関連付けられたコンポーネントのためのコマンドラインインタフェース(CLI)コマンドを実行するための方法を示すフローチャートである。 例示的な実施形態に係るシステムのノード/部分の説明図である。 他の例示的な実施形態に係るリモートノード上で、コンポーネントをインスタンス化するための方法を示すフローチャートである。
以下の本発明の例示的な実施形態の説明は、添付図面を参照する。異なる図面における同一の参照番号は、同一または類似の要素を特定する。以下の詳細な説明は、発明を限定するものではない。代わりに、発明の範囲は添付の請求の範囲によって定義される。
この考察のためのいくつかの追加の背景を提供するために、図3において示されるような、他の例示的なAMFで制御されたシステムを検討する。その中で、4つのノード(A,B,CおよびD)は2つのサービスグループ(SG1およびSG2)に関連している。サービスグループは、特定のサービスの1またはそれ以上のインスタンスのために、サービス可用性を提供する、サービスユニット(SU)のグループである。例えば、SG1は、この例においてはe−mailサービス(ハードウェアおよびソフトウェア)の1つのインスタンスをサポートするSU1およびSU2を含み、SG2は、FAXサービス(ハードウェアおよびソフトウェア)の2つのインスタンスをサポートするSU3、SU4およびSU5を含む。SG1によってサポートされるe−mailサービスインスタンスのために、SU1はアクティブ状態(active state)を割り当てられ、SU2は待機状態(standby state)を割り当てられる。
SG1におけるそれぞれの例示的なサービスユニットは、それらに関連付けられた2つのコンポーネントを有する。コンポーネントは、AMF300がエラーの検出および分離、回復、ならびに修復を実行する最小の論理エンティティである。それゆえ、コンポーネントは一般的に、エラーの封じ込めまたは分離の目的のために、はっきりとは切り離せない機能のすべてを含む。これらのコンポーネントはさらに、e−mailサービスの可用性の提供に関連する冗長性をもたらす保護グループ(protection groups)にグループ化されうる。例えば、e−mailサービスインスタンスに関連して、コンポーネントC1およびC3は第1の保護グループを形成することができ、コンポーネントC2およびC4は第2の保護グループを形成することができる。それゆえ、コンポーネントC1に障害が発生した場合、AMF300はコンポーネントC3をアクティブ状態に切り替えることができ、また同様に、コンポーネントC2に障害が発生した場合、AMF300はコンポーネントC4をアクティブ状態に切り替えることができる。
サービスグループSG2は、FAXサービスの2つのインスタンスが、3つのサービスユニットSU3,SU4およびSU5によってサポートされている、わずかに異なる構成(configuration)を示している。例えば、SU3およびSU4は、FAXサービスの1つのインスタンスをそれぞれがサポートするようなアクティブ状態をそれぞれ割り当てられ、一方SU5は、待機状態を割り当てられ、これらの冗長バックアップとして動作することができる。この場合において、コンポーネントC5およびC7は、2つのFAXサービスインスタンスの一方に関連付けられた1つの保護グループを形成し、コンポーネントC6およびC7は、2つのFAXサービスインスタンスの他方に関連付けられたもう1つの保護グループを形成するであろう。以下で説明するように実行されるであろう、コンポーネントライフサイクル処理(component lifecycle handling)、例えばインスタンス化および関連する機能を除いて、AMFソフトウェアエンティティ300は、上記参照により取り入れられたAIS規格において説明されているように動作するであろう。
上記のように、例示的な実施形態は、AMFエンティティが、新たなサービスユニットおよび関連付けられたコンポーネントをインスタンス化する状況を処理する(または、その他のライフサイクルタスクを実行する)。図3の例の状況において、サービスユニットSU4に関連付けられたコンポーネントC6に障害が発生したと仮定する。この場合において、障害の状況を通知されたとき、AMF300は、もう一方のFAXサービスインスタンスの可用性を維持するために、SU5を待機状態からアクティブ状態に切り替えるであろう。しかしながら、AMF300はまた、SU5により空いてしまった待機の役割を果たすために必要なソフトウェアとともに、新たなサービスユニットおよび関連付けられたコンポーネントをインスタンス化することを決定するであろう。例えば、図4において示されているように、AMF300は、SU4/C6を終了させ、もう一方のFAXサービスインスタンスのための新たな待機の役割を担うSU6/C8をインスタンス化することを決定する。このインスタンス化を実行するために、AMF300は、他ならぬこのFAXサービスを実行するコンポーネントについて、必要なソフトウェアに関連付けられたパス名が常に同じであろうと想定する代わりに、これらの例示的な実施形態によれば、このパス情報(追加して、コンポーネントライフサイクルコマンドに関する他の情報も同様に)を、以下で説明するように、他ならぬこのコンポーネント種類が存在する(running)ノードの1つから取得することができる。
例えば、それぞれのコンポーネント、例えばC1〜C7は、AMF300によって読み取りまたは探索されうる属性として関連付けられているコンポーネント種類を有するであろう。コンポーネント種類は、今度は、特定のコンポーネントの機能性、すなわち、割り当てられたサービスユニットにおいてサポートするサービスの一部、を有効にするために必要なソフトウェアを識別するソフトウェア識別子を参照するであろう。さらに、それぞれのAMFノード、例えば図3および4におけるノードA〜Dは、どのソフトウェアパッケージがインストールされているかを示すものと関連付けられた属性を有するであろう。これらの属性および識別子は、オブジェクトとして、例えば、データベース(図示せず)において、例えば、情報モデル管理サービス(IMM:Information Model Management)と呼ばれるSAFサービスによって格納されうる。AMF300は、その結果、IMMに格納された対応するオブジェクトから、上記の情報を取得することができる。異なったシステムは、IMMデータベースを異なった方法において実装するかもしれないが、しかしながらAMF300は、それを介してこれらの例示的な実施形態に係る、格納された属性/識別子情報を検索することができるインタフェースとともに提供されるであろう。代替的には、AMFの実装は、それ自身のためのこの情報の複製を保持してもよい。この構成情報(configuration data)の読み取りおよび設定のためのSNMPアクセスを提供するこの情報モデルに基づく管理情報ベース(MIB:management information base)がシステムとともに提供されてもよい。この情報が格納および検索される特定の方法にかかわらず、AMF300はこの情報を、例えば、図5のフローチャートにおいて示されている例示的な実施形態に従って、図4における新たなサービスユニット/コンポーネントの組み合わせSU6/C8をインスタンス化するために用いるであろう。
ステップ500において、AMF300は、コンポーネント、例えば図3および4の例におけるコンポーネントC6に関連付けられた種類を探索する。種類の値は、今度は、ステップ502において、AMF300がコンポーネントC6に関連付けられたソフトウェアを識別できるようにする、ソフトウェア識別子の値を提供する。ソフトウェア識別子を得て、その結果、AMF300は、ステップ504において、SU6/C8のインスタンス化のために選ばれたAMFノード、例えば図3および4の例におけるAMFノードAのための、パス名プレフィックスを探索することができる。SU6/C8のインスタンス化のために利用できるノードの中から、特定のAMFノードが選ばれるためには、様々な方法がある。例えば、サービスユニットまたはサービスグループの利用可能な属性、例えばIMMからのものは、特定のSUまたはサービスグループのSUがインスタンス化されうるノードグループを示してもよい。このような情報が利用可能であれば、AMF300は、例えばノードが配列されている順番に基づいて、AMFノードの結果リストから選択することができる。そうでなければ、AMF300は、例えば負荷に基づいて、クラスタにおけるどのノードも、サービスユニット/コンポーネントをインスタンス化するために選択することができる。
パス名プレフィックスは、AMFノード固有かつソフトウェア固有のプレフィックスであり、コンポーネントの種類と関連付けられた、コマンドごとの相対パス名(per-command relative pathname)と結合されたとき、コマンドラインインタフェース(CLI:Command Line Interface)コマンドのためのパス名を定義する。この結合は、AMF300によって取得されたパス名プレフィックスが、ステップ506において、例えば新たなサービスユニット/コンポーネントをインスタンス化するためのコマンドのようなCLIコマンドを実行するために、どのように用いられうるかの一例である。なお、これらの例示的な実施形態は、インスタンス化および対応するCLIコマンドに焦点を合わせているが、それに限定されるものではない。代わりに、これらの例示的な実施形態は、ターミネート(termination)、クリーンアップ(cleanup)、AM開始(AM_start)およびAM停止(AM_stop)と関連付けられるような、コンポーネントライフサイクルと関連する、他のCLIコマンドを容易にするために用いられてもよい。ターミネートコマンドは、コンポーネントおよびコンポーネントによって提供されるサービスを停止し、コンポーネントをインスタンス化されていない状態にするために用いられる。クリーンアップコマンドもまた、コンポーネントをインスタンス化されていない状態にし、AMF300がエラーから回復する時に用いられる。AM開始コマンドは、コンポーネントが無事にインスタンス化された後、またはコンポーネントの健全性を定期的に評価するためコンポーネントの監視を続けるために、AMF300により実行されうる。AM停止コマンドは、特定のコンポーネントの監視を停止するために、AMF300によって実行されうる。
図6を参照すると、本発明の例示的な実施形態に係るデータ処理のためのシステムおよび方法は、例えばサーバ601の一部であって、記憶装置602に含まれる命令の配列を実行する、1またはそれ以上のプロセッサ600によって実行されうる。このような命令は、二次データ記憶装置604のような、他のコンピュータ読み取り可能な媒体から記憶装置602に読み込まれてもよい。記憶装置602に含まれる命令の配列の実行は、プロセッサ600に例えば上記のような操作をさせる。代替的な実施例において、組み込みの(hard-wire)回路構成が、本発明を実装するために、ソフトウェア命令に代えて、または組み合わせて用いられてもよい。
これらの例示的な実施形態が実装される特定の方法にかかわらず、これらの例示的な実施形態に係るAMFソフトウェアエンティティが、コンピュータ読み取り可能な媒体に格納された探索ソフトウェアモジュールを含み、コンピュータまたはプロセッサ上で実行されたとき、図7のフローチャートにおいて示されるステップを実行する命令を含みうることが理解されるであろう。この中で、ステップ700において、探索モジュールは、ローカルノードにおいてインスタンス化されるべきコンポーネントの種類識別子を受信する。次に、ステップ702において、探索モジュールは、種類識別子から、インスタンス化されるべきコンポーネントに対応するソフトウェア識別子を特定する。ステップ704において、探索モジュールは、ソフトウェア識別子に対応するソフトウェアがインストールされた複数のリモートノードを特定し、それから、ステップ706において、複数のリモートノードからコンポーネントがインスタンス化されるべきリモートノードを特定する。リモートノード上の特定のソフトウェアのインストール場所は、ステップ708において、コンポーネントの種類およびソフトウェア識別子を用いて取得される。
例示的な実施形態によれば、それぞれのAMFノードに関連し、そこにインストールされたソフトウェアおよびその場所を示す属性は、例えばソフトウェアがノード上にインストールされたとき、新たなソフトウェア情報によって更新されうる。このようにして、AMFソフトウェアエンティティは、管理されるノードのいずれかにCLIコマンドをマッピングするためのシークをするときに、最新の情報を入手するであろう。さらに、AMFノードは、それ自身が論理エンティティであって、潜在的に異なる物理ノード(例えば、クラスタメンバーシップ(CLM:Cluster Membership)ノード)にマッピングされうるため、上記と同様のCLIマッピングが、システムモデルの異なった階層上で再帰的に実行されうる。これは、このマッピングが、CLMノードがオペレーティングシステムインスタンスにマッピングされるとき、および、AMFノードがCLMノードにマッピングされるときに実行されうるということである。
上記について、以下の例を考察する。新たなハードウェアノードが、AMFで管理される(AMF-managed)HAシステムに追加されると仮定する。このシステムは、例えば、2つのクラスタノードおよび1つのAMFノードをそれぞれ提供することができる。それゆえ、AMF階層においては2つのノードが追加される(または、それらが異なるAMFクラスタに属していれば、それぞれのクラスタに1つのノード)。しかしながら、この例示的なシステムにおいては、ディスクには1つの物理ノードしかなく、完全に1つのクラスタノードの専用にされるか、または2つの間で共有などされるであろう。それぞれの異なる構成は、ディスクの物理記憶上のAMFノードのソフトウェアの異なったマッピングを意味するであろう。ノードが異なるクラスタに属する場合には、2つの異なったソフトウェアイメージが存在できるように、イメージを分離するための要求はさらに厳しくなるであろう。AMFノードがインスタンス化されるとき、つまり、同じように上記のコンポーネントに関しては異なるノード上にインスタンス化されるとき、AMFノード上で利用可能であってAMFノード階層において構成されるソフトウェアを見つけ出すことを可能にするための、これらの例示的な実施形態に係るマッピングが提供されるであろう。
動的CLIマッピングもまた、AMFで管理されるシステムにおけるより高い階層に対して実行されうる。例えば、AMFで管理されるシステムにおいて、オペレーティングシステムによって直接実行されないコンポーネント(Java(登録商標),C++,その他)を統合する(integrate)ために用いられうるコンテナコンポーネント(container components)もまた、上記の技術から利益を得る。例えば、含まれているいくつかのコンポーネントのライフサイクルを管理するコンテナコンポーネントがノード上に置かれた場合に、コンテナが特定のノードから(または、特定のノードについての)パス情報を取得する必要があるとき、このようなコンテナは、上記の、CLIコマンドのためのAMFのためのマッピングを実行するであろう。
上記の本発明の例示的な実施形態の説明は、図面および説明を提供したが、網羅的なものであったり、開示された通りの形に発明を限定したりすることを意図したものではない。例えば、コンポーネント自身が、そのソフトウェアのインストール場所に関するパス情報の一部を提供してもよい。上記の教示、または発明の実施から習得されるところに照らせば、修正および変形が可能である。続く請求の範囲およびその均等物が、発明の範囲を定義する。

Claims (24)

  1. 異なる種類のリモートノードのクラスタに含まれるリモートノード上で、ローカルノードからコンポーネントをインスタンス化するための方法であって、前記異なる種類のリモートノードは、コンポーネントについて異なるノード固有のインストール場所を有し、前記方法は、
    −前記ローカルノードにおいて、インスタンス化されるべきコンポーネントの種類識別子を取得するステップと、
    −前記ローカルノードにおいて、前記種類識別子から、前記コンポーネントに対応するソフトウェア識別子を特定するステップと、
    −前記ローカルノードにおいて、前記ソフトウェア識別子に対応するソフトウェアがインストールされている、複数のリモートノードを特定するステップと、
    −前記ローカルノードにおいて、前記複数のリモートノードから、前記コンポーネントがインスタンス化されるべきリモートノードを選択するステップと、
    −前記ローカルノードにおいて、選択された前記リモートノード上のノード固有のインストール場所を、前記種類識別子および前記ソフトウェア識別子に従って決定するステップと、
    選択された前記リモートノード上の前記ノード固有のインストール場所に、前記コンポーネントをインスタンス化するステップと、
    を含む方法。
  2. 前記方法は、
    −前記複数のリモートノードのいずれかに新たなソフトウェアがインストールされる度に、前記ローカルノードにおいて、前記ノード固有のインストール場所を更新するステップ
    をさらに含む、請求項1に記載の方法。
  3. 異なる種類のリモートノードのクラスタに含まれるリモートノード上でローカルノードからコンポーネントをインスタンス化するために用いられる、可用性管理フレームワーク(AMF)論理ノードであって、前記異なる種類のリモートノードは、コンポーネントについて異なるノード固有のインストール場所を有し、前記AMF論理ノードは、
    探索モジュールであって、前記探索モジュールは、
    −前記ローカルノードにおいて、インスタンス化されるべきコンポーネントの種類識別子を受信し、
    −前記種類識別子から、前記コンポーネントに対応するソフトウェア識別子を特定し、
    −前記ソフトウェア識別子に対応するソフトウェアがインストールされた複数のリモートノードを特定し、
    −前記複数のリモートノードから、前記コンポーネントがインスタンス化されるべきリモートノードを選択し、
    選択された前記リモートノード上のノード固有のインストール場所を、前記種類識別子および前記ソフトウェア識別子に従って決定する、
    探索モジュール
    を含
    選択された前記リモートノード上の前記ノード固有のインストール場所に、前記コンポーネントがインスタンス化される、
    AMF論理ノード。
  4. 異なる種類のノードのクラスタに含まれる可用性管理フレームワーク(AMF)ノードに関連付けられたコンポーネントのためのコマンドラインインタフェース(CLI)コマンドを実行するための方法であって、前記異なる種類のノードは、前記コンポーネントについて異なるノード固有のパス名プレフィックスを有し、前記方法は、
    第1のAMFノードのコンポーネントに関連付けられた種類識別子を探索することと、
    −前記種類識別子から、前記コンポーネントに関連付けられたソフトウェアのソフトウェア識別子を識別することと、
    −前記ソフトウェア識別子により識別されるソフトウェアのための、第2のAMFノードに固有のパス名プレフィックスを探索することと、
    前記第2のAMFノードの前記コンポーネントについて前記CLIコマンドを実行するために前記パス名プレフィックスを用いることと、
    を含む方法。
  5. 前記CLIコマンドは、
    前記コンポーネントのインスタンス化、前記コンポーネントのターミネート、前記コンポーネントのクリーンアップ、前記コンポーネントのAM開始および前記コンポーネントのAM停止
    のうちの1つを実行するために用いられるコマンドである、請求項4に記載の方法。
  6. 前記コンポーネントは、
    AMFエンティティが、エラー検出および分離、回復および修復を実行するサービスに関連する最小の論理エンティティである、請求項4に記載の方法。
  7. 前記ソフトウェアは、
    前記コンポーネントが割り当てられるサービスユニットによって提供されるサービスの提供に関連するソフトウェアである、請求項4に記載の方法。
  8. 前記パス名プレフィックスは、
    AMFノード固有かつソフトウェア固有のプレフィックスであって、前記コンポーネントの種類と関連付けられたコマンドごとの相対パス名と結合されたとき、コマンドラインインタフェース(CLI)コマンドのためのパス名を定義する、請求項4に記載の方法。
  9. コンポーネントを異なる種類のノードのクラスタに含まれる可用性管理フレームワーク(AMF)ノードにマッピングするための方法であって、前記異なる種類のノードは、前記コンポーネントについて異なるノード固有のインストール場所を有し、前記方法は、
    第1のAMFノードの前記コンポーネントの種類識別子を特定することと、
    −前記特定された種類識別子から、前記コンポーネントに関連付けられたソフトウェアのためのソフトウェア識別子を特定することと、
    −前記コンポーネントがマッピングされるべき第2のAMFノードを選択することと、
    −前記特定された種類識別子および前記特定されたソフトウェア識別子に従って、AMF属性から、前記第2のAMFノード上の前記ソフトウェアのための前記第2のAMFノード固有のインストール場所を特定することと、
    −前記ソフトウェアのための前記第2のAMFノードに固有のインストール場所に、前記コンポーネントをインスタンス化することと、
    を含む方法。
  10. 前記コンポーネントは、
    AMFエンティティがエラー検出および分離、回復および修復を実行するサービスに関連する最小の論理エンティティである、請求項9に記載の方法。
  11. 前記ソフトウェアは、前記コンポーネントが割り当てられるサービスユニットによって提供されるサービスの提供に関連するソフトウェアである、請求項9に記載の方法。
  12. 前記方法は、
    複数の前記AMFノードのいずれかに、前記ソフトウェアの新たなバージョンがインストールされる度に、前記ソフトウェアのノード固有のインストール場所を更新すること
    をさらに含む、請求項9に記載の方法。
  13. 命令が入っているコンピュータ読み取り可能な媒体であって、コンポーネントについて異なるノード固有のパス名プレフィックスを有する異なる種類のノードのクラスタに含まれる可用性管理フレームワーク(AMF)ノードに関連付けられた前記コンポーネントのためのコマンドラインインタフェース(CLI)コマンドを実行するコンピュータまたはプロセッサ上で実行されたとき、前記命令は、
    第1のAMFノードに関連付けられたコンポーネントに関連付けられた種類識別子を探索するステップと、
    −前記種類識別子から前記コンポーネントに関連付けられたソフトウェアのソフトウェア識別子を識別するステップと、
    −前記ソフトウェア識別子により識別されるソフトウェアのための、第2のAMFノードに固有のパス名プレフィックスを探索するステップと、
    前記第2のAMFノードの前記コンポーネントについてCLIコマンドを実行するために前記パス名プレフィックスを用いるステップと、
    を前記コンピュータまたは前記プロセッサに実行させる、コンピュータ読み取り可能な媒体。
  14. 前記CLIコマンドは、
    前記コンポーネントのインスタンス化、前記コンポーネントのターミネート、前記コンポーネントのクリーンアップ、前記コンポーネントのAM開始および前記コンポーネントのAM停止のうちの1つを実行するために用いられるコマンドである、請求項13に記載のコンピュータ読み取り可能な媒体。
  15. 前記コンポーネントは、
    AMFエンティティがエラー検出および分離、回復および修復を実行するサービスに関連する最小の論理エンティティである、請求項13に記載のコンピュータ読み取り可能な媒体。
  16. 前記ソフトウェアは、
    前記コンポーネントが割り当てられるサービスユニットによって提供されるサービスの提供に関連するソフトウェアである、請求項13に記載のコンピュータ読み取り可能な媒体。
  17. 前記パス名プレフィックスは、
    AMFノード固有かつソフトウェア固有のプレフィックスであって、前記コンポーネントの種類に関連付けられたコマンドごとの相対パス名と結合されたとき、コマンドラインインタフェース(CLI)コマンドのためのパス名を定義する、請求項13に記載のコンピュータ読み取り可能な媒体。
  18. 前記コンピュータ読み取り可能な媒体に含まれる命令は、
    −複数の前記AMFノードのいずれかに、前記ソフトウェアの新たなバージョンがインストールされる度に、前記ノード固有のパス名プレフィックスを更新するステップ
    をさらに前記コンピュータまたは前記プロセッサに実行させる、請求項13に記載のコンピュータ読み取り可能な媒体。
  19. システムであって、前記システムは、
    −サービスをサポートするためのハードウェアプラットフォームと、
    −前記サービスの可用性をサポートする可用性管理機能(AMF)ソフトウェアエンティティと、
    を含み、
    前記AMFソフトウェアは、前記サービスに関連するコンポーネントのライフサイクル機能性を管理するために、コンポーネントについて異なるノード固有のパス名プレフィックスを有する異なる種類のノードのクラスタに含まれるAMFノードに関連付けられた前記コンポーネントのためのコマンドラインインタフェース(CLI)コマンドを実行し
    前記AMFソフトウェアは、
    第1のAMFノードに関連付けられたコンポーネントに関連付けられた種類識別子の探索と、
    −前記種類識別子から、前記コンポーネントに関連付けられたソフトウェアのソフトウェア識別子の識別と、
    −前記ソフトウェア識別子により識別されるソフトウェアのための、第2のAMFノードに固有のパス名プレフィックスの探索と、
    前記第2のAMFノードの前記コンポーネントをインスタンス化するための前記パス名プレフィックスの使用と、
    の機能を実行することを含むシステム。
  20. 前記ライフサイクル機能性は、
    前記コンポーネントのインスタンス化、前記コンポーネントのターミネート、前記コンポーネントのクリーンアップ、前記コンポーネントのAM開始および前記コンポーネントのAM停止の、少なくとも1つを含む、請求項19に記載のシステム。
  21. 前記コンポーネントは、
    AMFエンティティがエラー検知および分離、回復および修復を実行するサービスに関連する最小の論理エンティティである、請求項19に記載のシステム。
  22. 前記ソフトウェアは、
    前記コンポーネントが割り当てられるサービスユニットによって提供されるサービスの提供に関連するソフトウェアである、請求項19に記載のシステム。
  23. 前記パス名プレフィックスは、
    AMFノード固有かつソフトウェア固有のプレフィックスであって、前記コンポーネントの種類と関連付けられたコマンドごとの相対パス名と結合されたとき、コマンドラインインタフェース(CLI)コマンドのためのパス名を定義する、請求項19に記載のシステム。
  24. 前記AMFソフトウェアは、
    複数のAMFノードのいずれかに、前記ソフトウェアの新たなバージョンがインストールされる度に、前記ノード固有のパス名プレフィックスを更新する、請求項19に記載のシステム。
JP2010504942A 2007-05-03 2008-04-22 クラスタ化されたソフトウェアエンティティのための動的cliマッピング Expired - Fee Related JP5543333B2 (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US91575107P 2007-05-03 2007-05-03
US60/915,751 2007-05-03
US11/781,418 2007-07-23
US11/781,418 US8984108B2 (en) 2007-05-03 2007-07-23 Dynamic CLI mapping for clustered software entities
PCT/IB2008/051546 WO2008135875A1 (en) 2007-05-03 2008-04-22 Dynamic cli mapping for clustered software entities

Publications (2)

Publication Number Publication Date
JP2010526362A JP2010526362A (ja) 2010-07-29
JP5543333B2 true JP5543333B2 (ja) 2014-07-09

Family

ID=39940360

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010504942A Expired - Fee Related JP5543333B2 (ja) 2007-05-03 2008-04-22 クラスタ化されたソフトウェアエンティティのための動的cliマッピング

Country Status (8)

Country Link
US (1) US8984108B2 (ja)
EP (1) EP2156286A1 (ja)
JP (1) JP5543333B2 (ja)
CN (1) CN101689114B (ja)
CA (1) CA2686384C (ja)
RU (1) RU2463646C2 (ja)
TW (1) TWI511046B (ja)
WO (1) WO2008135875A1 (ja)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9363107B2 (en) * 2010-10-05 2016-06-07 Red Hat Israel, Ltd. Accessing and processing monitoring data resulting from customized monitoring of system activities
US9524224B2 (en) 2010-10-05 2016-12-20 Red Hat Israel, Ltd. Customized monitoring of system activities
US9256488B2 (en) 2010-10-05 2016-02-09 Red Hat Israel, Ltd. Verification of template integrity of monitoring templates used for customized monitoring of system activities
US9355004B2 (en) 2010-10-05 2016-05-31 Red Hat Israel, Ltd. Installing monitoring utilities using universal performance monitor
WO2014027331A2 (en) * 2012-08-15 2014-02-20 Telefonaktiebolaget Lm Ericsson (Publ) Comparing redundancy models for determination of an availability management framework (amf) configuration and runtime assignment of a high availability system
US9432301B2 (en) * 2013-04-29 2016-08-30 Telefonaktiebolaget L M Ericsson (Publ) Defining disjoint node groups for virtual machines with pre-existing placement policies
GB2527060B (en) * 2014-06-10 2021-09-01 Arm Ip Ltd Method and device for updating software executed from non-volatile memory
CN108259192A (zh) * 2016-12-28 2018-07-06 中国移动通信集团江西有限公司 通过业务服务组件化处理服务异常的方法及装置
KR102549946B1 (ko) 2017-01-09 2023-06-30 삼성전자주식회사 이동통신 환경에서 단말의 초기 접속 요청 메시지를 라우팅하는 방법 및 관련 파라미터
US11310328B2 (en) * 2019-05-03 2022-04-19 Sap Se Generic command line interface to an extensible list of cloud platform services
CN112437192B (zh) * 2019-08-23 2023-12-22 西安中兴新软件有限责任公司 应用软件的运行方法、装置、电子设备、计算机可读介质
CN117528827A (zh) * 2022-07-30 2024-02-06 华为技术有限公司 无线通信的方法、装置和系统

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU1807493C (ru) * 1991-02-04 1993-04-07 Харьковское Научно-Производственное Объединение По Системам Автоматизированного Управления Система обмена данными в вычислительной сети
US6438705B1 (en) * 1999-01-29 2002-08-20 International Business Machines Corporation Method and apparatus for building and managing multi-clustered computer systems
US6854069B2 (en) * 2000-05-02 2005-02-08 Sun Microsystems Inc. Method and system for achieving high availability in a networked computer system
US7225244B2 (en) * 2000-05-20 2007-05-29 Ciena Corporation Common command interface
US6990606B2 (en) * 2000-07-28 2006-01-24 International Business Machines Corporation Cascading failover of a data management application for shared disk file systems in loosely coupled node clusters
EP1323040A4 (en) * 2000-09-08 2005-08-03 Goahead Software Inc SYSTEM AND METHOD FOR MANAGING CLUSTERS WITH MULTIPLE NODES
JP2004512610A (ja) * 2000-10-16 2004-04-22 ゴー アヘッド ソフトウェア インコーポレイテッド ネットワーク化されたシステムの高アベイラビリティを維持する技法
US7013084B2 (en) 2001-02-28 2006-03-14 Lambda Opticalsystems Corporation Multi-tiered control architecture for adaptive optical networks, and methods and apparatus therefor
US6731832B2 (en) * 2001-02-28 2004-05-04 Lambda Opticalsystems Corporation Detection of module insertion/removal in a modular optical network, and methods and apparatus therefor
US20040216147A1 (en) * 2002-07-18 2004-10-28 Motorola, Inc. Component based application middleware framework
US20080301298A1 (en) * 2002-07-29 2008-12-04 Linda Bernardi Identifying a computing device
US7747717B2 (en) * 2003-08-14 2010-06-29 Oracle International Corporation Fast application notification in a clustered computing system
EP1751660A4 (en) * 2004-03-09 2010-06-16 Scaleout Software Inc ARCHITECTURE A QUORUM EVOLUTIVE BASED ON SOFTWARE
US7657529B2 (en) * 2004-03-26 2010-02-02 Oracle International Corporation Method of providing shared objects and node-specific objects in a cluster file system
US7937455B2 (en) * 2004-07-28 2011-05-03 Oracle International Corporation Methods and systems for modifying nodes in a cluster environment
US7451347B2 (en) * 2004-10-08 2008-11-11 Microsoft Corporation Failover scopes for nodes of a computer cluster
US9329905B2 (en) 2004-10-15 2016-05-03 Emc Corporation Method and apparatus for configuring, monitoring and/or managing resource groups including a virtual machine
JP2006227770A (ja) * 2005-02-16 2006-08-31 Fujitsu Ltd 高可用計算機システム
JP2006323526A (ja) * 2005-05-17 2006-11-30 Fujitsu Ltd クラスタ管理プログラム、該プログラムを記録した記録媒体、クラスタ管理方法、ノード、およびクラスタ
US9530110B2 (en) * 2006-05-03 2016-12-27 Ca, Inc. Autonomic management of autonomous management systems

Also Published As

Publication number Publication date
JP2010526362A (ja) 2010-07-29
US20080275973A1 (en) 2008-11-06
US8984108B2 (en) 2015-03-17
RU2463646C2 (ru) 2012-10-10
TW200907808A (en) 2009-02-16
CA2686384A1 (en) 2008-11-13
CA2686384C (en) 2016-06-21
TWI511046B (zh) 2015-12-01
EP2156286A1 (en) 2010-02-24
CN101689114A (zh) 2010-03-31
WO2008135875A1 (en) 2008-11-13
RU2009144775A (ru) 2011-06-10
CN101689114B (zh) 2014-10-29

Similar Documents

Publication Publication Date Title
JP5543333B2 (ja) クラスタ化されたソフトウェアエンティティのための動的cliマッピング
US7506336B1 (en) System and methods for version compatibility checking
CN109344000B (zh) 区块链网络服务平台、恢复工具及其故障处理方法、存储介质
US8595262B1 (en) Resource resolution in computing environments using directed graphs
US7698391B2 (en) Performing a provisioning operation associated with a software application on a subset of the nodes on which the software application is to operate
US7716517B2 (en) Distributed platform management for high availability systems
US20120174112A1 (en) Application resource switchover systems and methods
CN102737088A (zh) 分布式数据库系统中的无缝升级
US8943082B2 (en) Self-assignment of node identifier in a cluster system
JP6288275B2 (ja) 仮想化基盤管理装置、仮想化基盤管理システム、仮想化基盤管理方法、及び、仮想化基盤管理プログラム
US8990608B1 (en) Failover of applications between isolated user space instances on a single instance of an operating system
US8015432B1 (en) Method and apparatus for providing computer failover to a virtualized environment
CN103973470A (zh) 用于无共享集群的集群管理方法和设备
JP2005056392A (ja) 地理的ミラーリングに関するリソースの妥当性検査およびランキングのための方法および装置
JP2004334698A (ja) 計算機システム及び故障計算機代替制御プログラム
US8555105B2 (en) Fallover policy management in high availability systems
US8438417B2 (en) Method and apparatus to simplify HA solution configuration in deployment model
JP2019020798A (ja) 情報処理装置およびプログラム
US20120209821A1 (en) Validation of access to a shared data record subject to read and write access by multiple requesters
US20230305876A1 (en) Managing storage domains, service tiers, and failed servers
Stack et al. Self-healing in a decentralised cloud management system
CN113687935A (zh) 一种基于超融合设计的云原生存储调度方式
Hawkridge et al. Comparison of Erlang/OTP and JADE implementations for standby redundancy in a holonic controller
US20050278701A1 (en) Substitute manager component that obtains state information of one or more software components upon failure of a first manager component
US11663096B1 (en) Managing storage domains, service tiers and failed storage domain

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110301

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20121204

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130304

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130924

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20131205

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140508

R150 Certificate of patent or registration of utility model

Ref document number: 5543333

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

LAPS Cancellation because of no payment of annual fees