什麼是工作量?

工作負載是計算任務、流程或資料交易。工作負載包含執行和管理應用程式與資料所需的運算能力、記憶體、儲存與網路資源。在雲端架構中,工作負載是使用雲端伺服器託管的運算能力的服務、功能或應用程式。雲端工作負載依賴虛擬機 (VM)、容器、無伺服器、 微服務、儲存桶、軟體即服務 (Saas)、基礎設施即服務 (Iaas) 等技術。

 

工作量說明

工作負載包含電腦系統或軟體正在處理的所有任務。這些任務的範圍從完成一個次要的計算動作,到管理複雜的資料分析或執行密集的關鍵業務應用程式。工作負載本質上定義了對 IT 資源的需求,這些資源包括伺服器、虛擬機器 (VM) 和容器。

我們也可以考慮資料處理、資料庫管理和渲染任務等作業,將應用層級的工作負載分類。工作負載的層級和類型會影響系統的效能。在某些情況下,如果沒有有效的管理,負載的強度可能會造成系統中斷或速度變慢。

 

工作量類型

對於運算、儲存和網路資源的獨特需求,定義了每種類型的工作負載。

  • 計算工作負載 是指需要處理能力和記憶體才能執行其功能的應用程式或服務。這些可能包括虛擬機器、容器和無伺服器功能。
  • 儲存工作負載是指需要大量資料儲存的服務,例如內容管理系統和資料庫。
  • 視訊串流和線上遊戲等網路工作負載需要高網路頻寬和低延遲。
  • 大型資料工作負載 需要處理和分析大型資料集,例如機器學習 (ML) 和人工智慧。
  • Web 工作負載 是透過網際網路存取的應用程式或服務。這些網站包括電子商務網站、社交媒體平台和網路應用程式。
  • 高效能運算工作負載 是指需要高處理能力的服務。例如天氣建模和財務建模。
  • 物聯網 (IoT) 工作負載 需要處理和分析來自感測器和其他裝置的資料,例如智慧家庭、工業自動化和連結車輛。

當時與現在的工作量

在共用大型電腦的早期,工作負載是由其用途所定義的。事務性工作負載一次執行一個工作,以確保資料的完整性,而批次工作負載則代表一批在沒有使用者介入下執行的指令或程式。即時工作負載即時處理傳入的資料。

但隨著雲端應用的興起,工作負載的概念也在演變,從傳統的內部部署資料中心轉移到雲端環境。這種轉型涉及將工作負載遷移至基礎設施即服務(IaaS)、平台即服務(PaaS) 或軟體即服務(SaaS) 雲端環境。

如今,在雲端運算的背景下,工作負載是指可在雲端資源上運行的雲端 原生 或非雲端原生應用程式或能力。虛擬機器、資料庫、容器、Hadoop 節點和應用程式都被視為雲端工作負載。

混合多雲網路比傳統的內部部署資料中心複雜得多。組織現在必須確保私人雲端和公共雲端的 容容器安全性 和完整性,這些雲端通常由多個雲端服務供應商 (CSP) 所託管。但雲端服務能夠適應波動的工作負載,不需要大量的前期資本,而且證明具有成本效益。

 

雲端工作負載特性

雲端工作負載透過共同的架構和雲端基礎設施,具有明顯的特性。這些包括

  • 可擴充性 : 雲端工作負載提供依需求增加或減少資源的能力,可提升資源管理效率。
  • 彈性 : 雲端工作負載透過資源的自主佈建與撤銷佈建來適應變化的能力,對於現代企業而言舉足輕重。
  • 資源共用 : 雲端工作負載共用一個可配置的運算資源池,促進資源的有效利用。
  • 可測量的服務: 雲端系統透過應用適合服務類型 (無論是 IaaS、PaaS 或 SaaS) 的計量功能,自動控制並最佳化資源使用。
  • 隨選自助服務: 雲端使用者可佈建運算能力,例如伺服器時間和網路儲存空間,而無需與服務供應商進行人為互動。
現代勒索軟體攻擊的演進

圖 1:根據《 雲端原生安全狀況報告》,今年移至雲端的工作負載百分比

 

雲端或內部部署?

決定在何處執行工作負載取決於組織和工作負載的特定變數。組織應評估選項,並考慮效能、安全性、合規性和成本,以決定最佳的環境。

有些工作負載可能需要特定的硬體或網路配置,這就更需要辨識作業系統、軟體相依性和其他基礎架構需求。效能和擴充性也是重要的考慮因素。您的工作負載可能需要高效能、低延遲,或是快速大規模擴充和縮小的能力。

