Azure 虛擬機是一種計算服務,可用來在 Azure 平臺上建立和執行虛擬機(VM)。 它提供在不同 SKU、作業系統和設定方面的彈性,以及各種計費模型的選擇。
本文假設身為架構設計人員,您已檢閱 計算判定樹 ,並選擇 [虛擬機] 作為工作負載的計算服務。 本文中的指引提供架構建議,這些建議會對應至 Well-Architected Framework 支柱的原則。
這很重要
如何使用本指南
每個區段都有一個設計檢查清單,其中呈現需要關注的架構領域,以及針對技術範疇量身訂做的設計策略。
此外,也包含可協助具體化這些策略的技術功能建議。 建議並不代表虛擬機及其相依性可用之所有組態的完整清單。 相反地,他們會列出主要建議,並將其對應至設計觀點。 使用建議來建置概念證明,或將現有的環境優化。
示範主要建議的基礎架構: 虛擬機基準架構。
技術範圍
此檢閱著重於下列 Azure 資源的相關決策:
磁碟是 VM 架構的重要相依性,但本文並未涵蓋。 如需詳細資訊,請參閱 Azure 磁碟記憶體的架構最佳做法。
可靠性
可靠性支柱的目的是要藉由 建立足夠的復原能力和從失敗中快速復原的能力,來提供持續的功能。
可靠性設計原則 提供高階的設計策略,適用於個別元件、系統流程及整個系統。
設計檢查清單
根據設計可靠性檢查清單,開始制定您的設計策略。 請確定其與您業務需求的相關性,同時請記住 VM 及其相依性的 SKU 和功能。 擴充策略,以視需要包含更多方法。
檢閱可能造成設計限制的虛擬機配額和限制 。 VM 有特定的限制和配額,會根據 VM 或區域的類型而有所不同。 可能有訂用帳戶限制,例如每個訂用帳戶的 VM 數目或每個 VM 的核心數目。 如果其他工作負載共用您的訂用帳戶,則您取用數據的能力可能會降低。 檢查 VM、 虛擬機擴展集和 受控磁碟的限制。
執行失敗模式分析 ,藉由分析 VM 與網路和記憶體元件的互動,將失敗點降到最低。 選擇配置例如短暫性作業系統 (OS) 磁碟,以本地化磁碟存取並避免網路躍點。 為了增強系統穩定性,新增負載平衡器,將網路流量分散到多個虛擬機,以改善可用性和可靠性。
根據 Azure 服務等級協定 (SLA) 計算複合服務等級目標 (SLA)。 請確定您的 SLO 不高於 Azure SLA ,以避免不切實際的期望和潛在問題。
請注意相依性引進的複雜性。 例如,某些相依性,例如虛擬網路和網路適配器(NIC),沒有自己的 SLA。 其他依賴項,例如相關聯的資料磁碟,其 SLA 與 VM SLA 相整合。 您應該考慮這些變化,因為它們可能會影響 VM 效能和可靠性。
考慮到 VM 對像磁碟和網路元件等組件的關鍵相依性。 如果您了解這些關聯性,則可以判斷影響可靠性的重要流程。
建立狀態隔離。 工作負載數據應該位於不同的數據磁碟上,以避免與OS磁碟干擾。 如果 VM 失敗,您可以使用相同的數據磁碟來建立新的 OS 磁碟,以確保復原和錯誤隔離。 如需詳細資訊,請參閱 暫時OS磁碟。
讓 VM 及其相依性跨區域備援。 如果 VM 失敗,工作負載應該會因為備援而繼續運作。 在您的備援選擇中包含相依性。 例如,使用磁碟可用的內建備援選項。 使用區域備援IP位址,以確保資料的可用性和較高的正常運作時間。
準備好擴展和擴充,以防止服務品質下降及防止故障。 虛擬機擴展集 具有自動調整功能,可視需要建立新的實例,並將負載分散到多個 VM 和可用性區域。
探索自動復原選項。 Azure 支援虛擬機器的健康狀況惡化監控和自我修復功能。 例如,規模設定提供 自動修復實例。 在更進階的場景中,自我修復可能包括使用 Azure Site Recovery,以及透過跨備援系統進行故障轉移或利用基礎設施即程式碼(IaC)重新部署。 您選擇的方法應符合商務需求和組織作業。 如需詳細資訊,請參閱 VM 服務中斷。
將 VM 及其相依性版權化。 瞭解 VM 的預期工作,以確保其未大小過低,而且可以處理最大負載。 有額外的容量以減少失敗的影響。
建立完整的災害復原計劃。 災害準備涉及建立全面的計劃,並決定復原的技術。
相依性和具狀態元件,例如鏈接的記憶體,可能會使復原複雜。 如果磁碟關閉,則該失敗會影響 VM 的運作。 在您的復原計劃中包含這些相依性的清楚流程。
嚴謹地進行操作。 必須透過有效的操作支援可靠性設計選擇,這些操作基於監控、生產環境中的復原測試、自動化執行的應用程式 VM 修補和升級,以及部署的一致性。 若需作業指引,請參閱 卓越營運。
建議
建議 | 優點 |
---|---|
(擴展集)使用彈性協調流程模式中的虛擬機擴展集來部署 VM。 | 您的應用程式可以未來擴展,同時利用高可用性保證,將虛擬機器分散在一個區域的容錯網域或可用性區域中。 |
(VM) 實作在 VM 上發出實例健康情況狀態的熱身端點。 (規模集)透過指定偏好的修復動作,在規模集上 啟用自動修復 。 請考慮設定時間範圍,如果 VM 的狀態變更,自動修復就會暫停。 |
即使實例被視為狀況不良,仍維持可用性。 自動修復會藉由取代錯誤的實例來起始復原。 設定時間範圍可能會防止意外或過早修復作業。 |
(擴展集)在擴展集上 啟用過度布建 。 | 過度布建可減少部署時間,並具有成本效益,因為不會收取額外的 VM 費用。 |
(擴展集)使用 備援集區預先配置實例。 | 待命集區實例會保持休眠狀態,但已準備好在發生失敗時接管工作負載。 這項功能可增強系統的可靠性。 |
(擴展集)允許彈性協調流程將 VM 實例分散 到盡可能多的容錯網域。 | 此選項會隔離容錯網域。 在維護期間,當一個容錯網域更新時,VM 實例可在其他容錯網域中使用。 |
(Scale set)在擴展集上部署跨可用性區域。 在每個區域中至少設定兩個實例。 區域平衡 會將實例平均分散到區域。 |
VM 實例會布建在每個可容忍本機失敗的 Azure 區域內的實體個別位置。 請記住,視資源可用性而定,跨區域可能會有不平均數目的實例。 區域平衡支援可用性,方法是確定如果某個區域已關閉,其他區域就有足夠的實例。 每個區域中的兩個實例會在升級期間提供緩衝。 |
(擴展集)若要增強服務運行時間,同時維持對升級成本影響的控制,請啟用 MaxSurge。 | 新的實例會使用最新的擴展模型,以批次方式建立。 新實例狀況良好之後,舊實例會以批次的方式刪除。 此程式會繼續進行,直到所有實例都更新為止,這可確保在更新期間不會停機。 |
(VMs)善用 容量保留功能。 | 容量會保留供您使用,且可在適用的 SLA 範圍內使用。 當您不再需要容量保留時,您可以刪除容量保留,而計費是以使用量為基礎。 |
安全
安全性支柱的目的是保障工作負載的機密性、完整性和可用性。
安全性設計原則提供高階設計策略,可藉由將方法套用至虛擬機的技術設計,以達成這些目標。
設計檢查清單
根據 安全設計檢閱檢查清單 啟動您的設計策略,找出弱點和控制措施,以改善安全姿態。 擴充策略,以視需要包含更多方法。
檢閱Linux和 Windows VM 和虛擬機擴展集的安全性基準。
作為基準技術選擇的一部分,請考慮支援工作負載的 VM SKU 安全性功能。
確保及時且自動化的安全性修補和升級。 請確定已使用定義完善的程式自動推出和驗證更新。 使用 Azure 自動化 之類的解決方案,藉由進行重大更新來管理 OS 更新及維護安全性合規性。
識別保留狀態的 VM。 請確定數據會根據貴組織提供的敏感度標籤進行分類。 使用如適當層級的靜態加密和動態加密等安全控制措施來保護數據。 如果您有高敏感度需求,請考慮使用雙重加密和 Azure 機密運算等高安全性控制件來保護使用中的數據。
藉由設定網路界限和訪問控制,為 VM 和擴展集提供分割。 將 VM 放在共用相同生命週期的資源群組中。
將訪問控制套用至嘗試連線至 VM 的身分識別,以及連線到其他資源的 VM 本身。 使用 Microsoft Entra ID 進行驗證和授權需求。 為您的 VM 及其相依性設置強密碼、多重因素驗證和角色型存取控制(RBAC),以允許授權的身分識別只執行他們角色所預期的操作。
使用 Microsoft Entra 條件式存取,根據條件來限制資源存取。 根據持續時間和必要的最小許可權集來定義條件式原則。
使用網路控制來限制輸入和輸出流量。 隔離 Azure 虛擬網路中的 VM 和擴展集,並定義網路安全組來篩選流量。 防止分散式阻斷服務 (DDoS) 攻擊。 使用負載平衡器和防火牆規則來保護惡意流量和數據外洩攻擊。
使用 Azure Bastion 為 VM 提供更安全的連線,以進行作業存取。
從 VM 到平臺即服務 (PaaS) 解決方案的通訊應該透過私人端點。
強化OS映像並移除未使用的元件,以減少受攻擊面。 使用較小的映像,並移除執行工作負載不需要的二進位檔。 拿掉您不需要的預設帳戶和埠等功能,以強化 VM 組態。
保護秘密, 例如您需要保護傳輸中數據的憑證。 請考慮使用適用於 Windows 或 Linux 的 Azure Key Vault 擴充功能,以自動重新整理儲存在密鑰保存庫中的憑證。 當它偵測到憑證中的變更時,擴充功能會擷取並安裝對應的憑證。
威脅偵測。 監視 VM 是否有威脅和設定錯誤。 使用 適用於伺服器的 Defender 來擷取 VM 和 OS 變更,並維護存取、新帳戶和許可權變更的稽核線索。
威脅防護。 藉由實作防火牆、防病毒軟體和入侵檢測系統等安全性控制措施,防範惡意代碼攻擊和惡意執行者。 判斷是否需要受信任的執行環境 (TEE)。
建議
建議 | 優點 |
---|---|
(擴展集) 將受控識別指派給擴展集。 擴展集中的所有 VM 都會透過指定的 VM 設定檔取得相同的身分識別。 您也可以在建立 VM時將受控識別指派給各個 VM,然後視需要將其新增至擴展集。 |
當 VM 與其他資源通訊時,它們會跨越信任界限。 擴展集和 VM 應該在允許通訊之前驗證其身分識別。 Microsoft Entra ID 會使用受控識別處理該驗證。 |
(虛擬機規模集) 選擇具有安全性功能的虛擬機型號。 例如, 某些 SKU 支援 BitLocker 加密,而 機密運算 則提供使用中數據的加密。 請檢查功能以了解其限制。 |
Azure 提供的功能是以跨許多租用戶擷取的訊號為基礎,而且比自定義控件更能保護資源。 您也可以使用原則來強制執行這些控制件。 |
(虛擬機、擴展集)在配置的資源中套用組織建議的標籤。 | 標記 是區隔及組織資源的常見方式,而且在事件管理期間非常重要。 如需詳細資訊,請參閱 命名和標記的目的。 |
(VM、擴充集)使用您想要在 VM 組態中啟用的安全性功能來 設定安全性設定檔 。 例如,當您在配置檔中指定 主機加密 時,儲存在 VM 主機上的數據會在待用時加密,且流量會加密至記憶體服務。 |
建立 VM 時,會自動啟用安全性設定檔中的功能。 如需詳細資訊,請參閱 虛擬機擴展集的 Azure 安全性基準。 |
(VM)選擇 VM 網路設定檔 的安全網路選項 。 請勿直接將公用IP位址與您的 VM 產生關聯,也不會啟用IP轉送。 確定所有虛擬網路介面都有相關聯的網路安全組。 |
您可以在網路設定檔中設定分割控制件。 攻擊者會掃描公用IP位址。 此活動可讓 VM 容易受到威脅的影響。 |
(VM)選擇 VM 儲存設定檔的安全儲存選項。 默認啟用磁碟加密和數據待用加密。 停用對 VM 磁碟的公用網路存取。 |
停用公用網路存取有助於防止未經授權存取您的數據和資源。 |
(VM、擴充集) 在您的 VM 中包含 可防範威脅的擴充功能。 例如 - 適用於 Windows 和 Linux 的 Key Vault 擴充功能 - Microsoft Entra ID 驗證 - Microsoft Azure 雲端服務和虛擬機的反惡意代碼軟體 - 適用於 Windows 和 Linux 的 Azure 磁碟加密擴充功能。 |
擴充功能是用來以正確的軟體初始化 VM,以保護進出 VM 的存取。 Microsoft提供的延伸模組會經常更新,以跟上不斷演變的安全性標準。 |
成本優化
成本優化著重於偵測支出模式、將投資放在重要領域,以及在其他領域進行優化,以符合組織預算,同時滿足商務需求。
成本優化設計原則提供高階設計策略,以在虛擬機及其環境的相關技術設計中視需要達成這些目標並進行取捨。
設計檢查清單
以 設計檢閱檢查清單作為基礎開始您的設計策略,以進行投資成本優化。 微調設計,讓工作負載符合為工作負載配置的預算。 您的設計應該使用正確的 Azure 功能、監視投資,以及尋找經過一段時間優化的機會。
預估實際成本。 使用 定價計算機 來估計 VM 的成本。 使用 VM 選取器來識別工作負載的最佳 VM。 如需詳細資訊,請參閱 Linux 和 Windows 定價。
實施成本限制。 使用治理原則來限制資源類型、組態和位置。 使用 RBAC 來封鎖可能導致超支的動作。
選擇正確的資源。 您選取的 VM 方案大小和 SKU 會直接影響整體成本。 根據工作負載特性選擇 VM。 工作負載是 CPU 密集型還是執行可中斷的進程? 每個 SKU 都有會影響整體成本的相關聯磁碟選項。
選擇適合的相依資源能力。 使用具有保留容量的 Azure 備份儲存體,可以節省保存庫標準層級的備份儲存成本。 如果您預定一年或三年的服務,它會提供折扣。
Azure 記憶體中的封存層是一個離線層,已針對儲存很少存取的 Blob 資料進行優化。 歸檔層提供最低的儲存成本,但與熱存取層和冷存取層相比,其數據擷取成本和延遲較高。
請考慮使用 區域對區域災害復原,讓 VM 從站點故障中復原,同時使用區域冗餘服務來降低可用性管理的複雜性。 降低作業複雜度可能會帶來成本優勢。
選擇正確的計費模型。 評估承諾型模型是否根據工作負載的商務需求來優化成本。 請考慮下列 Azure 選項:
-
Azure 預留:預付可預測的工作負載,以降低成本,相較於以使用量為基礎的定價。
這很重要
購買保留實例,以降低具有穩定使用量之工作負載的 Azure 成本。 管理使用量,以確保您不會支付比您使用的資源還多的費用。 讓保留實例保持簡單,並降低管理額外負荷,以降低成本。
- 節省方案:如果您承諾在計算服務上花費固定的每小時金額一或三年,則此方案可以降低成本。
- Azure Hybrid Benefit:將內部部署 VM 遷移至 Azure 時儲存。
-
Azure 預留:預付可預測的工作負載,以降低成本,相較於以使用量為基礎的定價。
監視使用量。 持續監視使用模式,並偵測未使用或使用量過低的 VM。 在這種情況下,當虛擬機實例未使用時,請將其關閉。 監視是卓越營運的重要方法。 如需詳細資訊,請參閱 卓越營運中的建議。
尋找優化的方法。 有些策略包括選擇在現有系統中增加資源(垂直擴展),或是新增更多系統的實例(水平擴展),以找出最符合成本效益的方法。您可以將需求分散到其他資源,或藉由實施優先順序佇列、閘道付載、緩存和速率限制來減少需求。 如需詳細資訊,請參閱 效能效率中的建議。
建議
建議 | 優點 |
---|---|
(VM、擴充集) 選擇正確的 VM 計劃的大小和 SKU。 找出適合您工作負載的最佳 VM 大小 。 使用 VM 選取器來識別工作負載的最佳 VM。 請參閱 Windows 和 Linux 定價。 若需針對工作負載進行高度平行的批次處理作業,並且這些作業能容忍某些中斷,請考慮使用 Azure Spot 虛擬機。 現成虛擬機適合用於實驗、開發和測試大型解決方案。 |
SKU 會根據其所提供的功能來定價。 如果您不需要進階功能,請勿在SKU上超支。 Spot 虛擬機以較低的成本使用 Azure 中的剩餘容量。 |
(擴展集) 混合一般 VM 與現成虛擬機。 彈性協調可讓您根據指定的百分比 散佈Spot虛擬機。 |
藉由套用臨時虛擬機的大幅折扣來降低計算基礎結構成本。 |
(擴展集) 當需求減少時,減少 VM 實例的數目。 根據準則設定縮小策略。 |
調整資源的伸縮性,以減少規模組合中執行的 VM 數量,從而節省成本。 |
(VM) 在停機期間停止 VM。 您可以使用 Azure 自動化啟動/停止 功能,並根據業務需求進行設定。 | 啟動/停止功能是低成本自動化選項,可大幅影響閑置實例成本。 |
(VM)使用 Azure Boost釋放 CPU 資源。 | 卸除後端虛擬化程式可釋放客體虛擬機的CPU資源。 此優化會導致效能改善。 Azure Boost 僅適用於特定 VM,因此請確定您也 選擇已啟用 Azure Boost 的 VM 大小。 |
(虛擬機器、擴充集) 利用 Azure 混合優惠來充分發揮授權移動性的優勢。 虛擬機器具備授權選項,允許您將自己的內部部署 Windows Server 操作系統授權 帶入 Azure。 Azure Hybrid Benefit 也可讓您將特定 Linux 訂用帳戶帶入 Azure。 |
您可以最大化內部部署授權,同時獲得雲端的優點。 |
卓越營運
卓越營運主要著重於 開發實務、可觀察性和發佈管理。
營運卓越設計原則提供高階設計策略,以達成工作負載作業需求的目標。
設計檢查清單
根據 操作優勢的設計檢閱檢查清單來制定設計策略,以定義與虛擬機器和規模設置相關的可觀察性、測試和部署程序。
監視虛擬機器實例。 從 VM 實例收集記錄和計量,以監視資源使用量,並測量實例的健康情況。 一些常見的 計量 包括CPU使用量、要求數目,以及輸入/輸出 (I/O) 延遲。 設定 Azure 監視器 警示 ,以收到問題通知,並偵測環境中的設定變更。
監視 VM 及其相依性的健康情況。
- 部署監視元件來收集記錄和計量,以全面檢視 VM、客體 OS 和開機診斷數據。 虛擬機擴展集匯總遙測,可讓您檢視個別 VM 層級或匯總的健康情況計量。 使用 Azure 監視器來檢視每個 VM 的這項數據,或跨多個 VM 匯總。 如需詳細資訊,請參閱 監控代理程式的建議。
- 藉由網路組件檢查 VM 的狀態。 例如,Azure Load Balancer 會對虛擬機進行 Ping 操作以偵測狀況不良的虛擬機,並據以重新路由網路流量。
- 設定 Azure 監視器警示規則。 判斷監視數據中的重要條件,以在影響系統之前找出並解決問題。
建立維護計劃 ,其中包含一般系統修補作為例行作業的一部分。 包含允許立即套用修補的緊急流程。 您可以有自定義程式來管理修補,或部分將工作委派給 Azure。 Azure 提供個別 VM 維護的功能。 您可以設定維護期間,將更新期間的中斷降到最低。 在平臺更新期間,容錯網域考慮是復原的關鍵。 我們建議您在區域中部署至少兩個實例。 每個區域部署兩台 VM 保證每個區域至少有一台 VM,因為在任一時間只會更新區域中的一個故障網域。 因此,針對三個區域,至少配置六個实例。
自動化程序以初始化、執行腳本及設定虛擬機器 (VM)。 您可以使用延伸模組或自訂文稿將程式自動化。 建議您採用下列選項:
Key Vault VM 擴充功能會自動重新整理儲存在密鑰保存庫中的憑證。
適用於 Windows 和 Linux 的 Azure 自定義腳本擴充功能 會在虛擬機上下載和執行腳本。 使用此延伸模組對部署後設定、軟體安裝或其他任何設定或管理工作。
使用 cloud-init 來設定 Linux 型 VM 的啟動環境。
有安裝自動更新的流程。 請考慮使用 自動 VM 客體修補,以便及時推出重大修補程式和安全性修補程式。 使用 Azure 更新管理員 來管理 Azure 中 Windows 和 Linux VM 的 OS 更新。
建置與生產環境緊密相符的測試環境 ,以在將更新和變更部署到生產環境之前測試更新和變更。 設置程序來測試安全性更新、效能基準及可靠性問題。 利用 Azure Chaos Studio 錯誤連結庫來插入和模擬錯誤狀況。 如需詳細資訊,請參閱 Azure Chaos Studio 錯誤和動作連結庫。
管理您的配額。 規劃工作負載所需的配額層級,並在工作負載演進時定期檢閱該層級。 如果您需要增加或減少配額, 請儘早要求這些變更。
建議
建議 | 優點 |
---|---|
(擴展集)彈性協調流程模式中的虛擬機擴展集可協助簡化工作負載的部署和管理。 例如,您可以使用自動修復輕鬆地管理自我修復。 | 彈性協調流程可以大規模管理 VM 實例。 交出個別 VM 會增加作業額外負荷。 例如,當您刪除 VM 實例時,您可以選擇刪除或保留 VM 相關聯的磁碟和 NIC。 VM 實例可以分散到多個容錯網域,讓更新作業不會中斷服務。 管理彈性協調流程實例時,您可以使用所有標準 VM API。 Linux 和 Windows VM 都可以位於相同的彈性擴展集中,簡化異質工作負載的管理。 |
(規模設定)將單一實例 VM 附加或卸載至彈性編排模式中的虛擬機規模設定,可讓您靈活地回應作業需求,而不需要重新部署基礎結構。 | 連結 VM 可讓您將現有的 VM 帶入 VMSS Flex 的管理之下,以集中控制更新、調整和監視。 將 VM 與 VMSS Flex 中斷連結可讓您隔離 VM 以進行疑難解答或特殊設定,而不會中斷擴展集的其餘部分。 |
(擴展集)藉由設定升級原則,讓您的 VM 保持最新狀態。 我們建議滾動升級。 不過,如果您需要細微的控制,請選擇手動升級。 針對彈性協調,您可以使用 Azure Update Manager。 |
安全性是升級的主要原因。 實例的安全性保證不應該隨著時間推移而減弱。 滾動升級會以批次方式完成。 此方法可確保所有實例不會同時停機。 |
(VM、擴充集)在設定檔中定義應用程式,以自動從 Azure 計算資源庫部署 VM 應用程式。 | 虛擬機規模組中的 VM 已建立,並且已預先安裝指定的應用程式,使管理變得更加容易。 |
將預先建置的軟體元件安裝為擴充功能 作為啟動過程的一部分。 Azure 支援許多延伸模組,可用來設定、監視、保護及提供 VM 的公用程式應用程式。 在延伸模組上啟用自動升級 。 |
擴充功能可協助您大規模簡化軟體安裝,而不需要在每部 VM 上手動安裝、設定或升級它。 |
(VM、擴充集) 監視和測量 VM 實例的健康情況。 將 監視代理程式 延伸模組部署至 VM,以使用 OS 特定的 資料收集規則從客體 OS 收集監視數據。 啟用 VM 深入解析 來監視健康情況和效能,以及檢視所收集數據的趨勢。 使用 開機診斷 來取得 VM 開機時的資訊。 開機診斷也會診斷開機失敗。 |
監視數據是事件解決的核心。 完整的監視堆疊提供 VM 執行方式及其健康情況的相關信息。 藉由持續監視實例,您可以準備好或防止失敗,例如效能多載和可靠性問題。 |
效能效率
效能效率是指即使負載增加,也能通過管理容量來維護用戶體驗。 此策略包括調整資源、識別和優化潛在的瓶頸,以及優化尖峰效能。
效能效率設計原則提供針對預期使用量達成這些容量目標的高階設計策略。
設計檢查清單
請根據效能效率 指標的設計審查清單,開始您的設計策略。 定義以虛擬機和擴展集關鍵效能指標為基礎的基準。
定義效能目標。 識別 VM 計量,以追蹤和測量效能指標作為響應時間、CPU 使用率和記憶體使用率,以及工作負載計量,例如每秒交易、並行使用者,以及可用性和健康情況。
在容量規劃中考慮虛擬機器、規模設定和磁碟設定的效能概況。 每個 SKU 都有不同的記憶體和 CPU 配置檔,而且會根據工作負載類型而有不同的行為。 進行試驗和概念證明,以瞭解特定工作負載下的效能行為。
VM 效能微調。 根據工作負載的需求,善用效能優化與增強功能。 例如,針對高效能使用案例和加速網路,使用本機連結的非揮發性記憶體 Express (NVMe),並使用進階 SSD v2 以提升效能和延展性。
將相依服務納入考慮。 與 VM 互動的工作負載相依性,例如快取、網路流量和內容傳遞網路,可能會影響效能。 此外,請考慮地理分佈,例如區域和區域,這可能會增加延遲。
收集效能資料。 遵循 卓越營運最佳做法 來監視和部署適當的擴充功能,以檢視追蹤效能指標的計量。
鄰近放置群組。 在需要低延遲的工作負載中使用 鄰近放置群組 ,以確保 VM 實際位於彼此附近。
建議
建議 | 優點 |
---|---|
(VM、擴充集)選擇符合容量規劃的 VMs 的 SKU 。 充分瞭解您的工作負載需求,包括核心數目、記憶體、記憶體和網路頻寬,以便篩選出不適合的SKU。 |
將 VM 調整為一項基本決策,可大幅影響工作負載的效能。 如果沒有正確的一組 VM,您可能會遇到效能問題併產生不必要的成本。 |
(虛擬機、擴展集)在 鄰近放置群組中部署對延遲敏感的虛擬機工作負載。 | 鄰近放置群組可減少 Azure 計算資源之間的實體距離,這可改善效能,並減少獨立 VM、多個可用性設定組中的 VM 或多個擴展集中的 VM 之間的網路等待時間。 |
(VM)請考慮啟用 加速網路。 | 它可將單一根 I/O 虛擬化 (SR-IOV) 啟用至 VM,這可大幅改善其網路效能。 |
(VM、擴充集) 設定自動調整規則 ,根據需求增加或減少擴展集中的 VM 實例數目。 | 如果您的應用程式需求增加,您擴展集內 VM 執行個體上的負載也會跟著增加。 自動調整規則可確保您有足夠的資源來滿足需求。 |
Azure 原則
Azure 提供一組與虛擬機及其相依性相關的大量內建原則。 您可以透過 Azure 原則稽核上述一些建議。 例如,您可以檢查是否:
加密是在主機層級啟用。 請確定主機層級已啟用加密,為您的 VM 資料提供額外的安全性。
已部署反惡意軟體擴充套件。 確認反惡意代碼擴充功能已部署在執行 Windows Server 的 VM 上,並設定以進行自動更新,以確保持續保護。
已啟用自動OS映像修補。 檢查擴展集上是否已啟用自動OS映像修補,以確保您的 VM 會以安全性修補程式保持更新。
只會安裝核准的 VM 擴充功能。 確認 VM 上只安裝已核准的擴充功能。 這種方法有助於將安全性弱點的風險降到最低。
監視器與相依性代理程式已啟用。 確定在所有新的 VM 上都啟用監視代理程式和相依性代理程式,以利監視和相依性管理。
只部署允許的 VM SKU。 確認只部署已核准的 VM SKU。 此原則可確保遵守您的成本限制和資源需求。
私人端點用於磁碟存取。 請確定私人端點是用來安全地存取磁碟資源。 這種方法有助於防止接觸到公用網路。
已啟用弱點偵測。 啟用 VM 的弱點偵測。 針對 Windows 計算機,使用 Microsoft Defender 防病毒軟體設定每日掃描等規則,以偵測潛在的威脅。
如需全面治理,請檢閱 虛擬機的 Azure 原則內建定義 ,以及其他可能會影響計算層安全性的原則。
Azure Advisor 建議
Azure Advisor 是個人化的雲端顧問,可協助您遵循最佳做法來優化 Azure 部署。
如需詳細資訊,請參閱 Azure Advisor。
相關內容
請考慮下列文章作為資源,用以展示本文所強調的建議。
- 使用下列參考架構作為如何將本文指引套用至工作負載的範例:
- 單一 VM 架構: Linux VM 和 Windows VM
- 著重於基礎結構建議的基礎架構: 虛擬機基準架構
- 使用下列產品檔建置實作專業知識: