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

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

▶ ホアウェイ クラウド コンピューティング テクノロジーズ カンパニー リミテッドの特許一覧

特許7455980インスタンス配置方法、インスタンス管理ノード、コンピューティングノード及びコンピューティングデバイス
<>
  • 特許-インスタンス配置方法、インスタンス管理ノード、コンピューティングノード及びコンピューティングデバイス 図1
  • 特許-インスタンス配置方法、インスタンス管理ノード、コンピューティングノード及びコンピューティングデバイス 図2
  • 特許-インスタンス配置方法、インスタンス管理ノード、コンピューティングノード及びコンピューティングデバイス 図3
  • 特許-インスタンス配置方法、インスタンス管理ノード、コンピューティングノード及びコンピューティングデバイス 図4
  • 特許-インスタンス配置方法、インスタンス管理ノード、コンピューティングノード及びコンピューティングデバイス 図5
  • 特許-インスタンス配置方法、インスタンス管理ノード、コンピューティングノード及びコンピューティングデバイス 図6
  • 特許-インスタンス配置方法、インスタンス管理ノード、コンピューティングノード及びコンピューティングデバイス 図7
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-03-15
(45)【発行日】2024-03-26
(54)【発明の名称】インスタンス配置方法、インスタンス管理ノード、コンピューティングノード及びコンピューティングデバイス
(51)【国際特許分類】
   G06F 9/50 20060101AFI20240318BHJP
   G06F 9/455 20180101ALI20240318BHJP
