EC2簡介
1. EC2的特性
- EC2是AWS提供的一種計算服務,它以EC2實例(EC2 Instance)的形式存在,因此一個EC2實例可以被認為是一個虛擬機
- 預配置的EC2鏡像被稱之為Amazon Machine Images (AMI),一個AMI包含了你打包的好操作系統,以及相應的應用程序和配置
- 不同的EC2實例類型包含了不同的CPU,內存,存儲和網絡性能
- AWS默認以及建議使用密鑰對(Key Pair)的形式訪問EC2實例,AWS將保存公鑰,您將負責保存私鑰
- EC2實例存儲(Instance store volumes)是一種短暫性的存儲,一旦您停止或者終止您的EC2實例,這個存儲內的數據將永久消失
- EBS存儲(Amazon EBS volumes)是一種持續性的存儲,不管EC2實例是什么狀態,你都可以保留EBS存儲內的數據。這種類型的存儲對於進行數據盤的遷移非常方便,使用場景也比較多。
- 安全組(Security Group)會通過檢測數據包的端口、協議、源IP地址從而從當防火牆的作用
- 彈性IP(Elastic IP address)可以方便您為您的EC2實例分配一個固定的公網IP地址,並且保證每次關機重啟該地址依舊有效。
- 虛擬私有雲(Virtual Private Cloud, VPC)是AWS的網絡組件,可以讓你的AWS資源與其他用戶的資源在邏輯上進行隔離。您也可以使用VPC與您的物理數據中心進行連接。
2. 如何訪問EC2
AWS提供了非常多的方法方便您來訪問EC2實例,下面將一一進行列舉。並且會在后續課程通過視頻的方式為大家進行演示。
- AWS 命令行(CLI)- 您可以通過一些終端軟件並利用命令行的方式訪問您的Windows,Mac和Linux實例
- AWS EC2管理平台 – 您可以通過基於web的用戶界面來訪問您的EC2實例(通過java等插件)
- AWS CLI工具 – 您可以通過AWS CLI工具來訪問AWS的多個組件
- Windows Powershell
- AWS API
- AWS SDK
3. EC2實例的計費類型
EC2的實例計費類型有很多種,每一種都有自己的使用場景,不同的客戶可能對計費類型的需求也不一樣。
官網:
https://aws.amazon.com/cn/ec2/instance-types/
- On-Demand Instances (按需實例)
- Reserved Instances (預留實例)
- Spot Instances (競價實例)
- Scheduled Reserved Instances (計划的預留實例)
- Dedicated Instances (專用的實例)
- Dedicated Hosts(專用的主機)
針對考試的朋友只着重看前三種實例的計費類型即可。
3.1 On-Demand Instances (按需實例)
這是最基本的實例計費類型,也應該是使用率最高的類型了。這種實例是用多少收費多少,精確到秒。在實例處於停止狀態的時候,AWS不會收取你關於EC2的任何費用。只有在實例處於運行狀態的時候,才會產生花銷。
這種EC2的實例類型非常靈活,你可以在任何時間和地點開啟並使用你的實例,然后在不需要的時候將其終止(Terminate)。你的消費只取決於你使用的時間,而沒有其他的額外成本或者初始投資成本。
在傳統的數據中心內,如果你要部署一個新的應用程序,那么你可能需要先去申請購買硬件服務器,然后安裝操作系統,物理接上網絡甚至存儲,安裝和調試應用程序以及代碼。這一系列的過程會消耗你幾個月甚至大半年的時間。
而是用AWS EC2實例,你只需要一個瀏覽器,以及幾分鍾的操作就可以創建你所需要的應用程序了!
如果你不需要這個應用程序,直接將其刪除即可。這樣的模式特別適合初創企業開發新的應用程序並進行試錯。
這也是雲計算帶來的優勢。
On-Demand Instances (按需實例)總結特點如下:
- 按秒收費(以前是按小時收費,現在AWS更改了),用多少收費多少
- EC2實例可以根據業務需求實時增加或減少規模
- 不會有昂貴的初始投資成本
- 適合用來部署有突發性,爆發性流量的應用程序,比如雙11
- 適合用來測試和開發新的應用程序
3.2 Reserved Instances (預留實例)
這種預留實例你需要和AWS簽訂1年或3年的合同,並且會以單價低於同等規格的按需實例的價格買到預留的實例,需要一次性付費。在合同有效的期限內,實例不管處於任何狀態,費用都不會有變化。
如果你需要使用某種需要不間斷運行(24x7x365)的應用程序,那么這種預留實例則會非常適合你,因為你會獲得單位時間內最便宜的EC2實例。
1年的合同可以獲得40%左右的折扣,3年的合同可以獲得60%的折扣。
Reserved Instances (預留實例)總結特點如下:
- 更低的每小時運行成本
- 買斷了一定的計算資源,不會出現AWS計算資源不足而無法創建EC2的情況
- 費用在合同期內是固定的,因此費用可預期
- 適合需要長期運行、穩定的、可預估的應用程序
3.3 Spot Instances (競價實例)
AWS的計算資源會提供給全球成千上萬的客戶,因為客戶使用計算資源的程度不同,也會影響AWS的總體計算資源消耗的程度。AWS向客戶提供的這種競價實例的每小時價格是浮動的,在計算資源緊張的時候價格較高,在計算資源較為空閑的時候價格較低。
因此客戶可以設定規則,在實例價格低於某個閥值的情況下申請並使用該實例,而達到最大的性價比。
這種實例一般比較適合僅進行計算和分析的任務,並且可以隨時中斷。
(擴展閱讀)可以查看客戶評價和案例研究,目前已經非常多公司通過使用競價實例有效地降低非常大的成本。
Spot Instances (競價實例)總結特點如下:
- 每個小時都會變化,依據是競價實力的供需關系
- 可以非常有效地降低運行EC2實例的成本(特別對於有大數量實例需求的情況下)
- 在其上安裝的應用程序隨時可以中斷,也就是數據和任務處理結果都需要保存在外部存儲上
- 對實例運行開始的時間沒有太多要求
3.4 Scheduled Reserved Instances (計划的預留實例)
這個類型的實例和預留實例很相似,但不一樣的地方是你可以定義該類型的實例在每天,每周,每個月的某個時間段運行,其他時間段處於關閉的狀態。
這種實例比較適合於例如只在上班時間運行的應用程序,或者每周末進行的數據批處理等。
3.5 Dedicated Instances (專用的實例)
和按需實例差不多,但是實例會運行在專用的AWS硬件上。您的專用實例與屬於其他 AWS 賬戶的實例在主機硬件級別是實體隔離的。
3.6 Dedicated Hosts(專用的主機)
相當於購買了一整台AWS的物理服務器,針對許可證會綁定CPU或者Socket的軟件特別有用處。
4. EC2實例的運行平台
目前,EC2上可以運行基於Windows和Linux操作系統的實例,不支持任何非X86架構的實例。
另外,在2017 Re:Invent會議上AWS發布了一種新型的實例,可以讓你操作AWS的裸機(不含任何操作系統),因此方便你在上面直接安裝類似VMware Esx的虛擬操作系統。
5. EC2的實例類型
目前,AWS提供了70種以上的不同類型的EC2實例,解決客戶的不同需求,並且這個類型的數量在逐年增加。
總體來說,EC2的實例類型可以分為通用型、計算優化型、內存優化型、存儲優化型、加速計算型。
更高級別的實例會給你帶來更多的CPU,內存,I/O,存儲等等,當然價格也是越來越高。
舉個例子,AWS提供的1年免費套餐中所包含的實例類型是t2.micro,這種實例類型提供了1個vCPU和1G的內存容量,而其他的參數例如網絡,I/O則是所有在同一個物理主機中的實例一起共享的。
更多實例相關的內容,可以查看官網的Amazon EC2 實例類型介紹。
6. EC2實例信息綜述
6.1 EC2 (Elastic Cloud Compute)
- 了解不同EC2實例類型的區別,要知道在不同的使用場景需要使用哪一種類型的EC2
- 按需實例(On Demand Instance)- 用多少時間付費多少,費用精確到秒,不用則可以隨時關閉/終止並停止費用的產生
- 競價實例(Spot Instance)- 以低於按需實例的價格競得實例,但價格高於設定得價格后會自動被終止
- 保留實例(Reserved Instance) – 相當於買斷一個實例1年/3年,期間不管實例開不開都需要付總得費用,但平均下來費用會比按需實例便宜
- 專用主機實例(Dedicated Hosts)- 涉及到軟件許可證的時候,會考慮使用專用主機實例
- 終止一個競價實例
- 如果主動終止一個競價實例,需要為當前這個完整小時付費
- 如果因為價格上漲,AWS終止了你的競價實例,那么這個小時的費用會被免費
- 實例的終止保護(Termination Protection)功能是默認關閉的,有需要必須手動開啟。開啟后實例將無法被終止,除非先將終止保護關閉
- 使用EBS為存儲的實例,默認情況下如果該實例被終止,這個根EBS卷也會被隨之刪除
- 但也可以設置為實例被終止的時候保留根EBS卷