數(shù)以萬計的客戶使用Amazon EMR在Apache Spark、Hive、HBase、Flink、Hudi和Presto之類的框架上大規(guī)模運行大數(shù)據(jù)分析應用程序。EMR可自動預置和擴展這些框架,并通過各種EC2實例類型優(yōu)化性能,以滿足價格和性能要求??蛻衄F(xiàn)在正在使用Kubernetes跨組織整合計算池。一些在Amazon Elastic Kubernetes Service(EKS)上自行管理Apache Spark的客戶想要使用EMR消除安裝和管理其框架以及與AWS服務集成的繁重工作。此外,他們希望利用EMR提供的更快的運行時以及開發(fā)和調試工具。
今天,我們宣布正式推出Amazon EKS上的Amazon EMR,這是EMR中的一項新部署選項,可讓客戶在EKS上自動預置和管理開源大數(shù)據(jù)框架。借助EKS上的EMR,客戶現(xiàn)在可以在同一EKS集群上與其他類型的應用程序一起運行Spark應用程序,以提高資源利用率并簡化基礎設施管理。
客戶可以將EMR應用程序與其他類型的應用程序部署在同一個EKS集群上,這樣他們就可以在單個解決方案上共享資源并實現(xiàn)標準化,以便操作和管理所有應用程序??蛻艨梢栽贓KS上獲取他們現(xiàn)在在EC2上使用的所有相同的EMR功能,例如訪問最新的框架、性能優(yōu)化運行時、用于應用程序開發(fā)的EMR Notebooks以及用于調試的Spark用戶界面。
Amazon EMR自動將應用程序打包到具有大數(shù)據(jù)框架的容器中,并提供用于與其他AWS服務集成的預構建連接器。然后,EMR在EKS集群上部署應用程序并管理日志記錄和監(jiān)控。使用EKS上的EMR,與EKS上的標準Apache Spark相比,使用EMR中包含的性能優(yōu)化Spark運行時,您可以將性能速度提高3倍。
EKS上的Amazon EMR–入門
如果您已經擁有運行Spark作業(yè)的EKS集群,只需使用AWS管理控制臺、AWS命令行界面(CLI)或API來部署您的Spark應用程序,即可用EMR注冊您的現(xiàn)有EKS集群。
例如,下面這個簡單的CLI命令可用來注冊您的EKS集群。
$ aws emr create-virtual-cluster \
--name <virtual_cluster_name> \
--container-provider '{
"id": "<eks_cluster_name>",
"type": "EKS",
"info": {
"eksInfo": {
"namespace": "<namespace_name>"
}
}
}'
在EMR管理控制臺中,您可以在虛擬集群列表中看到它。
注冊Amazon EKS集群后,EMR工作負載將部署到Kubernates節(jié)點和Pod以管理應用程序執(zhí)行和自動擴展,并設置托管終端節(jié)點,以便您可以連接筆記本和SQL客戶端。EMR為分析應用程序中使用的開源框架構建和部署性能優(yōu)化的運行時。
您只需啟動您的Spark作業(yè)。
$ aws emr start-job-run \
--name <job_name> \
--virtual-cluster-id <cluster_id> \
--execution-role-arn <IAM_role_arn> \
--virtual-cluster-id <cluster_id> \
--release-label <<emr_release_label> \
--job-driver '{
"sparkSubmitJobDriver": {
"entryPoint": <entry_point_location>,
"entryPointArguments": ["<arguments_list>"],
"sparkSubmitParameters": <spark_parameters>
}
}'
要監(jiān)控和調試作業(yè),您可以使用上傳到您的Amazon CloudWatch和Amazon Simple Storage Service(S3)位置的檢查日志,這些位置在監(jiān)控配置中進行配置。您還可以使用控制臺中的一鍵式體驗啟動Spark歷史記錄服務器。
與Amazon EMR Studio集成
現(xiàn)在,您可以使用AWS開發(fā)工具包和AWS CLI、Amazon EMR Studio筆記本以及Apache Airflow之類的工作流編排服務提交分析應用程序。我們已經為EKS上的Amazon EMR開發(fā)了一個新的Airflow Operator。您可以將此連接器與自行管理的Airflow結合使用,也可以使用適用于Apache Airflow的Amazon托管工作流將其添加到插件位置。
您還可以使用新預覽的Amazon EMR Studio在基于Web的集成開發(fā)環(huán)境(IDE)中執(zhí)行數(shù)據(jù)分析和數(shù)據(jù)工程任務。借助Amazon EMR Studio,您可以使用Studio界面向部署在EKS上的EMR集群提交筆記本代碼。在設置了Studio用戶可以將工作區(qū)附加到的一個或多個托管終端節(jié)點之后,EMR Studio可以與虛擬集群進行通信。
對于EMR Studio預覽版,為虛擬集群創(chuàng)建托管終端節(jié)點時不會產生額外費用。要了解更多信息,請訪問博客文章和指南文檔。
現(xiàn)已推出
Amazon EKS上的Amazon EMR現(xiàn)已在美國東部(弗吉尼亞北部)、美國西部(俄勒岡)和歐洲(愛爾蘭)區(qū)域推出。您可以在適用于EKS的AWS Fargate中運行EMR工作負載,從而不再需要為Pod預置和管理基礎設施作為無服務器選項。