【FI】
G06F9/50 120A
G06F9/455 150
【請求項の数】 18
(21)【出願番号】P 2022540552
(86)(22)【出願日】2020-09-19
(65)【公表番号】
(43)【公表日】2023-03-06
(86)【国際出願番号】 CN2020116330
(87)【国際公開番号】W WO2021135412
(87)【国際公開日】2021-07-08
【審査請求日】2022-08-09
(31)【優先権主張番号】201911418980.6
(32)【優先日】2019-12-31
(33)【優先権主張国・地域又は機関】CN
(73)【特許権者】
【識別番号】521486206
【氏名又は名称】ホアウェイ クラウド コンピューティング テクノロジーズ カンパニー リミテッド
【氏名又は名称原語表記】Huawei Cloud Computing Technologies Co., Ltd.
【住所又は居所原語表記】Huawei Cloud Data Center,Jiaoxinggong Road,Qianzhong Avenue, Gui’an New District, Guizhou,550025,China
(74)【代理人】
【識別番号】100110364
【弁理士】
【氏名又は名称】実広 信哉
(74)【代理人】
【識別番号】100133569
【弁理士】
【氏名又は名称】野村 進
(72)【発明者】
【氏名】梁 ▲標▼
(72)【発明者】
【氏名】▲陳▼ ▲現▼
【審査官】田中 幸雄
(56)【参考文献】
【文献】特表2014-506367(JP,A)
【文献】ブレンダン・バーンズ著 松浦隼人訳,5章 レプリカがロードバランスされたサービス,分散システムデザインパターン -コンテナを使ったスケーラブルなサービスの設計,初版,日本,株式会社オライリー・ジャパン,2019年04月19日,53~70ページ
(58)【調査した分野】(Int.Cl.,DB名)
G06F 9/50
G06F 9/455
(57)【特許請求の範囲】
【請求項1】
インスタンス配置方法であって、
インスタンス管理ノードによって、サービスインスタンスを作成するための要求を受信するステップと、
前記インスタンス管理ノードによって、前記サービスインスタンスに対応するキャッシュ構成を取得するステップと、
前記インスタンス管理ノードによって、第1のコンピューティングノード上に前記サービスインスタンスを作成するステップであって、前記サービスインスタンスが、前記キャッシュ構成を有するキャッシュインスタンスを使用する、ステップと
を含む方法であって、
前記方法が、
前記インスタンス管理ノードによって、第2のコンピューティングノード上に前記キャッシュインスタンスを作成するステップ
を更に含む、
方法。
【請求項2】
前記キャッシュ構成が、以下の構成、すなわち、
キャッシュサイズ、
キャッシュ媒体、
キャッシュライトポリシー、及び
キャッシュアルゴリズム
の少なくとも1つを含む、請求項1に記載の方法。
【請求項3】
前記サービスインスタンスがコンテナである、請求項1または2に記載の方法。
【請求項4】
インスタンス配置方法であって、
インスタンス管理ノードによって、サービスインスタンスを作成するための要求を受信するステップと、
前記インスタンス管理ノードによって、前記サービスインスタンスに対応するキャッシュ構成を取得するステップと、
前記インスタンス管理ノードによって、第1のコンピューティングノード上に前記サービスインスタンスを作成するステップであって、前記サービスインスタンスが、前記キャッシュ構成を有するキャッシュインスタンスを使用する、ステップと
を含む方法であって、
前記方法が、
前記インスタンス管理ノードによって、複数のコンピューティングノードから前記キャッシュ構成を満たすコンピューティングノードを選択するステップであって、前記選択されたコンピューティングノードが前記キャッシュインスタンスを作成するために使用される、ステップ
を更に含む、
方法。
【請求項5】
前記キャッシュ構成が、以下の構成、すなわち、
キャッシュサイズ、
キャッシュ媒体、
キャッシュライトポリシー、及び
キャッシュアルゴリズム
の少なくとも1つを含む、請求項4に記載の方法。
【請求項6】
前記サービスインスタンスがコンテナである、請求項4または5に記載の方法。
【請求項7】
システムであって、前記システムが、
複数のコンピューティングノードと、サービスインスタンスを作成するための要求を受信し、前記サービスインスタンスに対応するキャッシュ構成を取得し、前記複数のコンピューティングノードのうちの第1のコンピューティングノード上に前記サービスインスタンスを作成し、前記サービスインスタンスが、前記キャッシュ構成を有するキャッシュインスタンスを使用するように構成されたインスタンス管理ノードとを含む、システムであって、
前記インスタンス管理ノードが、前記複数のコンピューティングノードの第2のコンピューティングノード上に前記キャッシュインスタンスを作成するように更に構成される、
システム。
【請求項8】
前記キャッシュ構成が、以下の構成、すなわち、
キャッシュサイズ、
キャッシュ媒体、
キャッシュライトポリシー、及び
キャッシュアルゴリズム
の少なくとも1つを含む、請求項7に記載のシステム。
【請求項9】
前記サービスインスタンスがコンテナである、請求項7または8に記載のシステム。
【請求項10】
システムであって、前記システムが、
複数のコンピューティングノードと、サービスインスタンスを作成するための要求を受信し、前記サービスインスタンスに対応するキャッシュ構成を取得し、前記複数のコンピューティングノードのうちの第1のコンピューティングノード上に前記サービスインスタンスを作成し、前記サービスインスタンスが、前記キャッシュ構成を有するキャッシュインスタンスを使用するように構成されたインスタンス管理ノードとを含む、システムであって、
前記インスタンス管理ノードが、前記複数のコンピューティングノードから前記キャッシュ構成を満たすコンピューティングノードを選択し、前記選択されたコンピューティングノードが前記キャッシュインスタンスを作成するために使用されるように更に構成される、
システム。
【請求項11】
前記キャッシュ構成が、以下の構成、すなわち、
キャッシュサイズ、
キャッシュ媒体、
キャッシュライトポリシー、及び
キャッシュアルゴリズム
の少なくとも1つを含む、請求項10に記載のシステム。
【請求項12】
前記サービスインスタンスがコンテナである、請求項10または11に記載のシステム。
【請求項13】
プロセッサとメモリとを含むコンピューティングデバイスであって、
前記メモリが、コンピュータ命令を記憶するように構成され、
前記プロセッサが、前記コンピューティングデバイスが、
サービスインスタンスを作成するための要求を受信し、前記サービスインスタンスに対応するキャッシュ構成を取得し、第1のコンピューティングノード上に前記サービスインスタンスを作成し、前記サービスインスタンスが、前記キャッシュ構成を有するキャッシュインスタンスを使用するように
構成されるインスタンス管理ノードとして実施されるように、前記メモリに記憶されたコンピュータ命令を実行するように構成される、コンピューティングデバイスであって、
前記インスタンス管理ノードが、第2のコンピューティングノード上に前記キャッシュインスタンスを作成するように更に構成される、
コンピューティングデバイス。
【請求項14】
前記キャッシュ構成が、以下の構成、すなわち、
キャッシュサイズ、
キャッシュ媒体、
キャッシュライトポリシー、及び
キャッシュアルゴリズム
の少なくとも1つを含む、請求項13に記載のコンピューティングデバイス。
【請求項15】
前記サービスインスタンスがコンテナである、請求項13または14に記載のコンピューティングデバイス。
【請求項16】
プロセッサとメモリとを含むコンピューティングデバイスであって、
前記メモリが、コンピュータ命令を記憶するように構成され、
前記プロセッサが、前記コンピューティングデバイスが、
サービスインスタンスを作成するための要求を受信し、前記サービスインスタンスに対応するキャッシュ構成を取得し、第1のコンピューティングノード上に前記サービスインスタンスを作成し、前記サービスインスタンスが、前記キャッシュ構成を有するキャッシュインスタンスを使用するように
構成されるインスタンス管理ノードとして実施されるように、前記メモリに記憶されたコンピュータ命令を実行するように構成される、コンピューティングデバイスであって、
前記インスタンス管理ノードが、複数のコンピューティングノードから前記キャッシュ構成を満たすコンピューティングノードを選択するように更に構成され、前記選択されたコンピューティングノードが前記キャッシュインスタンスを作成するために使用される
コンピューティングデバイス。
【請求項17】
前記キャッシュ構成が、以下の構成、すなわち、
キャッシュサイズ、
キャッシュ媒体、
キャッシュライトポリシー、及び
キャッシュアルゴリズム
の少なくとも1つを含む、請求項16に記載のコンピューティングデバイス。
【請求項18】
前記サービスインスタンスがコンテナである、請求項16または17に記載のコンピューティングデバイス。
【発明の詳細な説明】
【技術分野】
【0001】
本出願はデータベース分野に関し、特に、インスタンス配置方法、インスタンス管理ノード、コンピューティングノード、コンピューティングデバイス、コンピュータ可読記憶媒体、及びコンピュータプログラム製品に関する。
【背景技術】
【0002】
図1に示されるように、キャッシュインスタンス11は、コンピューティングノード11上に予め手動で作成される。その後、テナントは、コンテナ管理ノードを使用してコンピューティングノード11上にサービスコンテナ12を作成するように指定することができる。
【発明の概要】
【課題を解決するための手段】
【0003】
これを考慮して、本出願は、マッチングによってキャッシュインスタンス及びサービスインスタンスを自動的に配置するための、インスタンス配置方法、インスタンス管理ノード、コンピューティングノード、コンピューティングデバイス、コンピュータ可読記憶媒体、及びコンピュータプログラム製品を提供する。
【0004】
第1の態様によれば、インスタンス配置方法が提供される。インスタンス配置方法において、インスタンス管理ノードは、サービスインスタンスを作成するための要求を受信する。インスタンス管理ノードは、サービスインスタンスに対応するキャッシュ構成を取得する。例えば、サービスインスタンスに対応するキャッシュ構成は、サービスインスタンスに一致するキャッシュ構成であり得る。インスタンス管理ノードは、コンピューティングノード上にサービスインスタンスを作成し、キャッシュ構成に基づいてコンピューティングノード上にキャッシュインスタンスを作成する。このようにして、サービスインスタンスは、一致したキャッシュインスタンスを使用することによってサービスを提供することができる。これにより、サービスインスタンスによるサービス提供の効率が向上し、サービス性能が向上する。
【0005】
第1の態様の可能な設計では、本方法において、キャッシュ構成は、以下の構成、すなわち、
キャッシュサイズ、
キャッシュ媒体、
キャッシュライトポリシー、及び
キャッシュアルゴリズム
の少なくとも1つを含む。
【0006】
第1の態様の可能な設計では、本方法において、キャッシュ構成は、サービスインスタンスを作成するための要求で搬送される。例えば、テナント又はテナントのユーザは、要求を使用することによって、サービスインスタンスに一致するキャッシュ構成を指定することができる。
【0007】
このようにして、インスタンス管理ノードは、要求からキャッシュ構成を取得し、キャッシュ構成に基づいて、サービスインスタンス用に手動でカスタマイズされたキャッシュインスタンスを作成することができる。
【0008】
第1の態様の可能な設計では、本方法において、インスタンス管理ノードは、サービスインスタンスに基づいて格納されたキャッシュ構成を取得する。このようにして、サービスインスタンスを作成するとき、インスタンス管理ノードは、サービスインスタンスに一致するキャッシュインスタンスを作成するために、サービスインスタンスに一致するキャッシュ構成を自動的に取得することができる。これにより、サービスインスタンスによるサービス提供の効率が向上し、サービス性能が向上する。
【0009】
第1の態様の可能な設計では、本方法において、インスタンス管理ノードは、複数のコンピューティングノードからサービスインスタンス及びキャッシュインスタンスを満たす1つのコンピューティングノードを選択する。
【0010】
このようにして、インスタンス管理ノードは、十分なリソースを有し、且つその構成がキャッシュ構成を満たすコンピューティングノードを複数のコンピューティングノードから選択する。これにより、リソースが不十分である、又はその構成がキャッシュ構成を満たさないコンピューティングノード上にサービスインスタンス及びキャッシュインスタンスを直接作成することによって引き起こされる作成失敗を回避することができる。
【0011】
第1の態様の可能な設計では、本方法において、インスタンス管理ノードは、別のサービスインスタンスを作成するための要求を受信する。インスタンス管理ノードは、別のサービスインスタンスに対応するキャッシュ構成を取得する。例えば、別のサービスインスタンスに対応するキャッシュ構成は、別のサービスインスタンスに一致するキャッシュ構成であり得る。インスタンス管理ノードは、コンピューティングノード上に別のサービスインスタンスを作成し、別のサービスインスタンスに対応するキャッシュ構成に基づいてコンピューティングノード上にキャッシュインスタンスを作成する。このようにして、別のサービスインスタンスは、一致したキャッシュインスタンスを使用することによってサービスを提供することができる。したがって、異なるキャッシュ構成を有する2つのタイプのキャッシュインスタンスが同じコンピューティングノード上に提供され得、異なるキャッシュ構成を有するキャッシュインスタンスに基づいて異なるサービスインスタンスを実行することによって異なるサービスが提供される。これは、コンピューティングノードリソースの利用を増加させ、異種サービスインスタンスを配置する方法も提供する。
【0012】
第1の態様の可能な設計では、本方法において、異なるキャッシュ構成を有するキャッシュインスタンスは異なるサービスインスタンス専用であり、すなわち、キャッシュインスタンスはサービスインスタンス用にカスタマイズされる。
【0013】
このようにして、サービスインスタンスは、カスタマイズされたキャッシュインスタンスを使用することによってサービスを提供することができる。
【0014】
第1の態様の可能な設計では、本方法において、コンピューティングノードは、インスタンス管理ノードによって送信された要求を受信する。要求はキャッシュ構成を搬送する。
【0015】
コンピューティングノードは、要求で指定されたサービスインスタンスを作成し、キャッシュ構成に基づいて、要求で指定されたキャッシュインスタンスを作成する。キャッシュインスタンスはサービスインスタンスによって使用される。
【0016】
第2の態様によれば、本出願はインスタンス管理ノードを提供する。インスタンス管理ノードは、第1の態様及び第1の態様の可能な設計のいずれか1つによる方法でインスタンス管理ノードによって実施されるステップを実施するように構成された1つ又は複数の機能モジュールを含む。
【0017】
本出願はコンピューティングノードを提供する。コンピューティングノードは、第1の態様及び第1の態様の可能な設計のいずれか1つによる方法でコンピューティングノードによって実施されるステップを実施するように構成された1つ又は複数の機能モジュールを含む。
【0018】
第3の態様によれば、本出願はコンピューティングデバイスを提供する。コンピューティングデバイスは、プロセッサ及びメモリを含む。メモリはコンピュータ命令を記憶する。プロセッサは、コンピューティングデバイスが第1の態様及び第1の態様の可能な設計のいずれか1つによる方法でインスタンス管理ノードによって実施されるステップを実行するか、又はコンピューティングデバイスが第2の態様によるインスタンス管理ノードを実施するように、メモリに記憶されたコンピュータ命令を実行する。あるいは、プロセッサは、コンピューティングデバイスが第1の態様及び第1の態様の可能な設計のいずれか1つによる方法でコンピューティングノードによって実施されるステップを実行するか、又はコンピューティングデバイスが第2の態様によるコンピューティングノードを実施するように、メモリに記憶されたコンピュータ命令を実行する。
【0019】
第4の態様によれば、本出願はコンピュータ可読記憶媒体を提供する。コンピュータ可読記憶媒体は、コンピュータ命令を記憶する。コンピューティングデバイス内のプロセッサがコンピュータ命令を実行すると、コンピューティングデバイスは、第1の態様及び第1の態様の可能な設計のいずれか1つによる方法でインスタンス管理ノードによって実施されるステップを実行するか、又はコンピューティングデバイスは、第2の態様によるインスタンス管理ノードを実施する。あるいは、コンピューティングデバイス内のプロセッサがコンピュータ命令を実行すると、コンピューティングデバイスは、第1の態様及び第1の態様の可能な設計のいずれか1つによる方法でコンピューティングノードによって実施されるステップを実行するか、又はコンピューティングデバイスは、第2の態様によるコンピューティングノードを実施する。
【0020】
第5の態様によれば、本出願はコンピュータプログラム製品を提供する。コンピュータプログラム製品はコンピュータ命令を含み、コンピュータ命令はコンピュータ可読記憶媒体に記憶される。コンピューティングデバイス内のプロセッサは、コンピュータ可読記憶媒体からコンピュータ命令を読み取ることができる。プロセッサは、コンピューティングデバイスが第1の態様及び第1の態様の可能な設計のいずれか1つによる方法でインスタンス管理ノードによって実施されるステップを実行するか、又はコンピューティングデバイスが第2の態様によるインスタンス管理ノードを実施するように、コンピュータ命令を実行する。あるいは、プロセッサは、コンピューティングデバイスが第1の態様及び第1の態様の可能な設計のいずれか1つによる方法でコンピューティングノードによって実施されるステップを実行するか、又はコンピューティングデバイスが第2の態様によるコンピューティングノードを実施するように、コンピュータ命令を実行する。
【図面の簡単な説明】
【0021】
図1】キャッシュインスタンス配置の概略図である。
図2】本出願が適用可能である適用シナリオの概略図である。
図3】本出願が適用可能である適用シナリオの概略図である。
図4】本出願によるインスタンス配置方法の概略フローチャートである。
図5】本出願によるインスタンス管理ノード20の論理構造の概略図である。
図6】本出願によるコンピューティングノードの論理構造の概略図である。
図7】本出願によるコンピューティングデバイス700の構造の概略図である。
【発明を実施するための形態】
【0022】
以下、本出願の添付図面を参照して本出願で提供される技術的解決策を説明する。
【0023】
本出願では、サービスインスタンス用にキャッシュインスタンスをカスタマイズするためにキャッシュ構成が調整され得るように、キャッシュインスタンスはキャッシュ構成に基づいて作成される。
【0024】
キャッシュ構成は、以下の構成、すなわち、
キャッシュサイズ(cache size)、
キャッシュ媒体、
キャッシュライトポリシー、及び
キャッシュアルゴリズム
の少なくとも1つを含む。
【0025】
例えば、キャッシュサイズは、サービスインスタンスのためにキャッシュインスタンスによって提供され得るキャッシュスペースのサイズを指定するために使用されるか、又は、キャッシュサイズは、キャッシュインスタンスのキャッシュスペースのサイズを指定するために使用される。
【0026】
例えば、キャッシュ媒体は、ソリッドステートドライブ(solid-state drive、SSD)、スタティックランダムアクセスメモリ(static random access memory、SRAM)、フラッシュ、又は別の記憶媒体であってもよく、あるいは、キャッシュ媒体は、ストレージエリアネットワーク(storage area network、SAN)、ネットワーク接続ストレージ(network attached storage、NAS)、又は別の記憶方法であってもよい。
【0027】
例えば、キャッシュライトポリシーは、ライトスルー(write through、WT)であってもよく、又はライトバック(write back、WB)であってもよく、キャッシュにデータを書き込むための別の書き込み方式であってもよい。
【0028】
例えば、キャッシュアルゴリズムは、使用頻度が最も低い(Least Frequently Used、LFU)追い出しアルゴリズム、最も過去に使用された(Least recently used、LRU)追い出しアルゴリズム、適応型置換キャッシュ(Adaptive Replacement Cache、ARC)アルゴリズム、又は別のキャッシュ追い出しアルゴリズムであってもよく、あるいは、キャッシュアルゴリズムは、置換キャッシュなし(no replacement cache、NO REP)ポリシーであってもよい。
【0029】
したがって、2つのキャッシュ構成が異なるキャッシュサイズを有する場合、2つのキャッシュ構成は異なり、2つのキャッシュ構成が異なるキャッシュ媒体を有する場合、2つのキャッシュ構成は異なり、2つのキャッシュ構成が異なるキャッシュライトポリシーを有する場合、2つのキャッシュ構成は異なり、2つのキャッシュ構成が異なるキャッシュアルゴリズムを有する場合、2つのキャッシュ構成は異なる。
【0030】
図2は、本出願によるインスタンス配置のアーキテクチャの図である。
【0031】
図2に示されるように、インスタンス管理ノード20は、複数のコンピューティングノード(例えば、コンピューティングノード21及びコンピューティングノード22)上のサービスインスタンス及びキャッシュインスタンスを管理することができる。
【0032】
例えば、インスタンス管理ノード20は、コンピューティングノード21上に、サービスインスタンス211と、サービスインスタンス211によって使用されるキャッシュインスタンス212とを配置することができ、キャッシュインスタンス212のキャッシュ構成は、サービスインスタンス211によって実行されるサービスに基づいて設定され、インスタンス管理ノード20は、コンピューティングノード21上に、サービスインスタンス213と、サービスインスタンス213によって使用されるキャッシュインスタンス214とを配置することができ、キャッシュインスタンス214のキャッシュ構成は、サービスインスタンス213によって実行されるサービスに基づいて設定される。サービスインスタンス211とサービスインスタンス213とが異なるサービスを実行する場合、キャッシュインスタンス212とキャッシュインスタンス214とは異なるキャッシュ構成を有し得る。このようにして、異なるサービスを実行するサービスインスタンスと協働するために、異なるキャッシュ構成を有するキャッシュインスタンスが提供され得る。これにより、サービス提供の効率が向上するか、又はサービス性能が向上する。
【0033】
例えば、サービスが優先度を有する場合、優先度の高いサービスを実行しているサービスインスタンスは、高性能のコンピューティングノード上に配置され得る。例えば、コンピューティングノード21の性能はコンピューティングノード22の性能よりも高く、サービスインスタンス211及びサービスインスタンス213の両方は優先度の高いサービスを提供し、サービスインスタンス211及びサービスインスタンス213はコンピューティングノード21に配置され、サービスインスタンス221及びサービスインスタンス223の両方は優先度の低いサービスを提供し、サービスインスタンス221及びサービスインスタンス223はコンピューティングノード22上に配置される。
【0034】
本出願では、キャッシュインスタンスは、バックエンドストレージに格納されたデータをキャッシュするために使用され、サービスインスタンスは、キャッシュインスタンスによってキャッシュされたデータを使用する、すなわち、バックエンドストレージに格納されたデータを使用する。例えば、図2に示されるように、サービスインスタンス211によって必要とされるデータはバックエンドストレージ23に格納され、キャッシュインスタンス212はサービスインスタンス211によって必要とされるデータをバックエンドストレージ23から取得してデータをキャッシュし、サービスインスタンス211はキャッシュインスタンス212によってキャッシュされたデータを使用する。これにより、サービスインスタンス211によるデータの取得速度を向上させることができる。
【0035】
任意選択で、図2に示されるように、バックエンドストレージ23、バックエンドストレージ24、バックエンドストレージ25、及びバックエンドストレージ26は、異なっていてもよいし、同じであってもよい。バックエンドストレージ23、バックエンドストレージ24、バックエンドストレージ25、及びバックエンドストレージ26のうちの少なくとも2つは同じであってもよい。
【0036】
任意選択で、図2に示されるように、サービスインスタンス211及びサービスインスタンス213は、同じサービスを実行する異なるサービスインスタンスである。したがって、キャッシュインスタンス212及びキャッシュインスタンス214は、同じキャッシュ構成を有することができる。
【0037】
任意選択で、サービスインスタンス211及びサービスインスタンス213は、同じサービスを実行する異なるサービスインスタンスである。したがって、キャッシュインスタンス212及びキャッシュインスタンス214は、図3に示されるように、同じキャッシュインスタンス212であり得る。
【0038】
以下、図2図3、及び図4を参照して、本発明によるインスタンス配置方法について説明する。本方法では、特定のサービスを実行しているサービスインスタンスが配置されると、一致したキャッシュインスタンスがサービスインスタンスに対して自動的に配置される。キャッシュインスタンスのキャッシュ構成は、サービス又はサービスインスタンスに合わせてカスタマイズされる。これにより、サービスインスタンスによるサービス提供の効率が向上し、サービス性能が向上する。
【0039】
ステップS41:インスタンス管理ノード20は、サービスインスタンス211の作成要求を受信する。
【0040】
サービスインスタンス211は、特定のサービスを実行しているサービスインスタンスである。
【0041】
サービスインスタンス211の要求をトリガするシナリオは、本出願では限定されない。
【0042】
任意選択で、要求は、サービスインスタンス211によって使用されるキャッシュインスタンスのキャッシュ構成を搬送する。
【0043】
任意選択で、要求は、サービスインスタンス211によって使用されるキャッシュインスタンスのキャッシュ構成を搬送しない。
【0044】
ステップS42:インスタンス管理ノード20は、サービスインスタンス211に対応するキャッシュ構成を取得する。
【0045】
本出願では、サービスインスタンス211は、一致したキャッシュインスタンスを使用して、サービスを提供する効率を改善するか、又はサービス性能を改善する。具体的には、サービス又はサービスインスタンス211は、カスタマイズされたキャッシュ構成を有し、キャッシュ構成を使用することによって作成されたキャッシュインスタンスは、サービスインスタンス211にキャッシュサービスを提供するために使用される。
【0046】
任意選択で、ステップS41で受信された要求がキャッシュ構成を搬送する場合、インスタンス管理ノード20は、要求からキャッシュ構成を取得し、キャッシュ構成に基づいて、サービスインスタンス211用にカスタマイズされたキャッシュインスタンスを作成することができる。
【0047】
任意選択で、サービスインスタンス211に一致するキャッシュインスタンスのキャッシュ構成が予め格納されている場合、インスタンス管理ノード20は、格納されたキャッシュ構成を取得し、キャッシュ構成に基づいて、サービスインスタンス211用にカスタマイズされたキャッシュインスタンスを作成することができる。
【0048】
ステップS43:インスタンス管理ノード20は、コンピューティングノード21上にサービスインスタンス211を作成し、ステップS42で取得したキャッシュ構成に基づいてコンピューティングノード21上にキャッシュインスタンス212を作成する。
【0049】
作成されたキャッシュインスタンス212は、サービスインスタンス211によって使用される。
【0050】
任意選択で、インスタンス管理ノード20は、アフィニティ原理に従ってサービスインスタンス211及びキャッシュインスタンス212を作成する。これにより、サービスインスタンス211及びキャッシュインスタンス212が同じコンピューティングノード21上に作成されることを保証することができる。
【0051】
任意選択で、バックエンドストレージ23は、サービスインスタンス211によって使用するためのデータを格納し、キャッシュインスタンス212は、バックエンドストレージ23に基づいて作成されてもよい。このようにして、バックエンドストレージ23内のデータがキャッシュインスタンス212に読み取られ得、その後、サービスインスタンス211はキャッシュインスタンス212によって提供されたデータを直接使用する、すなわち、サービスインスタンス211はキャッシュインスタンス212を使用することによってバックエンドストレージ23内のデータを使用する。
【0052】
例えば、バックエンドストレージ23に基づいてデータボリュームが作成され、データボリュームのパスがキャッシュインスタンス212に格納される。このようにして、キャッシュインスタンス212は、データボリュームを使用することによってバックエンドストレージ23のデータを取得することができる。
【0053】
任意選択で、インスタンス管理ノード20は、サービスインスタンス211及びキャッシュインスタンス212を作成するために、複数のコンピューティングノードからサービスインスタンス211及びキャッシュインスタンス212に適合する1つのコンピューティングノードを選択する。
【0054】
例えば、コンピューティングノード21はSSDを有し、コンピューティングノード22はSSDを有さない。インスタンス管理ノード20は、ステップS42でサービスインスタンス211に対応するキャッシュ構成を取得し、キャッシュ構成に指定されたキャッシュ媒体はSSDである。したがって、インスタンス管理ノード20は、サービスインスタンス211及びキャッシュインスタンス212を作成するためにコンピューティングノード21を選択し、ステップS42で取得されたキャッシュ構成に基づいて、コンピューティングノード21のSSDを使用することによってキャッシュインスタンス212を作成し、コンピューティングノード21上にサービスインスタンス211を作成する。
【0055】
任意選択で、インスタンス管理ノード20は、ステップS43で要求を生成する。要求は、サービスインスタンス211に対応するキャッシュ構成を搬送し、要求は、サービスインスタンス211及びキャッシュインスタンスを作成するようにコンピューティングノード21に指示するために使用される。
【0056】
これに対応して、コンピューティングノード21は、インスタンス管理ノード20によって送信された要求を受信する。コンピューティングノード21は、要求で指定されたサービスインスタンス211を作成し、サービスインスタンス211に対応するキャッシュ構成に基づいて、要求で指定されたキャッシュインスタンス212を作成する。このようにして、キャッシュインスタンス212は、サービスインスタンス211によって使用され得る。サービスインスタンス211は、キャッシュインスタンス212を使用することによってサービスを提供することができる。これにより、サービスインスタンスによるサービス提供の効率が向上し、サービス性能が向上する。
【0057】
本発明で提供されるインスタンス配置方法では、新しい特定のアプリケーションシナリオが提供される。具体的には、異なるサービスを実行するサービスインスタンスによって使用される同じコンピューティングノード上に、異なるキャッシュ構成を有するキャッシュインスタンスが作成される。これに対応して、本方法は、ステップS44、ステップS45、及びステップS46をさらに含む。
【0058】
ステップS44:インスタンス管理ノード20は、サービスインスタンス213の作成要求を受信する。
【0059】
任意選択で、サービスインスタンス213及びサービスインスタンス211は、異なるサービスを提供するサービスインスタンスである。サービスインスタンス213とサービスインスタンス211は、異なるサービスを提供するために、異なるキャッシュ構成を有するキャッシュインスタンスを使用する必要がある。
【0060】
ステップS44の実施態様は、ステップS41の実施態様と同様である。本明細書では詳細は重ねて説明されない。
【0061】
ステップS45:インスタンス管理ノード20は、サービスインスタンス213に対応するキャッシュ構成を取得する。
【0062】
サービスインスタンス213に対応するキャッシュ構成と、サービスインスタンス211に対応するキャッシュ構成とは異なる。例えば、サービスインスタンス213に対応するキャッシュ構成によって必要とされるキャッシュサイズ(例えば、50メガバイト)は、サービスインスタンス211に対応するキャッシュ構成によって必要とされるキャッシュサイズ(例えば、60メガバイト)とは異なる。例えば、サービスインスタンス213に対応するキャッシュ構成によって必要とされるキャッシュアルゴリズム(LRU)は、サービスインスタンス211に対応するキャッシュ構成によって必要とされるキャッシュアルゴリズム(NO REP)とは異なる。例えば、サービスインスタンス213に対応するキャッシュ構成によって必要とされるキャッシュライトポリシー(WT)は、サービスインスタンス211に対応するキャッシュ構成によって必要とされるキャッシュライトポリシー(WB)とは異なる。
【0063】
ステップS45の実施態様は、ステップS42の実施態様と同様である。本明細書では詳細は重ねて説明されない。
【0064】
ステップS46:インスタンス管理ノード20は、コンピューティングノード21上にサービスインスタンス213を作成し、ステップS45で取得したキャッシュ構成に基づいてコンピューティングノード21上にキャッシュインスタンス214を作成する。
【0065】
キャッシュインスタンス214はサービスインスタンス213によって使用される。
【0066】
ステップS46の実施態様は、ステップS43の実施態様と同様である。本明細書では詳細は重ねて説明されない。
【0067】
任意選択で、コンピューティングノード21がサービスインスタンス213のリソース要件とキャッシュインスタンス214のリソース要件の両方を満たす場合、インスタンス管理ノード20は、コンピューティングノード21上にサービスインスタンス213及びキャッシュインスタンス214を作成する。任意選択で、インスタンス管理ノード20は、ステップS46で要求を生成する。要求は、サービスインスタンス213に対応するキャッシュ構成を搬送し、要求は、サービスインスタンス213及びキャッシュインスタンスを作成するようにコンピューティングノード21に指示するために使用される。
【0068】
これに対応して、コンピューティングノード21は、インスタンス管理ノード20によって送信された要求を受信する。コンピューティングノード21は、要求で指定されたサービスインスタンス213を作成し、サービスインスタンス213に対応するキャッシュ構成に基づいて、要求で指定されたキャッシュインスタンス214を作成する。このようにして、キャッシュインスタンス214は、サービスインスタンス213によって使用され得る。サービスインスタンス213は、キャッシュインスタンス214を使用することによってサービスを提供することができる。これにより、サービスインスタンスによるサービス提供の効率が向上し、サービス性能が向上する。
【0069】
本出願は、インスタンス管理ノード20をさらに提供する。具体的には、インスタンス管理ノード20の機能は、コンピューティングデバイスがインスタンス管理ノード20として機能するように、コンピューティングデバイス(例えば、サーバ又はコンピューティング能力を有する別のデバイス)上に実装されてもよい。
【0070】
インスタンス管理ノード20は、本出願のインスタンス配置方法を実施するように構成された機能ユニットを含む。インスタンス管理ノード20を機能ユニットに分割する方法は、本出願では限定されない。以下は、図5に示されるように、機能ユニット分割の一例を提供する。
【0071】
図5のインスタンス配置のためのインスタンス管理ノード20は、
第1のサービスインスタンスを作成するための要求を受信するように構成された受信ユニット51と、
第1のサービスインスタンスに対応する第1のキャッシュ構成を取得するように構成された取得ユニット52と、
コンピューティングノード上に第1のサービスインスタンスを作成し、第1のキャッシュ構成に基づいてコンピューティングノード上に第1のキャッシュインスタンスを作成し、第1のキャッシュインスタンスが第1のサービスインスタンスによって使用されるように構成された作成ユニット53と
を含む。
【0072】
任意選択で、受信ユニット51は、第2のサービスインスタンスを作成するための要求を受信するように構成される。
【0073】
取得ユニット52は、第2のサービスインスタンスに対応する第2のキャッシュ構成を取得するように構成される。
【0074】
作成ユニット53は、コンピューティングノード上に第2のサービスインスタンスを作成し、第2のキャッシュ構成に基づいてコンピューティングノード上に第2のキャッシュインスタンスを作成し、第2のキャッシュインスタンスが第2のサービスインスタンスによって使用されるように構成される。
【0075】
任意選択で、第1のキャッシュ構成は、以下の構成、すなわち、
キャッシュサイズ、
キャッシュ媒体、
キャッシュライトポリシー、及び
キャッシュアルゴリズム
の少なくとも1つを含む。
【0076】
任意選択で、第1のキャッシュ構成は、第1のサービスインスタンスを作成するための要求で搬送される。
【0077】
任意選択で、取得ユニット52は、第1のサービスインスタンスに基づいて、記憶された第1のキャッシュ構成を取得するように構成される。
【0078】
任意選択で、インスタンス管理ノード20は、
複数のコンピューティングノードから第1のサービスインスタンス及び第1のキャッシュインスタンスを満たす1つのコンピューティングノードを選択するように構成された選択ユニット54
を含む。
【0079】
任意選択で、第1のキャッシュ構成を有する第1のキャッシュインスタンスは、第1のサービスインスタンス専用である。
【0080】
任意選択で、第1のサービスインスタンスはサービスインスタンス211であってもよく、第1のキャッシュインスタンスはサービスインスタンス212であってもよく、第2のサービスインスタンスはサービスインスタンス213であってもよく、第2のキャッシュインスタンスはサービスインスタンス214であってもよい。
【0081】
本出願はコンピューティングノードをさらに提供する。例えば、コンピューティングノードは、本出願におけるコンピューティングノード21又はコンピューティングノード22である。具体的には、コンピューティングノードの機能は、コンピューティングデバイスがコンピューティングノードとして機能するように、コンピューティングデバイス(例えば、サーバ又はコンピューティング能力を有する別のデバイス)上に実装されてもよい。
【0082】
コンピューティングノードは、本出願におけるインスタンス配置方法を実施するように構成された機能ユニットを含む。コンピューティングノードを機能ユニットに分割する方法は、本出願では限定されない。以下は、図6に示されるように、機能ユニット分割の一例を提供する。
【0083】
図6のインスタンス配置のためのコンピューティングノードは、
インスタンス管理ノードによって送信された要求を受信し、要求が第1のキャッシュ構成を搬送するように構成された受信ユニット61と、
要求で指定された第1のサービスインスタンスを作成し、第1のキャッシュ構成に基づいて、要求で指定された第1のキャッシュインスタンスを作成し、第1のキャッシュインスタンスが第1のサービスインスタンスによって使用されるように構成された作成ユニット62と
を含む。
【0084】
任意選択で、第1のキャッシュ構成は、以下の構成、すなわち、
キャッシュサイズ、
キャッシュ媒体、
キャッシュライトポリシー、及び
キャッシュアルゴリズム
の少なくとも1つを含む。
【0085】
任意選択で、第1のキャッシュ構成を有する第1のキャッシュインスタンスは、第1のサービスインスタンス専用である。
【0086】
任意選択で、第1のサービスインスタンスはサービスインスタンス211であってもよく、第1のキャッシュインスタンスはサービスインスタンス212であってもよく、第2のサービスインスタンスはサービスインスタンス213であってもよく、第2のキャッシュインスタンスはサービスインスタンス214であってもよい。
【0087】
任意選択的に、図7は、本出願におけるコンピューティングデバイスの可能な基本アーキテクチャを概略的に提供する。
【0088】
図7に示されているように、コンピューティングデバイス700は、プロセッサ701、メモリ702、通信インターフェース703、及びバス704を含む。
【0089】
コンピューティングデバイス700は、1つ又は複数のプロセッサ701を含むことができる。図7は、ただ1つのプロセッサ701を示す。任意選択で、プロセッサ701は中央処理装置(central processing unit、CPU)であってもよい。コンピューティングデバイス700が複数のプロセッサ701を有する場合、複数のプロセッサ701は、異なるタイプのものであってもよく、又は同じタイプのものであってもよい。任意選択で、コンピューティングデバイス700内の複数のプロセッサ701は、マルチコアプロセッサにさらに統合されてもよい。
【0090】
メモリ702は、コンピュータ命令及びデータを記憶する。メモリ702は、本出願で提供されるインスタンス配置方法を実施するために必要とされるコンピュータ命令及びデータを記憶することができる。例えば、メモリ702は、インスタンス配置方法においてインスタンス管理ノード20によって実施されるステップを実施するために使用されるコンピュータ命令を記憶する。例えば、メモリ702は、インスタンス配置方法においてコンピューティングノードによって実施されるステップを実施するために使用されるコンピュータ命令を記憶する。別の例では、メモリ702は、インスタンス管理ノード20又はコンピューティングノードを実施するために使用されるコンピュータ命令を記憶する。メモリ702は、記憶媒体、すなわち、不揮発性メモリ(例えば、読み出し専用メモリ(ROM)、ソリッドステートドライブ(SSD)、ハードディスクドライブ(HDD)、又は光ディスク)及び揮発性メモリのいずれか1つ又は任意の組み合わせであってもよい。
【0091】
通信インターフェース703は、ネットワークインターフェース(例えば、イーサネットインターフェース)及び無線ネットワークインターフェースカードなどのネットワークアクセス機能を有する構成要素のいずれか1つ又は任意の組み合わせであってもよい。
【0092】
通信インターフェース703は、コンピューティングデバイス700と別のコンピューティングデバイス又は端末との間でデータ通信を実行するように構成される。
【0093】
図7では、バス704を表すために太線が使用されている。バス704は、プロセッサ701をメモリ702及び通信インターフェース703に接続することができる。このようにして、バス704を介して、プロセッサ701はメモリ702にアクセスすることができ、通信インターフェース703を介して別のコンピューティングデバイス又は端末とデータをさらに交換することができる。
【0094】
本出願では、コンピューティングデバイス700は、コンピューティングデバイス700が本出願で提供されるインスタンス配置方法を実施する、例えば、コンピューティングデバイスがインスタンス配置方法においてインスタンス管理ノード20によって実施されるステップを実行するか、又はコンピューティングデバイスがインスタンス配置方法においてコンピューティングノードによって実施されるステップを実行するように、メモリ702内のコンピュータ命令を実行する。あるいは、コンピューティングデバイス700は、コンピューティングデバイス700が本出願におけるインスタンス管理ノード20又はコンピューティングノードを実施するように、メモリ702内のコンピュータ命令を実行する。
【0095】
本出願はコンピュータ可読記憶媒体を提供する。コンピュータ可読記憶媒体は、コンピュータ命令を記憶する。コンピューティングデバイス700内のプロセッサ701がコンピュータ命令を実行すると、コンピューティングデバイス700は、本出願で提供されるインスタンス配置方法においてインスタンス管理ノード20によって実施されるステップを実行するか、又はコンピューティングデバイス700は、本出願におけるインスタンス管理ノード20の機能を実施する。あるいは、コンピューティングデバイス700内のプロセッサ701がコンピュータ命令を実行すると、コンピューティングデバイス700は、本出願で提供されるインスタンス配置方法においてコンピューティングノードによって実施されるステップを実行するか、又はコンピューティングデバイスは、本出願で提供されるコンピューティングノードを実施する。
【0096】
本出願は、コンピュータプログラム製品を提供する。コンピュータプログラム製品はコンピュータ命令を含み、コンピュータ命令はコンピュータ可読記憶媒体に記憶される。コンピューティングデバイス700内のプロセッサ701は、コンピュータ可読記憶媒体からコンピュータ命令を読み取ることができ、プロセッサ701は、コンピューティングデバイス700がインスタンス配置方法においてインスタンス管理ノード20によって実施されるステップを実行するか、又はコンピューティングデバイス700が本出願のインスタンス管理ノード20によって実施される機能を実施するように、コンピュータ命令を実行する。あるいは、コンピューティングデバイス700内のプロセッサ701は、コンピュータ可読記憶媒体からコンピュータ命令を読み取ることができ、プロセッサ701は、コンピューティングデバイス700が本出願で提供されるインスタンス配置方法においてコンピューティングノードによって実施されるステップを実行するか、又はコンピューティングデバイス700が本出願のコンピューティングノードによって実施される機能を実施するように、コンピュータ命令を実行する。
【0097】
実施形態は、本発明の技術的解決策を説明するためのものにすぎず、本発明を限定するためのものではない。本発明は実施形態を参照して詳細に説明されているが、当業者は、特許請求の範囲の保護範囲から逸脱することなく、実施形態に記載された技術的解決策にさらに修正を加えることができることを理解するべきである。
【符号の説明】
【0098】
11 コンピューティングノード
12 サービスコンテナ
20 インスタンス管理ノード
21 コンピューティングノード
22 コンピューティングノード
23 バックエンドストレージ
24 バックエンドストレージ
25 バックエンドストレージ
26 バックエンドストレージ
51 受信ユニット
52 取得ユニット
53 作成ユニット
54 選択ユニット
61 受信ユニット
62 作成ユニット
211 サービスインスタンス
212 キャッシュインスタンス
213 サービスインスタンス
214 キャッシュインスタンス
221 サービスインスタンス
223 サービスインスタンス
700 コンピューティングデバイス
701 プロセッサ
702 メモリ
703 通信インターフェース
704 バス
図1
図2
図3
図4
図5
図6
図7