本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
從 SageMaker Studio 或 Studio Classic 連線至 Amazon EMR叢集
資料科學家和資料工程師可以直接從 Studio 使用者介面探索並連線至 Amazon EMR叢集。在開始之前,請確定您已如 步驟 4:設定許可,以啟用從 Studio 列出和啟動 Amazon EMR叢集 節所述設定必要的許可。這些許可授予 Studio 建立、啟動、檢視、存取和終止叢集的能力。
您可以將 Amazon EMR叢集直接從 Studio UI 連線至新的 JupyterLab 筆記本,或選擇在執行中的 JupyterLab 應用程式的筆記本中啟動連線。
重要
您只能探索並連線至從私有空間啟動的 JupyterLab 和 Studio Classic 應用程式的 Amazon EMR叢集。確保 Amazon EMR叢集位於與 Studio 環境相同的 AWS 區域。您的 JupyterLab 空間必須使用 SageMaker 分佈映像版本 1.10
或更高版本。
使用 Studio UI 連線至 Amazon EMR叢集
若要使用 Studio 或 Studio Classic UI 連線至叢集,您可以從 中存取的叢集清單從 Studio 或 Studio Classic 列出 Amazon EMR叢集,或從 SageMaker Studio 或 Studio Classic 中的筆記本啟動連線。
若要從 Studio UI 將 Amazon EMR叢集連接至新的 JupyterLab 筆記本:
-
在 Studio UI 的左側面板中,選取左側導覽選單中的資料節點。向下導覽至 Amazon EMR 應用程式和叢集 。這會開啟一個頁面,列出您可以在 Amazon EMR叢集索引標籤中從 Studio 存取的 Amazon EMR叢集。
注意
如果您或您的管理員已設定許可,以允許跨帳戶存取 Amazon EMR叢集,您可以檢視您已授予 Studio 存取權之所有帳戶的叢集合併清單。
-
選取您要連線至新筆記本的 Amazon EMR叢集,然後選擇連接至筆記本 。這會開啟一個模式視窗,顯示您的 JupyterLab 空間清單。
-
-
選取您要啟動 JupyterLab應用程式的空間,然後選擇開啟筆記本 。這會從您選擇的空間啟動 JupyterLab 應用程式,並開啟新的筆記本。
注意
Studio Classic 的使用者需要選取映像和核心。如需支援的映像清單,請參閱支援從 Studio 或 Studio Classic 連線至 Amazon EMR叢集的影像和核心或參閱使用自有映像。
-
或者,您也可以選擇模態視窗頂端的建立新空間按鈕來建立新的私有空間。輸入空間的名稱,然後選擇建立空間並開啟筆記本 。這會建立具有預設執行個體類型和最新可用 SageMaker 分佈映像的私有空間、啟動 JupyterLab應用程式,並開啟新的筆記本。
-
-
如果您選取的叢集不使用 Kerberos、 LDAP或執行期角色身分驗證,Studio 會提示您選取憑證類型。選擇 Http 基本身分驗證或無憑證,然後輸入您的憑證 (如果適用)。
如果您選取的叢集支援執行期角色,請選擇您的 Amazon EMR叢集可以為任務執行擔任IAM的角色名稱。
重要
若要將 JupyterLab 筆記本成功連接至支援執行期角色的 Amazon EMR叢集,您必須先將執行期角色清單與您的網域或使用者設定檔建立關聯,如 中所述在 Studio 中設定 Amazon EMR叢集存取的IAM執行期角色 。未完成此步驟將導致您無法建立連線。
選取後,連線命令會填入筆記本的第一個儲存格,並啟動與 Amazon EMR叢集的連線。
一旦連接成功,將顯示一則訊息確認連線並啟動 Spark 應用程式。
或者,您可以從 JupyterLab 或 Studio Classic 筆記本連線至叢集。
-
選擇筆記本頂端的叢集按鈕。這會開啟一個模式視窗,列出處於您可以存取
Running
狀態的 Amazon EMR叢集。您可以在Running
Amazon EMR叢集索引標籤中查看 Amazon EMR叢集。注意
對於 Studio Classic 的使用者,只有在您從 支援從 Studio 或 Studio Classic 連線至 Amazon EMR叢集的影像和核心或從 使用核心時,才會看到叢集使用自有映像。如果您在筆記本頂端看不到叢集,請確定您的系統管理員已設定叢集的可探索性,並切換至支援的核心。
-
選取要連線的叢集,然後選擇連線。
-
如果您將 Amazon EMR叢集設定為支援執行期IAM角色 ,您可以從 Amazon EMR執行角色下拉式選單中選取您的角色。
重要
若要將 JupyterLab 筆記本成功連接至支援執行期角色的 Amazon EMR叢集,您必須先將執行期角色清單與您的網域或使用者設定檔建立關聯,如 中所述在 Studio 中設定 Amazon EMR叢集存取的IAM執行期角色 。未完成此步驟將導致您無法建立連線。
否則,如果您選擇的叢集不使用 Kerberos、 LDAP或執行期角色身分驗證,Studio 或 Studio Classic 會提示您選取憑證類型。您可以選擇HTTP基本身分驗證或無憑證 。
-
Studio 新增程式碼區塊,然後執行到作用中儲存格以建立連線。此儲存格包含連線魔術命令,可根據您的身分驗證類型將筆記本連接至應用程式。
一旦連接成功,將顯示一則訊息確認連線並啟動 Spark 應用程式。
使用連線命令連線至 Amazon EMR叢集
若要建立與 Amazon EMR叢集的連線,您可以在筆記本儲存格內執行連線命令。
建立連線時,您可以使用 Kerberos 、Lightweight Directory Access Protocol (LDAP) 或執行期IAM角色身分驗證進行身分驗證。您選擇的身分驗證方法取決於叢集組態。
您可以在啟用 Kerberos 的 Amazon EMR叢集上使用 Network Load Balancer 存取 Apache Livy
如果您的管理員已啟用跨帳戶存取,您可以從 Studio Classic 筆記本連線至您的 Amazon EMR叢集,無論您的 Studio Classic 應用程式和叢集位於同一個 AWS 帳戶還是不同的帳戶中。
針對下列每種身分驗證類型,請使用指定的命令,從 Studio 或 Studio Classic 筆記本連線至叢集。
-
Kerberos
如果您需要跨帳戶 Amazon EMR存取,請附加
--assumable-role-arn
引數。如果您使用 連線到叢集,請附加--verify-certificate
引數HTTPS。%load_ext sagemaker_studio_analytics_extension.magics %sm_analytics emr connect --cluster-id
cluster_id
\ --auth-type Kerberos --language python [--assumable-role-arnEMR_access_role_ARN
] [--verify-certificate/home/user/certificateKey.pem
] -
LDAP
如果您需要跨帳戶 Amazon EMR存取,請附加
--assumable-role-arn
引數。如果您使用 連線到叢集,請附加--verify-certificate
引數HTTPS。%load_ext sagemaker_studio_analytics_extension.magics %sm_analytics emr connect --cluster-id
cluster_id
\ --auth-type Basic_Access --language python [--assumable-role-arnEMR_access_role_ARN
] [--verify-certificate/home/user/certificateKey.pem
] -
NoAuth
如果您需要跨帳戶 Amazon EMR存取,請附加
--assumable-role-arn
引數。如果您使用 連線到叢集,請附加--verify-certificate
引數HTTPS。%load_ext sagemaker_studio_analytics_extension.magics %sm_analytics emr connect --cluster-id
cluster_id
\ --auth-type None --language python [--assumable-role-arnEMR_access_role_ARN
] [--verify-certificate/home/user/certificateKey.pem
] -
執行期IAM角色
如果您需要跨帳戶 Amazon EMR存取,請附加
--assumable-role-arn
引數。如果您使用 連線到叢集,請附加--verify-certificate
引數HTTPS。如需使用執行期IAM角色連線至 Amazon EMR叢集的詳細資訊,請參閱 在 Studio 中設定 Amazon EMR叢集存取的IAM執行期角色 。
%load_ext sagemaker_studio_analytics_extension.magics %sm_analytics emr connect --cluster-id
cluster_id
\ --auth-type Basic_Access \ --emr-execution-role-arn arn:aws:iam::studio_account_id
:role/emr-execution-role-name
[--assumable-role-arnEMR_access_role_ARN
] [--verify-certificate/home/user/certificateKey.pem
]
透過 連接至 Amazon EMR叢集 HTTPS
如果您已為 設定 Amazon EMR叢集並啟用傳輸加密,且 Apache Livy 伺服器HTTPS希望 Studio 或 Studio Classic EMR使用 與 Amazon 通訊HTTPS,則需要設定 Studio 或 Studio Classic 以存取憑證金鑰。
對於自我簽署或本機憑證授權單位 (CA) 簽署憑證,您可以透過兩個步驟執行此作業:
-
使用下列其中一個選項,將憑證PEM檔案下載至本機檔案系統:
-
Jupyter 的內建檔案上傳功能。
-
筆記本儲存格。
-
(僅適用於 Studio Classic 使用者) 生命週期組態 (LCC) 指令碼。
如需有關如何使用LCC指令碼的資訊,請參閱使用生命週期組態指令碼自訂筆記本執行個體
-
-
在連線命令的
--verify-certificate
引數中提供憑證路徑,以啟用憑證驗證。%sm_analytics emr connect --cluster-id
cluster_id
\ --verify-certificate/home/user/certificateKey.pem
...
對於公有 CA 發行憑證,請將 --verify-certificate
參數設定為 true
來設定憑證驗證。
或者,您可以將 --verify-certificate
參數設定為 false
來停用憑證驗證。
您可以在 中找到 Amazon EMR叢集的可用連線命令清單使用連線命令連線至 Amazon EMR叢集。