我該如何選擇最適合 AWS EC2 實例?
什麼是 Amazon EC2 實例 (Instance)
Amazon Elastic Compute Cloud (Amazon EC2) 在 Amazon Web Services (AWS) Cloud 中提供可擴展的運算容量。使用 Amazon EC2 可減少前期所需的硬體投資,讓您更快速開發並部署應用程式。您可使用 Amazon EC2 依需求啟動任意數量的虛擬伺服器,設定安全性、網路功能及管理儲存。Amazon EC2 可讓您擴展或縮減規模,以應變需求變化,例如季節服務尖峰期,Amazon EC2 可自動擴展(Auto Scaling),可監控並自動調整規模,從而減輕您預測流量作業的管理。
Amazon EC2 實例命名規則
Amazon EC2提供多種實例類型,並根據其家族系列、世代、其他功能和大小來命名。實例類型名稱的第一個位置代表實例家族系列,例如 c。第二個位置代表實例世代,例如 5。句點之前的其餘字母表示其他功能,例如實例儲存體磁碟區。在句點 (.) 之後是實例大小,例如 small 或 4xlarge,或 metal (針對裸機執行個體)。詳細說明讓我們繼續看下去吧!
https://docs.aws.amazon.com/zh_cn/AWSEC2/latest/UserGuide/instance-types.html
•Instance Family
從左到右閱讀 ,第一個字母代表實例家族系列可根據此判斷其隸屬於通用型、運算優化型、加速運算型、存儲優化型或記憶體優化型實例類型之一。舉例來說,上述的 i3en.6xlarge 實例屬於 "i" 系列,即存儲優化型實例。
•Instance Generation
該數字代表實例的世代。數字越高,世代越新。上述的 i3en.6xlarge 實例是第三代實例。
•Special Features
出現在實例世代之後的字母代表實例的某些特殊功能。舉例來說,上述的 i3en.6xlarge 實例屬於,"e" 表示額外容量( RAM 或存儲),"n" 表示實例網絡優化。這意味著該實例具有高網路帶寬,可以處理高數據傳輸速率,通常以 Gb 每秒為單位。
其他特殊功能字符及其能力如下:
a - AMD 處理器
g - AWS Graviton 處理器
i - Intel 處理器
d - 實例存儲卷
b - 塊存儲優化
z - 高頻。
*惟須注意:上述額外功能非免費提供,請使用者依需求選擇具有這些特殊功能的實例。
•Instance Size
主要由一個數字和一個表示尺寸的字母組成。尺寸選項從 nano 到 xlarge (超大型) ,數字只出現在超大型實例中,例如 6xlarge 是超大型實例的六倍大。句點後面的數字為運算資源(虛擬 CPU 數量)、記憶體(RAM 容量)和存儲大小(存儲可以獨立於實例進行擴展)的乘數。
Amazon EC2 實例家族系列有哪些
Amazon EC2 提供各種不同用途的實例類型,每個實例類型都有特定的網絡、記憶體、CPU和存儲容量配置,讓使用者可以選擇最適合的配置。
常見 EC2 實例家族系列:
•通用型實例(General-purpose instance)提供網路、記憶體和運算資源的平衡,適用於各種不同的工作負載,適用於需要資源均衡分配的應用程序,例如代碼存儲庫或 Web 服務器。
•運算優化型實例(Compute-optimized instance)適用於需要高性能運算(HPC)處理器的運算密集型應用程序。這種實例類型可以處理批次處理和 HPC 工作負載,適合媒體轉碼、機器學習、科學建模和遊戲應用程序。
•記憶體優化實例(Memory-optimized instance)適用於對速度要求高的使用情境,適用於實例類型可以加速處理大量記憶體數據的工作負載。
•存儲優化型實例(Storage-optimized instance)適用於需要對本地存儲數據集進行連續讀寫訪問的存儲密集型工作負載,適用於運行需要低延遲操作的應用程序。
如何選擇 EC2 實例呢?
如何建議使用者挑選最合適AWS EC2實例呢?
以下簡易的步驟指南,可以幫助您做出明智的選擇,確保應用程式在雲端環境中運行更好:
第一步了解需求:首先,深入瞭解您應用程式的需求,需要先考慮處理器、內存、網路頻寬、儲存量和預期的同時使用者數量等因素。
第二步選擇實例類型:在通用型、運算優化型、記憶體優化型、加速運算型和存儲優化型等實例類型中,選擇最適合您需求的類型。例如,選擇通用型用於網頁伺服器,運算優化型用於高度運算型工作,記憶體優化型用於內存密集型工作。
第三步考慮成本效益:根據您的預算,選擇不同的定價模式,如按量計費、保留實例或節費計劃。確保所選擇實例性能和成本考量之間達到平衡。
第四步選擇實例家族:選擇適合的實例家族。數字越高世代越新通常能提供更好的性能和安全性。
第五步考慮特殊功能:僅在需要時選擇實例提供的特殊功能,請記得考量額外特殊功能費用。
第六步選擇實例尺寸:針對運算資源(虛擬 CPU 數量)、記憶體(RAM 容量)和存儲大小,選擇適合的實例尺寸以滿足您的工作負載。
第七步考慮其他配置:包含考慮晶片組、購買策略(如按量計費、保留實例等)、軟體選擇以及選擇部署的位置。
第八步測試和優化:在正式部署前,進行測試和優化,以確保選擇的實例能夠在正式環境中達到最佳性能。
最後一步保持彈性:盡量選擇可擴展的選項,以應對未來工作的變化。
總之,選擇適合的 AWS EC2 實例需要綜合考慮各種因素,以達到性能、成本和可用性的最佳平衡。
總結
雲端架構管理人員每天都需要依雲端環境配置應用程式工作負載選擇適當 EC2 實例和尺寸,以滿足性能、穩定性並優化成本。使用者可以根據工作負載的實際需求經常性優化所選用的 EC2,AWS 亦可推薦最佳的 EC2 實例家族類型、數量、適配和配置,使用者可以透過詳細的影響分析報告,更改雲端基礎架構減少資源浪費。如果您不確定自身的使用情境最適合甚麼種類,誠摯的邀請您聯繫果核,我們將安排專人與您聯繫。
參考
https://docs.aws.amazon.com/zh_tw/AWSEC2/latest/UserGuide/concepts.html
https://docs.aws.amazon.com/zh_cn/AWSEC2/latest/UserGuide/instance-types.html
https://aws.amazon.com/tw/blogs/aws/choosing-the-right-ec2-instance-type-for-your-application/
https://spot.io/resources/aws-ec2-pricing/which-ec2-instance-type-is-right-for-you/
https://www.freecodecamp.org/news/how-to-select-the-right-ec2-instance/
https://www.densify.com/resources/ec2-instance-types/TAG:Amazon Elastic Compute Cloud, AWS, EC2, EC2 Instances, memory, CPU, networking, and storage,實例規格、運算服務、記憶體、存儲