選擇在何處執行工作負載時,請考慮安全性與合規性。法規可能會將某些工作負載限制於內部部署或私人雲端環境。成本是另一個考慮因素。公共雲端服務可提供彈性且具成本效益的方式來執行工作負載,尤其是需求不定的工作負載。不過,其他工作負載在內部部署或私人雲端環境中執行可能會更具成本效益。

在雲端部署工作負載

雲端為各種工作負載提供了理想的環境,有些工作負載尤其適合雲端。

  • 網路應用程式: 雲端平台提供處理大量 Web 應用程式請求所需的擴充性和可用性。
  • Big-Data 與分析: 雲端供應商提供大型資料和分析工具,協助管理和處理大量資料。
  • DevOps 與 CI/CD: 雲端平台可提供基礎架構,以支援自動化軟體開發、測試和部署流程。
  • 災難復原與備份: 雲端平台可用於資料和系統的異地備份,以及提供故障移轉支援。
  • 機器學習與 AI: 雲端供應商提供訓練 ML 模型和在生產環境中大規模擴充的工具。
  • 物聯網與邊緣運算:雲端平台提供支援 物聯網裝置 和邊緣運算應用的服務,例如資料處理、儲存和分析。

但是雲端並不能補足所有的工作負載。組織應在分析各工作負載的需求和特性的基礎上選擇平台。

在內部部署工作負載

在決定內部部署哪些工作負載時,需要衡量的細節範例包括:

  • 安全需求:在高度監管的產業中,內部部署工作負載可能是 確保資料安全性 和合規性的最佳選擇。
  • 資料密集型工作負載:由於資料傳輸和雲端儲存的成本較高,處理和儲存大量資料的工作負載可從內部部署中獲益。
  • 延遲敏感型工作負載:需要低延遲的應用程式,例如即時資料處理或遊戲,可能會受益於內部部署。
  • 客製化工作負載:內部部署以確保對底層基礎架構的控制,可能更能滿足需要客製化硬體的應用程式。
  • 成本考量:由於資源使用量、儲存需求和使用模式的關係,在內部部署執行工作負載可能具有成本效益。

混合雲端部署

混合雲端是一種運算環境,結合內部部署的基礎架構與一個或多個私人或公共雲端供應商所提供的雲端服務。此類雲端架構可讓組織同時受惠於內部部署和雲端基礎架構的產品。

透過混合雲端,組織可以在多重環境中部署工作負載,以滿足應用程式或工作負載的需求。他們可以選擇在內部部署敏感的工作負載以符合監管需求,同時選擇在公共雲端部署其他需要擴充性和彈性的工作負載。

要啟用混合雲端環境,組織必須具備必要的基礎架構,例如內部部署基礎架構與雲端服務之間的網路與連線。他們也需要雲端管理平台、自動化工具和安全解決方案,以跨多重環境管理工作負載。

雲端診斷工作負載

許多組織優先採用雲端策略,偏好雲端基礎架構和應用程式架構與開發的自由度。設計在任何雲端平台上執行的工作負載都能帶來相容性的優點,其中包括

  • 避免供應商鎖定:透過設計雲端相容的應用程式,組織可以在不花費大筆資金全面調整工作負載和技術堆疊的情況下,轉換雲端供應商。
  • 便攜性:與雲端無關的工作負載可部署在任何雲端平台上,提供更大的靈活性和敏捷性。
  • 節省成本:選擇在提供最具成本效益資源的平台上部署工作負載,可讓組織利用成本波動或使用即時實體。
  • 避免單點故障:組織可避免依賴單一雲端供應商提供關鍵應用程式,從而降低停機或資料遺失的風險。

為了實現與雲端無關的工作負載,組織通常會使用多個雲端供應商支援的標準技術和介面,例如用於容器協調的 Kubernetes 和用於基礎架構即程式碼的 Terraform。

視訊:安全工程師與應用程式開發人員如何建立有效的安全程序

 

工作量管理

工作負載管理指的是監控、控制和分配資源給工作負載的無止盡循環。該職責包括優化和平衡計算資源分配所需的眾多流程,以確保工作負載在執行過程中盡量減少中斷或停機時間。

在雲端環境中,工作負載管理非常重要,因為多位使用者和應用程式會共用資源。工作負載管理員必須確保每個工作負載都能存取所需的資源 - 而且不會影響其他工作負載的效能。

在工作負載分散於多個雲端平台的多雲端環境中,工作負載管理會變得特別複雜。有效的多雲端工作負載管理需要清楚瞭解每個雲端平台的功能以及每個工作負載的特定需求。

資源分配

工作負載管理涉及根據不同工作負載的需求和優先順序,將 CPU、記憶體和儲存設備等運算資源分配給不同的工作負載。有效的分配需要監控資源使用情況、預測未來需求,並根據需要調整資源分配。

負載平衡

工作負載管理還涉及負載平衡,或在多個運算資源間分配工作負載,以最佳化資源利用率並防止瓶頸。組織通常依賴循環、最少連線和 IP 哈希等技術來達到均衡負載。

工作負荷的優先順序

為了管理工作負載,DevOps 團隊需要根據關鍵性、效能需求和服務層級協議來排定工作負載的優先順序。適當的優先順序可確保關鍵任務工作負載獲得最佳化運行所需的資源,即使在需求高峰期也是如此。

監控與最佳化

監控工作負載的效能並調整資源分配,以最佳化效能並降低成本,是工作負載管理的核心。這可能涉及自動大規模、自動調整及其他最佳化技術。

 

工作負載自動化

工作負載自動化常用於擁有複雜 IT 基礎結構的企業,可透過自動排程、執行和監控工作負載來簡化 IT 流程。隨著數位轉型的成長,工作負載自動化已成為功能性 IT 作業的必要條件。工作負載自動化的優點包括

減少錯誤

透過自動化重複性的手動任務,工作負載自動化消除了人為干預的需求,從而降低出錯的風險和潛在的不良事件,例如資料遺失。

提高效率

將重複且耗時的任務自動化,可讓團隊專注於關鍵任務。舉例來說,工作負載自動化可以識別錯誤並發出警示,讓 IT 人員可以專注於解決問題而不是監控日誌,而不是手動檢查日誌是否有錯誤。

最佳化資源利用率

工作負載自動化可確保任務和流程在最佳化時間排程和執行,從而最佳化資源利用率。例如,透過安排資源密集型任務在非高峰時段執行,團隊可以減少資源爭用的可能性。

增加敏捷性

透過自動佈建和部署應用程式與服務,工作負載自動化可縮短新服務上線所需的時間和精力。這可讓 IT 團隊更快速、有效率地回應業務需求。

強化合規性

透過工作負載自動化,以一致且可稽核的方式執行 IT 流程,組織可強化對監管標準的合規性,最終降低違反合規性的風險。

降低成本

工作負載自動化將重覆性的手動工作從等式中移除,不僅能最佳化資源利用率,還能降低對額外軟硬體資源的需求。它還能降低 IT 運作成本,同時讓 IT 人員專注於更高價值的任務。

市面上的工作負載自動化工具從開放原始碼解決方案 (例如 Jenkins 和 Ansible) 到企業級平台 (例如 BMC Control-M 和 IBM Workload Automation),種類繁多。這些工具通常提供一系列的特性和功能,包括作業排程、事件驅動的自動化、工作量監控和報告,以及與其他 IT 系統和應用程式的整合。

 

雲端工作負載保護

工作負載的雲端遷移為組織帶來許多好處,同時也引進了安全性的挑戰。攻擊面在雲端擴大。即使已實施安全控制,零時差漏洞或設定錯誤的伺服器或儲存桶仍可能對工作負載造成重大風險。

雲端工作負載安全策略可協助您確保組織的安全。

  • 實作存取管理控制:實作 最低權限存 苃可限制安全漏洞的潛在損害。
  • 自動化安全控制:自動化可確保安全控制一致地應用於各種工作負載,並加快發生安全性事件時的回應時間。
  • 監控和管理漏洞:定期掃描漏洞並迅速套用修補程式對於保護雲端工作負載至關重要。
  • 安全性容器與無伺服器工作負載:掃描容器映像以找出漏洞,並針對無伺服器功能實作適當的隔離政策。
  • 加密敏感資料:即使其他安全控制失敗,資料加密也能保護敏感資料。切記在資料靜止和傳輸過程中加密資料。

 

實作 CWPP

雲端工作負載保護平台 (CWPP) 專為可擴充而設計,能夠適應保護越來越多的工作負載,不論雲端環境的大小,都能提供一致的安全性。CWPP 以工作負載為中心,意即無論工作負載位於內部部署、雲端或混合環境,都能提供保護。鑑於工作負載會在平台與基礎架構之間快速移動,因此這類工作負載保護非常重要。

CWPP 為組織提供了一個亟需的平台,以取代雜亂無章的工具,解決複雜性的問題,同時透過集中化的可視性與控制、弱點管理、存取管理、防惡意軟體保護等功能,將安全性發揮到極致。

 

