Amazon EMR on EKS에서 수직 자동 조정 설정 - Amazon EMR

Amazon EMR on EKS에서 수직 자동 조정 설정

이 주제는 수직 자동 조정을 통해 Amazon EMR Spark 작업을 제출할 수 있도록 Amazon EKS 클러스터를 준비하는 데 도움이 됩니다. 설정 프로세스를 진행하려면 다음 섹션의 작업을 확인하거나 완료해야 합니다.

사전 조건

클러스터에 수직 자동 조정 Kubernetes 운영자를 설치하기 전에 다음 작업을 완료합니다. 필수 조건 중 하나를 이미 완료한 경우 해당 조건을 건너뛰고 다음 조건으로 넘어갈 수 있습니다.

  • AWS CLI의 최신 버전 설치 또는 업데이트 - AWS CLI를 이미 설치한 경우 최신 버전을 보유하고 있는지 확인합니다.

  • kubectl 설치 - kubectl은 Kubernetes API 서버와 통신하기 위해 사용하는 명령줄 도구입니다. Amazon EKS 클러스터에 수직 자동 조정 관련 아티팩트를 설치하고 모니터링하려면 kubectl이 필요합니다.

  • 운영자 SDK 설치 - Amazon EMR on EKS는 클러스터에 설치하는 수직 자동 조정 운영자의 수명 동안 운영자 SDK를 패키지 관리자로 사용합니다.

  • Docker 설치 - Amazon EKS 클러스터에 설치할 수직 자동 조정 관련 도커 이미지를 인증하고 가져오려면 Docker CLI에 액세스해야 합니다.

  • Kubernetes 지표 서버 설치 - 먼저 수직 포드 오토스케일러가 Kubernetes API 서버에서 지표를 가져올 수 있도록 지표 서버를 설치해야 합니다.

  • Amazon EKS – eksctl 시작하기(버전 1.24 이상) - 수직 자동 조정은 Amazon EKS 버전 1.24 이상에서 지원됩니다. 클러스터를 생성한 후 Amazon EMR에서 사용할 수 있도록 등록합니다.

  • Amazon EMR 기본 이미지 URI 선택(릴리스 6.10.0 이상) - 수직 자동 조정은 Amazon EMR 릴리스 6.10.0 이상에서 지원됩니다.

Amazon EKS 클러스터에 Operator Lifecycle Manager(OLM) 설치

운영자 SDK CLI를 사용하여 다음 예제와 같이 수직 자동 조장을 설정하려는 Amazon EMR on EKS 클러스터에 Operator Lifecycle Manager(OLM)를 설치합니다. 설정 후 OLM을 사용하여 Amazon EMR 수직 자동 조정 운영자의 수명 주기를 설치하고 관리할 수 있습니다.

operator-sdk olm install

설치를 검증하려면 olm status 명령을 실행합니다.

operator-sdk olm status

이 명령이 제대로 실행되면 다음과 비슷한 출력이 반환되는지 확인합니다.

INFO[0007] Successfully got OLM status for version X.XX

설치에 실패한 경우 Amazon EMR on EKS 수직 자동 조정 문제 해결 섹션을 참조하세요.

Amazon EMR on EKS 수직 자동 조정 운영자 설치

다음 단계를 사용하여 Amazon EKS 클러스터에 수직 자동 조정 운영자를 설치합니다.

  1. 설치를 완료하는 데 사용할 다음 환경 변수를 설정합니다.

    • $REGION은 클러스터의 AWS 리전을 가리킵니다. 예: us-west-2.

    • $ACCOUNT_ID는 리전의 Amazon ECR 계정 ID를 가리킵니다. 자세한 내용은 리전별 Amazon ECR 레지스트리 계정 단원을 참조하십시오.

    • $RELEASE는 클러스터에 사용하려는 Amazon EMR 릴리스를 가리킵니다. 수직 자동 조정을 사용하려면 Amazon EMR 릴리스 6.10.0 이상을 사용해야 합니다.

  2. 다음으로, 운영자의 Amazon ECR 레지스트리로 인증 토큰을 가져옵니다.

    aws ecr get-login-password \ --region region-id | docker login \ --username AWS \ --password-stdin $ACCOUNT_ID.dkr.ecr.region-id.amazonaws.com
  3. 다음 명령으로 Amazon EMR on EKS 수직 자동 조정 운영자를 설치합니다.

    ECR_URL=$ACCOUNT_ID.dkr.ecr.$REGION.amazonaws.com && \ REPO_DEST=dynamic-sizing-k8s-operator-olm-bundle && \ BUNDLE_IMG=emr-$RELEASE-dynamic-sizing-k8s-operator && \ operator-sdk run bundle \ $ECR_URL/$REPO_DEST/$BUNDLE_IMG\:latest

    그러면 Amazon EKS 클러스터의 기본 네임스페이스에 수직 자동 조장 운영자가 릴리스됩니다. 다음 명령을 사용하여 다른 네임스페이스에 설치합니다.

    operator-sdk run bundle \ $ACCOUNT_ID.dkr.ecr.$REGION.amazonaws.com/dynamic-sizing-k8s-operator-olm-bundle/emr-$RELEASE-dynamic-sizing-k8s-operator:latest \ -n operator-namespace
    참고

    지정한 네임스페이스가 없는 경우 OLM은 운영자를 설치하지 않습니다. 자세한 내용은 Kubernetes 네임스페이스를 찾을 수 없음 단원을 참조하십시오.

  4. kubectl Kubernetes 명령줄 도구를 사용하여 운영자를 성공적으로 설치했는지 확인합니다.

    kubectl get csv -n operator-namespace

    kubectl 명령은 단계 상태가 성공인 새로 배포한 수직 오토스케일러 운영자를 반환해야 합니다. 설치 또는 설정에 문제가 있는 경우 Amazon EMR on EKS 수직 자동 조정 문제 해결 섹션을 참조하세요.