Helm을 사용하여 Amazon EKS 클러스터에 패키지 설치 - Amazon SageMaker

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

Helm을 사용하여 Amazon EKS 클러스터에 패키지 설치

SageMaker HyperPod 클러스터를 생성하고 Amazon EKS 클러스터에 연결하기 전에 Kubernetes의 패키지 관리자인 Helm을 사용하여 패키지를 설치해야 합니다. Helm은 Kubernetes 클러스터의 설치 프로세스를 설정하는 오픈 소스 도구입니다. 종속성 설치를 자동화하고 간소화할 수 있으며 EKS Amazon 클러스터를 SageMaker HyperPod 클러스터의 오케스트레이터(제어 영역)로 준비하는 데 필요한 다양한 설정을 간소화합니다.

SageMaker HyperPod 서비스 팀은 디바이스/EFA플러그인, Kueue, Kubeflow 훈련 운영자 및 관련 권한 구성과 같은 키 종속성을 번들로 제공하는 Helm 차트 패키지를 제공합니다.

중요

이 헬름 설치 단계는 필수 단계입니다. 제공된 Helm 차트를 사용하여 Amazon EKS 클러스터를 구성하지 않으면 SageMaker HyperPod 클러스터가 올바르게 작동하지 않거나 생성 프로세스가 완전히 실패할 수 있습니다. aws-hyperpod 네임스페이스 이름은 수정할 수 없습니다.

  1. 로컬 시스템에 Helm을 설치합니다.

  2. SageMaker HyperPod CLI포지토리 에 SageMaker HyperPod 있는 helm_chart/HyperPodHelmChart에서 제공하는 Helm 차트를 다운로드합니다.

    git clone https://github.com/aws/sagemaker-hyperpod-cli.git cd sagemaker-hyperpod-cli/helm_chart
  3. Helm 차트의 종속성을 업데이트하고, Kubernetes 클러스터에 적용될 변경 사항을 미리 보고, Helm 차트를 설치합니다.

    helm dependencies update HyperPodHelmChart
    helm install hyperpod-dependencies HyperPodHelmChart --dry-run
    helm install hyperpod-dependencies HyperPodHelmChart

요약하면 Helm 설치는 작업 예약 및 대기열(Kueue), 스토리지 관리, MLflow 통합 및 Kubeflow를 포함하여 Amazon EKS 클러스터에 대한 다양한 구성 요소를 설정합니다. 또한 차트는 필요한 구성 요소인 SageMaker HyperPod 클러스터 복원력 기능과 통합하기 위해 다음 구성 요소를 설치합니다.

  • 상태 모니터링 에이전트 - 에서 제공하는 상태 모니터링 에이전트를 설치합니다 SageMaker HyperPod. HyperPod 클러스터를 모니터링하려면 필수입니다. 상태 모니터링 에이전트는 다음과 같이 Docker 이미지로 제공됩니다. Helm 차트에 제공된 values.yaml 에서 이미지는 사전 설정되어 있습니다. 에이전트는 GPU기반 인스턴스 및 Trainium-accelerator-based 인스턴스(trn1, trn1n, )를 지원합니다inf2. 네aws-hyperpod임스페이스에 설치됩니다.

    590183648699.dkr.ecr.us-west-2.amazonaws.com/hyperpod-health-monitoring-agent:1.0.230.0_1.0.19.0
  • 심층 상태 확인 - 네aws-hyperpod임스페이스에 ClusterRole, ServiceAccount (deep-health-check-service-account) 및 를 설정ClusterRoleBinding하여 SageMaker HyperPod 심층 상태 확인 기능을 활성화합니다. 딥 상태 확인을 위한 Kubernetes RBAC 파일에 대한 자세한 내용은 deep-health-check-rbac.yaml CLI GitHub 리포지토리의 구성 파일을 참조하세요 SageMaker HyperPod.

  • job-auto-restart - 네aws-hyperpod임스페이스에 ClusterRole, ServiceAccount (job-auto-restart) 및 를 설정ClusterRoleBinding하여 에서 PyTorch 훈련 작업에 대한 자동 재시작 기능을 활성화합니다 SageMaker HyperPod. 용 Kubernetes RBAC 파일에 대한 자세한 내용은 job-auto-restart-rbac.yaml GitHub 리포지토리의 구성 파일을 job-auto-restart참조하세요 SageMaker HyperPod CLI.

  • Kubeflow MPI 연산자 - MPI 연산자는 Kubernetes 클러스터MPI에서 메시지 전달 인터페이스()를 사용하여 분산 Machine Learning(ML) 및 고성능 컴퓨팅(HPC) 워크로드 실행을 간소화하는 Kubernetes 연산자입니다. MPI Operator v0.5를 설치합니다. 네mpi-operator임스페이스에 설치됩니다.

  • nvidia-device-plugin - Amazon EKS 클러스터의 컨테이너가 NVIDIA GPUs 사용할 수 있도록 자동으로 노출할 수 있는 Kubernetes 디바이스 플러그인입니다. 이를 통해 Kubernetes는 해당 컨테이너에 GPUs 대해 요청된 에 대한 액세스를 할당하고 제공할 수 있습니다. 에서 인스턴스 유형을 사용할 때 필요합니다GPU.

  • neuron-device-plugin - Amazon EKS 클러스터의 컨테이너에서 사용할 Inferentia 칩을 자동으로 노출 AWS 할 수 있는 Kubernetes 디바이스 플러그인입니다. 이를 통해 Kubernetes는 클러스터 노드의 AWS Inferentia 칩에 액세스하고 이를 활용할 수 있습니다. Neuron 인스턴스 유형을 사용할 때 필요합니다.

  • aws-efa-k8s-device-plugin - Amazon EKS 클러스터에서 AWS Elastic Fabric Adapter(EFA)를 사용할 수 있는 Kubernetes 디바이스 플러그인입니다. EFA 는 클러스터의 인스턴스 간에 지연 시간이 짧고 처리량이 높은 통신을 제공하는 네트워크 디바이스입니다. EFA 지원되는 인스턴스 유형을 사용할 때 필요합니다.

제공된 Helm 차트를 사용한 설치 절차에 대한 자세한 내용은 README 리포지토리의 파일을 참조하세요 SageMaker HyperPod CLI.