IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 中興通訊股▲ふん▼有限公司の特許一覧

特表2024-527103クラウドプラットフォーム管理アーキテクチャ、管理方法、管理機器、及び記憶媒体
<>
  • 特表-クラウドプラットフォーム管理アーキテクチャ、管理方法、管理機器、及び記憶媒体 図1
  • 特表-クラウドプラットフォーム管理アーキテクチャ、管理方法、管理機器、及び記憶媒体 図2
  • 特表-クラウドプラットフォーム管理アーキテクチャ、管理方法、管理機器、及び記憶媒体 図3
  • 特表-クラウドプラットフォーム管理アーキテクチャ、管理方法、管理機器、及び記憶媒体 図4
  • 特表-クラウドプラットフォーム管理アーキテクチャ、管理方法、管理機器、及び記憶媒体 図5
  • 特表-クラウドプラットフォーム管理アーキテクチャ、管理方法、管理機器、及び記憶媒体 図6
  • 特表-クラウドプラットフォーム管理アーキテクチャ、管理方法、管理機器、及び記憶媒体 図7
  • 特表-クラウドプラットフォーム管理アーキテクチャ、管理方法、管理機器、及び記憶媒体 図8
  • 特表-クラウドプラットフォーム管理アーキテクチャ、管理方法、管理機器、及び記憶媒体 図9
  • 特表-クラウドプラットフォーム管理アーキテクチャ、管理方法、管理機器、及び記憶媒体 図10
  • 特表-クラウドプラットフォーム管理アーキテクチャ、管理方法、管理機器、及び記憶媒体 図11
  • 特表-クラウドプラットフォーム管理アーキテクチャ、管理方法、管理機器、及び記憶媒体 図12
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2024-07-19
(54)【発明の名称】クラウドプラットフォーム管理アーキテクチャ、管理方法、管理機器、及び記憶媒体
(51)【国際特許分類】
   G06F 8/76 20180101AFI20240711BHJP
