本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
安裝 SageMaker AI Spaces 附加元件
相依性
Amazon EKS Pod Identity Agent 附加元件
-
運算子取得AWS登入資料時需要
-
通常預先安裝在大多數 EKS 叢集上
-
安裝:透過 EKS 附加元件
Cert-manager
-
TLS 憑證管理的必要項目
-
如果使用 HyperPod 快速叢集建立,則預先安裝
-
安裝:透過 EKS 附加元件
EBS CSI 驅動程式
-
空間持久性儲存 (EBS 磁碟區) 的必要項目
-
使用 SageMaker 主控台安裝時自動安裝
-
需要具有
AmazonEBSCSIDriverPolicy+ HyperPod 特定許可的 IAM 角色 -
安裝:透過 EKS 附加元件。不過,請務必依照指南安裝 HyperPod 所需的其他許可。
WebUI Access 的其他相依性
AWSLoad Balancer控制器
-
如果使用 HyperPod 快速叢集建立,則預先安裝
-
安裝:透過 Helm
-
手動安裝指南:安裝AWSLoad Balancer控制器
外部 DNS
-
使用自訂網域進行 WebUI 存取時需要
-
自動管理 Route53 DNS 記錄
-
需要具有 Route53 許可的 IAM 角色
-
安裝:透過 EKS 附加元件
安裝
開始之前,請確定您已:
-
具有至少一個執行 Kubernetes 1.30 版或更新版本之工作者節點的作用中 SageMaker HyperPod 叢集
-
至少一個具有最低執行個體類型的工作者節點 (XX vCPU、YY GiB 記憶體)
安裝 Amazon SageMaker Spaces 附加元件
您可以使用預設設定的快速安裝或進階組態的自訂安裝來安裝 SageMaker Spaces 附加元件。
快速安裝
-
開啟位在 https://console.aws.amazon.com/sagemaker/
的 Amazon SageMaker 主控台。 -
從叢集清單中選擇您的叢集。
-
在 IDE 和筆記本索引標籤上,尋找 Amazon SageMaker Spaces,然後選擇快速安裝。
自動快速安裝:
-
建立附加元件所需的 IAM 角色
-
使用 Systems Manager 所需的 IAM 角色啟用遠端存取模式
-
安裝附加元件並設定 Pod 身分關聯
自訂安裝
-
開啟位在 https://console.aws.amazon.com/sagemaker/
的 Amazon SageMaker 主控台。 -
從叢集清單中選擇您的叢集。
-
在 IDE 和筆記本索引標籤上,尋找 Amazon SageMaker Spaces,然後選擇自訂安裝。
-
設定以下選項:
附加元件所需的 IAM 角色
-
選擇是否建立具有建議許可的新 IAM 角色,或使用具有必要許可的現有角色 (請參閱上述管理員許可設定一節)
遠端存取組態
-
啟用以允許使用者使用 AWSSystems Manager 從本機 Visual Studio 程式碼連線到空格
-
對於 SSM 受管執行個體角色:
-
建立新角色 – 附加元件會建立和管理具有必要 Systems Manager 許可的角色
-
使用現有角色 – 選取具有必要 Systems Manager 許可的預先設定角色
-
-
確保 Spaces 附加元件執行角色具有 SSM 受管執行個體角色的 PassRole 許可
注意
啟用遠端存取會啟用 AWSSystems Manager advanced-instances 方案,以支付每個執行個體的額外費用。如需定價資訊,請參閱 Systems Manager 定價。
Web 瀏覽器存取組態
-
啟用以允許使用者使用 Route 53 DNS 和 SSL 憑證透過 Web 瀏覽器存取空間
-
先決條件:在啟用瀏覽器存取之前安裝AWSLoad Balancer控制器
-
Route 53 託管區域:選取現有區域或選擇建立託管區域
-
子網域:輸入子網域字首 (僅限英數字元和連字號,最多 63 個字元)
-
SSL 憑證:
-
建立新的憑證 – 使用 Route 53 DNS 記錄從 AWSCertificate Manager 自動請求和驗證
-
使用現有憑證 – 從 AWSCertificate Manager 選取 SSL 憑證
-
-
權杖簽署金鑰:選取用於 JWT 權杖簽署的 AWSKMS 非對稱金鑰,或選擇建立簽署金鑰
注意
標準 Route 53 費用適用於託管區域和 DNS 查詢。如需定價資訊,請參閱 Route 53 定價。
-
EKS 附加元件安裝 - Jupyter K8s 搭配 WebUI
組態檔案
建立 addon-config.yaml:
jupyter-k8s: workspacePodWatching: enable: true jupyter-k8s-aws-hyperpod: clusterWebUI: enabled: true domain: "<DOMAIN_NAME>" awsCertificateArn: "<ACM_CERTIFICATE_ARN>" kmsEncryptionContext: enabled: true traefik: shouldInstall: true auth: kmsKeyId: "<KMS_KEY_ARN>"
取代下列預留位置:
-
<DOMAIN_NAME>:您的網域名稱 (例如
jupyter.example.com) -
<ACM_CERTIFICATE_ARN>:您的 ACM 憑證 ARN (例如
arn:aws:acm:us-west-2:111122223333:certificate/12345678-1234-1234-1234-123456789012、 -
<KMS_KEY_ARN>:您的 KMS 金鑰 ARN (例如,
arn:aws:kms:us-west-2:111122223333:key/12345678-1234-1234-1234-123456789012
透過 安裝AWS CLI
aws eks create-addon \ --cluster-name <CLUSTER_NAME> \ --addon-name amazon-sagemaker-spaces \ --configuration-values file://addon-config.yaml \ --resolve-conflicts OVERWRITE \ --region <AWS_REGION>
若要更新現有的附加元件:
aws eks update-addon \ --cluster-name <CLUSTER_NAME> \ --addon-name amazon-sagemaker-spaces \ --configuration-values file://addon-config.yaml \ --resolve-conflicts OVERWRITE \ --region <AWS_REGION>
透過 安裝AWS 管理主控台
-
前往 EKS 主控台 → 選取您的叢集
-
按一下附加元件索引標籤 → 新增
-
選取 SageMaker Spaces 附加元件
-
在選用組態設定中貼上上述 YAML 組態
-
按一下廣告
驗證安裝
# Check addon status aws eks describe-addon \ --cluster-name <CLUSTER_NAME> \ --addon-name amazon-sagemaker-spaces \ --region <AWS_REGION>
自訂 ALB 屬性
根據預設,附加元件會建立可搭配 Web UI 使用的公有負載平衡器。您可以使用 EKS 附加元件屬性來自訂負載平衡器屬性。
若要建立內部 ALB,請將 方案設定為 internal:
jupyter-k8s-aws-hyperpod: clusterWebUI: enabled: true domain: "<DOMAIN_NAME>" awsCertificateArn: "<ACM_CERTIFICATE_ARN>" alb: scheme: "internal" # Default is "internet-facing"
您也可以使用 alb.annotations 欄位來自訂 ALB 設定:
jupyter-k8s-aws-hyperpod: clusterWebUI: enabled: true domain: "<DOMAIN_NAME>" awsCertificateArn: "<ACM_CERTIFICATE_ARN>" alb: scheme: "internal" annotations: alb.ingress.kubernetes.io/security-groups: "<SECURITY_GROUP_ID>" alb.ingress.kubernetes.io/subnets: "<SUBNET_ID_1>,<SUBNET_ID_2>" alb.ingress.kubernetes.io/load-balancer-attributes: "idle_timeout.timeout_seconds=60"
常見的 ALB 註釋:
-
alb.ingress.kubernetes.io/security-groups:指定 ALB 的安全群組 -
alb.ingress.kubernetes.io/subnets:指定 ALB 的子網路 -
alb.ingress.kubernetes.io/load-balancer-attributes:設定 ALB 屬性 (閒置逾時、存取日誌等)
如需所有可用的註釋,請參閱AWSLoad Balancer控制器文件
附加元件的升級/版本控制
aws eks update-addon \ --cluster-name <CLUSTER_NAME> \ --addon-name amazon-sagemaker-spaces \ --configuration-values file://addon-config.yaml \ --resolve-conflicts OVERWRITE \ --region <AWS_REGION>