本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
為 Windows 工作負載選取正確的執行個體類型
概觀
與內部部署環境相比,雲端中操作的工作負載有很大的差異,這是過度佈建的做法。購買現場部署使用的實體硬體時,您預期資本支出會持續一段預定的期間,通常為 3-5 年。為了因應硬體生命週期期間的預期成長,會使用比工作負載目前所需的更多資源來取得硬體。因此,實體硬體通常會過度佈建,遠超過實際工作負載的需求。
虛擬機器 (VM) 技術已成為利用剩餘硬體資源的有效方法。VMs 使用 vCPUs 和 過度佈建的管理員RAM,讓 Hypervisor 透過將未使用的資源配置給每個 VM,來管理忙碌和閒置伺服器之間的實體資源使用量。管理 時VMs,分配給每個 VM 的 vCPU RAM和資源會以資源協調者身分運作,而不是實際用量的指標。VM 資源過度配置可能會輕鬆超過可用運算資源的三倍。
Amazon Elastic Compute Cloud (Amazon EC2)
有數百種選項可選擇正確的 Amazon EC2執行個體類型
如果您已在 Amazon 上執行工作負載EC2並尋求成本最佳化策略,本指南的本節可協助您識別 Amazon EC2執行個體之間的差異及其對典型 Windows 工作負載的適用性。
成本最佳化建議
若要最佳化EC2執行個體類型的成本,建議您執行下列動作:
-
為您的工作負載選擇正確的執行個體系列
-
了解處理器架構之間的價格變化
-
了解跨EC2世代的效能差異價格
-
遷移至較新的執行個體
-
使用爆量執行個體
為您的工作負載選擇正確的執行個體系列
請務必為您的工作負載選擇正確的執行個體系列。
Amazon EC2執行個體分為以下各種群組:
-
一般用途
-
運算最佳化
-
記憶體最佳化
-
加速運算
-
儲存最佳化
-
HPC 最佳化
大多數 Windows 工作負載都符合下列類別:
-
一般用途
-
運算最佳化
-
記憶體最佳化
若要進一步簡化,請考慮每個類別中的基準EC2執行個體:
-
運算最佳化 – C6i
-
一般用途 – M6i
-
記憶體最佳化 – R6i
上一代的EC2執行個體在處理器類型中表現出細微差異。例如,C5 運算最佳化執行個體的處理器比 M5 一般用途執行個體或 R5 記憶體最佳化執行個體更快。最新一代的EC2執行個體 (C6i、M6i, R6i, C6a, M6a和 R6a) 都會跨執行個體系列使用相同的處理器。由於處理器在最新一代的執行個體中是一致的,因此執行個體系列之間的價格差異現在更取決於 的數量RAM。RAM 執行個體擁有的越多,成本就越高。
下列範例說明在 us-east-1
區域中執行之 Intel 4 vCPU 執行個體的每小時定價。
執行個體 | vCPUs | RAM | 每小時價格 |
---|---|---|---|
c6i.xlarge | 4 | 8 | 0.17 美元 |
m6i.xlarge | 4 | 16 | 0.19 美元 |
r6i.xlarge | 4 | 32 | 0.25 美元 |
注意
定價是以 us-east-1
區域中的隨需每小時定價為基礎。
爆量執行個體
雖然關閉未使用的運算資源以避免產生費用是雲端運算的最佳實務,但並非所有工作負載都可以在每次需要時關閉和開啟。有些工作負載會長時間保持閒置,但必須每天 24 小時都能存取。
爆量執行個體 (T3) 提供一種方法,可維持整天在網路上的尖峰或低使用率工作負載,同時仍保持低的運算成本。爆量EC2執行個體具有執行個體可在短時間內使用的 vCPU 資源數量上限。這些執行個體採用以高載CPU額度為基礎的系統。這些額度會在一天的閒置期間累積。爆量執行個體提供不同的 vCPU-to-RAM比率,使它們可以替代某些情況下運算最佳化執行個體,以及其他情況下的其他一般用途執行個體。
下列範例說明在 us-east-1
區域中執行的 T3 執行個體 (即爆量執行個體) 的每小時定價。
執行個體 | vCPUs | RAM (GB) | 每小時價格 |
---|---|---|---|
t3.nano | 2 | 0.5 | 0.0052 美元 |
t3.micro | 2 | 1 | 0.0104 美元 |
t3.small | 2 | 2 | 0.0208 美元 |
t3.medium | 2 | 4 | 0.0416 美元 |
t3.large | 2 | 8 | 0.0832 美元 |
t3.xlarge | 4 | 16 | 0.1664 美元 |
t3.2xlarge | 8 | 32 | 0.3328 美元 |
注意
定價是以 us-east-1
區域中的隨需每小時定價為基礎。
了解處理器架構之間的價格變化
Intel
處理器架構註釋的變更是由於引進了其他處理器選項。與 Intel 最相似的處理器是 AMD
Intel 執行個體 | 每小時價格 | AMD 執行個體 | 價格 | % 差異 |
---|---|---|---|---|
c6i.xlarge | 0.17 美元 | c6a.xlarge | 0.153 美元 | 10% |
m6i.xlarge | 0.192 美元 | m6a.xlarge | 0.1728 美元 | 10% |
r6i.xlarge | 0.252 美元 | r6a.xlarge | 0.2268 美元 | 10% |
注意
定價是以 us-east-1
區域中的隨需每小時定價為基礎。
第三個主要處理器架構選項是EC2執行個體上的 AWS Graviton 處理器
Windows Server 無法在以ARM架構為基礎的 Graviton 處理器上執行。事實上,Windows Server 只在 x86 處理器上執行。雖然您無法透過使用 Graviton 型 Windows Server 執行個體來提高 40% 的價格效能,但您仍然可以使用具有特定 Microsoft 工作負載的 Graviton 處理器。例如,較新版本的 。NET 可以在 Linux 上執行。這表示這些工作負載可以使用ARM處理器,並從更快、更經濟實惠的 Graviton EC2執行個體中受益。
下列範例說明 us-east-1
區域中執行的 Graviton 執行個體的每小時定價。
Intel 執行個體 | 每小時價格 | Graviton 執行個體 | 每小時價格 | % 差異 |
---|---|---|---|---|
c6i.xlarge | 0.17 美元 | c6g.xlarge | 0.136 美元 | 20% |
m6i.xlarge | 0.192 美元 | m6g.xlarge | 0.154 美元 | 20% |
r6i.xlarge | 0.252 美元 | r6g.xlarge | 0.2016 美元 | 20% |
注意
定價是以 us-east-1
區域中的隨需每小時定價為基礎。
下圖比較 M 系列執行個體的價格。
了解跨EC2世代的價格效能差異
Amazon 最一致的特性之一EC2是,每個新一代都比上一代產品提供更好的價格效能。如下表所示,較新一代EC2執行個體的價格會隨後續版本而降低。
運算最佳化執行個體 | 每小時價格 | 一般用途執行個體 | 每小時價格 | 記憶體最佳化執行個體 | 每小時價格 |
---|---|---|---|---|---|
C1.xlarge | 0.52 美元 | M1.xlarge | 0.35 美元 | r1.xlarge | N/A |
C3.xlarge | 0.21 美元 | M3.xlarge | 0.266 美元 | r3.xlarge | 0.333 美元 |
C5.xlarge | 0.17 美元 | M5.xlarge | 0.192 美元 | r5.xlarge | 0.252 美元 |
注意
定價是以 us-east-1
區域中的隨需每小時定價為基礎。
下表比較不同世代 C 系列執行個體的成本。
不過,如下表所示,第 6 代執行個體的價格與第 5 代相同。
運算最佳化執行個體 | 每小時價格 | 一般用途執行個體 | 每小時價格 | 記憶體最佳化執行個體 | 每小時價格 |
---|---|---|---|---|---|
C5.xlarge | 0.17 美元 | M5.xlarge | 0.192 美元 | r5.xlarge | 0.252 美元 |
C6i.xlarge | 0.17 美元 | M6i.xlarge | 0.192 美元 | r6i.xlarge | 0.252 美元 |
注意
定價是以 us-east-1
區域中的隨需每小時定價為基礎。
雖然成本相同,但由於處理器速度更快、網路輸送量增強,以及 Amazon Elastic Block Store (Amazon EBS) 輸送量和 增加,新一代仍提供卓越的價格效能IOPS。
最重要的價格效能改善之一是 X2i 執行個體
執行個體 | 每小時價格 | vCPUs | RAM | 處理器速度 | 執行個體儲存體 | 聯網 | Amazon EBS輸送量 | EBS IOPS |
---|---|---|---|---|---|---|---|---|
x1e.2xlarge | 1.66 美元 | 8 | 244 | 2.3 GHz | 237GB SSD | 10 Gbps | 125 MB/s | 7400 |
x1iedn.2xlarge | 1.66 美元 | 8 | 256 | 3.5 GHz | 240GB NVMe SSD | 25 Gbps | 2500 MB/s | 65000 |
注意
定價是以 us-east-1
區域中的隨需每小時定價為基礎。
範例方案
請考慮追蹤交付車輛並希望改善其SQL伺服器效能的分析公司範例。MACO SME 檢閱公司的效能瓶頸後,公司會從 x1e.2xlarge 執行個體轉換為 x2iedn.xlarge 執行個體。新的執行個體大小較小,但對 x2 執行個體的增強功能可透過使用緩衝集區延伸來提高SQL伺服器效能和最佳化。這可讓公司從 SQL Server Enterprise Edition 降級為 SQL Server Standard Edition。它也可讓公司將其SQL伺服器授權從 8 減少 vCPUs 到 4vCPUs。
最佳化之前:
Server | EC2 執行個體 | SQL 伺服器版本 | 每月成本 |
---|---|---|---|
產品DB1 | x1e.2xlarge | Enterprise | 3,918.64 美元 |
產品DB2 | x1e.2xlarge | Enterprise | 3,918.64 美元 |
總計 | 7,837.28 美元 |
最佳化後:
Server | EC2 執行個體 | SQL 伺服器版本 | 每月成本 |
---|---|---|---|
產品DB1 | x2iedn.xlarge | 標準 | 1,215.00 美元 |
產品DB2 | x2iedn.xlarge | 標準 | 1,215.00 美元 |
總計 | 2,430.00 美元 |
所有合併後,從 x1e.2xlarge 執行個體變更為 x2iedn.xlarge 執行個體,可讓範例案例中的公司在生產資料庫伺服器上每月節省 5,407 美元。這可將工作負載的總成本降低 69%。
注意
定價是以 us-east-1
區域中的隨需每小時定價為基礎。
遷移至較新的執行個體
較舊世代的 Amazon 在 Xen Hypervisor EC2上執行,而較新世代則在 AWS Nitro 系統
如果您是從自訂 Windows AMIs或從 Amazon AMIs提供的 Windows 啟動執行個體,而該 Windows 是在 2018 年 8 月之前建立,建議您完成從遷移到 Amazon 文件中最新一代執行個體類型的步驟。 EC2
使用爆量執行個體
雖然爆量執行個體是節省運算成本的好方法,但建議您在下列情況下避免這些執行個體:
-
具有桌面體驗的 Windows Server 最低規格
需要 2 GB 的 RAM。避免將 t3.micro 或 t3.nano 執行個體與 Windows Server 搭配使用,因為它們缺少最低數量的 RAM。 -
如果您的工作負載爆量,但閒置的時間不夠長,無法建置爆量額度,則使用一般EC2執行個體比使用爆量執行個體更有效率。我們建議您監控您的CPU額度,以驗證這一點。
-
在大多數情況下,建議您避免將高載執行個體與SQL伺服器搭配使用。SQL Server 的授權是根據 vCPUs 指派給執行個體的 數目。如果SQL伺服器在一天中的大部分時間處於閒置狀態,則您將支付未充分利用SQL的授權。在這些情況下,我們建議您將多個SQL伺服器執行個體合併到較大的伺服器上。
後續步驟
建議您採取下列步驟,以最佳化 Amazon EC2 Windows 執行個體的成本:
-
使用最新一代的EC2執行個體以獲得最佳價格效能。
-
使用EC2執行個體搭配AMD處理器,以降低 10% 的運算成本。
-
選擇符合您工作負載的EC2執行個體類型,將資源使用率最大化。
下表顯示 Windows 工作負載的一般起點範例。還有其他選項可用,例如執行個體儲存磁碟區,以增強SQL伺服器工作負載或具有較大 vCPU-to-RAM比率的EC2執行個體。我們建議您徹底測試工作負載,並使用監控工具 AWS Compute Optimizer ,例如 協助進行必要的調整。
工作負載 | 典型 | 選用 |
---|---|---|
Active Directory | T3, M6i | R6i |
檔案伺服器 | T3, M6i | C6i |
Web 伺服器 | T3, C6i | M6i, R6i |
SQL 伺服器 | R6i | x2iedn、X2iezn |
如果您必須變更EC2執行個體類型,程序通常只需要簡單的伺服器重新啟動。如需詳細資訊,請參閱 Amazon 文件中的變更執行個體類型。 EC2
在您變更執行個體類型之前,建議您考慮下列事項:
-
您必須先停止 Amazon 支援的執行個體,EBS才能變更其執行個體類型。請務必在執行個體停止時規劃停機時間。停止執行個體並變更其執行個體類型可能會花費數分鐘,重新啟動您的執行個體所需要花費的時間則會根據您應用程式的啟動指令碼而有所不同。如需詳細資訊,請參閱 Amazon EC2 文件中的停止和啟動執行個體。
-
當您停止和啟動執行個體時, 會將執行個體 AWS 移至新的硬體。如果您的執行個體有公有IPv4地址, 會 AWS 發行該地址,並為執行個體提供新的公有IPv4地址。如果您需要未變更的公有IPv4地址,請使用彈性 IP 地址。
-
如果在執行個體上啟用休眠,則無法變更執行個體類型。
-
您無法變更 Spot 執行個體的執行個體類型。
-
如果您的執行個體在 Auto Scaling 群組中,Amazon EC2 Auto Scaling 會將停止的執行個體標記為運作狀態不佳,並且可能會將其終止並啟動替換執行個體。若要避免這種情況,您可以在變更執行個體類型時,暫停群組的擴展程序。如需詳細資訊,請參閱《Amazon Auto Scaling 文件》中的暫停和繼續 Auto Scaling 群組的程序。 EC2 Auto Scaling
-
當您使用執行個體存放區磁碟區變更執行個體的NVMe執行個體類型時,更新的執行個體可能會有額外的執行個體存放區磁碟區,因為即使未在 Amazon Machine Image (AMI) 或執行個體區塊裝置映射中指定,所有NVMe執行個體存放區磁碟區仍然可用。否則,更新後的執行個體通常會有與您在啟動原始執行個體時指定之執行個體儲存體磁碟區相同數目的執行個體儲存體磁碟區。
其他資源
-
Amazon EC2執行個體類型
(AWS 文件) -
AWS 最佳化和授權評估
(AWS 文件)