TWI723410B - 雲端資源管理系統、雲端資源管理方法以及非暫態電腦可讀取記錄媒體 - Google Patents

雲端資源管理系統、雲端資源管理方法以及非暫態電腦可讀取記錄媒體 Download PDF

Info

Publication number
TWI723410B
TWI723410B TW108119055A TW108119055A TWI723410B TW I723410 B TWI723410 B TW I723410B TW 108119055 A TW108119055 A TW 108119055A TW 108119055 A TW108119055 A TW 108119055A TW I723410 B TWI723410 B TW I723410B
Authority
TW
Taiwan
Prior art keywords
resource
cloud
environment
combination
cloud resource
Prior art date
Application number
TW108119055A
Other languages
English (en)
Other versions
TW202046682A (zh
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 伊雲谷數位科技股份有限公司
Priority to TW108119055A priority Critical patent/TWI723410B/zh
Priority to US16/661,066 priority patent/US11003503B2/en
Publication of TW202046682A publication Critical patent/TW202046682A/zh
Application granted granted Critical
Publication of TWI723410B publication Critical patent/TWI723410B/zh

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5072Grid computing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5077Logical partitioning of resources; Management or configuration of virtualized resources
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]
    • G06Q30/0623Item investigation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]
    • G06Q30/0623Item investigation
    • G06Q30/0625Directed, with specific intent or strategy
    • G06Q30/0627Directed, with specific intent or strategy using item specifications
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]
    • G06Q30/0623Item investigation
    • G06Q30/0625Directed, with specific intent or strategy
    • G06Q30/0629Directed, with specific intent or strategy for generating comparisons
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/5015Service provider selection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/503Resource availability
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/044Recurrent networks, e.g. Hopfield networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • Marketing (AREA)
  • General Business, Economics & Management (AREA)
  • Strategic Management (AREA)
  • Economics (AREA)
  • Development Economics (AREA)
  • Mathematical Physics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Artificial Intelligence (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Medical Informatics (AREA)
  • Computing Systems (AREA)
  • Human Computer Interaction (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本案提供一種雲端資源管理系統,雲端資源管理系統包含網路介面及處理器。處理器用以辨識一指令,其中指令定義一雲端資源需求;經由網路介面自雲環境獲得關聯於指令之複數個雲端資源需求項目;根據指令針對該些雲端資源需求項目之參數值計算出複數個資源組合;自該些資源組合選定第一資源組合;經由網路介面向第一雲環境送出第一請求,以於第一雲環境中配置第一雲端資源;以及經由網路介面向第二雲環境送出第二請求,以於第二雲環境中配置第二雲端資源。

Description

雲端資源管理系統、雲端資源管 理方法以及非暫態電腦可讀取記錄媒體
本揭示文件是有關於一種管理系統、管理方法以及電腦可讀取記錄媒體,且特別是有關於一種雲端資源管理系統、雲端資源管理方法以及非暫態電腦可讀取記錄媒體。
一般來說,企業或服務提供者若需要透過網際網路來提供企業服務或營業時,往往需要花費成本建置硬體資源,以於硬體資源上提供服務。隨著雲端運算技術的發展,服務提供者可運用雲端資源來取代過往的硬體建置,使得服務提供者不再需要花費太高的硬體成本。
另一方面,傳統的作法上,服務提供者不僅需要花費硬體成本,在硬體資源的維護方面亦在成本上佔有一定程度的成本花費。因此,轉而在雲端資源上提 供服務已成為許多服務提供者的選擇之一。
受惠於雲端服務的多元發展,使得雲端服務相當多樣。然而,對於使用者而言,往往難以於多個雲環境之間選擇欲使用的雲端服務。有鑑於此,如何在多元的雲端資源當中產生雲端服務策略以最大化效益是亟需解決的技術問題。
發明內容旨在提供本揭示內容的簡化摘要,以使閱讀者對本揭示內容具備基本的理解。此發明內容並非本揭示內容的完整概述,且其用意並非在指出本發明實施例的重要/關鍵元件或界定本發明的範圍。
根據本揭示文件之一實施例,揭示一種雲端資源管理系統,適配於介接複數個雲環境,各該雲環境包含複數個雲端資源。雲端資源管理系統包含網路介面及處理器。網路介面用以提供雲端資源管理系統與該些複數個雲端資源介接之一介面。處理器耦接網路介面,其中處理器用以:辨識一指令,其中指令定義一雲端資源需求;經由網路介面自該些雲環境獲得關聯於指令之複數個雲端資源需求項目,其中各該雲端資源需求項目包含一參數值,其中參數值包含一資源種類資訊、一資源規格資訊、一資源數量資訊、一資源時間資訊、一資源價格資訊、一收費方式資訊、一資源狀態資訊中至少 一者;根據指令針對該些雲端資源需求項目之該些參數值計算出複數個資源組合,其中各資源組合包含該些雲端資源之至少一者;自該些資源組合選定一第一資源組合,第一資源組合包含一第一雲端資源及一第二雲端資源,第一資源組合滿足指令之雲端資源配置需求,其中,第一雲端資源屬於該些雲環境中之一第一雲環境,第二雲端資源屬於該些雲環境中之一第二雲環境;經由網路介面向第一雲環境送出一第一請求,以於第一雲環境中配置第一雲端資源;以及經由網路介面向第二雲環境送出一第二請求,以於第二雲環境中配置第二雲端資源。
根據另一實施例,揭示一種雲端資源管理方法,適用於一雲端管理系統,其中雲端管理系統適配於介接複數個雲環境,各該雲環境包含複數個雲端資源,各該雲環境包含複數個雲端資源。資源管理方法包含以下步驟:辨識一指令,其中指令定義一雲端資源需求;自該些雲環境獲得關聯於指令之複數個雲端資源需求項目,其中各該雲端資源需求項目包含一參數值,其中參數值包含一資源種類資訊、一資源規格資訊、一資源數量資訊、一資源時間資訊、一資源價格資訊、一收費方式資訊、一資源狀態資訊中至少一者;根據指令針對該些雲端資源需求項目之該些參數值計算出複數個資源組合,其中各該資源組合包含該些雲端資源之至少一者; 自該些資源組合選定一第一資源組合,第一資源組合包含一第一雲端資源及一第二雲端資源,第一資源組合滿足指令之雲端資源配置需求,其中,第一雲端資源屬於該些雲環境中之一第一雲環境,第二雲端資源屬於該些雲環境中之一第二雲環境;向第一雲環境送出一第一請求,以於第一雲環境中配置第一雲端資源;以及向第二雲環境送出一第二請求,以於第二雲環境中配置第二雲端資源。
根據另一實施例,揭示一種非暫態電腦可讀取儲存媒體,儲存多個程式碼,當該些程式碼被載入至一處理器後,處理器執行該些程式碼以執行下列步驟:辨識一指令,其中指令定義一雲端資源需求;自複數個雲環境獲得關聯於指令之複數個雲端資源需求項目,其中各該雲端資源需求項目包含一參數值,其中參數值包含一資源種類資訊、一資源規格資訊、一資源數量資訊、一資源時間資訊、一資源價格資訊、一收費方式資訊、一資源狀態資訊中至少一者;根據指令針對該些雲端資源需求項目之該些參數值計算出複數個資源組合,其中各該資源組合包含該些雲端資源之至少一者;自該些資源組合選定一第一資源組合,第一資源組合包含一第一雲端資源及一第二雲端資源,第一資源組合滿足指令之雲端資源配置需求,其中,第一雲端資源屬於該些雲環境中之一第一雲環境,第二雲端資源 屬於該些雲環境中之一第二雲環境;向第一雲環境送出一第一請求,以於第一雲環境中配置第一雲端資源;以及向第二雲環境送出一第二請求,以於第二雲環境中配置第二雲端資源。
為讓本揭示內容之上述和其他目的、特徵、優點與實施例能更明顯易懂,所附符號之說明如下:
100‧‧‧雲端資源管理系統
110‧‧‧網路介面
120‧‧‧處理器
130‧‧‧使用者介面
140‧‧‧資料庫
150a~150n‧‧‧雲環境
200‧‧‧雲端資源管理方法
300‧‧‧雲端資源管理方法
400‧‧‧雲端資源管理方法
500‧‧‧雲端資源管理裝置
510‧‧‧辨識指令模組
520‧‧‧雲端資源需求項目取得模組
530‧‧‧資源組合計算與選定模組
540‧‧‧機器學習模型
550‧‧‧請求發送模組
S210~S260‧‧‧步驟
S305~S335‧‧‧步驟
S410~S440‧‧‧步驟
以下詳細描述結合隨附圖式閱讀時,將有利於較佳地理解本揭示文件之態樣。應注意,根據說明上實務的需求,圖式中各特徵並不一定按比例繪製。實際上,出於論述清晰之目的,可能任意增加或減小各特徵之尺寸。
第1圖繪示根據本揭示文件一些實施例中一種雲端資源管理系統的功能方塊示意圖。
第2圖繪示根據本揭示文件一些實施例中一種雲端資源管理方法的步驟流程圖。
第3圖繪示根據本揭示文件一些實施例中一種雲端資源管理方法的步驟流程圖。
第4圖繪示根據本揭示文件一些實施例中一種雲端資源管理方法的步驟流程圖。
第5圖繪示根據本揭示文件一些實施例中一種雲端資源管理裝置的功能方塊示意圖。
以下揭示內容提供許多不同實施例或實 例,以便實施本發明之不同特徵。下文描述元件及排列之特定實例以簡化本發明。當然,該等實例僅為示例性且並不欲為限制性。舉例而言,以下描述中在第二特徵上方或第二特徵上形成第一特徵可包括以直接接觸形成第一特徵及第二特徵的實施例,且亦可包括可在第一特徵與第二特徵之間形成額外特徵使得第一特徵及特徵可不處於直接接觸的實施例。另外,本發明可在各實例中重複元件符號及/或字母。此重複係出於簡明性及清晰之目的,且本身並不指示所論述之各實施例及/或配置之間的關係。
請參照第1圖,其繪示根據本揭示文件一些實施例中一種雲端資源管理系統100的功能方塊示意圖。雲端資源管理系統100適配於與複數個雲環境150a、150b、....、150n間的介接。在一些實施例中,雲端資源管理系統100用於計算及分配雲端資源需求的運算資源,以於複數個雲環境中分別所屬之雲端資源當中計算出最適合運算任務的資源,及/或完成雲端資源需求所需的最少成本,及/或滿足一或多個偏好條件等。舉例來說,使用者欲建立電子商務系統時,雲端資源管理系統100會考慮複數個雲環境150a~150n,以於該等雲環境之中決定出符合電子商務系統運作需求的雲端資源。某些實施例中,複數個雲環境可指多雲環境,例如指由不同雲端服務提供者提供的複數個雲環境。某些實施例中,複數個雲環境可指混合雲環境,例如複數個雲環境可包 含至少一由雲端佈署之環境及一地端佈署之環境。於此意義下,跨雲亦可指跨地端及雲端之資源佈署。某些實施例中,複數個雲環境可包含多雲環境及混合雲環境。某些實施例中,複數個雲環境包含分別包含不同雲端資源之雲環境。例如,不同雲環境包含不同之操作指令、操作方式、虛擬或實體資源類型等。例如,若以不同雲環境執行同一任務,需要執行特定於個別雲環境之操作。
如第1圖所示,雲端資源管理系統100包含網路介面110以及處理器120。網路介面110作為介接於雲端資源管理系統100與雲環境150a~150n之間的介面,以傳遞和/或接收指令。為使說明簡潔,以下於特定之例示情況中以三個雲環境150a~150c來說明相關操作。應注意的是,本揭示文件的雲端資源管理系統100並不限於操作於三個雲環境,任何數量的雲環境均屬本揭示文件的範疇。如前述,複數個雲環境可包含多雲、混合雲、地端佈署或以上任二者等。
複數個雲環境如雲環境150a~150c分別包含複數個雲端資源。雲端資源可包括但不限於虛擬及/或實體資源。例如,虛擬資源可包括虛擬化資源、軟體定義資源等。舉例而言,虛擬資源可包括一或多個虛擬處理器或虛擬機。又如虛擬資源可包括以不同實體資源為基礎所定義之資源,例如虛擬資源可包括以不同實體伺服器為基礎之一或多個虛擬私雲。又如虛擬資源可包括跨 地理位置之資源。又如虛擬資源可包括跨複數個雲環境之雲端資源。在一些實施例中,複數個雲環境如雲環境150a~150c中的雲端資源為包含規格全部相同/等效或規格部分相同/等效的資源。等效規格可包含效能相同、同等級、或皆能滿足特定需求之規格。等效規格可指對單一類型之複數個規格之間的效能比對,抑或對包含複數個類型之複數個規格總成之間的效能比對。例如,一第一規格可包含四個虛擬處理器及對應各虛擬處理器的一個16GB記憶體,而與第一規格等效之一第二規格可包含二個虛擬處理器及對應各虛擬處理器的一個32GB記憶體。於某些實施例中,第一規格的四個虛擬處理器可等效於第二規格的二個虛擬處理器,及/或第一規格的四個記憶體可等效於第二規格的二個記憶體,及/或第一規格等效於第二規格。於某些實施例中,第一規格與的二規格等效係指第一規格與第二規格的效能相同、或具相同等級、或皆能滿足某一雲端服務的需求。例如,等效之第一規格與第二規格可包含相同、或具相同等級、或皆能滿足特定雲端服務需求的運算能力。又如,一個雲環境之一雲端儲存資源可等效於另外二個雲環境之複數個雲端儲存資源。某些實施例中,雲端資源可以各類型資訊描述。例如,描述雲端資源之資訊可以包含資源種類資訊、資源規格資訊、資源數量資訊、資源時間資訊、資源價格資訊、收費方式資訊、資源狀態資訊等。資源種類資訊可包括描述虛擬機、容器、資料庫、負載 器、閘道等不同雲端資源之資訊。資源規格資訊可包括描述資源規格、資源版本、資源型號、資源等級等資訊。資源規格可包括相關於處理器、記憶體、儲存空間、每秒輸出輸入(IOPS)、傳輸量(throughput)、頻寬等資訊。在某些實施例中,作業系統或其版本之相關資訊可作為資源種類資訊或資源規格資訊。作業系統可包括Windows、Linux、或其他雲端適用之作業系統。資源數量資訊可包括描述可用資源數量、最大可用資源數量、最小可用資源數量、不固定數量、隨需數量等資訊。資源時間資訊可包括描述啟動資源之時間、暫停資源之時間、釋放資源之時間、重啟資源之時間、資源可用期間、資源生命週期、資源在線/離線時間或期間、資源競標時間等資訊。資源價格資訊可包括隨需價格、固定或彈性價格、備用或預留資源價格、資料傳輸價格、競標價格等資訊。收費方式資訊可包括預付款、不預付款、分期付款等資訊。資源狀態資訊可包含資源使用或可用狀態、資源使用或可用條件等資訊。在某些實施例中,前述各類資訊的內容可依各雲環境之所屬分類而與前述分類不同。
如第1圖所示,雲端資源管理系統100包含網路介面110以及處理器120。網路介面110作為在雲端資源管理系統100與雲環境150a~150n之間直接或接間的介面,以傳遞和/或接收指令、資料等。例如,處理器120可透過網路介面110對雲環境150a~150n進行應用程式介 面(API)呼叫。
在一些實施例中,雲端資源管理系統100的處理器120用以依據一雲端資源需求來向雲環境150a~150n中的雲端資源中的一或多個請求配置,以執行能滿足該雲端資源需求的任務。例如,根據一使用者之需求藉由雲端資源管理系統100來配置雲環境150a~150n中的一或多個雲端資源。某些實施例中,一雲端資源需求係由雲端資源管理系統100自動產生、因應事件產生、或週期性產生而使雲端資源管理系統100執行雲端資源配置之任務。例如,雲端資源管理系統100的處理器120可不直接從使用者接獲指令而執行本文件中所揭露之各項任務。
為易於說明如何請求分配雲端資源的配置及操作,請一併參照第1圖及第2圖。第2圖繪示根據本揭示文件一些實施例中一種雲端資源管理方法200的步驟流程圖。雲端資源管理系統100執行雲端資源管理方法200的各步驟,以佈建最適合的雲端資源。
在步驟S210中,透過處理器120辨識一指令,其中指令定義一雲端資源需求。
某些實施例中,雲端資源管理系統100的處理器120可自使用者接收一指令,或接收自動產生、因應事件產生、或週期性產生之一指令。指令可包括一雲端資源需求之資訊。例如,雲端資源需求可包含於某時間啟動特定數量之虛擬機(及/或其他雲端資源)。該時間 點可被定義為絕對時間(如2019年6月5日上午10點鐘)、相對時間(如15個小時以後)、由某特定事件觸發之時間點(如虛擬機或處理器使用量達80%)、特定期間(如2019年6月1日至2019年9月30日,或每周二晚上10點鐘)中至少一者。雲端資源需求可包括不限定於特定雲環境或特定雲端資源之需求。例如,雲端資源需求僅定義特定運算能力或特定啟動雲端資源之時間,惟不限定以哪個雲環境或何種雲端資源或資源數量滿足需求。而指令之自動、因應特定事件或週期性之產生亦可如前述對時間點定義之各方式產生。又舉例來說,當使用者欲建立擁有電子商務系統的執行能力但又不想要自行購買硬體設備時,則透過例如網路通訊協定、使用者介面130或API等可與雲端資源管理系統100通訊的方式,傳送指令至雲端資源管理系統100。某些實施例中,處理器120讀取指令之後,可對指令進行如轉譯或轉換等處理,解讀雲端資源需求或擷取到雲端資源需求,以執行後續的雲端資源佈建。例如,處理器120處理指令後可產生之一或多個後續指令,並將該一或多個後續指令分別傳送至一或多個複數個雲環境。
在步驟S220中,經由網路介面110自複數個雲環境如雲環境150a~150c獲得關聯於指令的雲端資源需求之複數個雲端資源需求項目。
在一些實施例中,雲端資源需求項目包含雲端資源規格。雲端資源需求項目可以是資源種類、資源 規格、資源數量、資源時間、資源價格、收費方式等。雲端資源需求項目可包含資源種類資訊、資源規格資訊、資源數量資訊、資源時間資訊、資源價格資訊、收費方式資訊、資源狀態資訊等資訊。雲端資源需求項目可包含參數值,參數值用以指出雲端資源需求項目的所需要資源量和/或運算能力。某些實施例中,參數值可對應前述雲端資源需求項目所包含之資訊。在一些實施例中,參數值可包含資源種類資訊、資源規格資訊、資源數量資訊、資源時間資訊、資源價格資訊、收費方式資訊、資源狀態資訊中至少一者。某些實施例中,處理器120經由網路介面110向複數個雲環境發出請求以獲取關聯於指令的雲端資源需求之複數個雲端資源需求項目。處理器120可於解讀或擷取指令內所載之需求內容之後,向複數個雲環境發送回傳雲端資源需求項目的請求。雲端資源管理系統100可接收並儲存複數個雲環境所反饋的雲端資源需求項目於一儲存器150,以供後續操作。某些實施例中,處理器120可分析指令中之內容,並可檢查複數個雲環境所反饋的雲端資源需求項目是否能充分反映指令的內容。例如,若指令的需求內容包含於某特定時間啟動特定雲端資源,則處理器120可檢查複數個雲環境所反饋的雲端資源需求項目是否包含該特定時間及該特定雲端資源之資訊。某些實施例中,若特定雲環境所反饋的雲端資源需求項目未包含該特定時間及該特定雲端資源之資訊,處理器120可將該特 定雲環境從複數個雲環境選項中剃除,或於本次任務中不再考慮該特定雲環境。某些實施例中,雲端資源管理系統100可週期性或依事件觸發等方式接收複數個雲環境的雲端資源需求項目。例如,本次任務中可依據之雲端資源需求項目可為最近一次接收或最新之雲端資源需求項目。
在一些實施例中,處理器120獲得的雲端資源項目中的資源種類資訊與資源數量資訊的參數值例如是4個處理器、16GB的記憶體、32GB的儲存資源、10GB的輸出輸入等資訊。處理器120獲得的雲端資源項目中的資源價格資訊參數值例如是啟用一個處理器需要花費每小時$0.4328等資訊。
在步驟S230中,藉由處理器120根據指令針對所針對雲端資源需求項目的參數值計算出複數個資源組合。
舉例來說,處理器120於前述步驟S220中取得雲端資源需求項目的參數值包含12個處理器以及128GB記憶體,處理器120可判斷複數個雲環境如雲環境150a~150c的複數個雲端資源當中滿足或符合此參數值的複數個資源組合。
請參照下表一至表三,分別為雲環境150a~150c的雲端資源實施例。
Figure 108119055-A0101-12-0013-1
Figure 108119055-A0101-12-0014-2
Figure 108119055-A0101-12-0014-3
Figure 108119055-A0101-12-0014-4
Figure 108119055-A0101-12-0015-5
如上表一至表三所例示,雲端資源需求項目可包括處理器、記憶體、儲存資源、資源價格、作業系統中至少複數個需求項目,而依需求項目不同的參數值(或參數值的組合)而有不同的配置。某些實施例中,處理器120可根據雲端資源需求項目的參數值,計算出表一至表三的雲端資源列表的複數個資源組合。某些實施例中,雲端資源管理系統100可正規化所反饋之雲端資源需求項目的參數值。例如,不同雲環境可能對同一需求項目有不同的定義或設定而造成專屬特定雲環境之參數值,而雲端資源管理系統100可將此種基於雲環境特徵的差異予以消彌,以獲得基於同一標準之正規化參數值。
在某些實施例中,若存在一雲端運算需求要在例如中午12點時,啟動12個處理器以及128GB記憶體,則處理器120取得對應雲環境150a~150c的相關規格,以產生複數個資源組合,如產生所針對雲環境中所有可能的資源組合。請參照下表四,表四為複數個資源組合的實施例。
Figure 108119055-A0101-12-0015-6
Figure 108119055-A0101-12-0016-7
在需要12個處理器以及128GB記憶體的情況,處理器120計算出四個組合,惟本發明不限於此。第一組合包含雲環境150a的第三配置,需求共16單位,即16組雲環境150a的第三配置(下稱第一資源組合)。第二組合包含雲環境150a的第五配置,需求共8單位,即8組雲環境150a的第五配置(下稱第二資源組合)。第三組合包含雲環境150a的第三配置,需求共4單位(即4組雲環境150a的第三配置),雲環境150b的第二配置,需求共4單位(即4組雲環境150b的第二配置),以及雲環境150c的第五配置,需求共1單位(即1組雲環境150c的第五配置)(下稱第三資源組合)。第四組合包含雲環境150b的第四配置,需求共1單位(即4組雲環境150b的第四配置),以及雲環境150c的第四配置,需求共2單位(即2組雲環境150c的第四配置)(下稱第四資源組合)。某些實施例中,如表四列舉之各個資源組合均為包含等效規格的資源組合。例如,此等資源組合兩兩之間均為等效,即各資源組合均能產生相同效能或符合該雲端運算需求。有關等效之實施例可參照本文件其他相關部分。
在步驟S240中,藉由處理器120自該些資源組合中選定一資源組合,其中被選定的資源組合可滿足指令之雲端資源配置需求。
舉例來說,處理器120根據雲端資源需求項目的參數值,計算出如上表四的第一資源組合至第四資源組合。
在一些實施例中,處理器120執行數值演算法、機器學習演算法或其他演算法,以計算出複數個資源組合。舉例來說,處理器120使用線性規劃(Linear Programming)或非線性規劃(Non-Linear Programming),根據資源組合的參數值來計算組合需求值。或者,處理器120使用機器學習回歸分析,例如最小方均根、隨機森林回歸因子(Regress Forest Regressor)、線性回歸(Linear Regression)、支持向量機(Support Vector Regression,SVR)等方式,計算出不同之資源組合。
處理器120可獲得第一資源組合、第二資源組合、第三資源組合以及第四資源組合後,選擇其一來作為選定的資源組合,以滿足指令之雲端資源配置需求。某些實施例中,可能有複數個資源組合皆能滿足雲端資源配置需求時,處理器120可進一步判斷是否其他條件來輔助其選擇其中一資源組合。例如,處理器120可根據一選取規則選擇滿足雲端資源配置需求之複數個資源組合中總價格最低者;或者,處理器120可據以 選擇滿足雲端資源配置需求之複數個資源組合中平均效能參數值最高者。某些實施例中,選取規則可依雲端資源管理政策設定或調整。例如,雲端資源管理政策可反映出使用者偏好,使用者可設定當前雲端資源管理政策為成本最小導向,故在此政策下,處理器120可依相應規則選取價格最低之資源組合;或者,雲端資源管理政策可設為虛擬機數量最大化並配合處理器本身效能最小化之導向,使處理器120較偏向選取低階處理機之資源組合。
在一些實施例中,雲端資源需求包含目標需求值,例如資源成本。處理器120會根據各資源組合的參數值來計算組合需求值,以於複數個資源組合中選定其一。組合需求值例如是資源成本。舉例來說,第一資源組合的資源成本是$23.8512,第二資源組合的資源成本是$43.7592,第三資源組合的資源成本是$12.4407,第四資源組合的資源成本是$8.338。在某些實施例中,雲端資源需求可包含對特定參數值如某資源價格的限定,則處理器120可根據該限定而先排除不符合的資源配置。例如,若使用者要求排除價格高於每小時$4的配置,則處理器120可先剔除每小時$4的所有配置,再行計算資源組合。又如,若欲僅使用最新版本之資源,則處理器120可先剔除所有舊版本之配置,再行計算資源組合。據此,在某些情況下,可大幅減少計算量。
處理器120根據目標需求值與各資源組合的 組合需求值來選定一資源組合,例如比對目標需求值與各資源組合的組合需求值而選定其中一資源組合。
在一些實施例中,處理器120於組合需求值中小於目標需求值的資源組合來作為選定的資源組合。舉例來說,若目標需求值是指$30.0的資源成本,則處理器120選擇資源成本低於$30.0的資源組合,如資源成本為$12.4407的第三資源組合。
在另一些實施例中,處理器120根據資源組合的組合需求值中的最小者來選擇資源組合。舉例來說,處理器120會選擇資源成本最小的第四資源組合。
在步驟S250中,經由網路介面110向第一雲環境送出第一請求,以於第一雲環境中配置第一雲端資源,其中第一雲端資源屬於該些雲環境中之第一雲環境。
舉例來說,當處理器120選擇表四中之第四資源組合,如前述步驟S240所述,第四資源組合包含雲環境150b的雲端資源之1單位的第四配置。因此,經由網路介面110向雲環境150b送出請求,以於雲環境150b中配置1單位的16個處理器、1單位的32GB記憶體以及CentOS作業系統。雲環境150b可依據該請求而進行相應配置。
在步驟S260中,經由網路介面110向第二雲環境送出第二請求,以於第二雲環境中配置第二雲端資源,其中第二雲端資源屬於該些雲環境中之第二雲環 境。
舉例來說,當處理器120選擇第四資源組合,如前述步驟S240所述,第四資源組合還包含雲環境150c的雲端資源之2單位的第四配置。因此,經由網路介面110向雲環境150c送出請求,以於雲環境150c中配置2單位的8個處理器以及2單位的30GB記憶體以及2單位的16GB儲存資源。雲環境150c可依據該請求而進行相應配置。據此,雲端資源管理系統100針對指令可依本文件所揭露之方式將需求分配給雲環境150b及雲環境150c,如此使用者不需煩惱雲環境的選擇及配置細節而仍可完成需求。
在某些實施例中,處理器120可辨識關聯於雲端資源需求項目至少一者之一權重值,以作為計算資源組合之依據。在一些實施例中,經由網路介面110於複數個雲環境如雲環境150a~150c獲得關聯於步驟S210所讀取到的指令時,處理器120根據指令辨識關聯於雲端資源需求項目的權重值。接著,藉由處理器120根據雲端資源需求項目的權重值與雲端資源需求項目的參數值,來計算出資源組合。值得一提的是,雲端資源需求項目的權重值可以為選擇性的參數,此權重值用來提高或降低雲端資源項目被選擇的機率。舉例來說,若上表二的作業系統(或其發行版本)被設定有權重值,例如Red Hat的權重值為0.8以及CentOS的權重值為0.4,若指令中也包含有作業系統的權重值之要求,則處理器120會以 權重值高的雲端資源作為優先考量,例如Red Hat的作業系統相較於CentOS會被優先選擇。
在一些實施例中,雲端資源需求項目的權重值可根據被選擇的次數,來增加雲端資源需求項目的權重值。舉例來說,雲環境150b的雲端資源之第四配置與雲環境150c的雲端資源之第四配置被選擇,因此在該次的資源配置後,雲環境150b的雲端資源之第四配置與雲環境150c的雲端資源之第四配置的選擇或配置記錄將作為歷史資料,而依此歷史資料更新雲端資源的權重值,例如增加該等配置的權重值。如此一來,雲端資源管理系統100可學習每一次的資源配置,避免每一次的資源組合或者總資源成本的變化程度太大,以符合使用者的使用習慣。例如,雲端資源管理系統100更選用地包含一資料庫140,用以儲存一包含權重設定規則之模型,以藉由歷史資料訓練模型而更新權重值。在一些實施例中,資料庫140尚可用以儲存歷史資料及/或權重值。
請復參照第1圖,雲端資源管理系統100包含使用者介面130。使用者介面130耦接於處理器120。使用者介面130提供例如使用者圖形化介面或命令列介面,使得處理器120透過使用者介面130獲得雲端資源需求項目的權重值。如此一來,使用者可透過使用者介面130來設定雲端資源需求項目的權重值。
如上文提及之雲端資源管理政策,使用者也可以根據實際需求設定其他偏好條件。舉例來說,偏好 條件可以是所欲之雲端資源的作業系統(或版本)、數量上限/下限、可用期間、雲端資源的實體存在位置(例如國家或地區或其他地理位置,如機房位置)等。例如,使用者可將雲端資源限制於某地理位置,或將之排除於某地理位置之外。偏好條件亦可以透過權重值設定,例如權重值越高,代表該雲端資源是使用者希望使用的資源。在某些實施例中,偏好條件可進一步將限制條件區分出來,以利增加計算之操作度。例如,偏好條件可包括虛擬機數量、虛擬機數量之上限、喜好之雲環境等,而限制條件可包括作業系統與版本、硬體(如伺服器或處理器)之新舊與可用期間、雲端服務機房位置等。某些實施例中,偏好條件可作為「軟性」條件,而限制條件可作為「硬性」條件。例如,可賦予軟性條件較低權重值,而賦予硬性條件較高之權重值。
在另一些實施例中,處理器120會執行整合移動平均自回歸模型(Autoregressive Integrated Moving Average model,ARIMA),以自動迴歸的樹狀模型將過去的雲端資源使用記錄與所預測的雲端資源需求產生關聯,以估測未來的雲端資源需求。處理器120也可執行遞歸神經網路(Recurrent Neural Network,RNN),使用歷史資料來預測每一個週期的雲端資源需求。如此一來,雲端資源管理系統100不只是依據雲端資源需求來計算所需要的資源組合,還可以藉由歷史資料來預測未來的一段週期內符合雲端資源需求之資源 組合。例如,電子商務的流量相當具有規律性,例如平日每天中午的一小時與晚上7點到12點的流量最高,每日凌晨3點到6點流量最低。一週七天在週末時段的流量又比平日高。據此,處理器120可針對當前所使用之雲端資源收集一段時間的流量變化作為歷史資料(如Log),歷史資料可包含雲端資雲之處理器使用狀況(如用量百分比)、記憶體使用狀況、IOPS等資料,可以得到當前所使用之雲端資源的系統效能的歷史曲線。處理器120可將此歷史曲線等作為機器學習的模型訓練值。
舉例來說,如上表一至表三中的雲端資源包含雲端資源規格。另一方面,處理器120計算得到的資源組合包含等效規格。因此,處理器120根據雲端資源規格來計算與其等效的規格,於所有等效於雲端資源規格的雲端資源當中計算滿足或符合雲端資源需求的雲端資源。舉例來說,本文件所涉及的雲端資源的執行能力符合雲端資源需求者,均可被用於雲端運算當中,並不以硬體及/或虛擬資源完全一樣為限,例如同樣型號、同樣類型、同樣等級、或同樣世代的運算能力的處理器但為不同廠商製造或品牌者,均可屬於等效規格的範疇。
圖3繪示根據本揭示文件一些實施例中一種雲端資源管理方法300的步驟流程圖。在步驟S305中,雲端資源管理系統100取得一雲端資源需求之所欲總成本及啟動時間。例如,所欲總成本可包含一成本絕對 值,或一成本區間。所欲總成本可包含一成本閾值,以作為雲端資源管理系統100於後續計算及/或選擇資源組合之參數。如上文所述,啟動時間可為一絕對時間、週期性時間等。
在步驟S310中,雲端資源管理系統100取得一或多個偏好條件。該一或多個偏好條件可經由使用者介面130或API自使用者或使用者之系統取得。某些實施例中,偏好條件可已儲存於自雲端資源管理系統100內。偏好條件之實施例可參照如本文件上文相關部分。例如,偏好條件可包括付款條件,如預付款、不預付款、分期付款等。又如偏好條件可包括雲端資源之地理位置、雲端資源數量、雲端資源價格等。再者,偏好條件可利用如上文所述之雲端資雲管理政策的方式取得。
在步驟S315中,雲端資源管理系統100取得複數個雲環境所提供的複數個雲端資源清單。複數個雲環境可為於通聯方式上不相容之多個雲環境,如各雲環境均有其專屬之API。雲端資源清單可包含如上文所述(並請參照表格一至三)之根據雲端資源需求項目所提供的不同配置。
在步驟S320中,雲端資源管理系統100將複數個雲端資源清單與偏好條件進行比對,將複數個雲端資源清單中不符合偏好條件的配置剔除,產生計算用之配置。例如,偏好條件將雲端作業系統限制為Linux作業系統時,雲端資源清單中使用非Linux作業系統的配置會 被剔除,所剩之配置將可利用做後續的計算。
在步驟S325中,雲端資源管理系統100根據計算用之配置產生多個雲端資源組合,並計算各個雲端資源組合之價格。雲端資源管理系統100可根據本文件揭露之各種方法進行計算。此外,雲端資源管理系統100可賦予計算用之配置中至少一個雲端資源需求項目相應的權重值。有關權重的描述亦可參照本文前揭之實施例。
在步驟S330中,雲端資源管理系統100根據所欲總成本自多個雲端資源組合中選定一所欲雲端資源組合。例如,雲端資源管理系統100將多個雲端資源組合的價格與所欲總成本進行比對,於多個雲端資源組合中選取價格低於所欲總成本的雲端資源組合。若有多個價格低於所欲總成本的雲端資源組合,則可選取價格最低者。
在步驟S335中,雲端資源管理系統100根據所選定之所欲雲端資源組合對複數個雲環境進行雲端資源佈署。例如,若所選定之所欲雲端資源組合包含A雲環境及B雲環境的資源時,則依據該雲端資源組合針對A雲環境及B雲環境進行佈署,以滿足雲端資源需求的內容。
圖4繪示根據本揭示文件一些實施例中一種雲端資源管理方法400的步驟流程圖。雲端資源管理方法400與雲端資源管理方法300之主要差別在於,於雲端 資源管理方法400中,雲端資源需求不包含成本條件及偏好條件,而時間條件則由雲端資源管理系統100可運用之歷史資料來決定。例如,雲端資源管理系統100根據當前(或過去)使用雲端服務記錄之歷史資料,經由機器學習產生未來用量之預測曲線。如上述,雲端資源管理系統100可利用深度學習的遞歸神經網路(RNNs)來預測時間序列,在此情境下,同一個時間單位會有許多類似的特徵時間序列(處理器、IOPS等),而利用不同序列,例如每週、每天、每小時為最小單位的歷史資料,可預測得到系統(雲端服務資源)未來的效能需求曲線。
在步驟S410中,雲端資源管理方法400辨識一任務需求,該任務需求包含執行一第一任務。例如,任務需求可包含指示繼續執行當前或執行中之一任務,而當前任務已在利用特定之雲端資源配置。或者,任務需求可包含基於一使用特定雲端資源配置而執行完畢之任務,針對該執行完畢之任務於過去的雲端資源配置使用記錄而指示於未來特定時間執行與該執行完畢任務相同之任務。
在步驟S420中,辨識一第二任務,取得第二任務之歷史資料。如上述,第二任務可為當前執行中或已執行完畢之任務。如本文件所揭露,歷史資料可包含雲端資源配置及/或使用記錄。
在步驟S430中,利用該歷史資料預測第一任務之雲端資源需求。如本文件所揭露,可透過本文件所 揭露之演算法進行雲端資源之需求曲線的預測。
在步驟S440中,根據所預測之雲端資源需求,進行複數個雲環境之雲端資源配置。如本文件所揭露,在預測雲端資源需求之後,可分別將對應複數個雲環境的需求傳送出去,以達於複數個雲環境中配置對應之雲端資源。
第5圖繪示根據本揭示文件一些實施例中一種雲端資源管理裝置500的功能方塊示意圖。雲端資源管理裝置500包含辨識指令模組510、雲端資源需求項目取得模組520、資源組合計算與選定模組530、機器學習模型540以及請求發送模組550。
如第5圖所示,辨識指令模組510用以接收一指令,或接收自動產生、因應事件產生、或週期性產生之一指令。關於接收或產生指令的說明如第2圖的步驟S210,於此不予重述。
雲端資源需求項目取得模組520用以擷取雲端資源需求項目。在一實施例中,雲端資源需求項目取得模組520根據辨識指令模組510辨識出的指令中之參數值,而獲得包含有雲端資源需求項目的所需要資源量和/或運算能力的資訊。在另一實施例中,雲端資源需求項目取得模組520向複數個雲環境發出請求以獲取關聯於指令的雲端資源需求之複數個雲端資源需求項目。
資源組合計算與選定模組530用以根據指令所針對雲端資源需求項目的參數值計算出複數個資源 組合。關於計算出複數個資源組合的說明如第2圖的步驟S230~S240,於此不予重述。
機器學習模型540用以計算新的資源組合。在一些實施例中,機器學習模型540可針對過往的不同資源組合來執行數值演算法、機器學習演算法或其他演算法,以訓練出不同的模型,使得訓練出來的模型可用以計算新的資源組合。
請求發送模組550用以針對機器學習模型540計算出的資源組合,向關聯於資源組合的一或多個雲環境送出請求。向雲環境發送請求的說明如第2圖的步驟S250,於此不予重述。
在一些實施例中,雲端資源管理方法200亦可實作為包含多個程式碼的電腦程式,並儲存於非暫態電腦可讀取記錄媒體。程式碼被載入至如第1圖的處理器120後,處理器120執行程式碼並操作如第2圖之步驟S210~S250。舉例來說,處理器120讀取指令以擷取雲端資源需求,經由網路介面110自複數個雲環境中獲得關聯於指令之複數個雲端資源需求項目。處理器120根據指令針對雲端資源需求項目之參數值以計算複數個資源組合。處理器120自該些資源組合中選定一資源組合,其中被選定的資源組合包含第一雲端資源以及第二雲端資源。經由網路介面110向第一雲環境送出第一請求,以於雲環境中配置第一雲端資源,以及經由網路介面110向第二雲環境送出第二請求,以於雲環境中配置第二雲 端資源。
在一些實施例中,雲端資源管理方法300亦可實作為包含多個程式碼的電腦程式,並儲存於非暫態電腦可讀取記錄媒體。程式碼被載入至如第1圖的處理器120後,處理器120執行程式碼並操作如第3圖之步驟S305~S335。
在一些實施例中,雲端資源管理方法400亦可實作為包含多個程式碼的電腦程式,並儲存於非暫態電腦可讀取記錄媒體。程式碼被載入至如第1圖的處理器120後,處理器120執行程式碼並操作如第4圖之步驟S410~S440。
在一些實施例中,非暫態電腦可讀取記錄媒體可為唯讀記憶體、快閃記憶體、軟碟、硬碟、光碟、隨身碟、磁帶、可由網路存取之資料庫或熟悉此技藝者可輕易思及具有相同功能之非暫態電腦可讀取記錄媒體。
綜上所述,本案提供一種雲端資源管理系統以及雲端資源管理方法,經由網路介面110向關聯於被選定的資源組合之雲環境發送請求,以於關聯的雲環境配置雲端資源,如此一來,即可實現雲端資源的動態配置。除此之外,本案可以根據當下的資源組合的運作狀況,例如業務需求、線上顧客數目、系統效能等因素,即時地判定狀況並動態地調整資源組合,以產生最適合雲端服務資源。
上文概述若干實施例之特徵,使得熟習此項技術者可更好地理解本發明之態樣。熟習此項技術者應瞭解,可輕易使用本發明作為設計或修改其他製程及結構的基礎,以便實施本文所介紹之實施例的相同目的及/或實現相同優勢。熟習此項技術者亦應認識到,此類等效結構並未脫離本發明之精神及範疇,且可在不脫離本發明之精神及範疇的情況下產生本文的各種變化、替代及更改。
100‧‧‧雲端資源管理系統
110‧‧‧網路介面
120‧‧‧處理器
130‧‧‧使用者介面
140‧‧‧資料庫
150a~150n‧‧‧雲環境

Claims (17)

  1. 一種雲端資源管理系統,適配於介接複數個雲環境,該些複數個雲環境至少包含一第一雲環境及一第二雲環境,各該雲環境包含複數個雲端資源,該雲端資源管理系統包含:一網路介面,用以提供該雲端資源管理系統與該些複數個雲端資源介接之一介面;以及一處理器,耦接該網路介面,其中該處理器用以:辨識一指令,該指令定義一雲端資源配置需求;經由該網路介面自該些雲環境獲得關聯於該指令之複數個雲端資源需求項目,其中各該雲端資源需求項目包含一參數值,其中該參數值包含一資源種類資訊、一資源規格資訊、一資源數量資訊、一資源時間資訊、一資源價格資訊、一收費方式資訊、一資源狀態資訊中至少一者,其中該些雲端資源需求項目依不同的參數值或參數值的組合而形成複數組資源配置,各該複數個雲環境包含該複數組資源配置中至少一者;根據該指令針對該些雲端資源需求項目之該些參數值計算出複數個資源組合,其中各該資源組合包含該些雲端資源之至少一者,其中各該資源組合包含該複數組資源配置中至少一者,且該複數個資源組合中至少一個資源組合包含屬於該第一雲 環境之至少一組資源配置及屬於該第二雲環境之至少一組資源配置,且該些複數個資源組合滿足一等效規格;自該些資源組合選定一第一資源組合,該第一資源組合包含一第一雲端資源及一第二雲端資源,該第一資源組合滿足該指令之該雲端資源配置需求,其中,該第一雲端資源屬於該第一雲環境,該第二雲端資源屬於該第二雲環境;經由該網路介面向該第一雲環境送出一第一請求,以於該第一雲環境中配置該第一雲端資源;以及經由該網路介面向該第二雲環境送出一第二請求,以於該第二雲環境中配置該第二雲端資源。
  2. 如請求項1所述之雲端資源管理系統,其中,該雲端資源配置需求包含一雲端資源規格,該等效規格不相同於但滿足該雲端資源配置需求之該雲端資源規格。
  3. 如請求項1所述之雲端資源管理系統,其中,該指令之該雲端資源配置需求包含一目標需求值,該處理器還用以:以各該資源組合的該參數值計算一組合需求值;以及 根據該目標需求值以及各該資源組合之該組合需求值,以選定該第一資源組合。
  4. 如請求項3所述之雲端資源管理系統,其中該處理器還用以執行以下至少一者,以選定該第一資源組合:於該些組合需求值中選取小於該目標需求值之該些資源組合之一者;或選取該些組合需求值中之最小者。
  5. 如請求項1所述之雲端資源管理系統,其中該處理器還用以:辨識關聯於該些雲端資源需求項目至少一者之一權重值;根據該些雲端資源需求項目至少一者的該權重值及該些雲端資源需求項目之該些參數值計算出該些資源組合。
  6. 如請求項5所述之雲端資源管理系統,其中該處理器還用以:根據一歷史資料以更新該些雲端資源需求項目至少一者的該權重值,其中該些雲端資源需求項目的權重值可根據被選擇的次數,來增加該些雲端資源需求項目的權重值。
  7. 如請求項6所述之雲端資源管理系統,其中該歷史資料包含一選擇記錄,該選擇記錄記載曾被選擇之一組資源配置,其中該處理器還用以:對曾被選擇之該組資源配置的一權重值進行更新。
  8. 如請求項5所述之雲端資源管理系統,更包含一使用者介面,其中該處理器還用以:透過該使用者介面獲得該些雲端資源需求項目至少一者的該權重值。
  9. 如請求項1所述之雲端資源管理系統,其中該處理器還用以:執行一數值演算法和一機器學習演算法之至少一者,以計算出該些資源組合,其中該數值演算法為一線性規劃或一非線性規劃演算法,該機器學習演算法為一最小方均根、一隨機森林回歸因子、一線性回歸、或一支持向量機演算法。
  10. 如請求項1所述之雲端資源管理系統,其中該些資源組合更包含一第二資源組合,該第二資源組合與該第一資源組合具有效能相同之規格而滿足該等效規格。
  11. 如請求項1所述之雲端資源管理系統,其中各該複數組資源配置包含一雲端資源規格,且該等效規格係由該處理器依該些雲端資源規格計算出。
  12. 如請求項11所述之雲端資源管理系統,其中該複數組資源配置包含一第一組資源配置及一第二組資源配置,該第一組資源配置包含一第一雲端資源規格,該第二組資源配置包含一第二雲端資源規格,其中該處理器還用以:依該第一雲端資源規格及該第二雲端資源規格計算出該等效規格。
  13. 如請求項12所述之雲端資源管理系統,其中該第一組資源配置包含該第一雲端資源,且該第二組資源配置包含該第二雲端資源。
  14. 如請求項1所述之雲端資源管理系統,其中該複數組資源配置包含一第一組資源配置及一第二組資源配置,且該處理器用以計算出複數個資源組合更包含計算出包含於該第一資源組合中之一第一數量之該第一組資源配置及一第二數量之該第二組資源配置。
  15. 如請求項14所述之雲端資源管理系統,其中該第一請求包含向該第一雲環境請求依該第一數量之該第一組資源配置來配置該第一雲端資源,且該第二請求包含向該第二雲環境請求依該第二數量之該第二組資源配置來配置該第二雲端資源。
  16. 一種雲端資源管理方法,適用於一雲端管理系統,其中該雲端管理系統適配於介接複數個雲環境,該些複數個雲環境至少包含一第一雲環境及一第二雲環境,各該雲環境包含複數個雲端資源,其中該資源管理方法包含:辨識一指令,該指令定義一雲端資源配置需求;自該些雲環境獲得關聯於該指令之複數個雲端資源需求項目,其中各該雲端資源需求項目包含一參數值,其中該參數值包含一資源種類資訊、一資源規格資訊、一資源數量資訊、一資源時間資訊、一資源價格資訊、一收費方式資訊、一資源狀態資訊中至少一者,其中該些雲端資源需求項目依不同的參數值或參數值的組合而形成複數組資源配置,各該複數個雲環境包含該複數組資源配置中至少一者;根據該指令針對該些雲端資源需求項目之該些參數值計算出複數個資源組合,其中各該資源組合包含該些雲端資源之至少一者,其中各該資源組合包含該複數組資源配置中至少一者,且該複數個資源組合中至少一 個資源組合包含屬於該第一雲環境之至少一組資源配置及屬於該第二雲環境之至少一組資源配置,且該些複數個資源組合滿足一等效規格;自該些資源組合選定一第一資源組合,該第一資源組合包含一第一雲端資源及一第二雲端資源,該第一資源組合滿足該指令之該雲端資源配置需求,其中,該第一雲端資源屬於該第一雲環境,該第二雲端資源屬於該第二雲環境;向該第一雲環境送出一第一請求,以於該第一雲環境中配置該第一雲端資源;以及向該第二雲環境送出一第二請求,以於該第二雲環境中配置該第二雲端資源。
  17. 一種非暫態電腦可讀取儲存媒體,儲存多個程式碼,當該些程式碼被載入至一處理器後,該處理器執行該些程式碼以執行下列步驟:辨識一指令,該指令定義一雲端資源配置需求;自複數個雲環境獲得關聯於該指令之複數個雲端資源需求項目,其中各該雲端資源需求項目包含一參數值,其中該參數值包含一資源種類資訊、一資源規格資訊、一資源數量資訊、一資源時間資訊、一資源價格資訊、一收費方式資訊、一資源狀態資訊中至少一者,其中該些雲端資源需求項目依不同的參數值或參數值的組合而形成複數組資源配置,各該複數個雲環境包含該 複數組資源配置中至少一者,該些複數個雲環境至少包含一第一雲環境及一第二雲環境;根據該指令針對該些雲端資源需求項目之該些參數值計算出複數個資源組合,其中各該資源組合包含該些雲端資源之至少一者,其中各該資源組合包含該複數組資源配置中至少一者,且該複數個資源組合中至少一個資源組合包含屬於該第一雲環境之至少一組資源配置及屬於該第二雲環境之至少一組資源配置,且該些複數個資源組合滿足一等效規格;自該些資源組合選定一第一資源組合,該第一資源組合包含一第一雲端資源及一第二雲端資源,該第一資源組合滿足該指令之該雲端資源配置需求,其中,該第一雲端資源屬於該第一雲環境,該第二雲端資源屬於該第二雲環境;向該第一雲環境送出一第一請求,以於該第一雲環境中配置該第一雲端資源;以及向該第二雲環境送出一第二請求,以於該第二雲環境中配置該第二雲端資源。
TW108119055A 2019-05-31 2019-05-31 雲端資源管理系統、雲端資源管理方法以及非暫態電腦可讀取記錄媒體 TWI723410B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
TW108119055A TWI723410B (zh) 2019-05-31 2019-05-31 雲端資源管理系統、雲端資源管理方法以及非暫態電腦可讀取記錄媒體
US16/661,066 US11003503B2 (en) 2019-05-31 2019-10-23 Cloud resource management system, cloud resource management method, and non-transitory computer-readable storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW108119055A TWI723410B (zh) 2019-05-31 2019-05-31 雲端資源管理系統、雲端資源管理方法以及非暫態電腦可讀取記錄媒體

Publications (2)

Publication Number Publication Date
TW202046682A TW202046682A (zh) 2020-12-16
TWI723410B true TWI723410B (zh) 2021-04-01

Family

ID=73550700

Family Applications (1)

Application Number Title Priority Date Filing Date
TW108119055A TWI723410B (zh) 2019-05-31 2019-05-31 雲端資源管理系統、雲端資源管理方法以及非暫態電腦可讀取記錄媒體

Country Status (2)

Country Link
US (1) US11003503B2 (zh)
TW (1) TWI723410B (zh)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11516285B2 (en) * 2019-12-05 2022-11-29 Cloud4U Cloud system realization apparatus and method, recording medium storing program for executing the same
US11886910B2 (en) * 2019-12-27 2024-01-30 Intel Corporation Dynamic prioritization of system-on-chip interconnect traffic using information from an operating system and hardware
US11561842B2 (en) * 2020-01-31 2023-01-24 Hewlett Packard Enterprise Development Lp Determining and implementing a feasible resource optimization plan for public cloud consumption
US11907905B2 (en) 2020-04-01 2024-02-20 VMware LLC Namespace management techniques for facilitating multi-cluster application development
US11182219B2 (en) * 2020-04-14 2021-11-23 Vmware, Inc. SaaS infrastructure for flexible multi-tenancy
US11620166B2 (en) 2020-04-14 2023-04-04 Vmware, Inc. Communications framework for multi-cluster management systems
US11886912B2 (en) * 2020-10-19 2024-01-30 Salesforce Inc. Multi substrate public cloud big data jobs as a service
US11966775B2 (en) * 2020-12-01 2024-04-23 Sap Se Cloud native adaptive job scheduler framework for dynamic workloads
CN112667360A (zh) * 2020-12-31 2021-04-16 宝付网络科技(上海)有限公司 一种基于Kubernetes与docker统一调度云平台系统
CN113535358A (zh) * 2021-07-20 2021-10-22 中国工商银行股份有限公司 任务处理方法及装置
CA3171087A1 (en) * 2021-08-27 2023-02-27 Upswot, Inc. Methods and systems for facilitating incorporation of data types when assessing credit
CN115277693A (zh) * 2022-06-21 2022-11-01 中国电信股份有限公司 云资源调度方法及其系统、计算机可读存储介质
CN116436919B (zh) * 2023-06-13 2023-10-10 深圳市明源云科技有限公司 云资源消耗优化方法、装置、电子设备及可读存储介质
CN116471327B (zh) * 2023-06-16 2023-09-05 中国联合网络通信集团有限公司 云资源处理方法、装置、设备及存储介质

Citations (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140052768A1 (en) * 2012-08-20 2014-02-20 International Business Machines Corporation System and method supporting application solution composition on cloud
US20140282525A1 (en) * 2013-03-15 2014-09-18 Gravitant, Inc. Creating, provisioning and managing virtual data centers
US20150074279A1 (en) * 2012-07-31 2015-03-12 Stephane Herman Maes Orchestrating hybrid cloud services
US20150222723A1 (en) * 2013-03-15 2015-08-06 Gravitant, Inc Budget management functionality within a cloud service brokerage platform
US20150373012A1 (en) * 2014-06-19 2015-12-24 Microsoft Corporation Integrated APIs and UIs for Consuming Services across Different Distributed Networks
US9240025B1 (en) * 2012-03-27 2016-01-19 Amazon Technologies, Inc. Dynamic pricing of network-accessible resources for stateful applications
US20160269319A1 (en) * 2015-03-13 2016-09-15 Microsoft Technology Licensing, Llc Intelligent Placement within a Data Center
WO2016186631A1 (en) * 2015-05-15 2016-11-24 Hewlett Packard Enterprise Development Lp Price, completion time, and resource allocation determination for cloud services
US20170195247A1 (en) * 2015-12-31 2017-07-06 EMC IP Holding Company LLC Method and apparatus for cloud system
CN107395733A (zh) * 2017-07-31 2017-11-24 上海交通大学 地理分布交互服务云资源协同优化方法
US20180095778A1 (en) * 2016-09-30 2018-04-05 Uchicago Argonne, Llc Systems and methods for metric driven deployments to cloud service providers
US20180287864A1 (en) * 2017-04-04 2018-10-04 International Business Machines Corporation Configuration and Usage Pattern of a Cloud Environment Based on Iterative Learning
US20180316620A1 (en) * 2017-04-28 2018-11-01 Alcatel-Lucent Usa Inc. Service function placement and routing
US20180321971A1 (en) * 2017-05-04 2018-11-08 salesforce.com,inc. Systems, methods, and apparatuses for implementing a scalable scheduler with heterogeneous resource allocation of large competing workloads types using qos
US10250451B1 (en) * 2014-01-13 2019-04-02 Cazena, Inc. Intelligent analytic cloud provisioning
TWM583564U (zh) * 2019-05-31 2019-09-11 美商伊雲谷科技股份有限公司 雲端資源管理系統

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110145094A1 (en) 2009-12-11 2011-06-16 International Business Machines Corporation Cloud servicing brokering
WO2011091056A1 (en) 2010-01-19 2011-07-28 Servicemesh, Inc. System and method for a cloud computing abstraction layer
TWI425421B (zh) 2010-07-07 2014-02-01 Univ Shu Te Load Balancing Design Method of Virtual Machine in Cloud Computing Environment
US20120016721A1 (en) 2010-07-15 2012-01-19 Joseph Weinman Price and Utility Optimization for Cloud Computing Resources
US8676622B1 (en) 2012-05-01 2014-03-18 Amazon Technologies, Inc. Job resource planner for cloud computing environments
US20170358017A1 (en) 2012-06-26 2017-12-14 Google Inc. Price breaks in a cloud computing system for using an automatic scheduler
CN109918021B (zh) * 2014-11-05 2022-01-07 超聚变数字技术有限公司 数据处理方法和装置
US9800465B2 (en) 2014-11-14 2017-10-24 International Business Machines Corporation Application placement through multiple allocation domain agents and flexible cloud scheduler framework
US20170372384A1 (en) 2016-06-27 2017-12-28 Vmware, Inc. Methods and systems to dynamically price information technology services
US20200210244A1 (en) * 2018-12-30 2020-07-02 Nokia Solutions And Networks Oy Virtual resource placement

Patent Citations (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9240025B1 (en) * 2012-03-27 2016-01-19 Amazon Technologies, Inc. Dynamic pricing of network-accessible resources for stateful applications
US20150074279A1 (en) * 2012-07-31 2015-03-12 Stephane Herman Maes Orchestrating hybrid cloud services
US20140052768A1 (en) * 2012-08-20 2014-02-20 International Business Machines Corporation System and method supporting application solution composition on cloud
US20140282525A1 (en) * 2013-03-15 2014-09-18 Gravitant, Inc. Creating, provisioning and managing virtual data centers
US20150222723A1 (en) * 2013-03-15 2015-08-06 Gravitant, Inc Budget management functionality within a cloud service brokerage platform
US10250451B1 (en) * 2014-01-13 2019-04-02 Cazena, Inc. Intelligent analytic cloud provisioning
US20150373012A1 (en) * 2014-06-19 2015-12-24 Microsoft Corporation Integrated APIs and UIs for Consuming Services across Different Distributed Networks
US20160269319A1 (en) * 2015-03-13 2016-09-15 Microsoft Technology Licensing, Llc Intelligent Placement within a Data Center
WO2016186631A1 (en) * 2015-05-15 2016-11-24 Hewlett Packard Enterprise Development Lp Price, completion time, and resource allocation determination for cloud services
US20170195247A1 (en) * 2015-12-31 2017-07-06 EMC IP Holding Company LLC Method and apparatus for cloud system
US20180095778A1 (en) * 2016-09-30 2018-04-05 Uchicago Argonne, Llc Systems and methods for metric driven deployments to cloud service providers
US20180287864A1 (en) * 2017-04-04 2018-10-04 International Business Machines Corporation Configuration and Usage Pattern of a Cloud Environment Based on Iterative Learning
US20180316620A1 (en) * 2017-04-28 2018-11-01 Alcatel-Lucent Usa Inc. Service function placement and routing
US20180321971A1 (en) * 2017-05-04 2018-11-08 salesforce.com,inc. Systems, methods, and apparatuses for implementing a scalable scheduler with heterogeneous resource allocation of large competing workloads types using qos
CN107395733A (zh) * 2017-07-31 2017-11-24 上海交通大学 地理分布交互服务云资源协同优化方法
TWM583564U (zh) * 2019-05-31 2019-09-11 美商伊雲谷科技股份有限公司 雲端資源管理系統

Also Published As

Publication number Publication date
US11003503B2 (en) 2021-05-11
US20200379816A1 (en) 2020-12-03
TW202046682A (zh) 2020-12-16

Similar Documents

Publication Publication Date Title
TWI723410B (zh) 雲端資源管理系統、雲端資源管理方法以及非暫態電腦可讀取記錄媒體
US9571347B2 (en) Reactive auto-scaling of capacity
EP2904491B1 (en) Method, node and computer program for enabling automatic adaptation of resource units
US20140282520A1 (en) Provisioning virtual machines on a physical infrastructure
CN113900767B (zh) 监测集群和实施自动缩放策略的容器即服务控制器
US20120239739A1 (en) Apparatus, systems and methods for dynamic adaptive metrics based application deployment on distributed infrastructures
US11064041B2 (en) Apparatus for providing cloud service using cloud service brokerage based on multiple clouds and method thereof
US20120022910A1 (en) Intelligent management of virtualized resources for cloud database systems
US11726836B2 (en) Predicting expansion failures and defragmenting cluster resources
JP2017126975A (ja) データセンターのネットワークトラフィックスケジューリング方法及び装置
US8949429B1 (en) Client-managed hierarchical resource allocation
CN110532086B (zh) 资源复用方法、设备、系统及存储介质
US20210109789A1 (en) Auto-scaling cloud-based computing clusters dynamically using multiple scaling decision makers
US10970113B1 (en) Systems and methods for orchestrating seamless, distributed, and stateful high performance computing
US10834220B2 (en) Apparatus for providing cloud brokerage service based on multiple clouds and method thereof
US20200387401A1 (en) Allocating cloud resources in accordance with predicted deployment growth
CN111414070A (zh) 一种机箱功耗管理方法、系统及电子设备和存储介质
TWM583564U (zh) 雲端資源管理系統
CN112235373A (zh) 基于应用ai的云桌面调度系统及其调度方法
WO2020206699A1 (en) Predicting virtual machine allocation failures on server node clusters
Naskos et al. Cost-aware horizontal scaling of NoSQL databases using probabilistic model checking
CN112306666B (zh) 云端资源管理系统及方法、以及非暂态电脑可读取记录媒体
Jayalakshmi Predictive scaling for elastic compute resources on public cloud utilizing deep learning based long short-term memory
US20230308353A1 (en) Apparatus and method for managing multi-cloud computing infrastructure
Galantino et al. RAYGO: Reserve as you go