針對成本和規模最佳化 Amazon EMR 叢集
Amazon EMR 提供受管的 Hadoop 框架,讓您以輕鬆、快速且經濟實惠的方式,在動態可擴展的 Amazon EC2 執行個體之間處理大量資料。您也可以執行其他常用的分散式架構 (例如 EMR 中的 Apache Spark、HBase、Presto 和 Flink),並與其他 AWS 資料存放區 (例如 Amazon S3 和 Amazon DynamoDB) 中的資料進行互動。EMR Notebooks 以流行的 Jupyter Notebook 為基礎,為臨時查詢和探索分析提供開發和協作環境。EMR 能夠安全可靠地處理各式各樣的大數據使用案例,包括日誌分析、Web 索引、資料轉換 (ETL)、機器學習、財務分析、科學模擬和生物資訊學。
Amazon EC2 Spot 執行個體可提供 AWS 雲端中的備用運算容量,相較於隨需價格折扣更高。當 EC2 需要收回容量時,EC2 可以中斷 Spot 執行個體並隨附兩分鐘的通知。您可以將 Spot 執行個體用於各種容錯和靈活的應用程式。例如分析、容器化工作負載、高效能運算 (HPC)、無狀態 Web 伺服器、渲染、CI/CD,以及其他測試和開發工作負載。
在本教學中,您將了解如何使用「建立叢集」精靈,在 Amazon EC2 Spot 執行個體上啟動您的首個 Amazon EMR 叢集。在 Spot 執行個體上執行 Amazon EMR 可極大降低大數據的成本,顯著提高運算能力,並減少處理大數據集的時間。
關於本教學 | |
---|---|
時間 | 10-20 分鐘 |
費用 | 免費 |
使用案例 | 運算 |
產品 | Amazon EMR、EC2 Spot 執行個體 |
等級 | 200 |
上次更新日期 | 2020 年 2 月 4 日 |
步驟 1:使用進階選項建立叢集
1.1 - 開啟瀏覽器並導覽至 Amazon EMR 主控台,或者您可以搜尋 EMR,或在主控台登陸頁面的分析區段下找到 Amazon EMR。如果您已有 AWS 帳戶,請登入主控台。否則,請建立新的 AWS 帳戶來開始使用。
步驟 2:設定叢集軟體和步驟
2.3 - 可選擇設定您想要叢集在佈建後執行的所有步驟,或者略過此步驟,以快速示範如何啟動叢集。
您可以使用 Amazon EMR 步驟,將工作提交至 EMR 叢集上安裝的 Spark 框架。如需詳細資訊,請參閱 Amazon EMR 管理指南中的步驟。在主控台和 CLI 中,使用 Spark 應用程式步驟執行此操作,這會代您執行 spark-submit 指令碼。藉助 API,您可以透過一個步驟來使用 command-runner.jar 叫用 spark-submit。
步驟 3:設定執行個體機群
3.1 - 在執行個體群組設定區段下選取執行個體機群。
執行個體機群讓我們能夠實作執行個體多樣化,這是利用 EC2 Spot 執行個體時的關鍵最佳實務。執行個體多樣化讓您能夠使用多種執行個體類型,以確保 Amazon EMR 可以分配叢集所需的所有容量,同時自動處理中斷。
3.4 - 向下捲動至任務執行個體機群區段,然後選取新增/移除執行個體類型至機群。
執行個體機群可讓您為每個機群指定最多五種執行個體類型,以便 Amazon EMR 可以從多個可用 EC2 Spot 容量集區中佈建容量。
我們建議針對主節點和核心節點使用隨需執行個體,除非您要啟動臨時性工作負載。
您可以進一步了解有關典型使用案例的資訊,並在這裡檢閱有關將 EC2 Spot 執行個體與 Amazon EMR 結合使用的建議。
3.5 - 選取最多五種執行個體類型,以在您的任務節點執行個體機群中使用。您應考慮跨多個執行個體系列的 vcpu 與記憶體比率類似的執行個體類型。
您可以使用 Spot Instance Advisor,進一步了解有關 EMR 相容執行個體的平均成本節省和中斷率方面的資訊。
3.6 - 設定執行個體機群的隨需和 Spot 單元,可以選擇設定每種執行個體類型的單元。
增加隨需單元和 Spot 單元的數目,這可確定為叢集佈建多少容量。為了快速入門並降低此演練的成本,建議您僅部署少量 Spot 單元 (例如 8 個),而非部署隨需單元。
依預設,每種執行個體類型的單元數將與該執行個體類型的 vCore 數相符。您可以視需設定,賦予不同執行個體類型更多權重,當 Amazon EMR 滿足您的執行個體機群容量時,將考慮到這一點。
您還可以指定隨需執行個體或 EC2 Spot 執行個體要滿足的單元數。這允許您組合多種執行個體類型和購買選項,來實現執行個體多樣化以及叢集所需的容量。
3.7 - 可選擇針對叢集設定定義的持續時間和佈建逾時行為。
如果 Amazon EMR 無法針對您的執行個體機群佈建容量,佈建逾時可讓您定義叢集的行為。預設行為是終止;然而,如果超過逾時,您可以選取讓叢集嘗試佈建隨需執行個體,而非 Spot 執行個體。
您可以在這裡進一步了解有關這些選項的詳細資訊。
恭喜
您現已在 EC2 Spot 執行個體上啟動 Amazon EMR 叢集。現在,您可以將 Spot 執行個體整合至 EMR 叢集,並開始針對成本和效能最佳化大數據工作負載。
建議的後續步驟
使用 EMR 執行 Spark 應用程式
現在,您已了解如何將 EC2 Spot 執行個體與 Amazon EMR 結合使用,隨時實作執行個體機群,並且將其他最佳實務運用於自己的工作負載中。如果您想繼續學習,我們建議您參加這裡的自主進度講習班。
閱讀文件
閱讀 Amazon EMR 管理指南,了解 Amazon EMR 的功能與能力。
探索 Amazon EC2 Spot 執行個體
如果您想進一步了解有關 Amazon EC2 Spot 執行個體的資訊,請瀏覽 Amazon EC2 Spot 執行個體產品頁面,以探索文件、影片、部落格等。