【FI】
G06F8/76
【審査請求】有
【予備審査請求】未請求
(21)【出願番号】P 2024505368
(86)(22)【出願日】2022-05-07
(85)【翻訳文提出日】2024-01-29
(86)【国際出願番号】 CN2022091530
(87)【国際公開番号】W WO2023015988
(87)【国際公開日】2023-02-16
(31)【優先権主張番号】202110915014.6
(32)【優先日】2021-08-10
(33)【優先権主張国・地域又は機関】CN
(81)【指定国・地域】
(71)【出願人】
【識別番号】511151662
【氏名又は名称】中興通訊股▲ふん▼有限公司
【氏名又は名称原語表記】ZTE CORPORATION
【住所又は居所原語表記】ZTE Plaza,Keji Road South,Hi-Tech Industrial Park,Nanshan Shenzhen,Guangdong 518057 China
(74)【代理人】
【識別番号】110001195
【氏名又は名称】弁理士法人深見特許事務所
(72)【発明者】
【氏名】全 鋭
(72)【発明者】
【氏名】陳 皓
(72)【発明者】
【氏名】劉 学 生
(72)【発明者】
【氏名】徐 代 剛
【テーマコード(参考)】
5B376
【Fターム(参考)】
5B376BC25
5B376BC38
(57)【要約】
クラウドプラットフォーム管理アーキテクチャ、管理方法、管理機器、及びコンピュータ読み取り可能な記憶媒体を提供する。クラウドプラットフォーム管理アーキテクチャ(100)は、オープンアプリケーションモデルに基づいて、少なくとも1つのアプリケーション能力を定義するように構成された第1管理装置(200)であって、アプリケーション能力それぞれは、1つのクラウドプラットフラォームによってサポートされる負荷又は負荷に作用する運用保守特性を表すためのである第1管理装置(200)と、第1管理装置(200)に接続され、第1管理装置(200)からのアプリケーション能力によって、アプリケーション能力に対応する、能力境界を決定するように構成された第2管理装置(300)であって、能力境界は、アプリケーション能力をサポートする各候補クラウドプラットフォームを表すためのである第2管理装置(300)と、第1管理装置(200)に接続され、能力境界によって、各候補クラウドプラットフォームに対するアプリケーションオーケストレーション・インスタンス化ポリシーを決定するように構成されたアプリケーションオーケストレーション・インスタンス化装置と、を含む。
【特許請求の範囲】
【請求項1】
オープンアプリケーションモデルに基づいて、少なくとも1つのアプリケーション能力を定義するように構成された第1管理装置であって、前記アプリケーション能力それぞれは、1つのクラウドプラットフォームによってサポートされる負荷又は前記負荷に作用する運用保守特性を表すためのものである前記第1管理装置と、
前記第1管理装置に接続され、前記第1管理装置からの前記アプリケーション能力によって、前記アプリケーション能力に対応する能力境界を決定するように構成された第2管理装置であって、前記能力境界は、前記アプリケーション能力をサポートする各候補クラウドプラットフォームを表すためのものである前記第2管理装置と、
前記第1管理装置に接続され、前記能力境界によって、各前記候補クラウドプラットフォームに対するアプリケーションオーケストレーション・インスタンス化ポリシーを決定するように構成されたアプリケーションオーケストレーション・インスタンス化装置と、を含む、クラウドプラットフォーム管理アーキテクチャ。
【請求項2】
前記アプリケーションオーケストレーション・インスタンス化装置は、前記能力境界によって、各前記候補クラウドプラットフォームから、アプリケーションオーケストレーション・インスタンス化を実行するためのターゲットクラウドプラットフォームを決定するように構成される、請求項1に記載のクラウドプラットフォーム管理アーキテクチャ。
【請求項3】
前記第1管理装置はさらに、前記ターゲットクラウドプラットフォーム及び前記アプリケーション能力によって、前記ターゲットクラウドプラットフォームによってサポートされるターゲットアプリケーション能力を決定するように構成される、請求項2に記載のクラウドプラットフォーム管理アーキテクチャ。
【請求項4】
前記第1管理装置はさらに、前記ターゲットアプリケーション能力に対応するターゲット能力定義パケットを前記ターゲットクラウドプラットフォームに送信するように構成される、請求項3に記載のクラウドプラットフォーム管理アーキテクチャ。
【請求項5】
前記第2管理装置は、前記第1管理装置からの前記アプリケーション能力の動作状況をチェックし、前記アプリケーション能力の前記動作状況に応じて前記アプリケーション能力を調整するように構成されるとともに、調整された前記アプリケーション能力によって、調整された前記アプリケーション能力に対応する前記能力境界を決定するように構成される、請求項1~4のいずれか1項に記載のクラウドプラットフォーム管理アーキテクチャ。
【請求項6】
少なくとも1つの前記アプリケーション能力に対応する少なくとも1つの能力テンプレートを記憶する能力データベースをさらに含み、前記能力データベースは、前記第1管理装置を介して前記アプリケーションオーケストレーション・インスタンス化装置に接続される、請求項1に記載のクラウドプラットフォーム管理アーキテクチャ。
【請求項7】
前記アプリケーションオーケストレーション・インスタンス化装置はさらに、前記オープンアプリケーションモデルに基づいて、前記能力テンプレートに対応するプログラム可能なアプリケーション能力オーケストレーション要素を生成するように構成される、請求項6に記載のクラウドプラットフォーム管理アーキテクチャ。
【請求項8】
クラウドプラットフォーム管理アーキテクチャに適用される、クラウドプラットフォーム管理方法であって、前記クラウドプラットフォーム管理アーキテクチャは、第1管理装置と、第1管理装置に接続された第2管理装置と、を含み、
前記クラウドプラットフォーム管理方法は、
前記第1管理装置がオープンアプリケーションモデルに基づいて、少なくとも1つのアプリケーション能力を定義するように前記第1管理装置を制御するステップであって、前記アプリケーション能力それぞれは、1つのクラウドプラットフォームによってサポートされる負荷又は前記負荷に作用する運用保守特性を表すためのものであるステップと、
前記第2管理装置が前記第1管理装置からの前記アプリケーション能力によって、前記アプリケーション能力に対応する能力境界を決定するように前記第2管理装置を制御するステップであって、前記能力境界は、前記アプリケーション能力をサポートする各候補クラウドプラットフォームを表すためのものであるステップと、
前記能力境界によって、各前記候補クラウドプラットフォームに対するアプリケーションオーケストレーション・インスタンス化ポリシーを決定するステップと、を含む、クラウドプラットフォーム管理方法。
【請求項9】
前記能力境界によって、各前記候補クラウドプラットフォームに対するアプリケーションオーケストレーション・インスタンス化ポリシーを決定する前記ステップは、
前記能力境界によって各前記候補クラウドプラットフォームからアプリケーションオーケストレーション・インスタンス化を実行するためのターゲットクラウドプラットフォームを決定するステップを含む、請求項8に記載のクラウドプラットフォーム管理方法。
【請求項10】
前記能力境界によって、各前記候補クラウドプラットフォームに対するアプリケーションオーケストレーション・インスタンス化ポリシーを決定する前記ステップの後、
前記第1管理装置が前記ターゲットクラウドプラットフォーム及び前記アプリケーション能力によって、前記ターゲットクラウドプラットフォームによってサポートされるターゲットアプリケーション能力を決定するように前記第1管理装置を制御するステップをさらに含む、請求項9に記載のクラウドプラットフォーム管理方法。
【請求項11】
前記第1管理装置が前記ターゲットクラウドプラットフォーム及び前記アプリケーション能力によって、前記ターゲットクラウドプラットフォームによってサポートされるターゲットアプリケーション能力を決定するように前記第1管理装置を制御する前記ステップの後、
前記第1管理装置が前記ターゲットアプリケーション能力に対応するターゲット能力定義パケットを前記ターゲットクラウドプラットフォームに送信するように前記第1管理装置を制御するステップをさらに含む、請求項10に記載のクラウドプラットフォーム管理方法。
【請求項12】
前記第2管理装置が前記第1管理装置からの前記アプリケーション能力によって、前記アプリケーション能力に対応する能力境界を決定するように前記第2管理装置を制御する前記ステップは、
前記第2管理装置が前記第1管理装置からの前記アプリケーション能力の動作状況をチェックし、前記第2管理装置が前記アプリケーション能力の前記動作状況に応じて前記アプリケーション能力を調整し、前記第2管理装置が調整された前記アプリケーション能力によって、調整された前記アプリケーション能力に対応する前記能力境界を決定するように前記第2管理装置を制御するステップをさらに含む、請求項8~11のいずれか1項に記載のクラウドプラットフォーム管理方法。
【請求項13】
前記クラウドプラットフォーム管理アーキテクチャは、少なくとも1つの前記アプリケーション能力に対応する少なくとも1つの能力テンプレートを記憶するように構成された能力データベースをさらに含み、前記能力データベースは、前記第1管理装置を介して前記アプリケーションオーケストレーション・インスタンス化装置に接続され、
前記クラウドプラットフォーム管理方法は、
前記オープンアプリケーションモデルに基づいて、前記能力テンプレートに対応するプログラム可能なアプリケーション能力オーケストレーション要素を生成するステップをさらに含む、請求項8に記載のクラウドプラットフォーム管理方法。
【請求項14】
メモリと、プロセッサと、前記メモリに記憶され、前記プロセッサで動作可能なコンピュータプログラムとを含み、前記プロセッサは、前記コンピュータプログラムを実行すると、請求項8~13のいずれか1項に記載のクラウドプラットフォーム管理方法を実現する、クラウドプラットフォーム管理装置。
【請求項15】
請求項8~13のいずれか1項に記載のクラウドプラットフォーム管理方法を実行するためのコンピュータ実行可能命令を記憶したコンピュータ読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【0001】
本願は、出願番号202110915014.6、出願日2021年08月10日の中国特許出願に基づいて提出され、当該中国特許出願の優先権を主張しており、当該中国特許出願の全ての内容はここで参考として本願に組み入れられている。
【0002】
本願の実施例は、クラウドネイティブシーンアプリケーションの分野に関するが、これに限定されるものではなく、特に、クラウドプラットフォーム管理アーキテクチャ、管理方法、管理機器、及びコンピュータ読み取り可能な記憶媒体に関する。
【背景技術】
【0003】
現在、クラウドプラットフォームのアプリケーションオーケストレーションは、ほとんどクラウドプラットフォームに結合して行っており、クラウドネイティブアプリケーションはクラウドプラットフォームが提供するネイティブリソースを利用してオーケストレーションを行っている。当該リソースの種類が限られているため、オーケストレーションシステムがクラウドプラットフォームの様々なリソースタイプをハードコーディングする場合、クラウドネイティブ生態が提供するさまざまなリソースを最大限に活用することができず、さまざまなクラウドプラットフォーム間の移植性がない。言い換えれば、アプリケーション開発者にとって、クラウドプラットフォームは能力のジレンマに陥っている。ほとんどのプラットフォームとしてのサービス(PaaS:Platform as a Service)システムは、サポートするアプリケーションのタイプやサポートする機能を制限している。これは、独自のプラグインシステムを拡張、作成できなく、独自のコミュニティによって維持できないことなどにより反映される。一方、このプラグインメカニズムは、PaaSシステム専用の閉じた小規模な生態能力にしか適用できず、大規模に確実に使用することはできない。さらに、実際には、アプリケーションの設計がマルチクラウド管理システムに対して行われ、ここで、センタールームは異なるクラウドプラットフォームを集中管理しており、異なるクラウドプラットフォームの間には一定の違いがある。そのため、オーケストレーションの際に、利用可能なオーケストレーション要素は通常、一部の簡単な汎用リソースしかカプセル化することができず、特定のクラウドプラットフォームの異なるプラグインの能力を設計することはできない。その結果、オーケストレーション能力は完全に簡単なリソースカプセル化に依存し、どのようなフィールドを露出するかは完全に開発者のアプリケーションに対する理解にかかっている。後でフィールドを更新する必要がある場合、コードを修正したり、バージョンをやり直したりするなどの手段で解决するしかないので、非常に柔軟ではない。また、クラウドネイティブ生態で大量の運用保守関連プラグインを使用することができず、複雑なアプリケーション特徴をオーケストレーションすることができず、全体的なオーケストレーション効果の低下を招く。
【発明の概要】
【発明が解決しようとする課題】
【0004】
以下は本明細書で詳細に説明されている主題の概要を示す。本概要は、特許請求の範囲の保護範囲を限定するものではない。
【0005】
本願の実施例は、クラウドプラットフォーム管理アーキテクチャ、管理方法、管理機器、及びコンピュータ読み取り可能な記憶媒体を提供する。
【課題を解決するための手段】
【0006】
第1態様では、本願の実施例は、クラウドプラットフォーム管理アーキテクチャを提供する。前記クラウドプラットフォーム管理アーキテクチャは、
オープンアプリケーションモデルに基づいて、少なくとも1つのアプリケーション能力を定義するように構成された第1管理装置であって、前記アプリケーション能力それぞれは、1つのクラウドプラットフォームによってサポートされる負荷又は前記負荷に作用する運用保守特性を表すためのものである前記第1管理装置と、
前記第1管理装置に接続され、前記第1管理装置からの前記アプリケーション能力によって、前記アプリケーション能力に対応する能力境界を決定するように構成された第2管理装置であって、前記能力境界は、前記アプリケーション能力をサポートする各候補クラウドプラットフォームを表すためのものである前記第2管理装置と、
前記第1管理装置に接続され、前記能力境界によって各前記候補クラウドプラットフォームに対するアプリケーションオーケストレーション・インスタンス化ポリシーを決定するように構成されたアプリケーションオーケストレーション・インスタンス化装置と、を含む。
【0007】
第2態様では、本願の実施例はまた、クラウドプラットフォーム管理アーキテクチャに適用されるクラウドプラットフォーム管理方法を提供する。前記クラウドプラットフォーム管理アーキテクチャは、第1管理装置と、第1管理装置に接続された第2管理装置と、を含む。
前記クラウドプラットフォーム管理方法は、
前記第1管理装置がオープンアプリケーションモデルに基づいて、少なくとも1つのアプリケーション能力を定義するように前記第1管理装置を制御するステップであって、前記アプリケーション能力それぞれは、1つのクラウドプラットフォームによってサポートされる負荷又は負荷に作用する運用保守特性を表すためのものであるステップと、
前記第2管理装置が前記第1管理装置からの前記アプリケーション能力に応じて、前記アプリケーション能力に対応する能力境界を決定するように前記第2管理装置を制御するステップであって、前記能力境界は、前記アプリケーション能力をサポートする各候補クラウドプラットフォームを表すためのものであるステップと、
前記能力境界によって各前記候補クラウドプラットフォームに対するアプリケーションオーケストレーション・インスタンス化ポリシーを決定するステップと、を含む。
【0008】
第3態様では、本願の実施例はまた、クラウドプラットフォーム管理装置を提供する。前記クラウドプラットフォーム管理装置は、メモリと、プロセッサと、前記メモリに記憶され、前記プロセッサで動作可能なコンピュータプログラムとを含み、前記プロセッサは、前記コンピュータプログラムを実行すると、前記第2態様に記載のクラウドプラットフォーム管理方法を実現する。
【0009】
第4態様では、本願の実施例はまた、上記の第2態様のクラウドプラットフォーム管理方法を実行するためのコンピュータ実行可能命令を記憶したコンピュータ読み取り可能な記憶媒体を提供する。
【0010】
本願の他の特徴及び利点は、後の明細書で説明され、本明細書から部分的に明らかになるか、又は本願を実施することによって理解される。本願の目的及び他の利点は、明細書、特許請求の範囲、及び添付図面において特に指摘された構造によって達成され得る。
【0011】
図面は、本願の技術的解決手段の更なる理解を提供するために使用され、明細書の一部を構成し、本願の実施例と共に本願の技術的解決手段を説明するために使用され、本願の技術的解決手段を限定するものではない。
【図面の簡単な説明】
【0012】
図1】本願の一実施例によるクラウドプラットフォーム管理アーキテクチャの概略図である。
図2】本願の一具体例によるクラウドプラットフォーム管理アーキテクチャの概略図である。
図3】本願の一実施例による能力境界の概略図である。
図4】本願の一実施例によるブループリントデザイナーのインターフェースの概略図である。
図5】本願の一実施例によるクラウドプラットフォーム管理方法のフローチャートである。
図6】本願の一実施例によるクラウドプラットフォーム管理方法においてターゲットクラウドプラットフォームを決定するフローチャートである。
図7】本願の他の実施例によるクラウドプラットフォーム管理方法のフローチャートである。
図8】本願の他の実施例によるクラウドプラットフォーム管理方法のフローチャートである。
図9】本願の一実施例によるクラウドプラットフォーム管理方法において能力境界を決定するフローチャートである。
図10】本願の実施例に係るクラウドプラットフォーム管理アーキテクチャがクラウドプラットフォームにアクセスする具体的なフローチャートである。
図11】本願の実施例に係るクラウドプラットフォーム管理アーキテクチャが下位クラウドプラットフォームに能力定義を配信する具体的なフローチャートである。
図12】本願の実施例に係るクラウドプラットフォーム管理アーキテクチャがアプリケーションインスタンス化を実行する具体的なフローチャートである。
【発明を実施するための形態】
【0013】
本願の目的、技術的解決手段及び利点をより明確にするために、以下、図面及び実施例を参照して、本願をさらに詳細に説明する。本明細書に記載された具体的な実施例は、本願を解釈するためにのみ使用され、本願を限定するために使用されない。
【0014】
なお、能力モジュール分割は装置の概略図に示され、論理的順序はフローチャートに示されているが、場合によっては、装置内のモジュール分割とは異なってもよく、又は示されたもしくは説明されたステップがフローチャートに示された順序とは異なるもので実行されてもよい。明細書及び特許請求の範囲、並びに前述の図面における「第1」、「第2」等の用語は、特定の順序又は優先順位を説明するために使用されるのではなく、類似の対象を区別するために使用される。
【0015】
本願は、クラウドプラットフォーム管理アーキテクチャ、管理方法、管理機器、及びコンピュータ読み取り可能な記憶媒体を提供する。オープンアプリケーションモデルの具体的なシーンで、第1管理装置により複数のアプリケーション能力を定義するので、クラウドネイティブアプリケーションの能力抽象化を実現することができる。それによって、各クラウドプラットフォームの差別化シーンを整合的に表すことができ、各クラウドプラットフォーム間でのクラウドネイティブアプリケーションの移植性を向上させることができる。また、第2管理装置により、定義されたアプリケーション能力をサポートする候補クラウドプラットフォームを表すための能力境界を決定し、アプリケーションオーケストレーション・インスタンス化装置が、能力境界によって、各候補クラウドプラットフォームに対するアプリケーションオーケストレーション・インスタンス化ポリシーを決定することを支援する。それによって、複数のクラウドプラットフォームの差別化シーンを管理し、アプリケーションオーケストレーション・インスタンス化を最適化させる効果を得ることができる。
【0016】
以下、図面を参照して、本願の実施例についてさらに説明する。
【0017】
図1に示すように、図1は、本願の一実施例によるクラウドプラットフォーム管理アーキテクチャ100の概略図である。
【0018】
図1の例では、クラウドプラットフォーム管理アーキテクチャ100は、第1管理装置200を含んでもよいが、これに限定されるものではない。第1管理装置200は、オープンアプリケーションモデルに基づいて、少なくとも1つのアプリケーション能力を定義するように構成され、アプリケーション能力それぞれは、1つのクラウドプラットフォームによってサポートされる負荷又は負荷に作用する運用保守特性を表す。
【0019】
具体的には、本願の実施例のクラウドプラットフォーム管理アーキテクチャ100が適用されるクラウドプラットフォームは、クラウドインフラストラクチャを中核とすることができ、標準化ハードウェア設備及び強化されたカスタム化されたハードウェア機器で動作することができる。クラウドプラットフォームは、仮想マシン、ベアメタルやコンテナなどの基礎的な仮想単一又は混合リソースサービスを外部に提供することができ、技術コンポーネント、ネットワーク及びビジネスサービスなどを統合的に提供することができ、また、必要に応じて拡張して、複数の製品にクラウドネイティブ技術スタックを提供することができる。
【0020】
一実施例では、上記の標準化ハードウェア設備及び強化されたカスタム化された機器は、汎用サーバ、メモリ、ネットワーク機器、カスタマイズされたオールインワンマシン、スマートネットワークカードや加速化ハードウェアなどを含むが、これらに限定されるものではない。
【0021】
具体的には、本願の実施例では、クラウドプラットフォームは、K8Sプラットフォームに基づくコンテナクラウドプラットフォームであってもよく、K8S及びオープンスタック(Openstack)に基づくデュアルコアクラウドプラットフォームであってもよい。本願の実施例は、クラウドプラットフォームのタイプを特に制限しない。
【0022】
一実施例では、オープンアプリケーションモデル(OAM:Open Application Model)は、クラウドネイティブアプリケーションを構築、デリバリーするための標準仕様である。従来のプラットフォームと比べて、例えばPaaSは閉鎖されており、能力オペレータ(Operator)を基礎とするクラウドネイティブ生態と連携できない現状と比べて、OAMとK8Sに基づいて構築された現代のクラウドネイティブアプリケーション管理プラットフォームは、本質的には「アプリケーションを中心とする」K8Sであり、このアプリケーションプラットフォームがクラウドネイティブ生態全体にシームレスにアクセスできることを確保している。また、OAMはコンテナインフラの複雑さと差異性をさらに遮断し、低負担で標準化された一貫したアプリケーション管理とデリバリー体験をクラウドプラットフォームのユーザーにもたらすことができる。
【0023】
本願の実施例では、アプリケーション能力は、完全なアプリケーションを構成することができるアトミック機能を指してもよいが、これに限定されるものではなく、クラウドプラットフォームがアプリケーション定義者に提供する能力を抽象化したものとみなしてもよく、主にサポートする負荷又はそれらの負荷に作用する運用保守特性として記述される。これらの能力をサポートすることにより、アプリケーション定義者はビジネスの要件を満たすクラウドネイティブアプリケーションを定義することができる。
【0024】
具体的には、負荷には、関数、コンテナ、クラウドリソース、仮想マシンなどの様々な形態のワークロードが含まれるが、これらに限定されない。負荷は、アプリケーションがどのように動作されるかを記述するために使用される。運用保守特性には、トラフィック管理、リリースポリシー、弾力性ポリシー、観測可能性ポリシーなど、さまざまな運用保守能力が含まれるが、これらに限定されるものではない。最終的に、クラウドプラットフォーム自体は異なる負荷と運用保守特性の組み合わせによってエンドユーザーに差別化されたシーンを提供し、ユーザーがクラウドネイティブアプリケーションの定義を行うのを助けることができる。
【0025】
一実施例では、アプリケーション能力は、標準テンプレートを使用して、オープンアプリケーションモデル仕様で合意されたアプリケーション能力の定義方法を参照して定義される。
【0026】
一実施例では、アプリケーション能力は負荷能力と特性能力とに分けられる。負荷能力は、オープンアプリケーションモデル仕様の標準テンプレートで定義されてもよい。例えば、oam-kubernetes-runtimeを用いたcore.oam.dev/v1alpha2.WorkloadDefinitionで定義される。特性能力は、oam-kubernetes-runtimeのcore.oam.dev/v1alpha2.TraitDefinitionで定義されてもよい。負荷定義(Workload Definition)と特性定義(Trait Definition)は共にK8Sのカスタムリソース(CRD:Custom Resource Definitions)であるので、能力定義はCRDタイプによってクラウドプラットフォームから取得することができる。
【0027】
具体的には、オープンアプリケーションモデルを参照し、アプリケーション能力の特徴に応じて、負荷タイプはコア負荷タイプ(Core Workload Type)、標準負荷タイプ(Standard Workload Type)、及び拡張負荷タイプ(Extended Workload Type)に分けられ、特性能力範囲はコア特性(Core Trait)範囲、標準特性(Standard Trait)範囲、及び拡張特性(Extended Trait)範囲に分けられ得る。
【0028】
このうち、コア特性範囲の能力は、オープンアプリケーションモデルによって事前定義された能力である。標準特性範囲の能力は、本願の実施例に係る装置が実現することができるアプリケーション能力であり、実際のアプリケーションでは、ほとんどのクラウドプラットフォームでの動作をサポートすることができる。拡張特性範囲の能力は、本願の実施例に係る装置が対象とするクラウドプラットフォームユーザの二次開発に基づいて得られたアプリケーション能力であり、クラウドプラットフォーム生態と連携して、オープンソースコミュニティに広く存在する各種プラグインを利用して、アプリケーション定義に必要な各種アプリケーション能力を開発することができる。通常、コア特性範囲と標準特性範囲のアプリケーション能力は変更されず、拡張特性範囲のアプリケーション能力はいつでも更新され、動的に有効になり得る。
【0029】
一実施例では、K8Sクラウドプラットフォームの負荷能力は、K8Sによって事前定義されたリソース又はCRD定義を参照することによって、すなわちyamlファイルによって定義することができる。新しいCRDを導入する必要がある場合、対応する能力オペレータ、又は基本的な依存プラグインを追加する必要がある。特性能力が基本的なプラグインによるサポートを必要とする場合、必要に応じて対応する能力オペレータ及び基本的なプラグインを追加してもよい。ここで、能力定義では、これらの能力オペレータ及びプラグインをロードするための初期化アクションを定義することがサポートされている。
【0030】
一実施例では、アプリケーション能力定義自体はJavaScript(登録商標)オブジェクト表記法(JSON:JavaScript(登録商標) Object Notation)によって表現してもよい。さらに、アプリケーション能力定義は、テンプレート言語を使用して開発してもよく、使用できるテンプレート言語は、CUELang又はHelmを含むがこれらに限定されない。
【0031】
なお、第1管理装置200はまた、ターゲットクラウドプラットフォーム及びアプリケーション能力によって、ターゲットクラウドプラットフォームによってサポートされるターゲットアプリケーション能力を決定するように構成されるとともに、ターゲットアプリケーション能力に対応するターゲット能力定義パケットをターゲットクラウドプラットフォームに送信するように構成される。
【0032】
一実施例では、クラウドプラットフォームが第1管理装置200の管理範囲に組み入れられている場合、第1管理装置200は、そのクラウドプラットフォームによってサポートされる能力集合を積極的に発見してもよい。アプリケーション能力はオープンアプリケーションモデル仕様で定義されているため、K8Sネイティブインタフェースを介してすべての負荷定義や特性定義のインスタンスを問い合わせることができ、対応するアプリケーション能力記述や動作範囲などの詳細な情報を得ることができる。
【0033】
一実施例では、第1管理装置200が発見したアプリケーション能力は、第1管理装置200のデータベースに永続化され、クラウドプラットフォームと能力との対応関係を記憶する対応テーブルが形成され、最終的には、第1管理装置200が管理する複数のクラウドプラットフォームのそれぞれの能力集合が形成される。
【0034】
なお、クラウドプラットフォームのさまざまなインスタンスについて、その能力集合は同じであっても異なっていてもよい。
【0035】
一実施例では、第1管理装置200は、オープンアプリケーションモデル仕様で定義された能力タイプをサポートしてもよく、また、事前定義された能力集合をサポートする。このような事前定義された能力は、K8Sによって事前定義されたリソースタイプに対応する能力のように、ほとんどのクラウドプラットフォームによってデフォルトでサポートされ得る。
【0036】
一実施例では、第1管理装置200は、能力定義仕様を提供し、能力データベースを用いて各種の能力を維持し、予め設定された複数の能力を提供し、ユーザーが二次開発をロードし、クラウドネイティブコミュニティで定義された能力をインポートする能力を提供する。すべての能力定義は、能力データベースに永続化される。また、クラウドプラットフォームのインスタンスのアクセスに伴い、各クラウドプラットフォームに対して能力発見と能力配信が行われ、本装置は、それと同時に、能力データベースで各能力と管理するクラウドプラットフォームのインスタンスとの対応関係を構築し、各クラウドプラットフォームによってサポートされる能力集合を決定する。本願の実施例は、リモート能力倉庫もサポートしている。オープンソースコミュニティが貢献するさまざまな能力は、能力倉庫に置いてもよい。リモート能力倉庫を配置することで、クラウドネイティブ生態とシームレスに連携することができる。
【0037】
クラウドプラットフォームが第1管理装置200の管理に組み入れられる場合、まず、そのクラウドプラットフォームに、能力オペレータが存在することを確認する。ここで、能力オペレータは、定義されたアプリケーション能力を処理するように構成され、状況に応じてその仕様や内容を選択的に設定可能である。存在しない場合、能力オペレータをクラウドネイティブで配信する必要がある。第1管理装置200は、クラウドプラットフォームにアクセスする際に、予め設定された各種の能力をターゲットクラウドプラットフォームに配信し、それによって、ターゲットクラウドプラットフォームが対応する能力を有する。能力定義はK8S CRDなので、これらの能力定義はK8Sネイティブで配信できる。
【0038】
また、プラットフォーム開発者は、その後、オープンアプリケーションモデル仕様により、より多くの能力を定義し、第1管理装置200の管理に組み入れ、対応するクラウドプラットフォームに指定して配信してもよい。クラウドネイティブコミュニティにおけるK8S生態でのオープンソースの各種の能力を利用して、第1管理装置200にインポートすることで、第1管理装置200が管理する能力を絶えずに拡張することも可能である。さらに、既存の能力定義が変更された場合、その能力定義を再配信し、対応するクラウドプラットフォームにおいても更新してもよい。
【0039】
なお、アプリケーション定義に必要な能力定義パッケージとその依存するプラグインパッケージが本装置にすでに存在していれば、アプリケーションインスタンス化の際に、必要に応じて能力定義パッケージを対応するクラウドプラットフォームシステムに配信してローディングしてもよい。
【0040】
図1を参照すると、本願の実施例に係るクラウドプラットフォーム管理アーキテクチャ100は、第2管理装置300をさらに含む。第2管理装置300は、第1管理装置200に接続され、第1管理装置200からのアプリケーション能力によって、アプリケーション能力に対応する、能力境界を決定するように構成された。能力境界は、アプリケーション能力をサポートする各候補クラウドプラットフォームを表すためのものである。
【0041】
具体的には、能力境界とは、特定の能力定義をサポートするクラウドプラットフォームインスタンスの範囲であり、能力タイプと密接な関係があり、クラウドプラットフォームによってサポートされる能力集合によっても決定される。例えば、予め設定されたK8Sプラットフォーム能力は、すべてのK8Sタイプのクラウドプラットフォームに作用する。二次開発で定義された能力、又はインポートされたクラウドネイティブコミュニティで定義された能力は、当該能力を明示的に配信するクラウドプラットフォームのインスタンス、又はその能力がすでにクラウドプラットフォームにインストールされているクラウドプラットフォームのインスタンスに作用する。
【0042】
なお、第2管理装置300は、第1管理装置200からのアプリケーション能力の動作状況をチェックし、アプリケーション能力の動作状況に応じてアプリケーション能力を調整し、調整されたアプリケーション能力によって、調整されたアプリケーション能力に対応する能力境界を決定するように構成される。
【0043】
さらに、能力定義自体はクラウドプラットフォームのリソース、プラグインなどの各種操作に関連し、一定の複雑性を有する。開発、テスト、配布などのプロセスを考慮する必要がある。K8Sのネットワークフック(Webhook)機構により、能力定義をチェックし、能力定義yamlの正当性をチェックし、能力定義テンプレート言語の正当性を検査し、能力定義依存リソースと基本的なプラグインの満足度を検証することができる。
【0044】
第2管理装置300はまた、能力テストサンドボックスを提供し、オンラインになった直後の能力をシミュレーションしてテストし、テスト出力の分析を支援して、能力開発がユーザーのニーズに合ったものであることを確保する。能力サンドボックスは能力シミュレーション実行環境であり、生産環境と隔離され、多くの能力関連論理実行に対してシミュレーション方式を採用し、真実のリソース操作動作を実行しておらず、能力が実際に実行される時の効果をある程度でシミュレーションすることができ、そして、出力によって能力開発者が論理の正確性を判定することを支援する。サンドボックス事前テストに合格すると、能力を正式なクラウド環境にロードしてサービスを提供できるようになる。また、能力定義アップグレードシーンではwebhookでテスト能力を提供してもよく、最初に一部の能力作成要求を新バージョンの能力定義実装に導き、実行効果に応じて古いバージョンを新バージョンに置き換えていく。
【0045】
図1を参照すると、本願の実施例に係るクラウドプラットフォーム管理アーキテクチャ100は、アプリケーションオーケストレーション装置400をさらに含む。アプリケーションオーケストレーション装置400は、第1管理装置200に接続され、能力境界によって各候補クラウドプラットフォームに対するアプリケーションオーケストレーションポリシーを決定するように構成された。
【0046】
なお、従来のアプリケーションオーケストレーションシステムは基本的にハードコーディングモードを採用しており、具体的なクラウドプラットフォームのリソースタイプに応じてハードコーディングオーケストレーションインタフェースを実現しているが、それ自体は拡張性がないため、定義されたアプリケーションは移植性がないため、複数のクラウドプラットフォームの能力の差を管理することに対応できない。従来のハードコーディングアプリケーションオーケストレーションシステムに対して、本願の実施例のアプリケーションオーケストレーション装置400は、アプリケーション能力要素を柔軟に活用することができ、能力定義データベースの能力テンプレート定義に基づいてアプリケーションオーケストレーション要素を動的に生成し、能力境界によってアプリケーション定義者にオーケストレーション要素を対応させて使用させることができる。また、絶えず導入される新しい能力定義により、本装置がサポートするアプリケーション定義のオーケストレーション能力を継続的に向上させ、クラウドネイティブ成形をより有効に活用する。
【0047】
なお、本願の実施例のアプリケーションオーケストレーション装置400は、能力境界によって、各候補クラウドプラットフォームからアプリケーションインスタンス化を実行するためのターゲットクラウドプラットフォームを決定するように構成される。
【0048】
ユーザーは、アプリケーションをオーケストレーションする際に、予め設定された能力定義要素を選択することができる。また、選択されたクラウドプラットフォームインスタンスに応じて、さまざまな拡張された能力定義が能力境界を利用して使用されてもよい。又は、能力境界を無視して、アプリケーションオーケストレーション装置400によって管理されるすべての能力定義を使用して、アプリケーションがインスタンス化されるまで、能力境界に作用してもよい。
【0049】
本願の実施例によって生成されたアプリケーション定義は、インスタンス化実行のために、HelmによってCHARTパッケージにパッケージ化されてもよい。
【0050】
アプリケーションインスタンス化の際には、能力定義のアクションを実行する必要がある。本願で定義された能力は、K8S CRDによって提供され、対応する能力CRDは、能力オペレータによって実行される必要がある。能力オペレータは、関連する論理を実現するために対応するコントローラ(Controller)を提供する必要がある。能力オペレータは、負荷能力の場合はCRDで定義された能力を能力参照定義に従ってクラウドプラットフォームネイティブリソース又はカスタムリソースに変換し、特性能力の場合は能力テンプレート定義に従って対応する論理を実行し、さらに、クラウドプラットフォームの他のOperator又はコントローラ(Controller)や基本的なプラグインによる支援を受けることもある。
【0051】
本願の実施例は、ブループリントインスタンス化アプリケーションをオーケストレーションする際に、能力境界によって、そのアプリケーションをサポートするクラウドプラットフォームのインスタンスを選択してもよい。対応する条件の下で、このアプリケーションに必要な能力をターゲットクラウドプラットフォームに積極的に配信してもよい。それによって、クラウドプラットフォームに能力を付与し、アプリケーション実行条件を創造し、最終的には、定義されたアプリケーションがクラウドプラットフォームで正常にインスタンス化できることを確保し、異なるクラウドプラットフォーム間でのアプリケーションの移植性を保障することができる。
【0052】
なお、本願の実施例のクラウドプラットフォーム管理アーキテクチャ100は、少なくとも1つのアプリケーション能力に対応する少なくとも1つの能力テンプレートを記憶するように構成された能力データベースをさらに含む。能力データベースは、第1管理装置200を介してアプリケーションオーケストレーション装置400に接続される。アプリケーションオーケストレーション装置400はまた、能力データベースからの能力テンプレートに基づいて、能力テンプレートに対応するプログラム可能なアプリケーション能力オーケストレーション要素を生成するように構成される。
【0053】
第1管理装置200が管理するクラウドプラットフォーム能力テンプレートは、最終的には、能力データベースに永続化される。それによって、能力の継続的な管理を提供し、能力データに基づいて後からオーケストレーションインタフェースを生成する。また、能力データベースには、能力定義テンプレートの登録、問合せ、更新及び削除などのインターフェースが提供される。例えば、
GET{apiRoot}/app_lcm/v2/capabilitiesは、クラウドプラットフォームのすべての能力テンプレート定義を問い合せるインターフェースを定義し、GET{apiRoot}/app_lcm/v2/capabilities/:idは、クラウドプラットフォームで指定したIDの能力テンプレート情報を問い合せるインターフェースを定義し、3.POST{apiRoot}/app_lcm/v2/capabilityは、ユーザーがカスタマイズした能力テンプレートをクラウドプラットフォームに送信するインターフェースを定義する。
【0054】
一実施例では、アプリケーションオーケストレーション装置400は、その能力境界がクラウドプラットフォーム全集合であるので、オーケストレーションの際に、すべての予め設定された能力を提示してもよい。また、この定義アプリケーションが後続して実行される1つ又は複数のクラウドプラットフォームインスタンスをオーケストレーションの際に明確にすることができれば、これらのクラウドプラットフォームインスタンスの能力の和集合をアプリケーション定義者に提供してもよい。それによって、定義アプリケーションが後続してターゲットクラウドプラットフォームで正常にインスタンス化されるようにすることができる。
【0055】
さらに、一部のクラウドプラットフォームは後から本第1管理装置200の管理に組み入れられることがあるので、各クラウドプラットフォームの能力集合の違いに着目してアプリケーションをオーケストレーションすることはなくてもよい。また、第1管理装置200に組み入れられた後に、クラウドプラットフォームのインスタンスに各種の能力を積極的にインストールしてもよい。したがって、第1管理装置200が管理する能力のタイプを、ユーザーが必要に応じて全て選択してもよい。インスタンス化の際に、候補ターゲットクラウドプラットフォームインスタンスを能力境界によってフィルタリングしてもよい。本アプリケーションをサポートするために必要なすべての能力に対応する能力境界のクラウドプラットフォームインスタンスのみを、フィルタリングしてユーザーに選択させる。これにより、アプリケーションがターゲットクラウドプラットフォームで正常にインスタンス化されることを効果的に確保することもできる。
【0056】
一実施例では、第1管理装置200は、クラウドプラットフォームのインスタンスの能力集合を拡張し、ある能力の能力境界を拡張してもよい。対応する能力定義パッケージ及びその能力定義パッケージが依存するプラグインパッケージが第1管理装置200に存在する場合、対応するクラウドプラットフォームに能力定義パッケージを配信してインストールする。これにより、クラウドプラットフォームが本来サポートしていないアプリケーション展開をサポートできるようにクラウドプラットフォームに能力を付与してもよい。
【0057】
したがって、本願の実施例では、オープンアプリケーションモデルの具体的なシーンにおいて、第1管理装置200により、複数のアプリケーション能力を定義するので、クラウドネイティブアプリケーションの能力抽象化を実現することができる。それによって、各クラウドプラットフォームの差別化シーンを整合的に表すことができ、各クラウドプラットフォーム間でのクラウドネイティブアプリケーションの移植性を向上させることができる。また、第2管理装置300により、定義されたアプリケーション能力をサポートする候補クラウドプラットフォームを表すための能力境界を決定し、アプリケーションオーケストレーション装置400が、能力境界によって、各候補クラウドプラットフォームに対するアプリケーションオーケストレーションポリシーを決定することを支援する。それによって、複数のクラウドプラットフォームの差別化シーンを管理し、アプリケーションオーケストレーションを最適化させる効果を得ることができる。
【0058】
以上の様々な実施例の作動原理をより明確に説明するために、以下に具体的な例を示して説明する。
【0059】
例1
図2を参照すると、図2は、本願の具体例によるクラウドプラットフォーム管理アーキテクチャの概略図である。
【0060】
図2の例では、第1クラウドプラットフォームは、能力マネージャと、能力オペレータとを含む。能力マネージャは、能力管理のために構成された能力管理制御プレーンである。能力オペレータは、能力のローディング、実行及びアプリケーションパッケージインスタンス化、例えば第2クラウドプラットフォーム及び第3クラウドプラットフォームのアプリケーションインスタンスのために構成された能力管理データプレーンである。また、第1クラウドプラットフォームにもデータプレーン機能が備わっている。
【0061】
ここで、能力管理制御プレーンは、オープンアプリケーションモデル仕様で合意された能力定義方式を参照することによって、標準テンプレートを採用して能力定義を提供する。能力によってアプリケーション定義をサポートする要素を抽象化し、複数の下位クラウドプラットフォームの能力を差別化して管理することで、各クラウドプラットフォームの能力範囲を明確にする。また、各クラウドプラットフォームの能力を能力定義データベースに永続化し、最終的に完全な能力管理を提供する。下位クラウドプラットフォームにアクセスする際に、予め設定された能力とユーザーがカスタマイズした拡張能力集合をターゲットクラウドプラットフォームに配信することにより、能力配信を提供する。すべての負荷定義と特性定義の詳細をK8Sで問い合わせ、対応する能力記述や動作範囲などの詳細な情報を得ることで、マルチクラウドプラットフォームの能力発見を提供する。
【0062】
能力管理制御プレーンは、各下位クラウドプラットフォームにアクセスする際に、データプレーンのために能力オペレータを配信しローディングする。これにより、下位クラウドプラットフォームは、制御プレーンから配信された能力テンプレート定義を受信する際に、能力定義テンプレート言語の合法性とクラウドプラットフォームリソースや基本的なプラグインの満足度に依存する能力を有する。また、能力オペレータは能力テストサンドボックスモジュールを提供し、オンラインになった直後の能力をシミュレーションしてテストし、テスト出力の分析を支援して、能力開発がユーザーのニーズにあったものであることを確保し、最後に能力をスムーズにローディングすることを確保する。さらに、能力オペレータは、能力定義アップグレードシーンのテスト能力を提供し、一部の能力作成要求を新しいバージョンの能力定義実装に導き、実行効果に応じて古いバージョンを徐々に新しいバージョンに置き換えていく。ブループリントオーケストレータは、能力管理制御プレーンから能力定義データベースの能力テンプレート定義を取得し、アプリケーションオーケストレーション要素を動的に生成し、また、能力境界によってアプリケーション定義者に柔軟にスオーケストレーション要素を選択させてもよい。ユーザーは、オーケストレータを使用して、アプリケーションパッケージファイルを制御プレーンに発行する。インスタンス化の際には、制御プレーンは能力境界によって展開可能なクラウドプラットフォームを決定し、アプリケーションパッケージを下位クラウドプラットフォームに配信する。下位クラウドプラットフォームは、ブループリントでオーケストレーションされたアプリケーションパッケージを受けた後、データプレーンの能力オペレータを通じてアプリケーション定義に使用される各能力をクラウドプラットフォームCRD、K8Sネイティブリソースに変換し、それによって、アプリケーションパッケージをインスタンス化する。
【0063】
例2
図3を参照すると、図3は、本願の実施例の能力境界の概略図である。
【0064】
図3の例では、能力は、運用保守及びワークロードの能力特徴によって、コア能力(CC:Core Capability)、標準能力(SC:Standard Capability)、拡張能力(EC:Extended Capability)の3つの種類に分けられる。
【0065】
ここで、CCは、オープンアプリケーションモデルの事前定義能力である。SCは、本願の実施例のクラウドプラットフォーム管理アーキテクチャによってデフォルトで実現される能力であり、ほとんどのクラウドプラットフォームでの動作をサポートすることができる。ECは、本願の実施例のクラウドプラットフォーム管理アーキテクチャに基づいて、クラウドプラットフォームのユーザーが二次開発した能力であり、クラウドプラットフォーム生態と連携し、オープンソースコミュニティに広く存在する各種プラグインを利用して、アプリケーション定義に必要な各種の能力を開発することができる。CCとSCの能力は変更できず、ECは更新され、動的に有効になる。
【0066】
したがって、マルチクラウドプラットフォームの場合、各プラットフォームが有するCC及びSCは同一である。すなわち、図3において、第4クラウドプラットフォーム、第5クラウドプラットフォーム、及び第6クラウドプラットフォームは、いずれも同一の第1コア能力、第2コア能力、及び第3コア能力を有する。本願の実施例では、CC及びSCの全集合を予め設定された能力集合と呼び、その能力境界はすべてのクラウドプラットフォームであり、図3では、第4クラウドプラットフォーム、第5クラウドプラットフォーム、及び第6クラウドプラットフォームである。
【0067】
さらに、ECは一般的にユーザーが二次開発するため、ユーザーの配信状況やクラウドプラットフォームのインフラの違いによって、異なるクラウドプラットフォームが実際に作動されている場合、異なるあるいは同一のECを有する可能性がある。したがって、能力境界に関しては、異なるECは、同じ又は異なる能力境界を有してもよい。図3を例にとると、第1拡張能力及び第4拡張能力の能力境界は、第4クラウドプラットフォーム及び第5クラウドプラットフォームである。第2拡張能力及び第3拡張能力の能力境界は、第4クラウドプラットフォームである。第5拡張能力の能力境界は第5クラウドプラットフォームである。第6拡張能力、第7拡張能力、第9拡張能力の能力境界は第6クラウドプラットフォームである。
【0068】
例3
図4を参照すると、図4は、本願の実施例によるブループリントデザイナーのインターフェース図である。ブループリントデザイナーは、オーケストレーション要素バー、能力スクリーニングバー、及び能力全集合ラジオボックス、属性入力ボックス、キャンバス、及び必要なボタンで構成される。
【0069】
ここで、左側のオーケストレーション要素バーは、本願の実施例のクラウドプラットフォーム管理アーキテクチャがサポートするさまざまな能力を主に示しており、アプリケーション定義に必要な要素である、予め設定された能力や拡張能力を含む。
【0070】
能力スクリーニングでは、アプリケーションパッケージを作成する際に、そのパッケージが展開可能なクラウドプラットフォームを能力境界によって指定することがサポートされている。能力スクリーニングボックスが選択されると、その能力スクリーニングバーには、本願の実施例のクラウドプラットフォーム管理アーキテクチャがアクセスするすべての下位クラウドプラットフォームが選択用に一覧表示される。その選択に応じて、オーケストレーション要素バーの拡張能力部分には、選択されたすべてのクラウドプラットフォームの拡張能力集合の和集合が表示される。必要な能力がすべてサポートされているので、このシーンのオーケストレーションのアプリケーションは、これらの選択されたクラウドプラットフォームで直接インスタンス化することができる。
【0071】
また、ブループリントデザイナーでは、パッケージを作成する際に、クラウドプラットフォームを能力境界によって指定しないこと、つまり、能力全集合選択ボックスもサポートされている。本願の実施例のクラウドプラットフォーム管理アーキテクチャは、能力全集合選択ボックスをチェックすると、能力選択バーの拡張能力部分に、すべてのクラウドプラットフォーム拡張能力集合の和集合を示す。アプリケーション定義は、本願の実施例のクラウドプラットフォーム管理アーキテクチャを使用して管理される能力を最大化することができる。このパッケージを使用してアプリケーションを展開するときに、その能力境界が機能する。
【0072】
最後に、ブループリントデザイナーのキャンバスで特定の能力定義を選択すると、デザイナは、能力定義データベースの能力定義に基づいて、作成可能な能力定義パラメータを属性バーに動的に表示する。
【0073】
以下は、本願の実施例を使用してアプリケーションを定義するためのプロセスである。例えば、5Gエッジサービスの仮想コンテンツデリバリネットワーク(vCDN:virtual Content Delivery Network)コンテンツサービスアプリケーション(App:Application)を定義する場合、汎用的な特性には、コンテナとして動作すること、webサービスを外部に露出すること、及び弾力性をサポートすることなどが含まれ、トラヒック特性には、適切なエッジルーティングを設けることが含まれる。
【0074】
初期化アクションは、vCDN Appの動作をサポートするために個々のエッジクラウドにアクセスすることを含む。これらのエッジクラウドの能力は、本願の実施例のクラウドプラットフォーム管理アーキテクチャ、例えばエッジアプリケーションシャントをサポートする特定の能力に発見される。
【0075】
オーケストレーションプロセスには、次のものが含まれる。
【0076】
本願の実施例のクラウドプラットフォーム管理アーキテクチャのアプリケーションブループリントオーケストレータを開き、アプリケーションの定義を開始する。vCDN Appが動作し得るエッジクラウドプラットフォームは能力セレクタで選択してもよい。ブループリントオーケストレータは、能力データベース及び能力境界によって、オーケストレータ要素バーを表示する。オーケストレータ要素は、コンテナ負荷、弾力性特性などの一般的な能力、及び分流能力などのエッジクラウド固有の能力や拡張能力を含む。vCDN Appの必要に応じて、オーケストレータのコンテナ負荷、弾力性特性、イングレス(Ingress)能力や分流能力をキャンバス上にドラッグして、アプリケーションを定義する。具体的な能力については、能力定義に基づいてオーケストレータの右端に対応する属性を設定してもよい。また、ユーザーはビジネスコンテナのイメージをアップロードし、コンテナ負荷のイメージ(Image)属性にイメージ名を設定する必要がある。vCDN Appを定義した後、保存をクリックすると、Appブループリント、すなわちユーザーによって定義されたアプリケーションを発行することができる。
【0077】
一実施例では、vCDN Appブループリントが選択され、具体的なクラウドプラットフォームが選択され、アプリケーションインスタンス化のアクションが実行され、最終的に特定のエッジクラウドにこのAppが展開されてもよい。Appはトラフィックルールを変更し、エッジサイドのコンテンツサービス要求をこのAPPに導き、様々なコンテンツ情報をキャッシュして、近くのユーザーにサービスしてもよい。また、このAppはIngressを通じて運用保守ユーザーに管理インターフェースを提供している。
【0078】
以上から、従来のアプリケーションオーケストレーションシステムの多くは、ハードコーティングされており、それ自体に拡張性がなく、定義されたアプリケーションの移植性がなく、マルチクラウドプラットフォームの能力の違いに対応できないなどの特徴がある。これに対して、本願の実施例によるクラウドプラットフォーム管理アーキテクチャは、アプリケーション能力要素を柔軟に応用でき、能力定義データベースの能力テンプレート定義に基づいてアプリケーションオーケストレーション要素を動的に生成し、能力境界によってアプリケーション定義者に柔軟にオーケストレーション要素を選択させることができる。また、新たな能力要素を絶えず導入することによって、本願の実施例のクラウドプラットフォーム管理アーキテクチャによってサポートされるアプリケーション定義のオーケストレーション能力を持続的に向上させ、クラウドネイティブ生態をより効果的に利用することができる。換言すれば、本願の実施例は、既存のクラウドプラットフォームにおけるアプリケーション定義能力のジレンマに対して、オープンアプリケーションモデル及び成熟したクラウドネイティブ生態を利用してクラウドプラットフォーム能力を定義し、能力に対する相応の管理、能力のタイプの区分及び予め設定された能力の提供等の操作を明確に提案している。特にマルチクラウドシーンにおいて、各クラウドプラットフォームによってサポートされるアプリケーション負荷、運用保守特性等のアプリケーション定義能力を積極的に発見するとともに、クラウドプラットフォームの既存の各種プラグインに基づく各種アプリケーション能力の開発をサポートし、各クラウドプラットフォームに集中的に配信し、クラウドプラットフォームに能力を付与する。なお、本願の実施例はまた、能力境界の概念を提出し、各クラウドプラットフォーム間の能力の差を管理し、かつアプリケーション能力及び能力境界に基づいてアプリケーションオーケストレーションインターフェースを動的に生成し、アプリケーション開発者がマルチクラウドプラットフォームでアプリケーションブループリントのオーケストレーション及び展開を行うのを支援し、アプリケーションオーケストレーションの効果をさらに最適化させることができる。
【0079】
上記のクラウドプラットフォーム管理アーキテクチャに基づいて、本願のクラウドプラットフォーム管理方法の様々な実施例が提案される。
【0080】
図5に示すように、図5は、本願の一実施例によるクラウドプラットフォーム管理方法のフローチャートであり、図1に示す実施例におけるクラウドプラットフォーム管理アーキテクチャに適用可能である。このクラウドプラットフォーム管理方法は、ステップS100~S300を含むが、これらに限定されるものではない。
【0081】
ステップS100:第1管理装置がオープンアプリケーションモデルに基づいて、少なくとも1つのアプリケーション能力を定義するように第1管理装置を制御し、アプリケーション能力それぞれは、1つのクラウドプラットフォームによってサポートされる負荷又は負荷に作用する運用保守特性を表すためのものである。
ステップS200:第2管理装置が第1管理装置からのアプリケーション能力によって、アプリケーション能力に対応する能力境界を決定するように第2管理装置を制御し、能力境界は、アプリケーション能力をサポートする各候補クラウドプラットフォームを表すためのものである。
ステップS300:能力境界によって、各候補クラウドプラットフォームに対するアプリケーションオーケストレーションポリシーを決定する。
【0082】
オープンアプリケーションモデルの具体的なシーンでは、第1管理装置により複数のアプリケーション能力を定義するので、クラウドネイティブアプリケーションの能力抽象化を実現することができる。それによって、各クラウドプラットフォームの差別化シーンを整合的に表すことができ、各クラウドプラットフォーム間でのクラウドネイティブアプリケーションの移植性を向上させることができる。また、第2管理装置により、定義されたアプリケーション能力をサポートする候補クラウドプラットフォームを表すための能力境界を決定し、アプリケーションオーケストレーション装置が、能力境界によって、各候補クラウドプラットフォームに対するアプリケーションオーケストレーションポリシーを決定することを支援する。それによって、複数のクラウドプラットフォームの差別化シーンを管理し、アプリケーションオーケストレーションを最適化させる効果を得ることができる。
【0083】
一実施例では、第1管理装置は、能力定義仕様を提供し、能力データベースを用いて各種の能力を維持し、予め設定された複数の能力を提供し、ユーザーが二次開発をロードし、クラウドネイティブコミュニティで定義された能力をインポートする能力を提供する。すべての能力定義は、能力データベースに永続化される。また、クラウドプラットフォームのインスタンスのアクセスに伴い、各クラウドプラットフォームに対して能力発見と能力配信が行われ、本装置は、それと同時に、能力データベースで各能力と管理するクラウドプラットフォームのインスタンスとの対応関係を構築し、各クラウドプラットフォームによってサポートされる能力集合を決定する。本願の実施例では、リモート能力倉庫もサポートしている。オープンソースコミュニティが貢献するさまざまな能力は、能力倉庫に置いてもよい。リモート能力倉庫を配置することで、クラウドネイティブ生態とシームレスに連携することができる。
【0084】
一実施例では、能力定義自体はクラウドプラットフォームのリソース、プラグインなどの各種操作に関連し、一定の複雑性を有する。開発、テスト、配布などのプロセスを考慮する必要がある。K8Sのネットワークフック(Webhook)機構により、能力定義をチェックし、能力定義yamlの正当性をチェックし、能力定義テンプレート言語の正当性を検査し、能力定義依存リソースと基本的なプラグインの満足度を検証することができる。
【0085】
一実施例では、アプリケーションをオーケストレーションする際に、予め設定された能力定義要素を選択することができる。また、選択されたクラウドプラットフォームインスタンスに応じて、さまざまな拡張された能力定義が能力境界を利用して使用されてもよい。さらに、能力境界を無視して、アプリケーションオーケストレーション装置によって管理されるすべての能力定義を使用して、アプリケーションがインスタンス化されるまで、能力境界に作用してもよい。
【0086】
本願の実施例によって生成されたアプリケーション定義は、インスタンス化実行のために、HelmによってCHARTパッケージにパッケージ化される。
【0087】
アプリケーションインスタンス化の際には、能力定義のアクションを実行する必要がある。本願の実施例で定義された能力は、K8S CRDによって提供され、対応する能力CRDは、能力オペレータによって実行される必要がある。能力オペレータは、関連する論理を実現するために対応するコントローラ(Controller)を提供する必要がある。能力オペレータは、負荷能力の場合はCRDで定義された能力を能力参照定義に従ってクラウドプラットフォームネイティブリソース又はカスタムリソースに変換し、特性能力の場合は能力テンプレート定義に従って対応する論理を実行し、さらに、クラウドプラットフォームの他のOperator又はコントローラ(Controller)や基本的なプラグインによる支援を受けることもある。
【0088】
本願の実施例は、ブループリントインスタンス化アプリケーションをオーケストレーションする際に、能力境界によって、そのアプリケーションをサポートするクラウドプラットフォームのインスタンスを選択してもよい。条件が満たされた場合、このアプリケーションに必要な能力をターゲットクラウドプラットフォームに積極的に配信してもよく、それによって、クラウドプラットフォームに能力を付与し、アプリケーション実行条件を創造する。最終的な目標は、定義されたアプリケーションがクラウドプラットフォームで正常にインスタンス化できることを確保し、異なるクラウドプラットフォーム間でのアプリケーションの移植性を保障することである。
【0089】
なお、本願の実施例のクラウドプラットフォーム管理アーキテクチャは、少なくとも1つのアプリケーション能力に対応する少なくとも1つの能力テンプレートを記憶するように構成された能力データベースをさらに含む。能力データベースは、第1管理装置を介してアプリケーションオーケストレーション装置に接続される。アプリケーションオーケストレーション装置はまた、オープンアプリケーションモデルに基づいて、能力テンプレートに対応するプログラム可能なアプリケーション能力オーケストレーション要素を生成するように構成される。
【0090】
図6に示すように、図6は、図5のクラウドプラットフォーム管理方法のステップS300の具体的なフローチャートである。
【0091】
図6の例では、ステップS300は、ステップS310を含むが、これに限定されるものではない。
【0092】
ステップS310:能力境界によって、各候補クラウドプラットフォームからアプリケーションインスタンス化を実行するためのターゲットクラウドプラットフォームを決定する。
【0093】
一実施例では、アプリケーションオーケストレーション装置は、その能力境界がクラウドプラットフォーム全集合であるので、オーケストレーションの際に、すべての予め設定された能力を提示してもよい。また、この定義アプリケーションが後続して実行される1つ又は複数のクラウドプラットフォームインスタンスをオーケストレーションの際に明確にすることができれば、これらのクラウドプラットフォームインスタンスの能力の和集合をアプリケーション定義者に提供してもよい。それによって、定義アプリケーションが後続してターゲットクラウドプラットフォームで正常にインスタンス化されるようにすることができる。
【0094】
さらに、一部のクラウドプラットフォームは後から本第1管理装置の管理に組み入れられることがあるので、各クラウドプラットフォームの能力集合の違いに着目してアプリケーションをオーケストレーションすることはなくてもよい。また、第1管理装置に組み入れられた後に、クラウドプラットフォームのインスタンスに各種の能力を積極的にインストールしてもよい。したがって、第1管理装置が管理する能力のタイプを、ユーザーが必要に応じて全て選択してもよい。インスタンス化の際に、候補ターゲットクラウドプラットフォームインスタンスを能力境界によってフィルタリングしてもよい。本アプリケーションをサポートするために必要なすべての能力に対応する能力境界のクラウドプラットフォームインスタンスのみを、フィルタリングしてユーザーに選択させる。これにより、アプリケーションがターゲットクラウドプラットフォームで正常にインスタンス化されることを効果的に確保することもできる。
【0095】
一実施例では、第1管理装置は、クラウドプラットフォームのインスタンスの能力集合を拡張し、ある能力の能力境界を拡張してもよい。対応する能力定義パッケージ及びその能力定義パッケージが依存するプラグインパッケージが第1管理装置に存在する場合、対応するクラウドプラットフォームに能力定義パッケージを配信してインストールする。これにより、クラウドプラットフォームが本来サポートしていないアプリケーション展開をサポートできるようにクラウドプラットフォームに能力を付与してもよい。
【0096】
図7に示すように、図7は、本願の他の実施例によるクラウドプラットフォーム管理方法のフローチャートである。
【0097】
図7の例では、本願の実施例に係るクラウドプラットフォーム管理方法は、ステップS400をさらに含むが、これに限定されるものではない。
【0098】
ステップS400:第1管理装置がターゲットクラウドプラットフォーム及びアプリケーション能力によって、ターゲットクラウドプラットフォームによってサポートされるターゲットアプリケーション能力を決定するように第1管理装置を制御する。
【0099】
図8の例では、本願の実施例に係るクラウドプラットフォーム管理方法は、ステップS410をさらに含むが、これに限定されるものではない。
【0100】
ステップS410:第1管理装置がターゲットアプリケーション能力に対応するターゲット能力定義パケットをターゲットクラウドプラットフォームに送信するように第1管理装置を制御する。
【0101】
一実施例では、クラウドプラットフォームが第1管理装置の管理範囲に組み入れられている場合、第1管理装置は、そのクラウドプラットフォームによってサポートされる能力集合を積極的に発見する。能力はオープンアプリケーションモデル仕様で定義されているため、K8Sネイティブインタフェースを介してすべての負荷定義や特性定義のインスタンスを問い合わせることができ、対応する能力記述や動作範囲などの詳細な情報を得ることができる。
【0102】
第1管理装置が発見した能力は、第1管理装置のデータベースに永続化され、クラウドプラットフォームと能力との対応関係を記憶する対応テーブルが形成される。最終的には、第1管理装置が管理する複数のクラウドプラットフォームのそれぞれの能力集合が形成される。
【0103】
なお、クラウドプラットフォームのさまざまなインスタンスについて、その能力集合は同じであっても異なっていてもよい。
【0104】
一実施例では、第1管理装置は、オープンアプリケーションモデル仕様で定義された能力タイプをサポートし、また、事前定義された能力集合をサポートする。このような事前定義された能力は、K8Sによって事前定義されたリソースタイプに対応する能力のように、ほとんどのクラウドプラットフォームによってデフォルトでサポートされ得る。
【0105】
クラウドプラットフォームが第1管理装置の管理に組み入れられている場合、まず、そのクラウドプラットフォームに、能力オペレータが存在することを確認する。存在しない場合、能力オペレータをクラウドネイティブで配信する必要がある。第1管理装置は、クラウドプラットフォームにアクセスする際に、予め設定された各種の能力をターゲットクラウドプラットフォームに配信し、それによって、ターゲットクラウドプラットフォームが対応する能力を有する。能力定義はK8S CRDなので、これらの能力定義はK8Sネイティブで配信できる。
【0106】
また、プラットフォーム開発者は、その後、オープンアプリケーションモデル仕様により、より多くの能力を定義し、第1管理装置の管理に組み入れ、対応するクラウドプラットフォームに指定して配信してもよい。クラウドネイティブコミュニティにおけるK8S生態でのオープンソースの各種の能力を利用して、第1管理装置にインポートすることで、第1管理装置が管理する能力を絶えずに拡張することも可能である。さらに、既存の能力定義が変更された場合、その能力定義を再配信し、ターゲットクラウドプラットフォームにおいても対応して更新してもよい。
【0107】
なお、アプリケーション定義に必要な能力定義パッケージとその依存するプラグインパッケージが本装置にすでに存在していれば、アプリケーションインスタンス化の際に、必要に応じて能力定義パッケージをターゲットクラウドプラットフォームシステムに配信してローディングしてもよい。
【0108】
図9に示すように、図9は、図5のクラウドプラットフォーム管理方法のステップS200の具体的なフローチャートである。
【0109】
図9の例では、ステップS200は、ステップS210を含むが、これに限定されるものではない。
【0110】
ステップS210:第2管理装置が第1管理装置からのアプリケーション能力の動作状況をチェックし、第2管理装置がアプリケーション能力の動作状況に応じてアプリケーション能力を調整し、第2管理装置が調整されたアプリケーション能力によって、調整されたアプリケーション能力に対応する能力境界を決定するように第2管理装置を制御する。
【0111】
一実施例では、能力テストサンドボックスによって、オンラインになった直後の能力をシミュレーションしてテストし、テスト出力の分析を支援して、能力開発がユーザーのニーズに合ったものであることを確保する。能力サンドボックスは能力シミュレーション実行環境であり、生産環境と隔離され、多くの能力関連論理実行に対してシミュレーション方式を採用し、真実のリソース操作動作を実行しておらず、能力が実際に実行される時の効果をある程度でシミュレーションすることができ、そして、出力によって能力開発者が論理の正確性を判定することを支援する。サンドボックス事前テストに合格すると、能力を正式なクラウド環境にロードしてサービスを提供できるようになる。また、能力定義アップグレードシーンではwebhookでテスト能力を提供してもよい。最初に一部の能力作成要求を新バージョンの能力定義実装に導き、実行効果に応じて古いバージョンを新バージョンに置き換えていく。
【0112】
なお、本実施例におけるクラウドプラットフォーム管理方法は、上記実施例におけるクラウドプラットフォーム管理アーキテクチャと同一の発明思想に属するため、本実施例におけるクラウドプラットフォーム管理方法の具体的な実施形態は、上記実施例におけるクラウドプラットフォーム管理アーキテクチャの具体的な実施例を参照することができ、上記実施例におけるクラウドプラットフォーム管理アーキテクチャの全ての改良を有するが、ここでは説明しない。
【0113】
本願の実施例に係るクラウドプラットフォーム管理方法は、ステップS420をさらに含むが、これに限定されるものではない。
【0114】
ステップS420:オープンアプリケーションモデルに基づいて、能力テンプレートに対応するプログラム可能なアプリケーション能力オーケストレーション要素を生成する。
【0115】
一実施例では、オープンアプリケーションモデルによってアプリケーション能力オーケストレーション要素を生成することによって、ユーザーがアプリケーション能力オーケストレーション要素を柔軟に使用することができ、アプリケーションオーケストレーションの効果をさらに最適化させることができる。
【0116】
なお、本実施例におけるクラウドプラットフォーム管理方法は、上記実施例におけるクラウドプラットフォーム管理アーキテクチャと同一の発明思想に属するため、本実施例におけるクラウドプラットフォーム管理方法の具体的な実施形態は、上記実施例におけるクラウドプラットフォーム管理アーキテクチャの具体的な実施例を参照することができ、上記実施例におけるクラウドプラットフォーム管理アーキテクチャの全ての改良を有するが、ここでは説明しない。
【0117】
例4
図10を参照すると、図10は、本願の実施例に係るクラウドプラットフォーム管理アーキテクチャがクラウドプラットフォームにアクセスする具体的なフローチャートである。
【0118】
図10の例では、本願の実施例に係るクラウドプラットフォーム管理アーキテクチャがクラウドプラットフォームにアクセスする具体的なプロセスは、以下のステップを含む。
ステップS500:クラウドプラットフォームインスタンスへのアクセス操作を開始させる。
ステップS510:Helmクライアントを介して能力オペレータを配信し、能力オペレータをターゲットクラウドプラットフォームにローディングする。
ステップS520:能力オペレータのローディングに成功したか否かを判定し、そうであれば、ステップS530に進み、そうでなければ、ステップS521を実行する。
ステップS521:クラウドプラットフォームへのアクセスに失敗したことを通知する。
ステップS530:Helmクライアントを介してプレハブ能力テンプレートChartのローディングを配信するとともに、プレハブ能力テンプレートに必要な各種プラグインをローディングする。
ステップS540:プレハブ能力のローディングが成功したか否かを判定し、そうであれば、ステップS550に進み、そうでなければ、ステップS541を実行する。
ステップS541:能力オペレータをアンインストールし、クラウドプラットフォームへのアクセスに失敗したことを通知する。
ステップS550:能力発見により、この新しくアクセスされるクラウドプラットフォームによってサポートされている能力を発見する。
ステップS560:このクラウドプラットフォームによってサポートされている能力集合データを能力定義データベースに構築する。
ステップS570:能力管理境界を更新する。
【0119】
例5
図11を参照すると、図11は、本願の実施例に係るクラウドプラットフォーム管理アーキテクチャが下位クラウドプラットフォームに能力定義を配信する具体的なフローチャートである。
【0120】
図11の例では、本願の実施例に係るクラウドプラットフォーム管理アーキテクチャが下位クラウドプラットフォームに能力定義を配信する具体的なプロセスは、以下のステップを含む。
【0121】
ステップS600:能力マネージャは、能力定義配信操作を開始させる。
ステップS601:ターゲットクラウドプラットフォームに現在の能力定義が存在するか否かを判定し、そうであれば、ステップS610に進み、そうでなければ、次のステップに進む。
ステップS602:自装置に現在の能力定義パッケージが存在するか否かを判定し、そうであれば、能力定義パッケージをターゲットプラットフォームに配信し、次のステップに進み、そうでなければ、ステップS609に進む。
ステップS603:ターゲットクラウドプラットフォームの能力オペレータは、能力定義テンプレートをチェックし、チェックに合格したか否かを判定し、そうであれば、次のステップに進み、そうでなければ、ステップS609に進む。
ステップS604:ターゲットクラウドプラットフォームの能力オペレータは、能力定義テンプレートを解析し、初期化アクションinitAction定義が存在するか否かを判定し、そうであれば、次のステップに進み、そうでなければ、ステップS609に進む。
ステップS605:ターゲットクラウドプラットフォームの能力オペレータは、能力定義内のinitAction記述に従って、能力が依存するプラグインをクラウドプラットフォームにローディングする。
ステップS606:ターゲットクラウドプラットフォームは、能力定義をサンドボックスにローディングするとともに、能力サンドボックステストを実行する。
ステップS607:能力定義がサンドボックステストに合格したか否かを判定し、そうであれば、次のステップに進み、そうでなければ、ステップS609に進む。
ステップS608:ターゲットプラットフォームは、能力の配信に成功したことをフィードバックしながら、能力定義をローディングする。
ステップS609:能力定義のローディングに失敗したことを通知し、その理由をフィードバックする。
ステップS610:配信能力が成功したことを通知する。
【0122】
例6
図12に示すように、図12は、本願の実施例に係るクラウドプラットフォーム管理アーキテクチャがアプレケーションインスタンス化を行う具体的なフローチャートである。
【0123】
図12の例では、本願の実施例に係るクラウドプラットフォーム管理アーキテクチャがアプレケーションインスタンス化を行う具体的なプロセスは、以下のステップを含む。
【0124】
ステップS700:アプリケーションインスタンス化操作を実行する。
ステップS701:アプリケーションパッケージをオーケストレーションする際にクラウドプラットフォームインスタンスが選択されているか否かを判定し、そうであれば、ステップS710に進み、そうでなければ、次のステップに進む。
ステップS702:該アプリケーションパッケージ内のアプリケーション定義が使用する能力定義要素を全て解析し、能力境界によってこのアプリケーションをサポートするクラウドプラットフォームインスタンスを得る。
ステップS703:クラウドプラットフォームインスタンスに基づいて、このアプリケーションを展開可能なクラウドプラットフォームがあるか否かを判定し、そうであれば、ステップS710に進み、そうでなければ、次のステップに進む。
ステップS704:このアプリケーションパッケージをさらに展開するために、「Advanced」能力が選択されたか否かを判定し、そうであれば、次のステップに進み、そうでなければ、ステップS711に進む。
ステップS705:アクセスされたクラウドプラットフォームのすべてのインスタンスを表示する。
ステップS706:このアプリケーションパッケージを展開するクラウドプラットフォームのインスタンスを特定する。
ステップS707:能力境界によって、ターゲットクラウドプラットフォームがこのアプリケーションを展開するために不足している能力集合を算出し、不足している能力集合に対応する能力インストールパッケージが存在するか否かを判定し、そうであれば、次のステップに進み、そうでなければ、ステップS711に進む。
ステップS708:対応する能力インストールパッケージをターゲットクラウドプラットフォームに配信して能力インストールを実行し、インストールが成功したか否かを判定し、そうであれば、次のステップに進み、そうでなければ、ステップS711に進む。
ステップS709:ターゲットクラウドプラットフォームでアプリケーションインスタンス化アクションを実行し、インスタンス化が成功したか否かを判定し、インスタンス化に失敗した場合、ステップS711に進むように提示する。
ステップS710:アプリケーションがサポートするクラウドプラットフォームのリストをユーザーに提示して選択させる。
ステップS711:アプリケーションインスタンス化に失敗したことを提示する。
【0125】
なお、本実施例におけるクラウドプラットフォーム管理方法は、上記実施例におけるクラウドプラットフォーム管理アーキテクチャと同一の発明思想に属するため、本実施例におけるクラウドプラットフォーム管理方法の具体的な実施形態は、上記実施例におけるクラウドプラットフォーム管理アーキテクチャの具体的な実施例を参照することができ、上記実施例におけるクラウドプラットフォーム管理アーキテクチャの全ての改良を有するが、ここでは説明しない。
【0126】
本願の一実施例はまた、クラウドプラットフォーム管理装置を提供する。この管理装置は、図1に示す実施例におけるクラウドプラットフォーム管理アーキテクチャ、又は図2に示す実施例におけるクラウドプラットフォーム管理アーキテクチャを含む。
【0127】
ここで、上記実施例のクラウドプラットフォーム管理方法を実現するために必要な非一時的なソフトウェアプログラム及び命令は、メモリに記憶されており、プロセッサにより実行されると、上記実施例のクラウドプラットフォーム管理方法、例えば、上記の図5の方法ステップS100~ステップS300、図6の方法ステップS310、図7の方法ステップS400、図8の方法ステップS410、図9の方法ステップS210、図10の方法ステップS500~ステップS570、図11の方法ステップS600~ステップS610、図12の方法ステップS700~ステップS711、又は方法ステップS420を実行する。
【0128】
なお、本実施例に係るクラウドプラットフォーム管理装置は、図1に示す実施例のクラウドプラットフォーム管理アーキテクチャや図2に示す実施例のクラウドプラットフォーム管理アーキテクチャにも適用可能である。これらの実施例はいずれも同一の発明思想に属するものであるので、これらの実施例は同一の実現原理及び技術的効果を有し、ここでは詳述しない。
【0129】
上記の装置の実施例は単なる一例であり、分離された構成要素として説明されたユニットは、物理的に分離されていてもよいし、そうでなくてもよい。すなわち、1つの場所に配置されていてもよいし、複数のネットワークユニットに分散されていてもよい。これらのモジュールの一部又は全部は、実際の必要に応じて、本実施例の目的を達成するために選択されてもよい。
【0130】
さらに、本願の一実施例はまた、コンピュータ読み取り可能な記憶媒体を提供する。このコンピュータ読み取り可能な記憶媒体は、コンピュータ実行可能命令を記憶している。このコンピュータ実行可能命令は、プロセッサやコントローラ、例えば上記機器の実施例におけるプロセッサによって実行されると、上記実施例におけるクラウドプラットフォーム管理方法、例えば、上記図5の方法ステップS100~ステップS300、図6の方法ステップS310、図7の方法ステップS400、図8の方法ステップS410、図9のステップS210、図10の方法ステップS500~ステップS570、図11の方法ステップS600~ステップS610、図12の方法ステップS700~ステップS711、又は方法ステップS420を上記プロセッサに実行させることができる。
【0131】
本願の実施例は、クラウドプラットフォーム管理アーキテクチャを含む。クラウドプラットフォーム管理アーキテクチャは、オープンアプリケーションモデルに基づいて、少なくとも1つのアプリケーション能力を定義するように構成された第1管理装置であって、アプリケーション能力それぞれは、1つのクラウドプラットフォームによってサポートされる負荷又は負荷に作用する運用保守特性を表すためのものである前記第1管理装置と、第1管理装置に接続され、第1管理装置からのアプリケーション能力によって、アプリケーション能力に対応する能力境界を決定するように構成された第2管理装置であって、能力境界は、アプリケーション能力をサポートする各候補クラウドプラットフォームを表すためのものである前記第2管理装置と、第1管理装置に接続され、能力境界によって、各候補クラウドプラットフォームに対するアプリケーションオーケストレーション・インスタンス化ポリシーを決定するように構成されたアプリケーションオーケストレーション・インスタンス化装置と、を含む。本願の実施例による形態によれば、オープンアプリケーションモデルの具体的なシーンにおいて、第1管理装置により、複数のアプリケーション能力を定義するので、クラウドネイティブアプリケーションの能力抽象化を実現することができる。それによって、各クラウドプラットフォームの差別化シーンを整合的に表すことができ、各クラウドプラットフォーム間でのクラウドネイティブアプリケーションの移植性を向上させることができる。また、第2管理装置により、定義されたアプリケーション能力をサポートする候補クラウドプラットフォームを表すための能力境界を決定し、アプリケーションオーケストレーション・インスタンス化装置が、能力境界によって、各候補クラウドプラットフォームに対するアプリケーションオーケストレーション・インスタンス化ポリシーを決定することを支援する。それによって、複数のクラウドプラットフォームの差別化シーンを管理し、アプリケーションオーケストレーション・インスタンス化を最適化する効果を得ることができる。
【0132】
上記で開示された方法におけるステップの全部又は一部、システムは、ソフトウェア、ファームウェア、ハードウェア、及びそれらの適切な組み合わせとして実装されてもよい。物理的構成要素の一部又はすべては、中央処理装置、デジタル信号処理装置、マイクロプロセッサなどのプロセッサによって実行されるソフトウェアとして、又はハードウェアとして、又は特定用途向け集積回路などの集積回路として実装されてもよい。このようなソフトウェアは、コンピュータ記憶媒体(又は非一時的媒体)及び通信媒体(又は一時的媒体)を含んでもよいコンピュータ読み取り可能な媒体上に配布されてもよい。コンピュータ記憶媒体は、情報(例えば、コンピュータ読み取り可能な命令、データ構造、プログラムモジュール、又は他のデータ)を記憶するための任意の方法又は技術において実施される、揮発性及び不揮発性の、取り外し可能な、及び取り外し不可能な媒体を含む。コンピュータ記憶媒体は、RAM、ROM、EEPROM、フラッシュメモリもしくは他のメモリ技術、CD-ROM、デジタル多用途ディスク(DVD)もしくは他の光ディスク記憶装置、磁気カートリッジ、磁気テープ、磁気ディスク記憶装置もしくは他の磁気記憶装置、又は所望の情報を記憶するために使用することができ、コンピュータによってアクセスすることができる他の任意の媒体を含むが、これらに限定されるものではない。さらに、通信媒体は、通常、コンピュータ読み取り可能な命令、データ構造、プログラムモジュール、又は搬送波又は他の送信機構のような変調データ信号中の他のデータを含み、任意の情報配信媒体を含み得る。
【0133】
以上は、本願のいくつかの実施形態の具体的な説明であるが、本願は上記の実施形態に限定されるものではなく、当業者は、本願の精神に反することなく、様々な均等な変形又は置換を行うことができ、これらの均等な変形又は置換は、本願の特許請求の範囲によって限定される範囲内に含まれるものとする。
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
【手続補正書】
【提出日】2024-01-29
【手続補正1】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
オープンアプリケーションモデルに基づいて、少なくとも1つのアプリケーション能力を定義するように構成された第1管理装置であって、前記アプリケーション能力それぞれは、1つのクラウドプラットフォームによってサポートされる負荷又は前記負荷に作用する運用保守特性を表すためのものである前記第1管理装置と、
前記第1管理装置に接続され、前記第1管理装置からの前記アプリケーション能力によって、前記アプリケーション能力に対応する能力境界を決定するように構成された第2管理装置であって、前記能力境界は、前記アプリケーション能力をサポートする各候補クラウドプラットフォームを表すためのものである前記第2管理装置と、
前記第1管理装置に接続され、前記能力境界によって、各前記候補クラウドプラットフォームに対するアプリケーションオーケストレーション・インスタンス化ポリシーを決定するように構成されたアプリケーションオーケストレーション・インスタンス化装置と、を含む、クラウドプラットフォーム管理アーキテクチャ。
【請求項2】
前記アプリケーションオーケストレーション・インスタンス化装置は、前記能力境界によって、各前記候補クラウドプラットフォームから、アプリケーションオーケストレーション・インスタンス化を実行するためのターゲットクラウドプラットフォームを決定するように構成される、請求項1に記載のクラウドプラットフォーム管理アーキテクチャ。
【請求項3】
前記第1管理装置はさらに、前記ターゲットクラウドプラットフォーム及び前記アプリケーション能力によって、前記ターゲットクラウドプラットフォームによってサポートされるターゲットアプリケーション能力を決定するように構成される、請求項2に記載のクラウドプラットフォーム管理アーキテクチャ。
【請求項4】
前記第1管理装置はさらに、前記ターゲットアプリケーション能力に対応するターゲット能力定義パケットを前記ターゲットクラウドプラットフォームに送信するように構成される、請求項3に記載のクラウドプラットフォーム管理アーキテクチャ。
【請求項5】
前記第2管理装置は、前記第1管理装置からの前記アプリケーション能力の動作状況をチェックし、前記アプリケーション能力の前記動作状況に応じて前記アプリケーション能力を調整するように構成されるとともに、調整された前記アプリケーション能力によって、調整された前記アプリケーション能力に対応する前記能力境界を決定するように構成される、請求項1~4のいずれか1項に記載のクラウドプラットフォーム管理アーキテクチャ。
【請求項6】
少なくとも1つの前記アプリケーション能力に対応する少なくとも1つの能力テンプレートを記憶する能力データベースをさらに含み、前記能力データベースは、前記第1管理装置を介して前記アプリケーションオーケストレーション・インスタンス化装置に接続される、請求項1に記載のクラウドプラットフォーム管理アーキテクチャ。
【請求項7】
前記アプリケーションオーケストレーション・インスタンス化装置はさらに、前記オープンアプリケーションモデルに基づいて、前記能力テンプレートに対応するプログラム可能なアプリケーション能力オーケストレーション要素を生成するように構成される、請求項6に記載のクラウドプラットフォーム管理アーキテクチャ。
【請求項8】
クラウドプラットフォーム管理アーキテクチャに適用される、クラウドプラットフォーム管理方法であって、前記クラウドプラットフォーム管理アーキテクチャは、第1管理装置と、第1管理装置に接続された第2管理装置と、を含み、
前記クラウドプラットフォーム管理方法は、
前記第1管理装置がオープンアプリケーションモデルに基づいて、少なくとも1つのアプリケーション能力を定義するように前記第1管理装置を制御するステップであって、前記アプリケーション能力それぞれは、1つのクラウドプラットフォームによってサポートされる負荷又は前記負荷に作用する運用保守特性を表すためのものであるステップと、
前記第2管理装置が前記第1管理装置からの前記アプリケーション能力によって、前記アプリケーション能力に対応する能力境界を決定するように前記第2管理装置を制御するステップであって、前記能力境界は、前記アプリケーション能力をサポートする各候補クラウドプラットフォームを表すためのものであるステップと、
前記能力境界によって、各前記候補クラウドプラットフォームに対するアプリケーションオーケストレーション・インスタンス化ポリシーを決定するステップと、を含む、クラウドプラットフォーム管理方法。
【請求項9】
前記能力境界によって、各前記候補クラウドプラットフォームに対するアプリケーションオーケストレーション・インスタンス化ポリシーを決定する前記ステップは、
前記能力境界によって各前記候補クラウドプラットフォームからアプリケーションオーケストレーション・インスタンス化を実行するためのターゲットクラウドプラットフォームを決定するステップを含む、請求項8に記載のクラウドプラットフォーム管理方法。
【請求項10】
前記能力境界によって、各前記候補クラウドプラットフォームに対するアプリケーションオーケストレーション・インスタンス化ポリシーを決定する前記ステップの後、
前記第1管理装置が前記ターゲットクラウドプラットフォーム及び前記アプリケーション能力によって、前記ターゲットクラウドプラットフォームによってサポートされるターゲットアプリケーション能力を決定するように前記第1管理装置を制御するステップをさらに含む、請求項9に記載のクラウドプラットフォーム管理方法。
【請求項11】
前記第1管理装置が前記ターゲットクラウドプラットフォーム及び前記アプリケーション能力によって、前記ターゲットクラウドプラットフォームによってサポートされるターゲットアプリケーション能力を決定するように前記第1管理装置を制御する前記ステップの後、
前記第1管理装置が前記ターゲットアプリケーション能力に対応するターゲット能力定義パケットを前記ターゲットクラウドプラットフォームに送信するように前記第1管理装置を制御するステップをさらに含む、請求項10に記載のクラウドプラットフォーム管理方法。
【請求項12】
前記第2管理装置が前記第1管理装置からの前記アプリケーション能力によって、前記アプリケーション能力に対応する能力境界を決定するように前記第2管理装置を制御する前記ステップは、
前記第2管理装置が前記第1管理装置からの前記アプリケーション能力の動作状況をチェックし、前記第2管理装置が前記アプリケーション能力の前記動作状況に応じて前記アプリケーション能力を調整し、前記第2管理装置が調整された前記アプリケーション能力によって、調整された前記アプリケーション能力に対応する前記能力境界を決定するように前記第2管理装置を制御するステップをさらに含む、請求項8に記載のクラウドプラットフォーム管理方法。
【請求項13】
前記クラウドプラットフォーム管理アーキテクチャは、少なくとも1つの前記アプリケーション能力に対応する少なくとも1つの能力テンプレートを記憶するように構成された能力データベースをさらに含み、前記能力データベースは、前記第1管理装置を介して前記アプリケーションオーケストレーション・インスタンス化装置に接続され、
前記クラウドプラットフォーム管理方法は、
前記オープンアプリケーションモデルに基づいて、前記能力テンプレートに対応するプログラム可能なアプリケーション能力オーケストレーション要素を生成するステップをさらに含む、請求項8に記載のクラウドプラットフォーム管理方法。
【請求項14】
メモリと、プロセッサと、前記メモリに記憶され、前記プロセッサで動作可能なコンピュータプログラムとを含み、前記プロセッサは、前記コンピュータプログラムを実行すると、請求項8~13のいずれか1項に記載のクラウドプラットフォーム管理方法を実現する、クラウドプラットフォーム管理装置。
【請求項15】
プロセッサによって実行すると、請求項8~13のいずれか1項に記載のクラウドプラットフォーム管理方法を実するためのコンピュータ実行可能命令を記憶したコンピュータ読み取り可能な記憶媒体。
【手続補正2】
【補正対象書類名】明細書
【補正対象項目名】0009
【補正方法】変更
【補正の内容】
【0009】
第4態様では、本願の実施例はまた、プロセッサによって実行すると、上記の第2態様のクラウドプラットフォーム管理方法を実するためのコンピュータ実行可能命令を記憶したコンピュータ読み取り可能な記憶媒体を提供する。
【国際調査報告】