工作量常見問題

工作負載遷移是指將應用程式、資料和 IT 流程從一個雲端環境移到另一個雲端環境。遷移需要仔細規劃和執行,以盡量減少停機時間和避免資料遺失。
工作負載協調涉及協調和管理跨多個雲端環境的工作負載執行。協調工具可以自動執行資源分配、工作負載平衡和大規模擴充等任務。
將水平大規模視為「向外」縮放。橫向大規模是指在系統中增加更多的節點,並將工作負荷分散到這些節點上。例如,您可能會在基礎架構中增加更多伺服器,而不是為伺服器增加更多功率。橫向大規模可提供超越單一機器限制的更高產能。由於單一節點的故障不一定會影響所有工作負載,因此也可以改善備援性和可用性。垂直大規模擴充(Vertical Scaling)也稱為擴充(Scaling Up),是指在系統中的單一節點增加更多的資源,以增加其容量。這可能涉及增加伺服器的 CPU 能力、RAM 或儲存空間。垂直大規模可提高應用程式的效能,而無需變更應用程式的程式碼,從而使組織獲益。實際上,橫向和縱向大規模的平衡會發揮作用,這取決於系統的需求和限制。
零時差漏洞是應用程式或作業系統中先前未知的軟體漏洞。由於軟體廠商不知道漏洞的存在,因此可以在沒有警告的情況下被利用。開發人員有「零天」的時間開發修補程式。
雲端工作負載可分為靜態工作負載和動態工作負載。靜態工作負載會一直開啟,而動態工作負載則會在需要時啟動,例如自動化內部應用程式或虛擬伺服器實體的啟動。
無伺服器運算是一種模式,可讓開發人員將應用程式當作個別功能在雲端運算,並由雲端供應商自動管理資源分配。無伺服器工作負載是事件驅動的,資源會根據需求動態分配。
虛擬化是雲端運算的一項關鍵技術,可有效分佈和隔離工作負載。它可讓多個工作負載在單一實體機器上執行,每個工作負載都在其獨立的環境中。
在雲端環境中,應用程式堆疊或以工作負載為中心的堆疊,可包括運算應用程式或工作負載所採用的雲端服務,例如雲端運算實體、雲端儲存服務、受管理的資料庫和雲端 DevOps 工具。此堆疊可使用雲端工作負載保護平台 (CWPP) 來管理和保護,CWPP 提供從基礎架構層到應用程式層整個堆疊的安全性控制。
基於容器或容器化的工作負載是指將應用程式及其相依性套件打包到容器中,可以在各種運算環境中一致地執行。以容器為基礎的工作負載是輕量級的,並使用共用作業系統,因此在某些工作負載上比虛擬機器更有效率。
微服務架構 將應用程式分解為小型、鬆散耦合的服務,每個服務都以獨立工作負載的方式執行。此方法可增強擴充能力和故障隔離,但會增加工作負載管理的複雜性。
低延遲是指從處理輸入到產生相對應的輸出之間的延遲很短。許多需要即時回饋的活動都有賴於低延遲。例如同步遊戲、高頻股票交易、Skype 或 Zoom 等網路電話 (VoIP)、即時廣播,甚至自主車輛操作的某些部分。
邊緣運算涉及在更接近來源的地方處理資料,以減少延遲和頻寬使用。這可讓通常需要即時處理的物聯網工作負載受惠。
服務可用性是指工作負載可供使用的時間百分比,其中「可供使用」是指在需求時執行其功能。服務可用性是衡量可靠性的常用指標。
可靠度是指工作負載在預期的時間內持續正確執行其預期功能的能力。這包括在整個生命週期中操作和測試工作負載的能力。
彈性是指工作負載從基礎結構或服務中斷中恢復、動態獲取運算資源以滿足需求,以及緩解中斷(如設定錯誤或瞬態網路問題)的能力。
技術組合是業務運作所需工作負載的集合。
漂移保護是指確保系統的當前狀態與其定義的或期望的狀態一致,防止隨時間的推移出現意外偏差(稱為漂移)的過程。這在配置可能快速變更的雲端環境中至關重要。漂移防護包括不斷地監控和自動補救策略,以偵測和糾正偏差,確保系統的穩定性、一致性和安全性。它有助於維持合規性、減少因設定錯誤而造成的安全風險,並確保資源的有效利用。
工作負載擴散指的是工作負載不受控制的擴散,通常會造成資源利用效率低和成本增加。組織可以透過實作工作負載治理、定期審核和最佳化工作負載,以及使用自動化和協調工具來防止工作負載擴散。