Amazon EMR 릴리스 정보 아카이브 - Amazon EMR

Amazon EMR 릴리스 정보 아카이브

모든 Amazon EMR 릴리스 정보는 아래에 나와 있습니다. 각 릴리스의 포괄적인 릴리스 정보는 Amazon EMR 6.x 릴리스 버전, Amazon EMR 4.x 릴리스 버전, Amazon EMR 5.x 릴리스 버전 섹션을 참조하세요.

새 Amazon EMR 릴리스가 출시될 때 업데이트를 받으려면 https://docs.aws.amazon.com/emr/latest/ReleaseGuide/amazon-emr-release-notes.rss에서 Amazon EMR 릴리스 정보에 대한 RSS 피드를 구독합니다.

릴리스 6.14.0

다음 릴리스 정보에는 Amazon EMR 릴리스 6.14.0에 대한 정보가 포함됩니다. 변경 사항은 6.13.0에 관련됩니다. 릴리스 일정에 대한 자세한 내용은 변경 로그 섹션을 참조하세요.

새로운 기능
  • Amazon EMR 6.14.0 supports Apache Spark 3.4.1, Apache Spark RAPIDS 23.06.0-amzn-2, Flink 1.17.1, Iceberg 1.3.1, and Trino 422.

  • Amazon EMR Managed Scaling은 Amazon EMR 6.14.0 이상에서 생성한 클러스터에 대해 ap-southeast-3 아시아 태평양(자카르타) 리전에서 정식 출시되었습니다.

변경 사항, 향상된 기능 및 해결된 문제
  • 6.14.0 릴리스는 Amazon EC2에서 실행되는 Amazon EMR을 사용하여 로그 관리를 최적화합니다. 따라서 클러스터 로그의 스토리지 비용이 조금 절감될 수 있습니다.

  • 6.14.0 릴리스에서는 Amazon EBS 볼륨에서 크기에 따른 많은 변형을 지원하는 여러 코어 인스턴스를 처리하도록 조정 워크플로를 개선합니다. 이 개선 사항은 코어 노드에만 적용되며, 태스크 노드의 스케일 다운 작업은 영향을 받지 않습니다.

  • 6.14.0 릴리스에서는 Amazon EMR이 오픈 소스 애플리케이션(예: Apache Hadoop YARN ResourceManager and HDFS NameNode)과 상호 작용하는 방식을 개선합니다. 이 개선을 통해 클러스터 조정으로 인한 운영 지연 위험이 줄어들고 오픈 소스 애플리케이션과의 연결 문제로 인해 발생하는 시작 장애가 완화됩니다.

  • 6.14.0 릴리스에서는 클러스터 시작 시 애플리케이션 설치를 최적화합니다. 이를 통해 특정 조합의 Amazon EMR 애플리케이션에 대한 클러스터 시작 시간이 개선됩니다.

  • 6.14.0 릴리스에서는 사용자 지정 도메인이 있는 VPC에서 실행 중인 클러스터에서 코어 또는 태스크 노드가 다시 시작될 때 클러스터 스케일 다운 작업이 중단될 수 있는 문제를 수정합니다.

  • Amazon EMR 5.36 이상 또는 6.6 이상의 최신 패치 릴리스가 적용된 클러스터를 시작하는 경우 Amazon EMR은 기본 Amazon EMR AMI에 대한 최신 Amazon Linux 2 릴리스를 사용합니다. 자세한 내용은 Amazon EMR에 대한 기본 Amazon Linux AMI 사용을 참조하세요.

    OsReleaseLabel(Amazon Linux 버전) Amazon Linux 커널 버전 사용 가능한 날짜 지원되는 리전
    2.0.20230906.0 4.14.322 2023년 9월 11일 미국 동부(버지니아 북부), 미국 동부(오하이오), 미국 서부(캘리포니아 북부), 미국 서부(오레곤), 유럽(스톡홀름), 유럽(밀라노), 유럽(스페인), 유럽(프랑크푸르트), 유럽(취리히), 유럽(아일랜드), 유럽(런던), 유럽(파리), 아시아 태평양(홍콩), 아시아 태평양(뭄바이), 아시아 태평양(하이데라바드), 아시아 태평양(도쿄), 아시아 태평양(서울), 아시아 태평양(오사카), 아시아 태평양(싱가포르), 아시아 태평양(시드니), 아시아 태평양(자카르타), 아시아 태평양(멜버른), 아프리카(케이프타운), 남아메리카(상파울루), 중동(바레인), 중동(UAE), 캐나다(중부), 이스라엘(텔아비브)

릴리스 6.13.0

다음 릴리스 정보에는 Amazon EMR 릴리스 6.13.0에 대한 정보가 포함됩니다. 변경 사항은 6.12.0에 관련됩니다. 릴리스 일정에 대한 자세한 내용은 변경 로그 섹션을 참조하세요.

새로운 기능
  • Amazon EMR 6.13.0 supports Apache Spark 3.4.1, Apache Spark RAPIDS 23.06.0-amzn-1, CUDA Toolkit 11.8.0, and JupyterHub 1.5.0.

변경 사항, 향상된 기능 및 해결된 문제
  • 6.13.0 릴리스에서는 클러스터 종료 명령 실행 시 모든 로그가 Amazon S3에 정기적으로 업로드되도록 Amazon EMR 로그 관리 대몬(daemon)을 개선합니다. 이를 통해 클러스터 종료 속도가 빨라집니다.

  • 6.13.0 릴리스에서는 모든 로그 파일을 Amazon S3에 일관되고 시기적절하게 업로드하도록 Amazon EMR 로그 관리 기능을 개선합니다. 이는 특히 장기 실행 EMR 클러스터에 유용합니다.

  • Amazon EMR 5.36 이상 또는 6.6 이상의 최신 패치 릴리스가 적용된 클러스터를 시작하는 경우 Amazon EMR은 기본 Amazon EMR AMI에 대한 최신 Amazon Linux 2 릴리스를 사용합니다. 자세한 내용은 Amazon EMR에 대한 기본 Amazon Linux AMI 사용을 참조하세요.

    OsReleaseLabel(Amazon Linux 버전) Amazon Linux 커널 버전 사용 가능한 날짜 지원되는 리전
    2.0.20230808.0 4.14.320 2023년 8월 24일 미국 동부(버지니아 북부), 미국 동부(오하이오), 미국 서부(캘리포니아 북부), 미국 서부(오레곤), 유럽(스톡홀름), 유럽(밀라노), 유럽(스페인), 유럽(프랑크푸르트), 유럽(취리히), 유럽(아일랜드), 유럽(런던), 유럽(파리), 아시아 태평양(홍콩), 아시아 태평양(뭄바이), 아시아 태평양(하이데라바드), 아시아 태평양(도쿄), 아시아 태평양(서울), 아시아 태평양(오사카), 아시아 태평양(싱가포르), 아시아 태평양(시드니), 아시아 태평양(자카르타), 아시아 태평양(멜버른), 아프리카(케이프타운), 남아메리카(상파울루), 중동(바레인), 중동(UAE), 캐나다(중부), 이스라엘(텔아비브)

릴리스 6.12.0

다음 릴리스 정보에는 Amazon EMR 릴리스 6.12.0에 대한 정보가 포함됩니다. 변경 사항은 6.11.0에 관련됩니다. 릴리스 일정에 대한 자세한 내용은 변경 로그 섹션을 참조하세요.

새로운 기능
  • Amazon EMR 6.12.0 supports Apache Spark 3.4.0, Apache Spark RAPIDS 23.06.0-amzn-0, CUDA 11.8.0, Apache Hudi 0.13.1-amzn-0, Apache Iceberg 1.3.0-amzn-0, Trino 414, and PrestoDB 0.281.

  • Amazon EMR 릴리스 6.12.0 이상에서는 Apache Livy, HiveServer2(HS2)를 통한 Apache Hive, Trino, Presto, Hue와의 LDAP 통합을 지원합니다. 6.12.0 이상을 사용하는 EMR 클러스터에 Apache Spark 및 Apache Hadoop을 설치하고 LDAP를 사용하도록 구성할 수도 있습니다. 자세한 내용은 Amazon EMR에서 인증을 위해 Active Directory 또는 LDAP 서버 사용을 참조하세요.

변경 사항, 향상된 기능 및 해결된 문제
  • Amazon EMR 릴리스 6.12.0 이상에서는 Flink에 대한 Java 11 런타임 지원을 제공합니다. 자세한 내용은 Java 11과 함께 실행하도록 Flink 구성 섹션을 참조하세요.

  • Amazon EMR 6.12.0에서는 기본적으로 Amazon Corretto 8을 사용하는 모든 애플리케이션을 지원합니다(단, Trino는 예외임). Trino와 관련하여 Amazon EMR은 Amazon EMR 릴리스 6.9.0부터 Amazon Corretto 17을 기본적으로 지원합니다. 또한 Amazon EMR은 Amazon Corretto 11 및 17을 사용하는 일부 애플리케이션도 지원합니다. 이 애플리케이션은 다음 테이블에 나와 있습니다. 클러스터의 기본 JVM을 변경하려면 클러스터에서 실행되는 각 애플리케이션에 대해 특정 Java 가상 머신을 사용하도록 애플리케이션 구성의 지침을 따릅니다. 클러스터에서는 Java 런타임 버전 1개만 사용할 수 있습니다. Amazon EMR은 동일한 클러스터에서 다양한 런타임 버전을 사용해 서로 다른 노드 또는 애플리케이션을 실행하는 것을 지원하지 않습니다.

    Amazon EMR은 Apache Spark, Apache Hadoop, Apache Hive에서 Amazon Corretto 11과 17을 모두 지원하지만, 이 버전의 Corretto를 사용하면 일부 워크로드의 성능이 저하될 수 있습니다. 기본값을 변경하기 전에 워크로드를 테스트하는 것이 좋습니다.

    Amazon EMR 6.12에서 애플리케이션에 대한 기본 Java 버전
    애플리케이션 Java 및 Amazon Corretto 버전(기본값은 굵은체로 표시)
    델타 17, 11, 8
    Flink 11, 8
    Ganglia 8
    HBase 11, 8
    HCatalog 17, 11, 8
    Hadoop 17, 11, 8
    Hive 17, 11, 8
    Hudi 17, 11, 8
    Iceberg 17, 11, 8
    Livy 17, 11, 8
    Oozie 17, 11, 8
    피닉스 8
    PrestoDB 8
    Spark 17, 11, 8
    Spark RAPIDS 17, 11, 8
    Sqoop 8
    Tez의 Hive 실행 시간 비교 17, 11, 8
    Trino 17
    Zeppelin 8
    Pig 8
    Zookeeper 8
  • 6.12.0 릴리스에서는 Presto 또는 Trino를 실행하는 EMR 클러스터의 클러스터 조정 워크플로에 새로운 재시도 메커니즘을 추가합니다. 이 개선 사항을 통해 크기 조정 작업의 한 번 실패로 인해 클러스터 크기 조정이 무기한 중단될 위험이 줄어듭니다. 또한 클러스터를 더 빠르게 스케일 업 및 스케일 다운하므로 클러스터 활용도가 향상됩니다.

  • 6.12.0 릴리스는 정상적으로 사용 중지되는 코어 노드가 완전히 해제되기 전에 어떤 이유로든 비정상 상태가 되면 클러스터 스케일 다운 작업이 중단될 수 있는 문제를 수정합니다.

  • 6.12.0 릴리스에서는 클러스터가 클러스터의 HDFS 복제 계수 설정 미만으로 코어 노드의 스케일 다운을 시도하지 않도록 클러스터 스케일 다운 로직을 개선합니다. 이는 데이터 중복성 요구 사항에 부합하며 조정 작업이 중단될 가능성을 줄여줍니다.

  • 6.12.0 릴리스에서는 인스턴스의 상태 변경을 로깅하는 속도를 높여 Amazon EMR에 대한 상태 모니터링 서비스의 성능과 효율성을 개선합니다. 이 개선 사항을 통해 여러 사용자 지정 클라이언트 도구 또는 타사 애플리케이션을 실행하는 클러스터 노드에서 성능이 저하될 가능성이 줄어듭니다.

  • 6.12.0 릴리스에서는 Amazon EMR에 대한 클러스터 내 로그 관리 대몬(daemon)의 성능을 개선합니다. 따라서 동시성이 높은 단계를 실행하는 EMR 클러스터를 사용하면 성능이 저하될 가능성이 줄어듭니다.

  • Amazon EMR 릴리스 6.12.0에서는 로컬 인스턴스 스토리지의 열린 파일 핸들 및 관련 프로세스에서 현재 사용 중인 모든 로그를 식별하도록 로그 관리 대몬(daemon)이 업그레이드되었습니다. 이 업그레이드를 통해 Amazon EMR은 로그를 Amazon S3에 아카이브한 후 파일을 올바르게 삭제하고 스토리지 공간을 확보할 수 있습니다.

  • 6.12.0 릴리스에는 로컬 클러스터 파일 시스템에서 사용되지 않는 빈 단계 디렉터리를 삭제하는 로그 관리 대몬(daemon) 개선 사항이 포함되어 있습니다. 빈 디렉터리가 너무 많으면 Amazon EMR 대몬(daemon)의 성능이 저하되고 디스크가 과도하게 사용될 수 있습니다.

  • 6.12.0 릴리스에서는 YARN 타임라인 서버 로그의 로그 로테이션을 지원합니다. 이를 통해 특히 장기 실행 클러스터의 경우 디스크 과다 사용 시나리오를 최소화할 수 있습니다.

  • Amazon EMR 6.10.0 이상에서는 기본 루트 볼륨 크기가 15GB로 늘어났습니다. 이전 릴리스에서 기본 루트 볼륨 크기는 10GB였습니다.

  • Amazon EMR 5.36 이상 또는 6.6 이상의 최신 패치 릴리스가 적용된 클러스터를 시작하는 경우 Amazon EMR은 기본 Amazon EMR AMI에 대한 최신 Amazon Linux 2 릴리스를 사용합니다. 자세한 내용은 Amazon EMR에 대한 기본 Amazon Linux AMI 사용을 참조하세요.

    OsReleaseLabel(Amazon Linux 버전) Amazon Linux 커널 버전 사용 가능한 날짜 지원되는 리전
    2.0.20230727.0 4.14.320 2023년 8월 14일 미국 동부(버지니아 북부), 미국 동부(오하이오), 미국 서부(캘리포니아 북부), 미국 서부(오레곤), 유럽(스톡홀름), 유럽(밀라노), 유럽(스페인), 유럽(프랑크푸르트), 유럽(취리히), 유럽(아일랜드), 유럽(런던), 유럽(파리), 아시아 태평양(홍콩), 아시아 태평양(뭄바이), 아시아 태평양(하이데라바드), 아시아 태평양(도쿄), 아시아 태평양(서울), 아시아 태평양(오사카), 아시아 태평양(싱가포르), 아시아 태평양(시드니), 아시아 태평양(자카르타), 아시아 태평양(멜버른), 아프리카(케이프타운), 남아메리카(상파울루), 중동(바레인), 중동(UAE), 캐나다(중부), 이스라엘(텔아비브)
    2.0.20230719.0 4.14.320 2023년 8월 2일 미국 동부(버지니아 북부), 미국 동부(오하이오), 미국 서부(캘리포니아 북부), 미국 서부(오레곤), 유럽(스톡홀름), 유럽(밀라노), 유럽(스페인), 유럽(프랑크푸르트), 유럽(취리히), 유럽(아일랜드), 유럽(런던), 유럽(파리), 아시아 태평양(홍콩), 아시아 태평양(뭄바이), 아시아 태평양(하이데라바드), 아시아 태평양(도쿄), 아시아 태평양(서울), 아시아 태평양(오사카), 아시아 태평양(싱가포르), 아시아 태평양(시드니), 아시아 태평양(자카르타), 아시아 태평양(멜버른), 아프리카(케이프타운), 남아메리카(상파울루), 중동(바레인), 중동(UAE), 캐나다(중부), 이스라엘(텔아비브)
    2.0.20230628.0 4.14.318 2023년 7월 12일 미국 동부(버지니아 북부), 미국 동부(오하이오), 미국 서부(캘리포니아 북부), 미국 서부(오레곤), 유럽(스톡홀름), 유럽(밀라노), 유럽(스페인), 유럽(프랑크푸르트), 유럽(취리히), 유럽(아일랜드), 유럽(런던), 유럽(파리), 아시아 태평양(홍콩), 아시아 태평양(뭄바이), 아시아 태평양(하이데라바드), 아시아 태평양(도쿄), 아시아 태평양(서울), 아시아 태평양(오사카), 아시아 태평양(싱가포르), 아시아 태평양(시드니), 아시아 태평양(자카르타), 아프리카(케이프타운), 남아메리카(상파울루), 중동(바레인), 중동(UAE), 캐나다(중부), 이스라엘(텔아비브)

릴리스 6.11.1

다음 릴리스 정보에는 Amazon EMR 릴리스 6.11.1에 대한 정보가 포함됩니다. 변경 사항은 6.11.0에 관련됩니다. 릴리스 일정에 대한 자세한 내용은 변경 로그 섹션을 참조하세요.

변경 사항, 향상된 기능 및 해결된 문제
  • 잠금 경합으로 인해 노드가 서비스 해제를 시도하면서 동시에 노드가 추가되거나 제거되면 노드가 교착 상태에 빠질 수 있습니다. 따라서 Hadoop Resource Manager(YARN)가 응답하지 않게 되고 수신 및 현재 실행 중인 모든 컨테이너에 영향을 미칩니다.

  • 이 릴리스에는 다시 시작한 후 고가용성 클러스터를 장애 상태에서 복구할 수 있도록 지원하는 변경 사항이 포함되어 있습니다.

  • 이 릴리스에는 Hue 및 HBase에 대한 보안 수정 사항이 포함되어 있습니다.

  • 이 릴리스에서는 Amazon EMR을 사용하여 Spark에서 워크로드를 실행하는 클러스터가 contains, startsWith, endsWith, like에서 잘못된 결과를 자동으로 수신할 수 있는 문제를 수정했습니다. 이 문제는 Amazon EMR Hive3 Metastore Server(HMS)에 메타데이터가 있는 파티셔닝된 필드에서 표현식을 사용할 때 발생합니다.

  • 이 릴리스에서는 사용자 정의 함수(UDF)가 없을 때 발생하는 Glue 측 제한 관련 문제를 수정했습니다.

  • 이 릴리스에서는 YARN 서비스 해제 시 로그 푸셔가 컨테이너 로그를 S3로 푸시하기 전에 노드 로그 집계 서비스에서 컨테이너 로그를 삭제하는 문제를 수정했습니다.

  • 이 릴리스에서는 Hadoop에 노드 레이블이 활성화된 경우 FairShare 스케줄러 지표와 관련된 문제를 수정했습니다.

  • 이 릴리스에서는 spark-defaults.conf에서 spark.yarn.heterogeneousExecutors.enabled 구성의 기본 true 값을 설정할 때 Spark 성능에 영향을 주던 문제를 수정했습니다.

  • 이 릴리스에서는 Reduce 작업이 셔플 데이터를 읽지 못하는 문제를 수정했습니다. 이 문제로 인해 Hive 쿼리가 실패하고 메모리 손상 오류가 발생했습니다.

  • 이 릴리스에서는 Presto 또는 Trino를 실행하는 EMR 클러스터의 클러스터 조정 워크플로에 새로운 재시도 메커니즘을 추가합니다. 이 개선 사항을 통해 크기 조정 작업의 한 번 실패로 인해 클러스터 크기 조정이 무기한 중단될 위험이 줄어듭니다. 또한 클러스터를 더 빠르게 스케일 업 및 스케일 다운하므로 클러스터 활용도가 향상됩니다.

  • 이 릴리스에서는 클러스터가 클러스터의 HDFS 복제 계수 설정 미만으로 코어 노드의 스케일 다운을 시도하지 않도록 클러스터 스케일 다운 로직을 개선합니다. 이는 데이터 중복성 요구 사항에 부합하며 조정 작업이 중단될 가능성을 줄여줍니다.

  • 로컬 인스턴스 스토리지의 열린 파일 핸들 및 관련 프로세스에서 현재 사용 중인 모든 로그를 식별하도록 로그 관리 대몬(daemon)이 업그레이드되었습니다. 이 업그레이드를 통해 Amazon EMR은 로그를 Amazon S3에 아카이브한 후 파일을 올바르게 삭제하고 스토리지 공간을 확보할 수 있습니다.

  • 이 릴리스에는 로컬 클러스터 파일 시스템에서 사용되지 않는 빈 단계 디렉터리를 삭제하는 로그 관리 대몬(daemon) 개선 사항이 포함되어 있습니다. 빈 디렉터리가 너무 많으면 Amazon EMR 대몬(daemon)의 성능이 저하되고 디스크가 과도하게 사용될 수 있습니다.

  • Amazon EMR 5.36 이상 또는 6.6 이상의 최신 패치 릴리스가 적용된 클러스터를 시작하는 경우 Amazon EMR은 기본 Amazon EMR AMI에 대한 최신 Amazon Linux 2 릴리스를 사용합니다. 자세한 내용은 Amazon EMR에 대한 기본 Amazon Linux AMI 사용을 참조하세요.

    OsReleaseLabel(Amazon Linux 버전) Amazon Linux 커널 버전 사용 가능한 날짜 지원되는 리전
    2.0.20230727.0 4.14.320 2023년 8월 14일 미국 동부(버지니아 북부), 미국 동부(오하이오), 미국 서부(캘리포니아 북부), 미국 서부(오레곤), 유럽(스톡홀름), 유럽(밀라노), 유럽(프랑크푸르트), 유럽(아일랜드), 유럽(런던), 유럽(파리), 아시아 태평양(홍콩), 아시아 태평양(뭄바이), 아시아 태평양(도쿄), 아시아 태평양(서울), 아시아 태평양(오사카), 아시아 태평양(싱가포르), 아시아 태평양(시드니), 아시아 태평양(자카르타), 아프리카(케이프타운), 남아메리카(상파울루), 중동(바레인), 캐나다(중부)

릴리스 6.11.0

다음 릴리스 정보에는 Amazon EMR 릴리스 6.11.0에 대한 정보가 포함됩니다. 변경 사항은 6.10.0에 관련됩니다. 릴리스 일정에 대한 자세한 내용은 변경 로그를 참조하세요.

새로운 기능
  • Amazon EMR 6.11.0에서는 Apache Spark 3.3.2-amzn-0, Apache Spark RAPIDS 23.02.0-amzn-0, CUDA 11.8.0, Apache Hudi 0.13.0-amzn-0, Apache Iceberg 1.2.0-amzn-0, Trino 410-amzn-0, PrestoDB 0.279-amzn-0을 지원합니다.

변경 사항, 향상된 기능 및 해결된 문제
  • Amazon EMR 6.11.0에서 DynamoDB 커넥터가 버전 5.0.0으로 업그레이드되었습니다. 버전 5.0.0에서는 AWS SDK for Java 2.x를 사용합니다. 이전 릴리스에서는 AWS SDK for Java 1.x를 사용했습니다. 이번 업그레이드로, Amazon EMR 6.11에서 DynamoDB 커넥터를 사용하기 전에 코드를 테스트해 보는 것이 좋습니다.

  • Amazon EMR 6.11.0용 DynamoDB 커넥터가 DynamoDB 서비스를 직접 호출할 때는 사용자가 dynamodb.endpoint 속성에 제공한 리전 값을 사용합니다. dynamodb.endpoint 사용 시 dynamodb.region도 구성하고, 두 속성이 모두 동일한 AWS 리전을 대상으로 지정하는 것이 좋습니다. dynamodb.endpoint를 사용하고 있으며 dynamodb.region을 구성하지 않은 경우 Amazon EMR 6.11.0용 DynamoDB 커넥터가 잘못된 리전 예외를 반환하고 Amazon EC2 인스턴스 메타데이터 서비스(IMDS)에서 AWS 리전 정보를 조정하려고 시도합니다. 커넥터가 IMDS에서 리전을 검색할 수 없는 경우 기본값은 미국 동부(버지니아 북부)(us-east-1)입니다. 다음 오류는 dynamodb.region 속성(error software.amazon.awssdk.services.dynamodb.model.DynamoDbException: Credential should be scoped to a valid region.)을 제대로 구성하지 않을 경우 발생할 수 있는 잘못된 리전 예외의 예입니다. 2.x로의 AWS SDK for Java 업그레이드로 영향을 받는 클래스에 대한 자세한 내용은 Amazon EMR - DynamoDB 커넥터용 GitHub 리포지토리에서 Upgrade AWS SDK for Java from 1.x to 2.x (#175) 커밋을 참조하세요.

  • 이 릴리스에서는 열 이름 바꾸기 작업 후 Delta Lake를 사용하여 Amazon S3에 델타 테이블 데이터를 저장할 때 열 데이터가 NULL로 표시되는 문제를 수정했습니다. Delta Lake의 이 실험 기능에 대한 자세한 내용은 Delta Lake 사용 설명서에서 Column rename operation을 참조하세요.

  • 6.11.0 릴리스에서는 여러 프라이머리 노드를 포함하는 클러스터에서 프라이머리 노드 중 하나를 복제하여 엣지 노드를 생성할 때 발생할 수 있는 문제를 수정했습니다. 복제된 엣지 노드로 인해 스케일 다운 작업이 지연되거나 프라이머리 노드의 메모리 사용률이 높아질 수 있습니다. EMR 클러스터와 통신하기 위해 엣지 노드를 생성하는 방법에 대한 자세한 내용은 GitHub의 aws-samples 리포지토리에서 Edge Node Creator를 참조하세요.

  • 6.11.0 릴리스에서는 Amazon EMR이 재부팅 후 Amazon EBS 볼륨을 인스턴스에 다시 마운트하는 데 사용하는 자동화 프로세스를 개선합니다.

  • 6.11.0 릴리스에서는 Amazon EMR이 Amazon CloudWatch에 게시하는 Hadoop 지표에 간헐적으로 간격이 발생하는 문제를 수정했습니다.

  • 6.11.0 릴리스에서는 클러스터의 노드 제외 목록이 포함된 YARN 구성 파일에 대한 업데이트가 디스크 과다 사용으로 인해 중단되는 EMR 클러스터 관련 문제를 수정했습니다. 업데이트가 불완전하면 향후 클러스터 스케일 다운 작업에 방해가 됩니다. 이 릴리스에서는 클러스터를 정상 상태로 유지하고 조정 작업을 예상대로 수행하도록 보장합니다.

  • Amazon EMR 6.10.0 이상에서는 기본 루트 볼륨 크기가 15GB로 늘어났습니다. 이전 릴리스에서 기본 루트 볼륨 크기는 10GB였습니다.

  • Hadoop 3.3.3에서는 애플리케이션이 완료될 때까지 컨테이너가 실행되는 노드를 서비스 해제 상태로 유지하는 YARN의 변경 사항(YARN-9608)을 도입했습니다. 이 변경으로 셔플 데이터와 같은 로컬 데이터가 손실되지 않으므로 작업을 다시 실행할 필요가 없습니다. 이 접근 방식을 사용하면 Managed Scaling의 활성화 여부에 상관없이 클러스터에서 리소스 사용률이 낮아질 수도 있습니다.

    Amazon EMR 릴리스 6.11.0 이상과 6.8.1, 6.9.1, 6.10.1에서는 이 문제를 해결하기 위해 yarn-site.xml에서 yarn.resourcemanager.decommissioning-nodes-watcher.wait-for-applications 값이 false로 설정됩니다.

    이 수정 사항은 YARN-9608 때문에 발생한 문제를 해결하지만, Managed Scaling이 활성화된 클러스터에서는 셔플 데이터 손실로 인해 Hive 작업이 실패할 수 있습니다. 이번 릴리스에서는 Hive 워크로드에 대해 yarn.resourcemanager.decommissioning-nodes-watcher.wait-for-shuffle-data도 설정하여 이러한 위험을 완화했습니다. 이 구성은 Amazon EMR 릴리스 6.11.0 이상에서만 사용할 수 있습니다.

  • Amazon EMR 5.36 이상 또는 6.6 이상의 최신 패치 릴리스가 적용된 클러스터를 시작하는 경우 Amazon EMR은 기본 Amazon EMR AMI에 대한 최신 Amazon Linux 2 릴리스를 사용합니다. 자세한 내용은 Amazon EMR에 대한 기본 Amazon Linux AMI 사용을 참조하세요.

    참고

    이 릴리스에서는 패치 릴리스가 1개 더 추가되었으므로 더 이상 자동 AMI 업데이트를 받지 않습니다. 패치 릴리스는 소수점 두 번째 자리 뒤의 숫자(6.8.1)로 표시됩니다. 최신 패치 릴리스를 사용하는지 확인하려면 릴리스 가이드에서 사용 가능한 릴리스를 확인하거나, 콘솔에서 클러스터를 생성할 때 Amazon EMR 릴리스 드롭다운을 확인하거나, ListReleaseLabels API 또는 list-release-labels CLI 작업을 사용합니다. 새 릴리스에 대한 업데이트를 받으려면 새로운 기능에서 RSS 피드를 구독하세요.

    OsReleaseLabel(Amazon Linux 버전) Amazon Linux 커널 버전 사용 가능한 날짜 지원되는 리전
    2.0.20230727.0 4.14.320 2023년 8월 14일 미국 동부(버지니아 북부), 미국 동부(오하이오), 미국 서부(캘리포니아 북부), 미국 서부(오레곤), 유럽(스톡홀름), 유럽(밀라노), 유럽(스페인), 유럽(프랑크푸르트), 유럽(취리히), 유럽(아일랜드), 유럽(런던), 유럽(파리), 아시아 태평양(홍콩), 아시아 태평양(뭄바이), 아시아 태평양(하이데라바드), 아시아 태평양(도쿄), 아시아 태평양(서울), 아시아 태평양(오사카), 아시아 태평양(싱가포르), 아시아 태평양(시드니), 아시아 태평양(자카르타), 아시아 태평양(멜버른), 아프리카(케이프타운), 남아메리카(상파울루), 중동(바레인), 중동(UAE), 캐나다(중부), 이스라엘(텔아비브)
    2.0.20230719.0 4.14.320 2023년 8월 2일 미국 동부(버지니아 북부), 미국 동부(오하이오), 미국 서부(캘리포니아 북부), 미국 서부(오레곤), 유럽(스톡홀름), 유럽(밀라노), 유럽(스페인), 유럽(프랑크푸르트), 유럽(취리히), 유럽(아일랜드), 유럽(런던), 유럽(파리), 아시아 태평양(홍콩), 아시아 태평양(뭄바이), 아시아 태평양(하이데라바드), 아시아 태평양(도쿄), 아시아 태평양(서울), 아시아 태평양(오사카), 아시아 태평양(싱가포르), 아시아 태평양(시드니), 아시아 태평양(자카르타), 아시아 태평양(멜버른), 아프리카(케이프타운), 남아메리카(상파울루), 중동(바레인), 중동(UAE), 캐나다(중부), 이스라엘(텔아비브)
    2.0.20230628.0 4.14.318 2023년 7월 12일 미국 동부(버지니아 북부), 미국 동부(오하이오), 미국 서부(캘리포니아 북부), 미국 서부(오레곤), 캐나다(중부), 유럽(스톡홀름), 유럽(아일랜드), 유럽(런던), 유럽(파리), 유럽(프랑크푸르트), 유럽(취리히), 유럽(밀라노), 유럽(스페인), 아시아 태평양(홍콩), 아시아 태평양(뭄바이), 아시아 태평양(하이데라바드), 아시아 태평양(자카르타), 아시아 태평양(도쿄), 아시아 태평양(서울), 아시아 태평양(오사카), 아시아 태평양(싱가포르), 아시아 태평양(시드니), 아프리카(케이프타운), 남아메리카(상파울루), 중동(바레인), 중동(UAE)
    2.0.20230612.0 4.14.314 2023년 6월 23일 미국 동부(버지니아 북부), 미국 동부(오하이오), 미국 서부(캘리포니아 북부), 미국 서부(오레곤), 캐나다(중부), 유럽(스톡홀름), 유럽(아일랜드), 유럽(런던), 유럽(파리), 유럽(프랑크푸르트), 유럽(취리히), 유럽(밀라노), 유럽(스페인), 아시아 태평양(홍콩), 아시아 태평양(뭄바이), 아시아 태평양(하이데라바드), 아시아 태평양(자카르타), 아시아 태평양(도쿄), 아시아 태평양(서울), 아시아 태평양(오사카), 아시아 태평양(싱가포르), 아시아 태평양(시드니), 아프리카(케이프타운), 남아메리카(상파울루), 중동(바레인), 중동(UAE)
    2.0.20230504.1 4.14.313 2023년 5월 16일 미국 동부(버지니아 북부), 미국 동부(오하이오), 미국 서부(캘리포니아 북부), 미국 서부(오레곤), 유럽(스톡홀름), 유럽(밀라노), 유럽(스페인), 유럽(프랑크푸르트), 유럽(취리히), 유럽(아일랜드), 유럽(런던), 유럽(파리), 아시아 태평양(홍콩), 아시아 태평양(뭄바이), 아시아 태평양(하이데라바드), 아시아 태평양(도쿄), 아시아 태평양(서울), 아시아 태평양(오사카), 아시아 태평양(싱가포르), 아시아 태평양(시드니), 아시아 태평양(자카르타), 아프리카(케이프타운), 남아메리카(상파울루), 중동(바레인), 중동(UAE), 캐나다(중부), 이스라엘(텔아비브)

릴리스 6.10.0

다음 릴리스 정보에는 Amazon EMR 릴리스 6.10.0에 대한 정보가 포함됩니다. 변경 사항은 6.9.0에 관련됩니다. 릴리스 일정에 대한 자세한 내용은 변경 로그를 참조하세요.

새로운 기능
  • Amazon EMR 6.10.0에서는 Apache Spark 3.3.1, Apache Spark RAPIDS 22.12.0, CUDA 11.8.0, Apache Hudi 0.12.2-amzn-0, Apache Iceberg 1.1.0-amzn-0, Trino 403, PrestoDB 0.278.1을 지원합니다.

  • Amazon EMR 6.10.0에는 Hudi 테이블의 데이터에 대한 읽기 액세스를 제공하는 네이티브 Trino-Hudi 커넥터가 포함되어 있습니다. trino-cli --catalog hudi를 사용하여 커넥터를 활성화하고, trino-connector-hudi를 사용하여 요구 사항에 맞게 커넥터를 구성할 수 있습니다. Amazon EMR과의 기본 통합을 통해 더 이상 Hudi 테이블을 쿼리하는 데 trino-connector-hive를 사용하지 않아도 됩니다. 새 커넥터에서 지원되는 구성 목록은 Trino 설명서에서 Hudi connector 페이지를 참조하세요.

  • Amazon EMR 릴리스 6.10.0 이상에서는 Apache Flink와의 Apache Zeppelin 통합을 지원합니다. 자세한 정보는 Amazon EMR의 Zeppelin에서 Flink 작업 섹션을 참조하세요.

알려진 문제
  • Hadoop 3.3.3에서는 애플리케이션이 완료될 때까지 컨테이너가 실행되는 노드를 서비스 해제 상태로 유지하는 YARN의 변경 사항(YARN-9608)을 도입했습니다. 이 변경으로 셔플 데이터와 같은 로컬 데이터가 손실되지 않으므로 작업을 다시 실행할 필요가 없습니다. 이 접근 방식을 사용하면 Managed Scaling의 활성화 여부에 상관없이 클러스터에서 리소스 사용률이 낮아질 수도 있습니다.

    Amazon EMR 6.10.0에서 이 문제를 해결하려면 yarn-site.xml에서 yarn.resourcemanager.decommissioning-nodes-watcher.wait-for-applications의 값을 false로 설정하면 됩니다. Amazon EMR 릴리스 6.11.0 이상과 6.8.1, 6.9.1, 6.10.1에서는 이 문제를 해결하기 위해 기본적으로 구성이 false로 설정되어 있습니다.

변경 사항, 향상된 기능 및 해결된 문제
  • Amazon EMR 6.10.0은 minimal-json.jar에서 Apache Spark용 Amazon Redshift 통합의 종속 항목을 제거하고 필요한 Spark-Redshift 관련 jar(spark-redshift.jar, spark-avro.jar, RedshiftJDBC.jar)을 Spark의 실행기 클래스 경로에 자동으로 추가합니다.

  • 6.10.0 릴리스에서는 MR 클러스터의 추가 로그 폴더를 모니터링하도록 클러스터 내 로그 관리 대몬(daemon)이 개선되었습니다. 이 개선 사항은 디스크 과다 사용 시나리오를 최소화합니다.

  • 6.10.0 릴리스에서는 클러스터 내 로그 관리 대몬(daemon)이 중지되면 해당 대몬(daemon)을 자동으로 다시 시작합니다. 이 개선 사항은 디스크 과다 사용으로 인해 노드가 비정상으로 보이는 위험을 줄입니다.

  • Amazon EMR 6.10.0은 EMRFS 사용자 매핑에 대한 리전 엔드포인트를 지원합니다.

  • Amazon EMR 6.10.0 이상에서는 기본 루트 볼륨 크기가 15GB로 늘어났습니다. 이전 릴리스에서 기본 루트 볼륨 크기는 10GB였습니다.

  • 6.10.0 릴리스에서는 다른 모든 Spark 실행기가 YARN 리소스 관리자의 서비스 해제 호스트에 있을 때 해당 Spark 작업이 중단되는 문제를 수정했습니다.

  • Amazon EMR 6.6.0~6.9.x에서는 ORDER BY 또는 SORT BY 절과 동적 파티션에서의 INSERT 쿼리에 항상 두 개의 reducer가 있습니다. 이 문제는 OSS 변경 HIVE-20703 때문에 발생하며, 이로 인해 비용 기반 의사 결정에 따라 동적 정렬 파티션 최적화가 적용됩니다. 워크로드에 동적 파티션 정렬이 필요하지 않은 경우 새 기능을 비활성화하고 올바르게 계산된 reducer 수를 가져오도록 hive.optimize.sort.dynamic.partition.threshold 속성을 -1로 설정하는 것이 좋습니다. 이 문제는 OSS Hive에서 HIVE-22269 일부로 수정되었으며 Amazon EMR 6.10.0에서 수정되었습니다.

  • Amazon EMR 5.36 이상 또는 6.6 이상의 최신 패치 릴리스가 적용된 클러스터를 시작하는 경우 Amazon EMR은 기본 Amazon EMR AMI에 대한 최신 Amazon Linux 2 릴리스를 사용합니다. 자세한 내용은 Amazon EMR에 대한 기본 Amazon Linux AMI 사용을 참조하세요.

    참고

    이 릴리스에서는 패치 릴리스가 1개 더 추가되었으므로 더 이상 자동 AMI 업데이트를 받지 않습니다. 패치 릴리스는 소수점 두 번째 자리 뒤의 숫자(6.8.1)로 표시됩니다. 최신 패치 릴리스를 사용하는지 확인하려면 릴리스 가이드에서 사용 가능한 릴리스를 확인하거나, 콘솔에서 클러스터를 생성할 때 Amazon EMR 릴리스 드롭다운을 확인하거나, ListReleaseLabels API 또는 list-release-labels CLI 작업을 사용합니다. 새 릴리스에 대한 업데이트를 받으려면 새로운 기능에서 RSS 피드를 구독하세요.

    OsReleaseLabel(Amazon Linux 버전) Amazon Linux 커널 버전 사용 가능한 날짜 지원되는 리전
    2.0.20230727.0 4.14.320 2023년 8월 14일 미국 동부(버지니아 북부), 미국 동부(오하이오), 미국 서부(캘리포니아 북부), 미국 서부(오레곤), 유럽(스톡홀름), 유럽(밀라노), 유럽(스페인), 유럽(프랑크푸르트), 유럽(취리히), 유럽(아일랜드), 유럽(런던), 유럽(파리), 아시아 태평양(홍콩), 아시아 태평양(뭄바이), 아시아 태평양(하이데라바드), 아시아 태평양(도쿄), 아시아 태평양(서울), 아시아 태평양(오사카), 아시아 태평양(싱가포르), 아시아 태평양(시드니), 아시아 태평양(자카르타), 아시아 태평양(멜버른), 아프리카(케이프타운), 남아메리카(상파울루), 중동(바레인), 중동(UAE), 캐나다(중부), 이스라엘(텔아비브)
    2.0.20230719.0 4.14.320 2023년 8월 2일 미국 동부(버지니아 북부), 미국 동부(오하이오), 미국 서부(캘리포니아 북부), 미국 서부(오레곤), 유럽(스톡홀름), 유럽(밀라노), 유럽(스페인), 유럽(프랑크푸르트), 유럽(취리히), 유럽(아일랜드), 유럽(런던), 유럽(파리), 아시아 태평양(홍콩), 아시아 태평양(뭄바이), 아시아 태평양(하이데라바드), 아시아 태평양(도쿄), 아시아 태평양(서울), 아시아 태평양(오사카), 아시아 태평양(싱가포르), 아시아 태평양(시드니), 아시아 태평양(자카르타), 아시아 태평양(멜버른), 아프리카(케이프타운), 남아메리카(상파울루), 중동(바레인), 중동(UAE), 캐나다(중부), 이스라엘(텔아비브)
    2.0.20230628.0 4.14.318 2023년 7월 12일 미국 동부(버지니아 북부), 미국 동부(오하이오), 미국 서부(캘리포니아 북부), 미국 서부(오레곤), 캐나다(중부), 유럽(스톡홀름), 유럽(아일랜드), 유럽(런던), 유럽(파리), 유럽(프랑크푸르트), 유럽(취리히), 유럽(밀라노), 유럽(스페인), 아시아 태평양(홍콩), 아시아 태평양(뭄바이), 아시아 태평양(하이데라바드), 아시아 태평양(자카르타), 아시아 태평양(도쿄), 아시아 태평양(서울), 아시아 태평양(오사카), 아시아 태평양(싱가포르), 아시아 태평양(시드니), 아프리카(케이프타운), 남아메리카(상파울루), 중동(바레인), 중동(UAE)
    2.0.20230612.0 4.14.314 2023년 6월 23일 미국 동부(버지니아 북부), 미국 동부(오하이오), 미국 서부(캘리포니아 북부), 미국 서부(오레곤), 캐나다(중부), 유럽(스톡홀름), 유럽(아일랜드), 유럽(런던), 유럽(파리), 유럽(프랑크푸르트), 유럽(취리히), 유럽(밀라노), 유럽(스페인), 아시아 태평양(홍콩), 아시아 태평양(뭄바이), 아시아 태평양(하이데라바드), 아시아 태평양(자카르타), 아시아 태평양(도쿄), 아시아 태평양(서울), 아시아 태평양(오사카), 아시아 태평양(싱가포르), 아시아 태평양(시드니), 아프리카(케이프타운), 남아메리카(상파울루), 중동(바레인), 중동(UAE)
    2.0.20230504.1 4.14.313 2023년 5월 16일 미국 동부(버지니아 북부), 미국 동부(오하이오), 미국 서부(캘리포니아 북부), 미국 서부(오레곤), 캐나다(중부), 유럽(스톡홀름), 유럽(아일랜드), 유럽(런던), 유럽(파리), 유럽(프랑크푸르트), 유럽(취리히), 유럽(밀라노), 유럽(스페인), 아시아 태평양(홍콩), 아시아 태평양(뭄바이), 아시아 태평양(하이데라바드), 아시아 태평양(자카르타), 아시아 태평양(도쿄), 아시아 태평양(서울), 아시아 태평양(오사카), 아시아 태평양(싱가포르), 아시아 태평양(시드니), 아프리카(케이프타운), 남아메리카(상파울루), 중동(바레인), 중동(UAE)
    2.0.20230418.0 4.14.311 2023년 5월 3일 미국 동부(버지니아 북부), 미국 동부(오하이오), 미국 서부(캘리포니아 북부), 미국 서부(오레곤), 캐나다(중부), 유럽(스톡홀름), 유럽(아일랜드), 유럽(런던), 유럽(파리), 유럽(프랑크푸르트), 유럽(취리히), 유럽(밀라노), 유럽(스페인), 아시아 태평양(홍콩), 아시아 태평양(뭄바이), 아시아 태평양(하이데라바드), 아시아 태평양(자카르타), 아시아 태평양(도쿄), 아시아 태평양(서울), 아시아 태평양(오사카), 아시아 태평양(싱가포르), 아시아 태평양(시드니), 아프리카(케이프타운), 남아메리카(상파울루), 중동(바레인), 중동(UAE)
    2.0.20230404.1 4.14.311 2023년 4월 18일 미국 동부(버지니아 북부), 미국 동부(오하이오), 미국 서부(캘리포니아 북부), 미국 서부(오레곤), 캐나다(중부), 유럽(스톡홀름), 유럽(아일랜드), 유럽(런던), 유럽(파리), 유럽(프랑크푸르트), 유럽(밀라노), 아시아 태평양(홍콩), 아시아 태평양(뭄바이), 아시아 태평양(자카르타), 아시아 태평양(도쿄), 아시아 태평양(서울), 아시아 태평양(오사카), 아시아 태평양(싱가포르), 아시아 태평양(시드니), 아프리카(케이프타운), 남아메리카(상파울루), 중동(바레인), 중동(UAE)
    2.0.20230404.0 4.14.311 2023년 4월 10일 미국 동부(버지니아 북부), 유럽(파리)
    2.0.20230320.0 4.14.309 2023년 3월 30일 미국 동부(버지니아 북부), 미국 동부(오하이오), 미국 서부(캘리포니아 북부), 미국 서부(오레곤), 캐나다(중부), 유럽(스톡홀름), 유럽(아일랜드), 유럽(런던), 유럽(파리), 유럽(프랑크푸르트), 유럽(밀라노), 아시아 태평양(홍콩), 아시아 태평양(뭄바이), 아시아 태평양(자카르타), 아시아 태평양(도쿄), 아시아 태평양(서울), 아시아 태평양(오사카), 아시아 태평양(싱가포르), 아시아 태평양(시드니), 아프리카(케이프타운), 남아메리카(상파울루), 중동(바레인), 중동(UAE)
    2.0.20230207.0 4.14.304 2023년 2월 22일 미국 동부(버지니아 북부), 미국 동부(오하이오), 미국 서부(캘리포니아 북부), 미국 서부(오레곤), 캐나다(중부), 유럽(스톡홀름), 유럽(아일랜드), 유럽(런던), 유럽(파리), 유럽(프랑크푸르트), 유럽(밀라노), 아시아 태평양(홍콩), 아시아 태평양(뭄바이), 아시아 태평양(자카르타), 아시아 태평양(도쿄), 아시아 태평양(서울), 아시아 태평양(오사카), 아시아 태평양(싱가포르), 아시아 태평양(시드니), 아프리카(케이프타운), 남아메리카(상파울루), 중동(바레인), 중동(UAE)

릴리스 6.9.0

다음 릴리스 정보에는 Amazon EMR 릴리스 6.9.0에 대한 정보가 포함됩니다. 변경 사항은 Amazon EMR 릴리스 6.8.0에 관련됩니다. 릴리스 일정에 대한 자세한 내용은 변경 로그를 참조하세요.

새로운 기능
  • Amazon EMR 릴리스 6.9.0에서는 Apache Spark RAPIDS 22.08.0, Apache Hudi 0.12.1, Apache Iceberg 0.14.1, Trino 398, Tez 0.10.2를 지원합니다.

  • Amazon EMR 릴리스 6.9.0에는 새로운 오픈 소스 애플리케이션, Delta Lake 2.1.0이 포함되어 있습니다.

  • Apache Spark용 Amazon Redshift 통합은 Amazon EMR 릴리스 6.9.0 이상에 포함되어 있습니다. 이전의 오픈 소스 도구였던, 이 기본 통합은 Spark 커넥터로, Amazon Redshift와 Amazon Redshift Serverless에서 데이터를 읽고 쓰는 Apache Spark 애플리케이션을 빌드할 수 있습니다. 자세한 내용은 Amazon EMR에서 Apache Spark용 Amazon Redshift 통합 사용 섹션을 참조하세요.

  • Amazon EMR 릴리스 6.9.0은 클러스터 스케일 다운 중에 Amazon S3에 로그를 아카이브하기 위한 지원을 추가합니다. 이전에는 클러스터 종료 중에만 Amazon S3에 로그 파일을 아카이브할 수 있었습니다. 새로운 기능을 통해 클러스터에서 생성된 로그 파일은 노드가 종료된 후에도 Amazon S3에서 계속 유지됩니다. 자세한 내용은 클러스터 로깅 및 디버깅 구성을 참조하세요.

  • 이제 Trino에는 장기 실행 쿼리를 지원하기 위해 내결함성 실행 메커니즘이 포함됩니다. 내결함성 실행은 실패한 쿼리 또는 구성 요소 작업을 재시도하여 쿼리 실패를 완화합니다. 자세한 내용은 Trino에서 내결함성 실행 섹션을 참조하세요.

  • Iceberg, Kinesis 또는 Kafka와 같은 Flink 테이블 소스의 메타데이터 또는 Apache Hive 테이블의 통합된 BATCHSTREAM 처리를 위해 Amazon EMR에서 Apache Flink를 사용할 수 있습니다. AWS Management Console, AWS CLI 또는 Amazon EMR API를 사용하여 AWS Glue 데이터 카탈로그를 Flink의 메타스토어로 지정할 수 있습니다. 자세한 내용은 Amazon EMR에서 Flink 구성 섹션을 참조하세요.

  • 이제 Amazon SageMaker Studio를 사용하여 Amazon EMR on EC2 클러스터에서 Apache Spark, Apache Hive, Presto 쿼리에 대한 AWS Identity and Access Management(IAM) 런타임 역할 및 AWS Lake Formation 기반 액세스 제어를 지정할 수 있습니다. 자세한 내용은 Amazon EMR 단계에 대한 런타임 역할 구성을 참조하세요.

알려진 문제
  • Amazon EMR 릴리스 6.9.0의 경우 Trino는 Apache Ranger가 활성화된 클러스터에서 작동하지 않습니다. Ranger와 함께 Trino를 사용해야 하는 경우 AWS Support에 문의하세요.

  • Apache Spark용 Amazon Redshift 통합을 사용하고 Parquet 형식의 time, timetz, timestamp 또는 timestamptz(마이크로초 정밀도)를 사용하는 경우 커넥터는 시간 값을 가장 가까운 밀리초 값으로 반올림합니다. 해결 방법으로 텍스트 언로드 형식 unload_s3_format 파라미터를 사용합니다.

  • Hive 파티션 위치 형식과 함께 Spark를 사용하여 Amazon S3의 데이터를 읽고, Amazon EMR 릴리스 5.30.0~5.36.0 및 6.2.0~6.9.0에서 Spark를 실행하는 경우 클러스터가 데이터를 제대로 읽지 못하는 문제가 발생할 수 있습니다. 파티션에 다음과 같은 특성이 모두 있는 경우 이러한 상황이 발생할 수 있습니다.

    • 둘 이상의 파티션이 동일한 테이블에서 스캔됩니다.

    • 하나 이상의 파티션 디렉터리 경로가 하나 이상의 다른 파티션 디렉터리 경로의 접두사입니다. 예를 들어 s3://bucket/table/p=as3://bucket/table/p=a b의 접두사입니다.

    • 다른 파티션 디렉터리에서 접두사 뒤에 오는 첫 번째 문자의 UTF-8 값이 / 문자(U+002F)보다 작습니다. 예를 들어 s3://bucket/table/p=a b에서 a와 b 사이에 있는 공백 문자(U+0020)가 이 카테고리에 속합니다. !"#$%&‘()*+,-와 같은 14개의 비제어 문자가 있습니다. 자세한 내용은 UTF-8 인코딩 테이블 및 유니코드 문자를 참조하세요.

    이 문제를 해결하려면 spark-defaults 분류에서 spark.sql.sources.fastS3PartitionDiscovery.enabled 구성을 false로 설정합니다.

  • Amazon SageMaker Studio에서 Amazon EMR 클러스터에 대한 연결이 403 금지됨 응답 코드와 함께 간헐적으로 실패할 수 있습니다. 이 오류는 클러스터에서 IAM 역할을 설정하는 데 60초를 초과하는 경우 발생합니다. 해결 방법으로 Amazon EMR 패치를 설치하여 재시도를 활성화하고 제한 시간을 최소 300초로 늘릴 수 있습니다. 다음 단계를 사용하여 클러스터를 시작할 때 부트스트랩 작업을 적용합니다.

    1. 다음 Amazon S3 URI에서 부트스트랩 스크립트와 RPM 파일을 다운로드합니다.

      s3://emr-data-access-control-us-east-1/customer-bootstrap-actions/gcsc/replace-rpms.sh s3://emr-data-access-control-us-east-1/customer-bootstrap-actions/gcsc/emr-secret-agent-1.18.0-SNAPSHOT20221121212949.noarch.rpm
    2. 이전 단계의 파일을 사용자가 소유한 Amazon S3 버킷에 업로드합니다. 버킷은 클러스터를 시작하려는 동일한 AWS 리전에 있어야 합니다.

    3. EMR 클러스터를 시작할 때 다음 부트스트랩 작업을 포함합니다. bootstrap_URIRPM_URI를 Amazon S3의 해당되는 URI로 바꿉니다.

      --bootstrap-actions "Path=bootstrap_URI,Args=[RPM_URI]"
  • Amazon EMR 릴리스 5.36.0 및 6.6.0~6.9.0까지는 Log4j2 속성의 잘못된 파일 이름 패턴 구성으로 인해 SecretAgentRecordServer 서비스 구성 요소에 로그 데이터가 손실될 수 있습니다. 잘못된 구성으로 인해 구성 요소에서 하루에 하나의 로그 파일만 생성합니다. 로테이션 전략이 수행되면 예상대로 새 로그 파일을 생성하는 대신 기존 파일을 덮어씁니다. 해결 방법으로 부트스트랩 작업을 사용하여 매시간 로그 파일을 생성하고 파일 이름에 자동 증가 정수를 추가하여 교체를 처리합니다.

    Amazon EMR 6.6.0~6.9.0 릴리스의 경우 클러스터를 시작할 때 다음 부트스트랩 작업을 사용합니다.

    ‑‑bootstrap‑actions "Path=s3://emr-data-access-control-us-east-1/customer-bootstrap-actions/log-rotation-emr-6x/replace-puppet.sh,Args=[]"

    Amazon EMR 5.36.0의 경우 클러스터를 시작할 때 다음 부트스트랩 작업을 사용합니다.

    ‑‑bootstrap‑actions "Path=s3://emr-data-access-control-us-east-1/customer-bootstrap-actions/log-rotation-emr-5x/replace-puppet.sh,Args=[]"
  • Apache Flink는 네이티브 S3 FileSystem 및 Hadoop FileSystem 커넥터를 제공합니다. 이 커넥터를 사용하면 애플리케이션에서 FileSink를 생성하고 Amazon S3에 데이터를 쓸 수 있습니다. 이 FileSink는 다음 두 가지 예외 중 하나로 인해 실패합니다.

    java.lang.UnsupportedOperationException: Recoverable writers on Hadoop are only supported for HDFS
    Caused by: java.lang.NoSuchMethodError: org.apache.hadoop.io.retry.RetryPolicies.retryOtherThanRemoteAndSaslException(Lorg/apache/hadoop/io/retry/RetryPolicy;Ljava/util/Map;)Lorg/apache/hadoop/io/retry/RetryPolicy; at org.apache.hadoop.yarn.client.RMProxy.createRetryPolicy(RMProxy.java:302) ~[hadoop-yarn-common-3.3.3-amzn-0.jar:?]

    해결 방법으로 Amazon EMR 패치를 설치할 수 있습니다. 그러면 Flink에서 위 문제를 해결할 수 있습니다. 클러스터를 시작할 때 부트스트랩 작업을 적용하려면 다음 단계를 완료합니다.

    1. flink-rpm을 사용자의 Amazon S3 버킷에 다운로드합니다. RPM 경로는 s3://DOC-EXAMPLE-BUCKET/rpms/flink/입니다.

    2. 다음 URI를 사용하여 Amazon S3에서 부트스트랩 스크립트와 RPM 파일을 다운로드합니다. regionName을 AWS 리전(클러스터를 시작하려는 위치)으로 바꿉니다.

      s3://emr-data-access-control-regionName/customer-bootstrap-actions/gcsc/replace-rpms.sh
    3. Hadoop 3.3.3에서는 애플리케이션이 완료될 때까지 컨테이너가 실행되는 노드를 서비스 해제 상태로 유지하는 YARN의 변경 사항(YARN-9608)을 도입했습니다. 이 변경으로 셔플 데이터와 같은 로컬 데이터가 손실되지 않으므로 작업을 다시 실행할 필요가 없습니다. Amazon EMR 6.8.0 및 6.9.0에서 이 접근 방식을 사용하면 Managed Scaling의 활성화 여부에 상관없이 클러스터에서 리소스 사용률이 낮아질 수도 있습니다.

      Amazon EMR 6.10.0에서 이 문제를 해결하려면 yarn-site.xml에서 yarn.resourcemanager.decommissioning-nodes-watcher.wait-for-applications의 값을 false로 설정합니다. Amazon EMR 릴리스 6.11.0 이상과 6.8.1, 6.9.1, 6.10.1에서는 이 문제를 해결하기 위해 기본적으로 구성이 false로 설정되어 있습니다.

변경 사항, 향상된 기능 및 해결된 문제
  • Amazon EMR 릴리스 6.9.0 이상의 경우 Log4j 라이브러리를 사용하는 Amazon EMR에서 설치한 모든 구성 요소는 Log4j 버전 2.17.1 이상을 사용합니다.

  • Amazon EMR 버전 6.6.0, 6.7.0 및 6.8.0에서 Spark와 함께 DynamoDB 커넥터를 사용하는 경우 입력 분할이 비어 있지 않은 데이터를 참조하더라도 테이블에서 모든 읽기는 빈 결과를 반환합니다. Amazon EMR 릴리스 6.9.0에서는 이 문제가 수정되었습니다.

  • Amazon EMR 6.9.0에서는 Spark SQL을 사용하여 데이터를 읽을 때 Apache Hudi를 사용한 Lake Formation 기반 액세스 제어에 대한 제한된 지원을 추가했습니다. Spark SQL을 사용하는 SELECT 쿼리가 지원되며 열 수준의 액세스 제어로 제한됩니다. 자세한 내용은 Hudi 및 Lake Formation을 참조하세요.

  • Amazon EMR 6.9.0을 사용하여 노드 레이블을 활성화한 상태로 Hadoop 클러스터를 생성하면 YARN 지표 API에서 기본 파티션이 아닌 모든 파티션에서 집계된 정보를 반환합니다. 자세한 내용은 YARN-11414를 참조하세요.

  • Amazon EMR 릴리스 6.9.0에서 Trino를 버전 398(Java 17 사용)로 업데이트했습니다. Amazon EMR 6.8.0에서 이전에 지원되던 Trino 버전은 Java 11에서 실행되는 Trino 388이었습니다. 이 변경 사항에 대한 자세한 내용은 Trino 블로그에서 Trino updates to Java 17을 참조하세요.

  • 이 릴리스에서는 Apache BigTop 및 Amazon EMR on EC2 클러스터 시작 시퀀스 간 타이밍 시퀀스 불일치 문제를 수정했습니다. 이 타이밍 시퀀스 불일치는 시스템에서 둘 이상의 작업을 적절한 순서로 수행하는 대신 동시에 수행하려고 할 때 발생합니다. 따라서 특정 클러스터 구성에서 인스턴스 시작 제한 시간을 초과하고 클러스터 시작 시간이 느려지는 문제가 발생했습니다.

  • Amazon EMR 5.36 이상 또는 6.6 이상의 최신 패치 릴리스가 적용된 클러스터를 시작하는 경우 Amazon EMR은 기본 Amazon EMR AMI에 대한 최신 Amazon Linux 2 릴리스를 사용합니다. 자세한 내용은 Amazon EMR에 대한 기본 Amazon Linux AMI 사용을 참조하세요.

    참고

    이 릴리스에서는 패치 릴리스가 1개 더 추가되었으므로 더 이상 자동 AMI 업데이트를 받지 않습니다. 패치 릴리스는 소수점 두 번째 자리 뒤의 숫자(6.8.1)로 표시됩니다. 최신 패치 릴리스를 사용하는지 확인하려면 릴리스 가이드에서 사용 가능한 릴리스를 확인하거나, 콘솔에서 클러스터를 생성할 때 Amazon EMR 릴리스 드롭다운을 확인하거나, ListReleaseLabels API 또는 list-release-labels CLI 작업을 사용합니다. 새 릴리스에 대한 업데이트를 받으려면 새로운 기능에서 RSS 피드를 구독하세요.

    OsReleaseLabel(Amazon Linux 버전) Amazon Linux 커널 버전 사용 가능한 날짜 지원되는 리전
    2.0.20230727.0 4.14.320 2023년 8월 14일 미국 동부(버지니아 북부), 미국 동부(오하이오), 미국 서부(캘리포니아 북부), 미국 서부(오레곤), 유럽(스톡홀름), 유럽(밀라노), 유럽(스페인), 유럽(프랑크푸르트), 유럽(취리히), 유럽(아일랜드), 유럽(런던), 유럽(파리), 아시아 태평양(홍콩), 아시아 태평양(뭄바이), 아시아 태평양(하이데라바드), 아시아 태평양(도쿄), 아시아 태평양(서울), 아시아 태평양(오사카), 아시아 태평양(싱가포르), 아시아 태평양(시드니), 아시아 태평양(자카르타), 아시아 태평양(멜버른), 아프리카(케이프타운), 남아메리카(상파울루), 중동(바레인), 중동(UAE), 캐나다(중부), 이스라엘(텔아비브)
    2.0.20230719.0 4.14.320 2023년 8월 2일 미국 동부(버지니아 북부), 미국 동부(오하이오), 미국 서부(캘리포니아 북부), 미국 서부(오레곤), 유럽(스톡홀름), 유럽(밀라노), 유럽(스페인), 유럽(프랑크푸르트), 유럽(취리히), 유럽(아일랜드), 유럽(런던), 유럽(파리), 아시아 태평양(홍콩), 아시아 태평양(뭄바이), 아시아 태평양(하이데라바드), 아시아 태평양(도쿄), 아시아 태평양(서울), 아시아 태평양(오사카), 아시아 태평양(싱가포르), 아시아 태평양(시드니), 아시아 태평양(자카르타), 아시아 태평양(멜버른), 아프리카(케이프타운), 남아메리카(상파울루), 중동(바레인), 중동(UAE), 캐나다(중부), 이스라엘(텔아비브)
    2.0.20230628.0 4.14.318 2023년 7월 12일 미국 동부(버지니아 북부), 미국 동부(오하이오), 미국 서부(캘리포니아 북부), 미국 서부(오레곤), 캐나다(중부), 유럽(스톡홀름), 유럽(아일랜드), 유럽(런던), 유럽(파리), 유럽(프랑크푸르트), 유럽(밀라노), 아시아 태평양(홍콩), 아시아 태평양(뭄바이), 아시아 태평양(자카르타), 아시아 태평양(도쿄), 아시아 태평양(서울), 아시아 태평양(오사카), 아시아 태평양(싱가포르), 아시아 태평양(시드니), 아프리카(케이프타운), 남아메리카(상파울루), 중동(바레인)
    2.0.20230612.0 4.14.314 2023년 6월 23일 미국 동부(버지니아 북부), 미국 동부(오하이오), 미국 서부(캘리포니아 북부), 미국 서부(오레곤), 캐나다(중부), 유럽(스톡홀름), 유럽(아일랜드), 유럽(런던), 유럽(파리), 유럽(프랑크푸르트), 유럽(밀라노), 아시아 태평양(홍콩), 아시아 태평양(뭄바이), 아시아 태평양(자카르타), 아시아 태평양(도쿄), 아시아 태평양(서울), 아시아 태평양(오사카), 아시아 태평양(싱가포르), 아시아 태평양(시드니), 아프리카(케이프타운), 남아메리카(상파울루), 중동(바레인)
    2.0.20230504.1 4.14.313 2023년 5월 16일 미국 동부(버지니아 북부), 미국 동부(오하이오), 미국 서부(캘리포니아 북부), 미국 서부(오레곤), 캐나다(중부), 유럽(스톡홀름), 유럽(아일랜드), 유럽(런던), 유럽(파리), 유럽(프랑크푸르트), 유럽(밀라노), 아시아 태평양(홍콩), 아시아 태평양(뭄바이), 아시아 태평양(자카르타), 아시아 태평양(도쿄), 아시아 태평양(서울), 아시아 태평양(오사카), 아시아 태평양(싱가포르), 아시아 태평양(시드니), 아프리카(케이프타운), 남아메리카(상파울루), 중동(바레인)
    2.0.20230418.0 4.14.311 2023년 5월 3일 미국 동부(버지니아 북부), 미국 동부(오하이오), 미국 서부(캘리포니아 북부), 미국 서부(오레곤), 캐나다(중부), 유럽(스톡홀름), 유럽(아일랜드), 유럽(런던), 유럽(파리), 유럽(프랑크푸르트), 유럽(밀라노), 아시아 태평양(홍콩), 아시아 태평양(뭄바이), 아시아 태평양(자카르타), 아시아 태평양(도쿄), 아시아 태평양(서울), 아시아 태평양(오사카), 아시아 태평양(싱가포르), 아시아 태평양(시드니), 아프리카(케이프타운), 남아메리카(상파울루), 중동(바레인)
    2.0.20230404.1 4.14.311 2023년 4월 18일 미국 동부(버지니아 북부), 미국 동부(오하이오), 미국 서부(캘리포니아 북부), 미국 서부(오레곤), 캐나다(중부), 유럽(스톡홀름), 유럽(아일랜드), 유럽(런던), 유럽(파리), 유럽(프랑크푸르트), 유럽(밀라노), 아시아 태평양(홍콩), 아시아 태평양(뭄바이), 아시아 태평양(자카르타), 아시아 태평양(도쿄), 아시아 태평양(서울), 아시아 태평양(오사카), 아시아 태평양(싱가포르), 아시아 태평양(시드니), 아프리카(케이프타운), 남아메리카(상파울루), 중동(바레인)
    2.0.20230404.0 4.14.311 2023년 4월 10일 미국 동부(버지니아 북부), 유럽(파리)
    2.0.20230320.0 4.14.309 2023년 3월 30일 미국 동부(버지니아 북부), 미국 동부(오하이오), 미국 서부(캘리포니아 북부), 미국 서부(오레곤), 캐나다(중부), 유럽(스톡홀름), 유럽(아일랜드), 유럽(런던), 유럽(파리), 유럽(프랑크푸르트), 유럽(밀라노), 아시아 태평양(홍콩), 아시아 태평양(뭄바이), 아시아 태평양(자카르타), 아시아 태평양(도쿄), 아시아 태평양(서울), 아시아 태평양(오사카), 아시아 태평양(싱가포르), 아시아 태평양(시드니), 아프리카(케이프타운), 남아메리카(상파울루), 중동(바레인)
    2.0.20230307.0 4.14.305 2023년 3월 15일 미국 동부(버지니아 북부), 미국 동부(오하이오), 미국 서부(캘리포니아 북부), 미국 서부(오레곤), 캐나다(중부), 유럽(스톡홀름), 유럽(아일랜드), 유럽(런던), 유럽(파리), 유럽(프랑크푸르트), 유럽(밀라노), 아시아 태평양(홍콩), 아시아 태평양(뭄바이), 아시아 태평양(자카르타), 아시아 태평양(도쿄), 아시아 태평양(서울), 아시아 태평양(오사카), 아시아 태평양(싱가포르), 아시아 태평양(시드니), 아프리카(케이프타운), 남아메리카(상파울루), 중동(바레인)
    2.0.20230207.0 4.14.304 2023년 2월 22일 미국 동부(버지니아 북부), 미국 동부(오하이오), 미국 서부(캘리포니아 북부), 미국 서부(오레곤), 캐나다(중부), 유럽(스톡홀름), 유럽(아일랜드), 유럽(런던), 유럽(파리), 유럽(프랑크푸르트), 유럽(밀라노), 아시아 태평양(홍콩), 아시아 태평양(뭄바이), 아시아 태평양(자카르타), 아시아 태평양(도쿄), 아시아 태평양(서울), 아시아 태평양(오사카), 아시아 태평양(싱가포르), 아시아 태평양(시드니), 아프리카(케이프타운), 남아메리카(상파울루), 중동(바레인)
    2.0.20221210.1 4.14.301 2023년 1월 12일 미국 동부(버지니아 북부), 미국 동부(오하이오), 미국 서부(캘리포니아 북부), 미국 서부(오레곤), 캐나다(중부), 유럽(스톡홀름), 유럽(아일랜드), 유럽(런던), 유럽(파리), 유럽(프랑크푸르트), 유럽(밀라노), 아시아 태평양(홍콩), 아시아 태평양(뭄바이), 아시아 태평양(자카르타), 아시아 태평양(도쿄), 아시아 태평양(서울), 아시아 태평양(오사카), 아시아 태평양(싱가포르), 아시아 태평양(시드니), 아프리카(케이프타운), 남아메리카(상파울루), 중동(바레인)
    2.0.20221103.3 4.14.296 2022년 12월 5일 미국 동부(버지니아 북부), 미국 동부(오하이오), 미국 서부(캘리포니아 북부), 미국 서부(오레곤), 캐나다(중부), 유럽(스톡홀름), 유럽(아일랜드), 유럽(런던), 유럽(파리), 유럽(프랑크푸르트), 유럽(밀라노), 아시아 태평양(홍콩), 아시아 태평양(뭄바이), 아시아 태평양(자카르타), 아시아 태평양(도쿄), 아시아 태평양(서울), 아시아 태평양(오사카), 아시아 태평양(싱가포르), 아시아 태평양(시드니), 아프리카(케이프타운), 남아메리카(상파울루), 중동(바레인)

릴리스 6.8.0

다음 릴리스 정보에는 Amazon EMR 릴리스 6.8.0에 대한 정보가 포함됩니다. 변경 사항은 6.7.0에 관련됩니다.

새로운 기능
  • Amazon EMR 단계 기능은 이제 Apache Livy 엔드포인트와 JDBC 및 ODBC 클라이언트를 지원합니다. 자세한 내용은 Amazon EMR 단계에 대한 런타임 역할 구성을 참조하세요.

  • Amazon EMR 릴리스 6.8.0은 Apache HBase 릴리스 2.4.12와 함께 제공됩니다. 이 HBase 릴리스에서는 HBase 테이블을 아카이브 및 삭제할 수 있습니다. Amazon S3 아카이브 프로세스는 모든 테이블 파일의 이름을 아카이브 디렉터리로 바꿉니다. 이 프로세스는 비용이 많이 들고 시간이 오래 걸릴 수 있습니다. 이제 아카이브 프로세스를 건너뛰고 대용량 테이블을 빠르게 삭제할 수 있습니다. 자세한 내용은 HBase 쉘 사용 섹션을 참조하세요.

알려진 문제
  • Hadoop 3.3.3에서는 애플리케이션이 완료될 때까지 컨테이너가 실행되는 노드를 서비스 해제 상태로 유지하는 YARN의 변경 사항(YARN-9608)을 도입했습니다. 이 변경으로 셔플 데이터와 같은 로컬 데이터가 손실되지 않으므로 작업을 다시 실행할 필요가 없습니다. Amazon EMR 6.8.0 및 6.9.0에서 이 접근 방식을 사용하면 Managed Scaling의 활성화 여부에 상관없이 클러스터에서 리소스 사용률이 낮아질 수도 있습니다.

    Amazon EMR 6.10.0에서 이 문제를 해결하려면 yarn-site.xml에서 yarn.resourcemanager.decommissioning-nodes-watcher.wait-for-applications의 값을 false로 설정합니다. Amazon EMR 릴리스 6.11.0 이상과 6.8.1, 6.9.1, 6.10.1에서는 이 문제를 해결하기 위해 기본적으로 구성이 false로 설정되어 있습니다.

변경 사항, 향상된 기능 및 해결된 문제
  • Amazon EMR 릴리스 6.5.0, 6.6.0 또는 6.7.0에서 Apache Spark 쉘을 통해 Apache Phoenix 테이블을 읽으면 Amazon EMR에서 NoSuchMethodError가 발생합니다. Amazon EMR 릴리스 6.8.0에서는 이 문제가 수정되었습니다.

  • Amazon EMR 릴리스 6.8.0은 Apache Hudi 0.11.1과 함께 제공되지만, Amazon EMR 6.8.0 클러스터는 Hudi 0.12.0의 오픈 소스 hudi-spark3.3-bundle_2.12와도 호환됩니다.

  • Amazon EMR 릴리스 6.8.0은 Apache Spark 3.3.0과 함께 제공됩니다. 이번 Spark 릴리스에서는 Apache Log4j 2 및 log4j2.properties 파일을 사용하여 Spark 프로세스에서 Log4j를 구성합니다. 클러스터에서 Spark를 사용하거나 사용자 지정 구성 파라미터를 사용하여 EMR 클러스터를 생성하고 Amazon EMR 릴리스 6.8.0으로 업그레이드하려는 경우 Apache Log4j 2의 새로운 spark-log4j2 구성 분류 및 키 형식으로 마이그레이션해야 합니다. 자세한 내용은 Apache Log4j 1.x에서 Log4j 2.x로 마이그레이션 섹션을 참조하세요.

  • Amazon EMR 5.36 이상 또는 6.6 이상의 최신 패치 릴리스가 적용된 클러스터를 시작하는 경우 Amazon EMR은 기본 Amazon EMR AMI에 대한 최신 Amazon Linux 2 릴리스를 사용합니다. 자세한 내용은 Amazon EMR에 대한 기본 Amazon Linux AMI 사용을 참조하세요.

    참고

    이 릴리스에서는 패치 릴리스가 1개 더 추가되었으므로 더 이상 자동 AMI 업데이트를 받지 않습니다. 패치 릴리스는 소수점 두 번째 자리 뒤의 숫자(6.8.1)로 표시됩니다. 최신 패치 릴리스를 사용하는지 확인하려면 릴리스 가이드에서 사용 가능한 릴리스를 확인하거나, 콘솔에서 클러스터를 생성할 때 Amazon EMR 릴리스 드롭다운을 확인하거나, ListReleaseLabels API 또는 list-release-labels CLI 작업을 사용합니다. 새 릴리스에 대한 업데이트를 받으려면 새로운 기능에서 RSS 피드를 구독하세요.

    OsReleaseLabel(Amazon Linux 버전) Amazon Linux 커널 버전 사용 가능한 날짜 지원되는 리전
    2.0.20230727.0 4.14.320 2023년 8월 14일 미국 동부(버지니아 북부), 미국 동부(오하이오), 미국 서부(캘리포니아 북부), 미국 서부(오레곤), 유럽(스톡홀름), 유럽(밀라노), 유럽(프랑크푸르트), 유럽(아일랜드), 유럽(런던), 유럽(파리), 아시아 태평양(홍콩), 아시아 태평양(뭄바이), 아시아 태평양(도쿄), 아시아 태평양(서울), 아시아 태평양(오사카), 아시아 태평양(싱가포르), 아시아 태평양(시드니), 아시아 태평양(자카르타), 아시아 태평양(멜버른), 아프리카(케이프타운), 남아메리카(상파울루), 중동(바레인), 캐나다(중부)
    2.0.20230719.0 4.14.320 2023년 8월 2일 미국 동부(버지니아 북부), 미국 동부(오하이오), 미국 서부(캘리포니아 북부), 미국 서부(오레곤), 유럽(스톡홀름), 유럽(밀라노), 유럽(스페인), 유럽(프랑크푸르트), 유럽(취리히), 유럽(아일랜드), 유럽(런던), 유럽(파리), 아시아 태평양(홍콩), 아시아 태평양(뭄바이), 아시아 태평양(하이데라바드), 아시아 태평양(도쿄), 아시아 태평양(서울), 아시아 태평양(오사카), 아시아 태평양(싱가포르), 아시아 태평양(시드니), 아시아 태평양(자카르타), 아시아 태평양(멜버른), 아프리카(케이프타운), 남아메리카(상파울루), 중동(바레인), 중동(UAE), 캐나다(중부)
    2.0.20230628.0 4.14.318 2023년 7월 12일 미국 동부(버지니아 북부), 미국 동부(오하이오), 미국 서부(캘리포니아 북부), 미국 서부(오레곤), 캐나다(중부), 유럽(스톡홀름), 유럽(아일랜드), 유럽(런던), 유럽(파리), 유럽(프랑크푸르트), 유럽(밀라노), 아시아 태평양(홍콩), 아시아 태평양(뭄바이), 아시아 태평양(자카르타), 아시아 태평양(도쿄), 아시아 태평양(서울), 아시아 태평양(오사카), 아시아 태평양(싱가포르), 아시아 태평양(시드니), 아프리카(케이프타운), 남아메리카(상파울루), 중동(바레인)
    2.0.20230612.0 4.14.314 2023년 6월 23일 미국 동부(버지니아 북부), 미국 동부(오하이오), 미국 서부(캘리포니아 북부), 미국 서부(오레곤), 캐나다(중부), 유럽(스톡홀름), 유럽(아일랜드), 유럽(런던), 유럽(파리), 유럽(프랑크푸르트), 유럽(밀라노), 아시아 태평양(홍콩), 아시아 태평양(뭄바이), 아시아 태평양(자카르타), 아시아 태평양(도쿄), 아시아 태평양(서울), 아시아 태평양(오사카), 아시아 태평양(싱가포르), 아시아 태평양(시드니), 아프리카(케이프타운), 남아메리카(상파울루), 중동(바레인)
    2.0.20230504.1 4.14.313 2023년 5월 16일 미국 동부(버지니아 북부), 미국 동부(오하이오), 미국 서부(캘리포니아 북부), 미국 서부(오레곤), 캐나다(중부), 유럽(스톡홀름), 유럽(아일랜드), 유럽(런던), 유럽(파리), 유럽(프랑크푸르트), 유럽(밀라노), 아시아 태평양(홍콩), 아시아 태평양(뭄바이), 아시아 태평양(자카르타), 아시아 태평양(도쿄), 아시아 태평양(서울), 아시아 태평양(오사카), 아시아 태평양(싱가포르), 아시아 태평양(시드니), 아프리카(케이프타운), 남아메리카(상파울루), 중동(바레인)
    2.0.20230418.0 4.14.311 2023년 5월 3일 미국 동부(버지니아 북부), 미국 동부(오하이오), 미국 서부(캘리포니아 북부), 미국 서부(오레곤), 캐나다(중부), 유럽(스톡홀름), 유럽(아일랜드), 유럽(런던), 유럽(파리), 유럽(프랑크푸르트), 유럽(밀라노), 아시아 태평양(홍콩), 아시아 태평양(뭄바이), 아시아 태평양(자카르타), 아시아 태평양(도쿄), 아시아 태평양(서울), 아시아 태평양(오사카), 아시아 태평양(싱가포르), 아시아 태평양(시드니), 아프리카(케이프타운), 남아메리카(상파울루), 중동(바레인)
    2.0.20230404.1 4.14.311 2023년 4월 18일 미국 동부(버지니아 북부), 미국 동부(오하이오), 미국 서부(캘리포니아 북부), 미국 서부(오레곤), 캐나다(중부), 유럽(스톡홀름), 유럽(아일랜드), 유럽(런던), 유럽(파리), 유럽(프랑크푸르트), 유럽(밀라노), 아시아 태평양(홍콩), 아시아 태평양(뭄바이), 아시아 태평양(자카르타), 아시아 태평양(도쿄), 아시아 태평양(서울), 아시아 태평양(오사카), 아시아 태평양(싱가포르), 아시아 태평양(시드니), 아프리카(케이프타운), 남아메리카(상파울루), 중동(바레인)
    2.0.20230404.0 4.14.311 2023년 4월 10일 미국 동부(버지니아 북부), 유럽(파리)
    2.0.20230320.0 4.14.309 2023년 3월 30일 미국 동부(버지니아 북부), 미국 동부(오하이오), 미국 서부(캘리포니아 북부), 미국 서부(오레곤), 캐나다(중부), 유럽(스톡홀름), 유럽(아일랜드), 유럽(런던), 유럽(파리), 유럽(프랑크푸르트), 유럽(밀라노), 아시아 태평양(홍콩), 아시아 태평양(뭄바이), 아시아 태평양(자카르타), 아시아 태평양(도쿄), 아시아 태평양(서울), 아시아 태평양(오사카), 아시아 태평양(싱가포르), 아시아 태평양(시드니), 아프리카(케이프타운), 남아메리카(상파울루), 중동(바레인)
    2.0.20230307.0 4.14.305 2023년 3월 15일 미국 동부(버지니아 북부), 미국 동부(오하이오), 미국 서부(캘리포니아 북부), 미국 서부(오레곤), 캐나다(중부), 유럽(스톡홀름), 유럽(아일랜드), 유럽(런던), 유럽(파리), 유럽(프랑크푸르트), 유럽(밀라노), 아시아 태평양(홍콩), 아시아 태평양(뭄바이), 아시아 태평양(자카르타), 아시아 태평양(도쿄), 아시아 태평양(서울), 아시아 태평양(오사카), 아시아 태평양(싱가포르), 아시아 태평양(시드니), 아프리카(케이프타운), 남아메리카(상파울루), 중동(바레인)
    2.0.20230207.0 4.14.304 2023년 2월 22일 미국 동부(버지니아 북부), 미국 동부(오하이오), 미국 서부(캘리포니아 북부), 미국 서부(오레곤), 캐나다(중부), 유럽(스톡홀름), 유럽(아일랜드), 유럽(런던), 유럽(파리), 유럽(프랑크푸르트), 유럽(밀라노), 아시아 태평양(홍콩), 아시아 태평양(뭄바이), 아시아 태평양(자카르타), 아시아 태평양(도쿄), 아시아 태평양(서울), 아시아 태평양(오사카), 아시아 태평양(싱가포르), 아시아 태평양(시드니), 아프리카(케이프타운), 남아메리카(상파울루), 중동(바레인)
    2.0.20230119.1 4.14.301 2023년 2월 3일 미국 동부(버지니아 북부), 미국 동부(오하이오), 미국 서부(캘리포니아 북부), 미국 서부(오레곤), 캐나다(중부), 유럽(스톡홀름), 유럽(아일랜드), 유럽(런던), 유럽(파리), 유럽(프랑크푸르트), 유럽(밀라노), 아시아 태평양(홍콩), 아시아 태평양(뭄바이), 아시아 태평양(자카르타), 아시아 태평양(도쿄), 아시아 태평양(서울), 아시아 태평양(오사카), 아시아 태평양(싱가포르), 아시아 태평양(시드니), 아프리카(케이프타운), 남아메리카(상파울루), 중동(바레인)
    2.0.20221210.1 4.14.301 2023년 12월 22일 미국 동부(버지니아 북부), 미국 동부(오하이오), 미국 서부(캘리포니아 북부), 미국 서부(오레곤), 캐나다(중부), 유럽(스톡홀름), 유럽(아일랜드), 유럽(런던), 유럽(파리), 유럽(프랑크푸르트), 유럽(밀라노), 아시아 태평양(홍콩), 아시아 태평양(뭄바이), 아시아 태평양(자카르타), 아시아 태평양(도쿄), 아시아 태평양(서울), 아시아 태평양(오사카), 아시아 태평양(싱가포르), 아시아 태평양(시드니), 아프리카(케이프타운), 남아메리카(상파울루), 중동(바레인)
    2.0.20221103.3 4.14.296 2022년 12월 5일 미국 동부(버지니아 북부), 미국 동부(오하이오), 미국 서부(캘리포니아 북부), 미국 서부(오레곤), 캐나다(중부), 유럽(스톡홀름), 유럽(아일랜드), 유럽(런던), 유럽(파리), 유럽(프랑크푸르트), 유럽(밀라노), 아시아 태평양(홍콩), 아시아 태평양(뭄바이), 아시아 태평양(자카르타), 아시아 태평양(도쿄), 아시아 태평양(서울), 아시아 태평양(오사카), 아시아 태평양(싱가포르), 아시아 태평양(시드니), 아프리카(케이프타운), 남아메리카(상파울루), 중동(바레인)
    2.0.20221004.0 4.14.294 2022년 11월 2일 미국 동부(버지니아 북부), 미국 동부(오하이오), 미국 서부(캘리포니아 북부), 미국 서부(오레곤), 캐나다(중부), 유럽(스톡홀름), 유럽(아일랜드), 유럽(런던), 유럽(파리), 유럽(프랑크푸르트), 유럽(밀라노), 아시아 태평양(홍콩), 아시아 태평양(뭄바이), 아시아 태평양(자카르타), 아시아 태평양(도쿄), 아시아 태평양(서울), 아시아 태평양(오사카), 아시아 태평양(싱가포르), 아시아 태평양(시드니), 아프리카(케이프타운), 남아메리카(상파울루), 중동(바레인)
    2.0.20220912.1 4.14.291 2022년 9월 6일 미국 동부(버지니아 북부), 미국 동부(오하이오), 미국 서부(캘리포니아 북부), 미국 서부(오레곤), 캐나다(중부), 유럽(스톡홀름), 유럽(아일랜드), 유럽(런던), 유럽(파리), 유럽(프랑크푸르트), 유럽(밀라노), 아시아 태평양(홍콩), 아시아 태평양(뭄바이), 아시아 태평양(자카르타), 아시아 태평양(도쿄), 아시아 태평양(서울), 아시아 태평양(오사카), 아시아 태평양(싱가포르), 아시아 태평양(시드니), 아프리카(케이프타운), 남아메리카(상파울루), 중동(바레인)
알려진 문제
  • Amazon EMR 버전 6.6.0, 6.7.0 및 6.8.0에서 Spark와 함께 DynamoDB 커넥터를 사용하는 경우 입력 분할이 비어 있지 않은 데이터를 참조하더라도 테이블에서 모든 읽기는 빈 결과를 반환합니다. Spark 3.2.0에서는 기본적으로 spark.hadoopRDD.ignoreEmptySplitstrue로 설정하기 때문입니다. 해결 방법으로 spark.hadoopRDD.ignoreEmptySplits를 명시적으로 false로 설정합니다. Amazon EMR 릴리스 6.9.0에서는 이 문제가 수정되었습니다.

  • Hive 파티션 위치 형식과 함께 Spark를 사용하여 Amazon S3의 데이터를 읽고, Amazon EMR 릴리스 5.30.0~5.36.0 및 6.2.0~6.9.0에서 Spark를 실행하는 경우 클러스터가 데이터를 제대로 읽지 못하는 문제가 발생할 수 있습니다. 파티션에 다음과 같은 특성이 모두 있는 경우 이러한 상황이 발생할 수 있습니다.

    • 둘 이상의 파티션이 동일한 테이블에서 스캔됩니다.

    • 하나 이상의 파티션 디렉터리 경로가 하나 이상의 다른 파티션 디렉터리 경로의 접두사입니다. 예를 들어 s3://bucket/table/p=as3://bucket/table/p=a b의 접두사입니다.

    • 다른 파티션 디렉터리에서 접두사 뒤에 오는 첫 번째 문자의 UTF-8 값이 / 문자(U+002F)보다 작습니다. 예를 들어 s3://bucket/table/p=a b에서 a와 b 사이에 있는 공백 문자(U+0020)가 이 카테고리에 속합니다. !"#$%&‘()*+,-와 같은 14개의 비제어 문자가 있습니다. 자세한 내용은 UTF-8 인코딩 테이블 및 유니코드 문자를 참조하세요.

    이 문제를 해결하려면 spark-defaults 분류에서 spark.sql.sources.fastS3PartitionDiscovery.enabled 구성을 false로 설정합니다.

  • Amazon EMR 릴리스 5.36.0 및 6.6.0~6.9.0까지는 Log4j2 속성의 잘못된 파일 이름 패턴 구성으로 인해 SecretAgentRecordServer 서비스 구성 요소에 로그 데이터가 손실될 수 있습니다. 잘못된 구성으로 인해 구성 요소에서 하루에 하나의 로그 파일만 생성합니다. 로테이션 전략이 수행되면 예상대로 새 로그 파일을 생성하는 대신 기존 파일을 덮어씁니다. 해결 방법으로 부트스트랩 작업을 사용하여 매시간 로그 파일을 생성하고 파일 이름에 자동 증가 정수를 추가하여 교체를 처리합니다.

    Amazon EMR 6.6.0~6.9.0 릴리스의 경우 클러스터를 시작할 때 다음 부트스트랩 작업을 사용합니다.

    ‑‑bootstrap‑actions "Path=s3://emr-data-access-control-us-east-1/customer-bootstrap-actions/log-rotation-emr-6x/replace-puppet.sh,Args=[]"

    Amazon EMR 5.36.0의 경우 클러스터를 시작할 때 다음 부트스트랩 작업을 사용합니다.

    ‑‑bootstrap‑actions "Path=s3://emr-data-access-control-us-east-1/customer-bootstrap-actions/log-rotation-emr-5x/replace-puppet.sh,Args=[]"

릴리스 일정에 대한 자세한 내용은 변경 로그를 참조하세요.

릴리스 6.7.0

다음 릴리스 정보에는 Amazon EMR 릴리스 6.7.0에 대한 정보가 포함됩니다. 변경 사항은 6.6.0에 관련됩니다.

최초 릴리스 날짜: 2022년 7월 15일

새로운 기능
  • Amazon EMR은 이제 Apache Spark 3.2.1, Apache Hive 3.1.3, HUDI 0.11, PrestoDB 0.272, Trino 0.378을 지원합니다.

  • Amazon EMR on EC2 클러스터에 대한 EMR 단계(Spark, Hive)를 통해 IAM 역할 및 Lake Formation 기반 액세스 제어를 지원합니다.

  • Apache Ranger 지원 클러스터에서 Apache Spark 데이터 정의 명령문을 지원합니다. 이제 Apache Ranger 지원 클러스터에서 Apache Hive 메타데이터를 읽고 쓰는 Trino 애플리케이션에 대한 지원이 포함됩니다. 자세한 내용은 Enable federated governance using Trino and Apache Ranger on Amazon EMR을 참조하세요.

  • Amazon EMR 5.36 이상 또는 6.6 이상의 최신 패치 릴리스가 적용된 클러스터를 시작하는 경우 Amazon EMR은 기본 Amazon EMR AMI에 대한 최신 Amazon Linux 2 릴리스를 사용합니다. 자세한 내용은 Amazon EMR에 대한 기본 Amazon Linux AMI 사용을 참조하세요.

    OsReleaseLabel(Amazon Linux 버전) Amazon Linux 커널 버전 사용 가능한 날짜 지원되는 리전
    2.0.20230727.0 4.14.320 2023년 8월 14일 미국 동부(버지니아 북부), 미국 동부(오하이오), 미국 서부(캘리포니아 북부), 미국 서부(오레곤), 유럽(스톡홀름), 유럽(밀라노), 유럽(프랑크푸르트), 유럽(아일랜드), 유럽(런던), 유럽(파리), 아시아 태평양(홍콩), 아시아 태평양(뭄바이), 아시아 태평양(도쿄), 아시아 태평양(서울), 아시아 태평양(오사카), 아시아 태평양(싱가포르), 아시아 태평양(시드니), 아시아 태평양(자카르타), 아프리카(케이프타운), 남아메리카(상파울루), 중동(바레인), 캐나다(중부)
    2.0.20230719.0 4.14.320 2023년 8월 2일 미국 동부(버지니아 북부), 미국 동부(오하이오), 미국 서부(캘리포니아 북부), 미국 서부(오레곤), 유럽(스톡홀름), 유럽(밀라노), 유럽(스페인), 유럽(프랑크푸르트), 유럽(취리히), 유럽(아일랜드), 유럽(런던), 유럽(파리), 아시아 태평양(홍콩), 아시아 태평양(뭄바이), 아시아 태평양(하이데라바드), 아시아 태평양(도쿄), 아시아 태평양(서울), 아시아 태평양(오사카), 아시아 태평양(싱가포르), 아시아 태평양(시드니), 아시아 태평양(자카르타), 아프리카(케이프타운), 남아메리카(상파울루), 중동(바레인), 중동(UAE), 캐나다(중부), 이스라엘(텔아비브)
    2.0.20230628.0 4.14.318 2023년 7월 12일 미국 동부(버지니아 북부), 미국 동부(오하이오), 미국 서부(캘리포니아 북부), 미국 서부(오레곤), 캐나다(중부), 유럽(스톡홀름), 유럽(아일랜드), 유럽(런던), 유럽(파리), 유럽(프랑크푸르트), 유럽(밀라노), 아시아 태평양(홍콩), 아시아 태평양(뭄바이), 아시아 태평양(자카르타), 아시아 태평양(도쿄), 아시아 태평양(서울), 아시아 태평양(오사카), 아시아 태평양(싱가포르), 아시아 태평양(시드니), 아프리카(케이프타운), 남아메리카(상파울루), 중동(바레인)
    2.0.20230612.0 4.14.314 2023년 6월 23일 미국 동부(버지니아 북부), 미국 동부(오하이오), 미국 서부(캘리포니아 북부), 미국 서부(오레곤), 캐나다(중부), 유럽(스톡홀름), 유럽(아일랜드), 유럽(런던), 유럽(파리), 유럽(프랑크푸르트), 유럽(밀라노), 아시아 태평양(홍콩), 아시아 태평양(뭄바이), 아시아 태평양(자카르타), 아시아 태평양(도쿄), 아시아 태평양(서울), 아시아 태평양(오사카), 아시아 태평양(싱가포르), 아시아 태평양(시드니), 아프리카(케이프타운), 남아메리카(상파울루), 중동(바레인)
    2.0.20230504.1 4.14.313 2023년 5월 16일 미국 동부(버지니아 북부), 미국 동부(오하이오), 미국 서부(캘리포니아 북부), 미국 서부(오레곤), 캐나다(중부), 유럽(스톡홀름), 유럽(아일랜드), 유럽(런던), 유럽(파리), 유럽(프랑크푸르트), 유럽(밀라노), 아시아 태평양(홍콩), 아시아 태평양(뭄바이), 아시아 태평양(자카르타), 아시아 태평양(도쿄), 아시아 태평양(서울), 아시아 태평양(오사카), 아시아 태평양(싱가포르), 아시아 태평양(시드니), 아프리카(케이프타운), 남아메리카(상파울루), 중동(바레인)
    2.0.20230418.0 4.14.311 2023년 5월 3일 미국 동부(버지니아 북부), 미국 동부(오하이오), 미국 서부(캘리포니아 북부), 미국 서부(오레곤), 캐나다(중부), 유럽(스톡홀름), 유럽(아일랜드), 유럽(런던), 유럽(파리), 유럽(프랑크푸르트), 유럽(밀라노), 아시아 태평양(홍콩), 아시아 태평양(뭄바이), 아시아 태평양(자카르타), 아시아 태평양(도쿄), 아시아 태평양(서울), 아시아 태평양(오사카), 아시아 태평양(싱가포르), 아시아 태평양(시드니), 아프리카(케이프타운), 남아메리카(상파울루), 중동(바레인)
    2.0.20230404.1 4.14.311 2023년 4월 18일 미국 동부(버지니아 북부), 미국 동부(오하이오), 미국 서부(캘리포니아 북부), 미국 서부(오레곤), 캐나다(중부), 유럽(스톡홀름), 유럽(아일랜드), 유럽(런던), 유럽(파리), 유럽(프랑크푸르트), 유럽(밀라노), 아시아 태평양(홍콩), 아시아 태평양(뭄바이), 아시아 태평양(자카르타), 아시아 태평양(도쿄), 아시아 태평양(서울), 아시아 태평양(오사카), 아시아 태평양(싱가포르), 아시아 태평양(시드니), 아프리카(케이프타운), 남아메리카(상파울루), 중동(바레인)
    2.0.20230404.0 4.14.311 2023년 4월 10일 미국 동부(버지니아 북부), 유럽(파리)
    2.0.20230320.0 4.14.309 2023년 3월 30일 미국 동부(버지니아 북부), 미국 동부(오하이오), 미국 서부(캘리포니아 북부), 미국 서부(오레곤), 캐나다(중부), 유럽(스톡홀름), 유럽(아일랜드), 유럽(런던), 유럽(파리), 유럽(프랑크푸르트), 유럽(밀라노), 아시아 태평양(홍콩), 아시아 태평양(뭄바이), 아시아 태평양(자카르타), 아시아 태평양(도쿄), 아시아 태평양(서울), 아시아 태평양(오사카), 아시아 태평양(싱가포르), 아시아 태평양(시드니), 아프리카(케이프타운), 남아메리카(상파울루), 중동(바레인)
    2.0.20230307.0 4.14.305 2023년 3월 15일 미국 동부(버지니아 북부), 미국 동부(오하이오), 미국 서부(캘리포니아 북부), 미국 서부(오레곤), 캐나다(중부), 유럽(스톡홀름), 유럽(아일랜드), 유럽(런던), 유럽(파리), 유럽(프랑크푸르트), 유럽(밀라노), 아시아 태평양(홍콩), 아시아 태평양(뭄바이), 아시아 태평양(자카르타), 아시아 태평양(도쿄), 아시아 태평양(서울), 아시아 태평양(오사카), 아시아 태평양(싱가포르), 아시아 태평양(시드니), 아프리카(케이프타운), 남아메리카(상파울루), 중동(바레인)
    2.0.20230207.0 4.14.304 2023년 2월 22일 미국 동부(버지니아 북부), 미국 동부(오하이오), 미국 서부(캘리포니아 북부), 미국 서부(오레곤), 캐나다(중부), 유럽(스톡홀름), 유럽(아일랜드), 유럽(런던), 유럽(파리), 유럽(프랑크푸르트), 유럽(밀라노), 아시아 태평양(홍콩), 아시아 태평양(뭄바이), 아시아 태평양(자카르타), 아시아 태평양(도쿄), 아시아 태평양(서울), 아시아 태평양(오사카), 아시아 태평양(싱가포르), 아시아 태평양(시드니), 아프리카(케이프타운), 남아메리카(상파울루), 중동(바레인)
    2.0.20230119.1 4.14.301 2023년 2월 3일 미국 동부(버지니아 북부), 미국 동부(오하이오), 미국 서부(캘리포니아 북부), 미국 서부(오레곤), 캐나다(중부), 유럽(스톡홀름), 유럽(아일랜드), 유럽(런던), 유럽(파리), 유럽(프랑크푸르트), 유럽(밀라노), 아시아 태평양(홍콩), 아시아 태평양(뭄바이), 아시아 태평양(자카르타), 아시아 태평양(도쿄), 아시아 태평양(서울), 아시아 태평양(오사카), 아시아 태평양(싱가포르), 아시아 태평양(시드니), 아프리카(케이프타운), 남아메리카(상파울루), 중동(바레인)
    2.0.20221210.1 4.14.301 2023년 12월 22일 미국 동부(버지니아 북부), 미국 동부(오하이오), 미국 서부(캘리포니아 북부), 미국 서부(오레곤), 캐나다(중부), 유럽(스톡홀름), 유럽(아일랜드), 유럽(런던), 유럽(파리), 유럽(프랑크푸르트), 유럽(밀라노), 아시아 태평양(홍콩), 아시아 태평양(뭄바이), 아시아 태평양(자카르타), 아시아 태평양(도쿄), 아시아 태평양(서울), 아시아 태평양(오사카), 아시아 태평양(싱가포르), 아시아 태평양(시드니), 아프리카(케이프타운), 남아메리카(상파울루), 중동(바레인)
    2.0.20221103.3 4.14.296 2022년 12월 5일 미국 동부(버지니아 북부), 미국 동부(오하이오), 미국 서부(캘리포니아 북부), 미국 서부(오레곤), 캐나다(중부), 유럽(스톡홀름), 유럽(아일랜드), 유럽(런던), 유럽(파리), 유럽(프랑크푸르트), 유럽(밀라노), 아시아 태평양(홍콩), 아시아 태평양(뭄바이), 아시아 태평양(자카르타), 아시아 태평양(도쿄), 아시아 태평양(서울), 아시아 태평양(오사카), 아시아 태평양(싱가포르), 아시아 태평양(시드니), 아프리카(케이프타운), 남아메리카(상파울루), 중동(바레인)
    2.0.20221004.0 4.14.294 2022년 11월 2일 미국 동부(버지니아 북부), 미국 동부(오하이오), 미국 서부(캘리포니아 북부), 미국 서부(오레곤), 캐나다(중부), 유럽(스톡홀름), 유럽(아일랜드), 유럽(런던), 유럽(파리), 유럽(프랑크푸르트), 유럽(밀라노), 아시아 태평양(홍콩), 아시아 태평양(뭄바이), 아시아 태평양(자카르타), 아시아 태평양(도쿄), 아시아 태평양(서울), 아시아 태평양(오사카), 아시아 태평양(싱가포르), 아시아 태평양(시드니), 아프리카(케이프타운), 남아메리카(상파울루), 중동(바레인)
    2.0.20220912.1 4.14.291 2022년 10월 7일 미국 동부(버지니아 북부), 미국 동부(오하이오), 미국 서부(캘리포니아 북부), 미국 서부(오레곤), 캐나다(중부), 유럽(스톡홀름), 유럽(아일랜드), 유럽(런던), 유럽(파리), 유럽(프랑크푸르트), 유럽(밀라노), 아시아 태평양(홍콩), 아시아 태평양(뭄바이), 아시아 태평양(자카르타), 아시아 태평양(도쿄), 아시아 태평양(서울), 아시아 태평양(오사카), 아시아 태평양(싱가포르), 아시아 태평양(시드니), 아프리카(케이프타운), 남아메리카(상파울루), 중동(바레인)
    2.0.20220719.0 4.14.287 2022년 8월 10일 us‑west‑1, eu‑west‑3, eu‑north‑1, ap‑south‑1, me‑south‑1
    2.0.20220606.1 4.14.281 2022년 7월 15일 미국 동부(버지니아 북부), 미국 동부(오하이오), 미국 서부(캘리포니아 북부), 미국 서부(오레곤), 캐나다(중부), 유럽(스톡홀름), 유럽(아일랜드), 유럽(런던), 유럽(파리), 유럽(프랑크푸르트), 유럽(밀라노), 아시아 태평양(홍콩), 아시아 태평양(뭄바이), 아시아 태평양(자카르타), 아시아 태평양(도쿄), 아시아 태평양(서울), 아시아 태평양(오사카), 아시아 태평양(싱가포르), 아시아 태평양(시드니), 아프리카(케이프타운), 남아메리카(상파울루), 중동(바레인)
알려진 문제
  • Amazon EMR 릴리스 6.5.0, 6.6.0 또는 6.7.0에서 Apache Spark 쉘을 통해 Apache Phoenix 테이블을 읽으면 Amazon EMR에서 잘못된 Hbase.compat.version을 사용하므로 NoSuchMethodError가 발생합니다. Amazon EMR 릴리스 6.8.0에서는 이 문제가 수정되었습니다.

  • Amazon EMR 버전 6.6.0, 6.7.0 및 6.8.0에서 Spark와 함께 DynamoDB 커넥터를 사용하는 경우 입력 분할이 비어 있지 않은 데이터를 참조하더라도 테이블에서 모든 읽기는 빈 결과를 반환합니다. Spark 3.2.0에서는 기본적으로 spark.hadoopRDD.ignoreEmptySplitstrue로 설정하기 때문입니다. 해결 방법으로 spark.hadoopRDD.ignoreEmptySplits를 명시적으로 false로 설정합니다. Amazon EMR 릴리스 6.9.0에서는 이 문제가 수정되었습니다.

  • Hive 파티션 위치 형식과 함께 Spark를 사용하여 Amazon S3의 데이터를 읽고, Amazon EMR 릴리스 5.30.0~5.36.0 및 6.2.0~6.9.0에서 Spark를 실행하는 경우 클러스터가 데이터를 제대로 읽지 못하는 문제가 발생할 수 있습니다. 파티션에 다음과 같은 특성이 모두 있는 경우 이러한 상황이 발생할 수 있습니다.

    • 둘 이상의 파티션이 동일한 테이블에서 스캔됩니다.

    • 하나 이상의 파티션 디렉터리 경로가 하나 이상의 다른 파티션 디렉터리 경로의 접두사입니다. 예를 들어 s3://bucket/table/p=as3://bucket/table/p=a b의 접두사입니다.

    • 다른 파티션 디렉터리에서 접두사 뒤에 오는 첫 번째 문자의 UTF-8 값이 / 문자(U+002F)보다 작습니다. 예를 들어 s3://bucket/table/p=a b에서 a와 b 사이에 있는 공백 문자(U+0020)가 이 카테고리에 속합니다. !"#$%&‘()*+,-와 같은 14개의 비제어 문자가 있습니다. 자세한 내용은 UTF-8 인코딩 테이블 및 유니코드 문자를 참조하세요.

    이 문제를 해결하려면 spark-defaults 분류에서 spark.sql.sources.fastS3PartitionDiscovery.enabled 구성을 false로 설정합니다.

  • Amazon EMR 릴리스 5.36.0 및 6.6.0~6.9.0까지는 Log4j2 속성의 잘못된 파일 이름 패턴 구성으로 인해 SecretAgentRecordServer 서비스 구성 요소에 로그 데이터가 손실될 수 있습니다. 잘못된 구성으로 인해 구성 요소에서 하루에 하나의 로그 파일만 생성합니다. 로테이션 전략이 수행되면 예상대로 새 로그 파일을 생성하는 대신 기존 파일을 덮어씁니다. 해결 방법으로 부트스트랩 작업을 사용하여 매시간 로그 파일을 생성하고 파일 이름에 자동 증가 정수를 추가하여 교체를 처리합니다.

    Amazon EMR 6.6.0~6.9.0 릴리스의 경우 클러스터를 시작할 때 다음 부트스트랩 작업을 사용합니다.

    ‑‑bootstrap‑actions "Path=s3://emr-data-access-control-us-east-1/customer-bootstrap-actions/log-rotation-emr-6x/replace-puppet.sh,Args=[]"

    Amazon EMR 5.36.0의 경우 클러스터를 시작할 때 다음 부트스트랩 작업을 사용합니다.

    ‑‑bootstrap‑actions "Path=s3://emr-data-access-control-us-east-1/customer-bootstrap-actions/log-rotation-emr-5x/replace-puppet.sh,Args=[]"

릴리스 6.6.0

다음 릴리스 정보에는 Amazon EMR 릴리스 6.6.0에 대한 정보가 포함됩니다. 변경 사항은 6.5.0에 관련됩니다.

최초 릴리스 날짜: 2022년 5월 9일

설명서 업데이트 날짜: 2022년 6월 15일

새로운 기능
  • Amazon EMR 6.6에서는 Apache Spark 3.2, Apache Spark RAPIDS 22.02, CUDA 11, Apache Hudi 0.10.1, Apache Iceberg 0.13, Trino 0.367, PrestoDB 0.267을 지원합니다.

  • Amazon EMR 5.36 이상 또는 6.6 이상의 최신 패치 릴리스가 적용된 클러스터를 시작하는 경우 Amazon EMR은 기본 Amazon EMR AMI에 대한 최신 Amazon Linux 2 릴리스를 사용합니다. 자세한 내용은 Amazon EMR에 대한 기본 Amazon Linux AMI 사용을 참조하세요.

    OsReleaseLabel(Amazon Linux 버전) Amazon Linux 커널 버전 사용 가능한 날짜 지원되는 리전
    2.0.20230727.0 4.14.320 2023년 8월 14일 미국 동부(버지니아 북부), 미국 동부(오하이오), 미국 서부(캘리포니아 북부), 미국 서부(오레곤), 유럽(스톡홀름), 유럽(밀라노), 유럽(프랑크푸르트), 유럽(아일랜드), 유럽(런던), 유럽(파리), 아시아 태평양(홍콩), 아시아 태평양(뭄바이), 아시아 태평양(도쿄), 아시아 태평양(서울), 아시아 태평양(오사카), 아시아 태평양(싱가포르), 아시아 태평양(시드니), 아시아 태평양(자카르타), 아프리카(케이프타운), 남아메리카(상파울루), 중동(바레인), 캐나다(중부)
    2.0.20230719.0 4.14.320 2023년 8월 2일 미국 동부(버지니아 북부), 미국 동부(오하이오), 미국 서부(캘리포니아 북부), 미국 서부(오레곤), 유럽(스톡홀름), 유럽(밀라노), 유럽(스페인), 유럽(프랑크푸르트), 유럽(취리히), 유럽(아일랜드), 유럽(런던), 유럽(파리), 아시아 태평양(홍콩), 아시아 태평양(뭄바이), 아시아 태평양(하이데라바드), 아시아 태평양(도쿄), 아시아 태평양(서울), 아시아 태평양(오사카), 아시아 태평양(싱가포르), 아시아 태평양(시드니), 아시아 태평양(자카르타), 아프리카(케이프타운), 남아메리카(상파울루), 중동(바레인), 중동(UAE), 캐나다(중부), 이스라엘(텔아비브)
    2.0.20230628.0 4.14.318 2023년 7월 12일 미국 동부(버지니아 북부), 미국 동부(오하이오), 미국 서부(캘리포니아 북부), 미국 서부(오레곤), 캐나다(중부), 유럽(스톡홀름), 유럽(아일랜드), 유럽(런던), 유럽(파리), 유럽(프랑크푸르트), 유럽(밀라노), 아시아 태평양(홍콩), 아시아 태평양(뭄바이), 아시아 태평양(자카르타), 아시아 태평양(도쿄), 아시아 태평양(서울), 아시아 태평양(오사카), 아시아 태평양(싱가포르), 아시아 태평양(시드니), 아프리카(케이프타운), 남아메리카(상파울루), 중동(바레인)
    2.0.20230612.0 4.14.314 2023년 6월 23일 미국 동부(버지니아 북부), 미국 동부(오하이오), 미국 서부(캘리포니아 북부), 미국 서부(오레곤), 캐나다(중부), 유럽(스톡홀름), 유럽(아일랜드), 유럽(런던), 유럽(파리), 유럽(프랑크푸르트), 유럽(밀라노), 아시아 태평양(홍콩), 아시아 태평양(뭄바이), 아시아 태평양(자카르타), 아시아 태평양(도쿄), 아시아 태평양(서울), 아시아 태평양(오사카), 아시아 태평양(싱가포르), 아시아 태평양(시드니), 아프리카(케이프타운), 남아메리카(상파울루), 중동(바레인)
    2.0.20230504.1 4.14.313 2023년 5월 16일 미국 동부(버지니아 북부), 미국 동부(오하이오), 미국 서부(캘리포니아 북부), 미국 서부(오레곤), 캐나다(중부), 유럽(스톡홀름), 유럽(아일랜드), 유럽(런던), 유럽(파리), 유럽(프랑크푸르트), 유럽(밀라노), 아시아 태평양(홍콩), 아시아 태평양(뭄바이), 아시아 태평양(자카르타), 아시아 태평양(도쿄), 아시아 태평양(서울), 아시아 태평양(오사카), 아시아 태평양(싱가포르), 아시아 태평양(시드니), 아프리카(케이프타운), 남아메리카(상파울루), 중동(바레인)
    2.0.20230418.0 4.14.311 2023년 5월 3일 미국 동부(버지니아 북부), 미국 동부(오하이오), 미국 서부(캘리포니아 북부), 미국 서부(오레곤), 캐나다(중부), 유럽(스톡홀름), 유럽(아일랜드), 유럽(런던), 유럽(파리), 유럽(프랑크푸르트), 유럽(밀라노), 아시아 태평양(홍콩), 아시아 태평양(뭄바이), 아시아 태평양(자카르타), 아시아 태평양(도쿄), 아시아 태평양(서울), 아시아 태평양(오사카), 아시아 태평양(싱가포르), 아시아 태평양(시드니), 아프리카(케이프타운), 남아메리카(상파울루), 중동(바레인)
    2.0.20230404.1 4.14.311 2023년 4월 18일 미국 동부(버지니아 북부), 미국 동부(오하이오), 미국 서부(캘리포니아 북부), 미국 서부(오레곤), 캐나다(중부), 유럽(스톡홀름), 유럽(아일랜드), 유럽(런던), 유럽(파리), 유럽(프랑크푸르트), 유럽(밀라노), 아시아 태평양(홍콩), 아시아 태평양(뭄바이), 아시아 태평양(자카르타), 아시아 태평양(도쿄), 아시아 태평양(서울), 아시아 태평양(오사카), 아시아 태평양(싱가포르), 아시아 태평양(시드니), 아프리카(케이프타운), 남아메리카(상파울루), 중동(바레인)
    2.0.20230404.0 4.14.311 2023년 4월 10일 미국 동부(버지니아 북부), 유럽(파리)
    2.0.20230320.0 4.14.309 2023년 3월 30일 미국 동부(버지니아 북부), 미국 동부(오하이오), 미국 서부(캘리포니아 북부), 미국 서부(오레곤), 캐나다(중부), 유럽(스톡홀름), 유럽(아일랜드), 유럽(런던), 유럽(파리), 유럽(프랑크푸르트), 유럽(밀라노), 아시아 태평양(홍콩), 아시아 태평양(뭄바이), 아시아 태평양(자카르타), 아시아 태평양(도쿄), 아시아 태평양(서울), 아시아 태평양(오사카), 아시아 태평양(싱가포르), 아시아 태평양(시드니), 아프리카(케이프타운), 남아메리카(상파울루), 중동(바레인)
    2.0.20230307.0 4.14.305 2023년 3월 15일 미국 동부(버지니아 북부), 미국 동부(오하이오), 미국 서부(캘리포니아 북부), 미국 서부(오레곤), 캐나다(중부), 유럽(스톡홀름), 유럽(아일랜드), 유럽(런던), 유럽(파리), 유럽(프랑크푸르트), 유럽(밀라노), 아시아 태평양(홍콩), 아시아 태평양(뭄바이), 아시아 태평양(자카르타), 아시아 태평양(도쿄), 아시아 태평양(서울), 아시아 태평양(오사카), 아시아 태평양(싱가포르), 아시아 태평양(시드니), 아프리카(케이프타운), 남아메리카(상파울루), 중동(바레인)
    2.0.20230207.0 4.14.304 2023년 2월 22일 미국 동부(버지니아 북부), 미국 동부(오하이오), 미국 서부(캘리포니아 북부), 미국 서부(오레곤), 캐나다(중부), 유럽(스톡홀름), 유럽(아일랜드), 유럽(런던), 유럽(파리), 유럽(프랑크푸르트), 유럽(밀라노), 아시아 태평양(홍콩), 아시아 태평양(뭄바이), 아시아 태평양(자카르타), 아시아 태평양(도쿄), 아시아 태평양(서울), 아시아 태평양(오사카), 아시아 태평양(싱가포르), 아시아 태평양(시드니), 아프리카(케이프타운), 남아메리카(상파울루), 중동(바레인)
    2.0.20230119.1 4.14.301 2023년 2월 3일 미국 동부(버지니아 북부), 미국 동부(오하이오), 미국 서부(캘리포니아 북부), 미국 서부(오레곤), 캐나다(중부), 유럽(스톡홀름), 유럽(아일랜드), 유럽(런던), 유럽(파리), 유럽(프랑크푸르트), 유럽(밀라노), 아시아 태평양(홍콩), 아시아 태평양(뭄바이), 아시아 태평양(자카르타), 아시아 태평양(도쿄), 아시아 태평양(서울), 아시아 태평양(오사카), 아시아 태평양(싱가포르), 아시아 태평양(시드니), 아프리카(케이프타운), 남아메리카(상파울루), 중동(바레인)
    2.0.20221210.1 4.14.301 2023년 12월 22일 미국 동부(버지니아 북부), 미국 동부(오하이오), 미국 서부(캘리포니아 북부), 미국 서부(오레곤), 캐나다(중부), 유럽(스톡홀름), 유럽(아일랜드), 유럽(런던), 유럽(파리), 유럽(프랑크푸르트), 유럽(밀라노), 아시아 태평양(홍콩), 아시아 태평양(뭄바이), 아시아 태평양(자카르타), 아시아 태평양(도쿄), 아시아 태평양(서울), 아시아 태평양(오사카), 아시아 태평양(싱가포르), 아시아 태평양(시드니), 아프리카(케이프타운), 남아메리카(상파울루), 중동(바레인)
    2.0.20221103.3 4.14.296 2022년 12월 5일 미국 동부(버지니아 북부), 미국 동부(오하이오), 미국 서부(캘리포니아 북부), 미국 서부(오레곤), 캐나다(중부), 유럽(스톡홀름), 유럽(아일랜드), 유럽(런던), 유럽(파리), 유럽(프랑크푸르트), 유럽(밀라노), 아시아 태평양(홍콩), 아시아 태평양(뭄바이), 아시아 태평양(자카르타), 아시아 태평양(도쿄), 아시아 태평양(서울), 아시아 태평양(오사카), 아시아 태평양(싱가포르), 아시아 태평양(시드니), 아프리카(케이프타운), 남아메리카(상파울루), 중동(바레인)
    2.0.20221004.0 4.14.294 2022년 11월 2일 미국 동부(버지니아 북부), 미국 동부(오하이오), 미국 서부(캘리포니아 북부), 미국 서부(오레곤), 캐나다(중부), 유럽(스톡홀름), 유럽(아일랜드), 유럽(런던), 유럽(파리), 유럽(프랑크푸르트), 유럽(밀라노), 아시아 태평양(홍콩), 아시아 태평양(뭄바이), 아시아 태평양(자카르타), 아시아 태평양(도쿄), 아시아 태평양(서울), 아시아 태평양(오사카), 아시아 태평양(싱가포르), 아시아 태평양(시드니), 아프리카(케이프타운), 남아메리카(상파울루), 중동(바레인)
    2.0.20220912.1 4.14.291 2022년 10월 7일 미국 동부(버지니아 북부), 미국 동부(오하이오), 미국 서부(캘리포니아 북부), 미국 서부(오레곤), 캐나다(중부), 유럽(스톡홀름), 유럽(아일랜드), 유럽(런던), 유럽(파리), 유럽(프랑크푸르트), 유럽(밀라노), 아시아 태평양(홍콩), 아시아 태평양(뭄바이), 아시아 태평양(자카르타), 아시아 태평양(도쿄), 아시아 태평양(서울), 아시아 태평양(오사카), 아시아 태평양(싱가포르), 아시아 태평양(시드니), 아프리카(케이프타운), 남아메리카(상파울루), 중동(바레인)
    2.0.20220805.0 4.14.287 2022년 8월 30일 us‑west‑1
    2.0.20220719.0 4.14.287 2022년 8월 10일 미국 동부(버지니아 북부), 미국 동부(오하이오), 미국 서부(캘리포니아 북부), 미국 서부(오레곤), 캐나다(중부), 유럽(스톡홀름), 유럽(아일랜드), 유럽(런던), 유럽(파리), 유럽(프랑크푸르트), 유럽(밀라노), 아시아 태평양(홍콩), 아시아 태평양(뭄바이), 아시아 태평양(자카르타), 아시아 태평양(도쿄), 아시아 태평양(서울), 아시아 태평양(오사카), 아시아 태평양(싱가포르), 아시아 태평양(시드니), 아프리카(케이프타운), 남아메리카(상파울루), 중동(바레인)
    2.0.20220426.0 4.14.281 2022년 6월 10일 미국 동부(버지니아 북부), 미국 동부(오하이오), 미국 서부(캘리포니아 북부), 미국 서부(오레곤), 캐나다(중부), 유럽(스톡홀름), 유럽(아일랜드), 유럽(런던), 유럽(파리), 유럽(프랑크푸르트), 유럽(밀라노), 아시아 태평양(홍콩), 아시아 태평양(뭄바이), 아시아 태평양(자카르타), 아시아 태평양(도쿄), 아시아 태평양(서울), 아시아 태평양(오사카), 아시아 태평양(싱가포르), 아시아 태평양(시드니), 아프리카(케이프타운), 남아메리카(상파울루), 중동(바레인)
    2.0.20220406.1 4.14.275 2022년 5월 2일 미국 동부(버지니아 북부), 미국 동부(오하이오), 미국 서부(캘리포니아 북부), 미국 서부(오레곤), 캐나다(중부), 유럽(스톡홀름), 유럽(아일랜드), 유럽(런던), 유럽(파리), 유럽(프랑크푸르트), 유럽(밀라노), 아시아 태평양(홍콩), 아시아 태평양(뭄바이), 아시아 태평양(자카르타), 아시아 태평양(도쿄), 아시아 태평양(서울), 아시아 태평양(오사카), 아시아 태평양(싱가포르), 아시아 태평양(시드니), 아프리카(케이프타운), 남아메리카(상파울루), 중동(바레인)
  • Amazon EMR 릴리스 6.6 이상에서 Log4j 1.x 및 Log4j 2.x를 사용하는 애플리케이션은 각각 Log4j 1.2.17 이상 및 Log4j 2.17.1 이상을 사용하도록 업그레이드되었으며, CVE 문제를 완화하기 위해 부트스트랩 작업을 사용할 필요가 없습니다.

  • [Managed Scaling] Spark 셔플 데이터 Managed Scaling 최적화 - Amazon EMR 버전 5.34.0 이상 및 EMR 버전 6.4.0 이상에서 Managed Scaling은 이제 Spark 셔플 데이터(Spark가 특정 작업을 수행하기 위해 파티션에 재분배하는 데이터)를 인식합니다. 셔플 작업에 대한 자세한 내용은 Spark 프로그래밍 안내서Amazon EMR 관리 안내서에서 Amazon EMR에서 EMR Managed Scaling 사용을 참조하세요.

  • Amazon EMR 5.32.0 및 6.5.0부터 Apache Spark의 동적 실행기 크기 조정이 기본적으로 활성화됩니다. 이 기능을 켜거나 끄기 위해 spark.yarn.heterogeneousExecutors.enabled 구성 파라미터를 사용할 수 있습니다.

변경 사항, 향상된 기능 및 해결된 문제
  • Amazon EMR에서는 EMR 기본 AMI 옵션을 사용하고 Apache Hadoop, Apache Spark, Apache Hive와 같은 일반적인 애플리케이션만 설치하는 클러스터에 대해 클러스터 시작 시간을 평균 최대 80초까지 줄일 수 있습니다.

알려진 문제
  • Amazon EMR 릴리스 6.5.0, 6.6.0 또는 6.7.0에서 Apache Spark 쉘을 통해 Apache Phoenix 테이블을 읽으면 Amazon EMR에서 잘못된 Hbase.compat.version을 사용하므로 NoSuchMethodError가 발생합니다. Amazon EMR 릴리스 6.8.0에서는 이 문제가 수정되었습니다.

  • Amazon EMR 버전 6.6.0, 6.7.0 및 6.8.0에서 Spark와 함께 DynamoDB 커넥터를 사용하는 경우 입력 분할이 비어 있지 않은 데이터를 참조하더라도 테이블에서 모든 읽기는 빈 결과를 반환합니다. Spark 3.2.0에서는 기본적으로 spark.hadoopRDD.ignoreEmptySplitstrue로 설정하기 때문입니다. 해결 방법으로 spark.hadoopRDD.ignoreEmptySplits를 명시적으로 false로 설정합니다. Amazon EMR 릴리스 6.9.0에서는 이 문제가 수정되었습니다.

  • Trino 장기 실행 클러스터에서 Amazon EMR 6.6.0을 사용하면 Trino jvm.config의 가비지 수집 로깅 파라미터를 통해 가비지 수집 로그에서 더 나은 인사이트를 얻을 수 있습니다. 이 변경으로 많은 가비지 수집 로그가 launcher.log(/var/log/trino/launcher.log) 파일에 추가됩니다. Amazon EMR 6.6.0에서 Trino 클러스터를 실행하는 경우 클러스터를 며칠 동안 실행한 후에 추가된 로그로 인해 노드의 디스크 공간이 부족해질 수 있습니다.

    이 문제의 해결 방법은 Amazon EMR 6.6.0에서 클러스터를 생성하거나 복제하는 동안 아래 스크립트를 부트스트랩 작업으로 실행하여 jvm.config에서 가비지 수집 로깅 파라미터를 비활성화하는 것입니다.

    #!/bin/bash set -ex PRESTO_PUPPET_DIR='/var/aws/emr/bigtop-deploy/puppet/modules/trino' sudo bash -c "sed -i '/-Xlog/d' ${PRESTO_PUPPET_DIR}/templates/jvm.config"
  • Hive 파티션 위치 형식과 함께 Spark를 사용하여 Amazon S3의 데이터를 읽고, Amazon EMR 릴리스 5.30.0~5.36.0 및 6.2.0~6.9.0에서 Spark를 실행하는 경우 클러스터가 데이터를 제대로 읽지 못하는 문제가 발생할 수 있습니다. 파티션에 다음과 같은 특성이 모두 있는 경우 이러한 상황이 발생할 수 있습니다.

    • 둘 이상의 파티션이 동일한 테이블에서 스캔됩니다.

    • 하나 이상의 파티션 디렉터리 경로가 하나 이상의 다른 파티션 디렉터리 경로의 접두사입니다. 예를 들어 s3://bucket/table/p=as3://bucket/table/p=a b의 접두사입니다.

    • 다른 파티션 디렉터리에서 접두사 뒤에 오는 첫 번째 문자의 UTF-8 값이 / 문자(U+002F)보다 작습니다. 예를 들어 s3://bucket/table/p=a b에서 a와 b 사이에 있는 공백 문자(U+0020)가 이 카테고리에 속합니다. !"#$%&‘()*+,-와 같은 14개의 비제어 문자가 있습니다. 자세한 내용은 UTF-8 인코딩 테이블 및 유니코드 문자를 참조하세요.

    이 문제를 해결하려면 spark-defaults 분류에서 spark.sql.sources.fastS3PartitionDiscovery.enabled 구성을 false로 설정합니다.

  • Amazon EMR 릴리스 5.36.0 및 6.6.0~6.9.0까지는 Log4j2 속성의 잘못된 파일 이름 패턴 구성으로 인해 SecretAgentRecordServer 서비스 구성 요소에 로그 데이터가 손실될 수 있습니다. 잘못된 구성으로 인해 구성 요소에서 하루에 하나의 로그 파일만 생성합니다. 로테이션 전략이 수행되면 예상대로 새 로그 파일을 생성하는 대신 기존 파일을 덮어씁니다. 해결 방법으로 부트스트랩 작업을 사용하여 매시간 로그 파일을 생성하고 파일 이름에 자동 증가 정수를 추가하여 교체를 처리합니다.

    Amazon EMR 6.6.0~6.9.0 릴리스의 경우 클러스터를 시작할 때 다음 부트스트랩 작업을 사용합니다.

    ‑‑bootstrap‑actions "Path=s3://emr-data-access-control-us-east-1/customer-bootstrap-actions/log-rotation-emr-6x/replace-puppet.sh,Args=[]"

    Amazon EMR 5.36.0의 경우 클러스터를 시작할 때 다음 부트스트랩 작업을 사용합니다.

    ‑‑bootstrap‑actions "Path=s3://emr-data-access-control-us-east-1/customer-bootstrap-actions/log-rotation-emr-5x/replace-puppet.sh,Args=[]"

릴리스 5.35.0

Amazon EMR 릴리스 5.35.0의 릴리스 정보입니다.

다음 릴리스 정보에는 Amazon EMR 릴리스 5.35.0에 대한 정보가 포함됩니다. 변경 사항은 5.34.0에 관련됩니다.

최초 릴리스 날짜: 2022년 3월 30일

새로운 기능
  • Log4j 1.x 및 Log4j 2.x를 사용하는 Amazon EMR 릴리스 5.35 애플리케이션은 각각 Log4j 1.2.17 이상 및 Log4j 2.17.1 이상을 사용하도록 업그레이드되었으며, 이전 릴리스의 CVE 문제를 완화하기 위해 부트스트랩 작업을 사용할 필요가 없습니다. CVE-2021-44228 완화를 위한 접근 방법 섹션을 참조하세요.

변경 사항, 향상된 기능 및 해결된 문제

Flink 변경 사항
유형 변경 설명
업그레이드
  • Flink 버전을 1.14.2로 업데이트합니다.

  • log4j를 2.17.1로 업그레이드했습니다.

Hadoop 변경 사항
유형 변경 설명
EMR 5.34.0 이후 Hadoop 오픈 소스 백포트
  • YARN-10438: ClientRMService#getContainerReport()에서 null인 containerId 처리

  • YARN-7266: 타임라인 서버 이벤트 핸들러 스레드 잠김

  • YARN-10438: RollingLevelDb 파일이 손상되거나 누락된 경우 ATS 1.5가 시작되지 않음

  • HADOOP-13500: 구성 속성 객체의 반복 동기화

  • YARN-10651: AbstractYarnScheduler.updateNodeResource()에서 CapacityScheduler가 NPE와 충돌함

  • HDFS-12221: XmlEditsVisitor에서 xerces 교체

  • HDFS-16410: OfflineEditsXmlLoader에서 안전하지 않은 Xml 구문 분석

Hadoop 변경 사항 및 수정 사항
  • KMS 및 HttpFS에서 사용되는 Tomcat이 8.5.75로 업그레이드되었습니다.

  • FileSystemOptimizedCommitterV2에서 커미터를 생성하는 동안 정의된 commitJob 출력 경로에 성공 마커가 기록되었습니다. CommitJob과 작업 수준 출력 경로가 다를 수 있으므로 매니페스트 파일에 정의된 경로를 사용하도록 경로가 수정되었습니다. Hive 작업의 경우 동적 파티션 또는 UNION ALL과 같은 작업을 수행할 때 성공 마커가 올바르게 기록됩니다.

Hive 변경 사항
유형 변경 설명
Hive는 이러한 JIRA 수정 사항을 포함하여 오픈 소스 릴리스 2.3.9로 업그레이드되었습니다.
  • HIVE-17155: HiveConf.java 내 findConfFile()의 conf 경로에 몇 가지 문제가 있음

  • HIVE-24797: Avro 스키마를 구문 분석할 때 기본값 검증 비활성화

  • HIVE-21563: registerAllFunctionsOnce를 비활성화하여 Table#getEmptyTable 성능 개선

  • HIVE-18147: java.net.BindException에서 테스트에 실패할 수 있음: 주소가 이미 사용 중임

  • HIVE-24608: Hive 2.3.x용 HMS 클라이언트에서 get_table로 다시 전환

  • HIVE-21200: 벡터화 - parquet에 대해 java.lang.UnsupportedOperationException이 발생한 날짜 열

  • HIVE-19228: commons-httpclient 3.x 사용 제거

EMR 5.34.0 이후 Hive 오픈 소스 백포트
  • HIVE-19990: 조인 조건에서 간격 리터럴을 사용하는 쿼리 실패

  • HIVE-25824: branch-2.3을 log4j 2.17.0으로 업그레이드

  • TEZ-4062: 태스크가 완료되면 추론적 시도 예약을 중단해야 함

  • TEZ-4108: 추론적 실행 레이스 조건 중에 NullPointerException 발생

  • TEZ-3918: tez.task.log.level 설정이 적용되지 않음

Hive 업그레이드 및 수정 사항
  • Log4j 버전을 2.17.1로 업그레이드

  • ORC 버전을 1.4.3으로 업그레이드

  • ShuffleScheduler의 페널티 스레드로 인한 교착 상태 수정됨

새로운 기능
  • AM 로그에 Hive 쿼리를 인쇄하는 기능이 추가되었습니다. 이 옵션은 기본적으로 비활성화되어 있습니다. 플래그/구성: tez.am.emr.print.hive.query.in.log. 상태(기본값): FALSE.

Oozie 변경 사항
유형 변경 설명
EMR 5.34.0 이후 Oozie 오픈 소스 백포트
  • OOZIE-3652: NoSuchFileException 발생 시 Oozie 시작 관리자에서 디렉터리 나열을 재시도해야 함

Pig 변경 사항
유형 변경 설명
업그레이드
  • log4j를 1.2.17로 업그레이드했습니다.

알려진 문제
  • Hive 파티션 위치 형식과 함께 Spark를 사용하여 Amazon S3의 데이터를 읽고, Amazon EMR 릴리스 5.30.0~5.36.0 및 6.2.0~6.9.0에서 Spark를 실행하는 경우 클러스터가 데이터를 제대로 읽지 못하는 문제가 발생할 수 있습니다. 파티션에 다음과 같은 특성이 모두 있는 경우 이러한 상황이 발생할 수 있습니다.

    • 둘 이상의 파티션이 동일한 테이블에서 스캔됩니다.

    • 하나 이상의 파티션 디렉터리 경로가 하나 이상의 다른 파티션 디렉터리 경로의 접두사입니다. 예를 들어 s3://bucket/table/p=as3://bucket/table/p=a b의 접두사입니다.

    • 다른 파티션 디렉터리에서 접두사 뒤에 오는 첫 번째 문자의 UTF-8 값이 / 문자(U+002F)보다 작습니다. 예를 들어 s3://bucket/table/p=a b에서 a와 b 사이에 있는 공백 문자(U+0020)가 이 카테고리에 속합니다. !"#$%&‘()*+,-와 같은 14개의 비제어 문자가 있습니다. 자세한 내용은 UTF-8 인코딩 테이블 및 유니코드 문자를 참조하세요.

    이 문제를 해결하려면 spark-defaults 분류에서 spark.sql.sources.fastS3PartitionDiscovery.enabled 구성을 false로 설정합니다.

릴리스 5.34.0

다음 릴리스 정보에는 Amazon EMR 릴리스 5.34.0에 대한 정보가 포함됩니다. 변경 사항은 5.33.1에 관련됩니다.

최초 릴리스 날짜: 2022년 1월 20일

릴리스 날짜: 2022년 3월 21일

새로운 기능
  • [Managed Scaling] Spark 셔플 데이터 Managed Scaling 최적화 - Amazon EMR 버전 5.34.0 이상 및 EMR 버전 6.4.0 이상에서 Managed Scaling은 이제 Spark 셔플 데이터(Spark가 특정 작업을 수행하기 위해 파티션에 재분배하는 데이터)를 인식합니다. 셔플 작업에 대한 자세한 내용은 Spark 프로그래밍 안내서Amazon EMR 관리 안내서에서 Amazon EMR에서 EMR Managed Scaling 사용을 참조하세요.

  • [Hudi] Hudi 구성을 단순화하기 위한 개선 사항. 기본적으로 낙관적 동시성 제어를 비활성화했습니다.

변경 사항, 향상된 기능 및 해결된 문제
  • 이 릴리스는 Amazon EMR 조정에서 클러스터를 성공적으로 스케일 업 또는 스케일 다운하지 못하거나 애플리케이션 장애가 발생한 경우 이 기능과 관련된 문제를 수정하기 위한 릴리스입니다.

  • 이전에는 다중 마스터 클러스터에서 리소스 관리자를 수동으로 다시 시작하면 Zookeeper와 같은 Amazon EMR 클러스터 내 대몬(daemon)이 Zookeeper znode 파일에서 이전에 해제되거나 손실된 노드를 모두 다시 로드했습니다. 이로 인해 특정 상황에서 기본 한도가 초과되었습니다. 이제 Amazon EMR은 Zookeeper 파일에서 1시간 넘게 경과된 해제되거나 손실된 노드 레코드를 제거하고 내부 한도를 늘렸습니다.

  • Amazon EMR 클러스터 내 대몬(daemon)이 YARN 노드 상태 및 HDFS 노드 상태 수집과 같은 상태 확인 활동을 실행할 때 활용도가 높은 대규모 클러스터에 대한 조정 요청이 실패하는 문제를 수정했습니다. 이는 클러스터 내 대몬(daemon)이 내부 Amazon EMR 구성 요소로 노드의 상태 데이터를 전달할 수 없었기 때문에 발생했습니다.

  • 조정 작업 중에 신뢰성을 개선하기 위해 IP 주소를 재사용할 때 노드 상태를 올바르게 추적하도록 EMR 클러스터 내 대몬(daemon)을 개선했습니다.

  • SPARK-29683. Spark에서는 사용 가능한 모든 노드가 거부 목록에 있다고 가정했기 때문에 클러스터 스케일 다운 중에 작업 실패가 발생하는 문제를 수정했습니다.

  • YARN-9011. 클러스터를 스케일 업하거나 스케일 다운하려고 할 때 YARN 서비스 해제의 경쟁 조건으로 인해 작업 실패가 발생하는 문제를 수정했습니다.

  • Amazon EMR 클러스터 내 대몬(daemon)과 YARN 및 HDFS 사이에서 노드 상태가 항상 일관되도록 보장함으로써 클러스터 조정 중 단계 또는 작업이 실패하는 문제를 수정했습니다.

  • Kerberos 인증으로 활성화된 Amazon EMR 클러스터에서 스케일 다운 및 단계 제출과 같은 클러스터 작업이 실패하는 문제를 수정했습니다. 이는 Amazon EMR 클러스터 내 대몬(daemon)이 프라이머리 노드에서 실행되는 HDFS 및 YARN과 안전하게 통신하는 데 필요한 Kerberos 티켓을 갱신하지 않았기 때문입니다.

  • Zeppelin이 버전 0.10.0으로 업그레이드되었습니다.

  • Livy 수정 - 0.7.1로 업그레이드됨

  • Spark 성능 개선 - EMR 5.34.0에서 특정 Spark 구성 값이 재정의되면 이기종 실행기가 비활성화됩니다.

  • WebHDFS 및 HttpFS 서버는 기본적으로 비활성화됩니다. Hadoop 구성(dfs.webhdfs.enabled)을 사용하여 WebHDFS를 다시 활성화할 수 있습니다. HttpFS 서버는 sudo systemctl start hadoop-httpfs를 사용하여 시작할 수 있습니다.

알려진 문제
  • Livy 사용자 위장과 함께 사용되는 Amazon EMR Notebooks 기능은 기본적으로 HttpFS 가 비활성화되었기 때문에 작동하지 않습니다. 이 경우 EMR 노트북은 Livy 가장 기능이 활성화된 클러스터에 연결할 수 없습니다. 해결 방법은 클러스터에 EMR 노트북을 연결하기 전에 sudo systemctl start hadoop-httpfs를 사용하여 HttpFS 서버를 시작하는 것입니다.

  • Apache Hadoop HttpFS 서버는 기본적으로 비활성화되어 있기 때문에 Amazon EMR 6.4.0에서는 Hue 쿼리가 작동하지 않습니다. Amazon EMR 6.4.0에서 Hue를 사용하려면 sudo systemctl start hadoop-httpfs를 사용하여 Amazon EMR 프라이머리 노드에서 HttpFS 서버를 수동으로 시작하거나 Amazon EMR 단계를 사용합니다.

  • Livy 사용자 위장과 함께 사용되는 Amazon EMR Notebooks 기능은 기본적으로 HttpFS 가 비활성화되었기 때문에 작동하지 않습니다. 이 경우 EMR 노트북은 Livy 가장 기능이 활성화된 클러스터에 연결할 수 없습니다. 해결 방법은 클러스터에 EMR 노트북을 연결하기 전에 sudo systemctl start hadoop-httpfs를 사용하여 HttpFS 서버를 시작하는 것입니다.

  • Hive 파티션 위치 형식과 함께 Spark를 사용하여 Amazon S3의 데이터를 읽고, Amazon EMR 릴리스 5.30.0~5.36.0 및 6.2.0~6.9.0에서 Spark를 실행하는 경우 클러스터가 데이터를 제대로 읽지 못하는 문제가 발생할 수 있습니다. 파티션에 다음과 같은 특성이 모두 있는 경우 이러한 상황이 발생할 수 있습니다.

    • 둘 이상의 파티션이 동일한 테이블에서 스캔됩니다.

    • 하나 이상의 파티션 디렉터리 경로가 하나 이상의 다른 파티션 디렉터리 경로의 접두사입니다. 예를 들어 s3://bucket/table/p=as3://bucket/table/p=a b의 접두사입니다.

    • 다른 파티션 디렉터리에서 접두사 뒤에 오는 첫 번째 문자의 UTF-8 값이 / 문자(U+002F)보다 작습니다. 예를 들어 s3://bucket/table/p=a b에서 a와 b 사이에 있는 공백 문자(U+0020)가 이 카테고리에 속합니다. !"#$%&‘()*+,-와 같은 14개의 비제어 문자가 있습니다. 자세한 내용은 UTF-8 인코딩 테이블 및 유니코드 문자를 참조하세요.

    이 문제를 해결하려면 spark-defaults 분류에서 spark.sql.sources.fastS3PartitionDiscovery.enabled 구성을 false로 설정합니다.

릴리스 6.5.0

다음 릴리스 정보에는 Amazon EMR 릴리스 6.5.0에 대한 정보가 포함됩니다. 변경 사항은 6.4.0에 관련됩니다.

최초 릴리스 날짜: 2022년 1월 20일

릴리스 날짜: 2022년 3월 21일

새로운 기능
  • [Managed Scaling] Spark 셔플 데이터 Managed Scaling 최적화 - Amazon EMR 버전 5.34.0 이상 및 EMR 버전 6.4.0 이상에서 Managed Scaling은 이제 Spark 셔플 데이터(Spark가 특정 작업을 수행하기 위해 파티션에 재분배하는 데이터)를 인식합니다. 셔플 작업에 대한 자세한 내용은 Spark 프로그래밍 안내서Amazon EMR 관리 안내서에서 Amazon EMR에서 EMR Managed Scaling 사용을 참조하세요.

  • Amazon EMR 5.32.0 및 6.5.0부터 Apache Spark의 동적 실행기 크기 조정이 기본적으로 활성화됩니다. 이 기능을 켜거나 끄기 위해 spark.yarn.heterogeneousExecutors.enabled 구성 파라미터를 사용할 수 있습니다.

  • 대규모 분석 데이터 세트를 위한 Apache Iceberg 오픈 테이블 형식에 대한 지원.

  • ranger-trino-plugin 2.0.1-amzn-1 지원

  • toree 0.5.0에 대한 지원

변경 사항, 향상된 기능 및 해결된 문제
  • Amazon EMR 6.5 릴리스 버전은 이제 Apache Iceberg 0.12.0을 지원하며, Apache Spark용 EMR 런타임, Presto용 Amazon EMR 런타임, Apache Hive용 Amazon EMR 런타임을 통해 런타임을 개선했습니다.

  • Apache Iceberg는 Amazon S3에서 대형 데이터 세트를 위한 오픈 테이블 형식이며, 대형 테이블, 원자성 커밋, 동시 쓰기, SQL 호환 테이블 진화 등에서 빠른 쿼리 성능을 제공합니다. EMR 6.5에서 Iceberg 테이블 형식으로 Apache Spark 3.1.2를 사용할 수 있습니다.

  • Apache Hudi 0.9에서는 Spark SQL DDL 및 DML 지원을 추가했습니다. 이를 통해 SQL 문만 사용하여 Hudi 테이블을 생성하고 업서트할 수 있습니다. Apache Hudi 0.9에는 쿼리 측 및 작성기 측 성능 개선도 포함되어 있습니다.

  • Apache Hive용 Amazon EMR 런타임은 준비 작업 중에 이름 바꾸기 작업을 제거하여 Amazon S3의 Apache Hive 성능을 향상시키고, 테이블 복구에 사용되는 메타스토어 검사(MSCK) 명령의 성능을 개선합니다.

알려진 문제
  • Amazon EMR 릴리스 6.5.0, 6.6.0 또는 6.7.0에서 Apache Spark 쉘을 통해 Apache Phoenix 테이블을 읽으면 Amazon EMR에서 잘못된 Hbase.compat.version을 사용하므로 NoSuchMethodError가 발생합니다. Amazon EMR 릴리스 6.8.0에서는 이 문제가 수정되었습니다.

  • 고가용성(HA)의 Hbase 번들 클러스터에서 기본 볼륨 크기 및 인스턴스 유형으로 프로비저닝하지 못합니다. 이 문제의 해결 방법은 루트 볼륨 크기를 늘리는 것입니다.

  • Apache Oozie에서 Spark 작업을 사용하려면 Oozie workflow.xml 파일에 다음 구성을 추가해야 합니다. 그렇지 않으면 Oozie가 시작하는 Spark 실행기의 클래스 경로에서 Hadoop 및 EMRFS와 같은 여러 중요한 라이브러리가 누락됩니다.

    <spark-opts>--conf spark.yarn.populateHadoopClasspath=true</spark-opts>
  • Hive 파티션 위치 형식과 함께 Spark를 사용하여 Amazon S3의 데이터를 읽고, Amazon EMR 릴리스 5.30.0~5.36.0 및 6.2.0~6.9.0에서 Spark를 실행하는 경우 클러스터가 데이터를 제대로 읽지 못하는 문제가 발생할 수 있습니다. 파티션에 다음과 같은 특성이 모두 있는 경우 이러한 상황이 발생할 수 있습니다.

    • 둘 이상의 파티션이 동일한 테이블에서 스캔됩니다.

    • 하나 이상의 파티션 디렉터리 경로가 하나 이상의 다른 파티션 디렉터리 경로의 접두사입니다. 예를 들어 s3://bucket/table/p=as3://bucket/table/p=a b의 접두사입니다.

    • 다른 파티션 디렉터리에서 접두사 뒤에 오는 첫 번째 문자의 UTF-8 값이 / 문자(U+002F)보다 작습니다. 예를 들어 s3://bucket/table/p=a b에서 a와 b 사이에 있는 공백 문자(U+0020)가 이 카테고리에 속합니다. !"#$%&‘()*+,-와 같은 14개의 비제어 문자가 있습니다. 자세한 내용은 UTF-8 인코딩 테이블 및 유니코드 문자를 참조하세요.

    이 문제를 해결하려면 spark-defaults 분류에서 spark.sql.sources.fastS3PartitionDiscovery.enabled 구성을 false로 설정합니다.

릴리스 6.4.0

다음 릴리스 정보에는 Amazon EMR 릴리스 6.4.0에 대한 정보가 포함됩니다. 변경 사항은 6.3.0에 관련됩니다.

최초 릴리스 날짜: 2021년 9월 20일

릴리스 날짜: 2022년 3월 21일

지원되는 애플리케이션
  • AWS SDK for Java 버전 1.12.31

  • CloudWatch Sink 버전 2.2.0

  • DynamoDB 커넥터 버전 4.16.0

  • EMRFS 버전 2.47.0

  • Amazon EMR Goodies 버전 3.2.0

  • Amazon EMR Kinesis 커넥터 버전 3.5.0

  • Amazon EMR Record Server 버전 2.1.0

  • Amazon EMR 스크립트 버전 2.5.0

  • Flink 버전 1.13.1

  • Ganglia 버전 3.7.2

  • AWS Glue Hive 메타스토어 클라이언트 버전 3.3.0

  • Hadoop 버전 3.2.1-amzn-4

  • HBase 버전 2.4.4-amzn-0

  • HBase-operator-tools 1.1.0

  • HCatalog 버전 3.1.2-amzn-5

  • Hive 버전 3.1.2-amzn-5

  • Hudi 버전 0.8.0-amzn-0

  • Hue 버전 4.9.0

  • Java JDK 버전 Corretto-8.302.08.1(빌드 1.8.0_302-b08)

  • JupyterHub 버전 1.4.1

  • Livy 버전 0.7.1-incubating

  • MXNet 버전 1.8.0

  • Oozie 버전 5.2.1

  • Phoenix 버전 5.1.2

  • Pig 버전 0.17.0

  • Presto 버전 0.254.1-amzn-0

  • Trino 버전 359

  • Apache Ranger KMS(멀티 마스터 투명 암호화) 버전 2.0.0

  • ranger-plugins 2.0.1-amzn-0

  • ranger-s3-plugin 1.2.0

  • SageMaker Spark SDK 버전 1.4.1

  • Scala 버전 2.12.10(OpenJDK 64비트 서버 VM, Java 1.8.0_282)

  • Spark 버전 3.1.2-amzn-0

  • spark-rapids 0.4.1

  • Sqoop 버전 1.4.7

  • TensorFlow 버전 2.4.1

  • tez 버전 0.9.2

  • Zeppelin 버전 0.9.0

  • Zookeeper 버전 3.5.7

  • 커넥터 및 드라이버: DynamoDB 커넥터 4.16.0

새로운 기능
  • [Managed Scaling] Spark 셔플 데이터 Managed Scaling 최적화 - Amazon EMR 버전 5.34.0 이상 및 EMR 버전 6.4.0 이상에서 Managed Scaling은 이제 Spark 셔플 데이터(Spark가 특정 작업을 수행하기 위해 파티션에 재분배하는 데이터)를 인식합니다. 셔플 작업에 대한 자세한 내용은 Spark 프로그래밍 안내서Amazon EMR 관리 안내서에서 Amazon EMR에서 EMR Managed Scaling 사용을 참조하세요.

  • Apache Ranger 지원 Amazon EMR 클러스터에서는 Apache Spark SQL을 사용하여 INSERT INTO, INSERT OVERWRITE, ALTER TABLE을 통해 Apache Hive 메타스토어 테이블에 데이터를 삽입하거나 업데이트할 수 있습니다. Spark SQL에서 ALTER TABLE을 사용하는 경우 파티션 위치는 테이블 위치의 하위 디렉터리여야 합니다. Amazon EMR은 현재 파티션 위치가 테이블 위치와 다른 파티션으로의 데이터 삽입을 지원하지 않습니다.

  • PrestoSQL은 Trino로 이름이 바뀌었습니다.

  • Hive: LIMIT 절에 언급된 레코드 수를 가져오는 즉시 쿼리 실행을 중지함으로써 LIMIT 절을 사용하는 간단한 SELECT 쿼리의 실행이 가속화됩니다. 간단한 SELECT 쿼리는 GROUP BY 및 ORDER BY 절이 없는 쿼리 또는 reducer 스테이지가 없는 쿼리입니다. 예: SELECT * from <TABLE> WHERE <Condition> LIMIT <Number>.

Hudi 동시성 제어
  • Hudi는 이제 낙관적 동시성 제어(OCC)를 지원합니다. 이 기능을 UPSERT 및 INSERT와 같은 쓰기 작업과 함께 활용하면 여러 작성기에서 동일한 Hudi 테이블로 변경할 수 있습니다. 이는 파일 수준 OCC이므로 변경 사항이 충돌하지 않는 한 두 커밋(또는 작성기)이 동일한 테이블에 쓸 수 있습니다. 자세한 내용은 Hudi concurrency control을 참조하세요.

  • Amazon EMR 클러스터에는 Zookeeper가 설치되어 있고, 이를 OCC의 잠금 공급자로 활용할 수 있습니다. 이 기능을 더 쉽게 사용할 수 있도록 Amazon EMR 클러스터에는 다음 속성이 미리 구성되어 있습니다.

    hoodie.write.lock.provider=org.apache.hudi.client.transaction.lock.ZookeeperBasedLockProvider hoodie.write.lock.zookeeper.url=<EMR Zookeeper URL> hoodie.write.lock.zookeeper.port=<EMR Zookeeper Port> hoodie.write.lock.zookeeper.base_path=/hudi

    OCC를 활성화하려면 Hudi 작업 옵에서 다음 속성을 구성하거나 Amazon EMR 구성 API를 사용하여 클러스터 수준에서 다음 속성을 구성해야 합니다.

    hoodie.write.concurrency.mode=optimistic_concurrency_control hoodie.cleaner.policy.failed.writes=LAZY (Performs cleaning of failed writes lazily instead of inline with every write) hoodie.write.lock.zookeeper.lock_key=<Key to uniquely identify the Hudi table> (Table Name is a good option)
Hudi 모니터링: Hudi 지표를 보고하기 위한 Amazon CloudWatch 통합
  • Amazon EMR은 Amazon CloudWatch에 Hudi 지표를 게시하는 기능을 지원합니다. 다음과 같은 필수 구성을 설정하여 이 기능을 활성화합니다.

    hoodie.metrics.on=true hoodie.metrics.reporter.type=CLOUDWATCH
  • 변경할 수 있는 선택적 Hudi 구성은 다음과 같습니다.

    설정 설명

    hoodie.metrics.cloudwatch.report.period.seconds

    Amazon CloudWatch에 지표를 보고하는 빈도(초)

    기본값은 60초이며, Amazon CloudWatch에서 제공하는 기본 1분 분해능에 적합합니다.

    hoodie.metrics.cloudwatch.metric.prefix

    각 지표 이름에 추가할 접두사

    기본값은 비어 있습니다(접두사 없음).

    hoodie.metrics.cloudwatch.namespace

    지표가 게시되는 Amazon CloudWatch 네임스페이스

    기본값은 Hudi입니다.

    hoodie.metrics.cloudwatch.maxDatumsPerRequest

    Amazon CloudWatch에 대한 1개의 요청에 포함할 수 있는 최대 데이텀 수

    기본값은 20이며, Amazon CloudWatch 기본값과 동일합니다.

Amazon EMR Hudi 구성 지원 및 개선 사항
  • 이제 고객은 EMR 구성 API 및 재구성 기능을 활용하여 클러스터 수준에서 Hudi 구성을 설정할 수 있습니다. Spark, Hive 등과 같은 다른 애플리케이션과 마찬가지로 /etc/hudi/conf/hudi-defaults.conf를 통해 새로운 파일 기반 구성 지원이 도입되었습니다. EMR은 사용자 환경을 개선하기 위해 몇 가지 기본값을 구성합니다.

    - hoodie.datasource.hive_sync.jdbcurl 은 클러스터 Hive 서버 URL로 구성되며, 더 이상 지정하지 않아도 됩니다. 이전에 Amazon EMR 마스터 IP를 지정해야 했던 Spark 클러스터 모드에서 작업을 실행할 때 특히 유용합니다.

    - HBase 특정 구성으로, Hudi에서 HBase 인덱스를 사용하는 데 유용합니다.

    - Zookeeper 잠금 제공자 특정 구성으로, 동시성 제어에서 설명한 대로, 이를 통해 낙관적 동시성 제어(OCC)를 더 쉽게 사용할 수 있습니다.

  • 통과해야 하는 구성 수를 줄이고 가능한 경우 자동으로 추론할 수 있도록 추가 변경 사항이 도입되었습니다.

    - partitionBy 키워드를 사용하여 파티션 열을 지정할 수 있습니다.

    - Hive Sync를 활성화하면 더 이상 HIVE_TABLE_OPT_KEY, HIVE_PARTITION_FIELDS_OPT_KEY, HIVE_PARTITION_EXTRACTOR_CLASS_OPT_KEY를 전달하지 않아도 됩니다. 이러한 값은 Hudi 테이블 이름 및 파티션 필드에서 추론할 수 있습니다.

    - KEYGENERATOR_CLASS_OPT_KEY는 반드시 전달하지 않아도 되며, SimpleKeyGeneratorComplexKeyGenerator의 보다 간단한 사례에서 추론할 수 있습니다.

Hudi Caveats
  • Hudi는 Merge on Read(MoR) 및 부트스트랩 테이블에 대해 Hive에서 벡터화된 실행을 지원하지 않습니다. 예를 들어 hive.vectorized.execution.enabled가 true로 설정된 경우 Hudi 실시간 테이블의 count(*)에서 오류가 발생합니다. 해결 방법으로 hive.vectorized.execution.enabledfalse로 설정하여 벡터화된 읽기를 비활성화할 수 있습니다.

  • 다중 작성기 지원은 Hudi 부트스트랩 기능과 호환되지 않습니다.

  • Flink Streamer 및 Flink SQL은 이 릴리스의 실험 기능입니다. 이러한 기능은 프로덕션 배포에 사용하지 않는 것이 좋습니다.

변경 사항, 향상된 기능 및 해결된 문제

이 릴리스는 Amazon EMR 조정에서 클러스터를 성공적으로 스케일 업 또는 스케일 다운하지 못하거나 애플리케이션 장애가 발생한 경우 이 기능과 관련된 문제를 수정하기 위한 릴리스입니다.

  • 이전에는 다중 마스터 클러스터에서 리소스 관리자를 수동으로 다시 시작하면 Zookeeper와 같은 Amazon EMR 클러스터 내 대몬(daemon)이 Zookeeper znode 파일에서 이전에 해제되거나 손실된 노드를 모두 다시 로드했습니다. 이로 인해 특정 상황에서 기본 한도가 초과되었습니다. 이제 Amazon EMR은 Zookeeper 파일에서 1시간 넘게 경과된 해제되거나 손실된 노드 레코드를 제거하고 내부 한도를 늘렸습니다.

  • Amazon EMR 클러스터 내 대몬(daemon)이 YARN 노드 상태 및 HDFS 노드 상태 수집과 같은 상태 확인 활동을 실행할 때 활용도가 높은 대규모 클러스터에 대한 조정 요청이 실패하는 문제를 수정했습니다. 이는 클러스터 내 대몬(daemon)이 내부 Amazon EMR 구성 요소로 노드의 상태 데이터를 전달할 수 없었기 때문에 발생했습니다.

  • 조정 작업 중에 신뢰성을 개선하기 위해 IP 주소를 재사용할 때 노드 상태를 올바르게 추적하도록 EMR 클러스터 내 대몬(daemon)을 개선했습니다.

  • SPARK-29683. Spark에서는 사용 가능한 모든 노드가 거부 목록에 있다고 가정했기 때문에 클러스터 스케일 다운 중에 작업 실패가 발생하는 문제를 수정했습니다.

  • YARN-9011. 클러스터를 스케일 업하거나 스케일 다운하려고 할 때 YARN 서비스 해제의 경쟁 조건으로 인해 작업 실패가 발생하는 문제를 수정했습니다.

  • Amazon EMR 클러스터 내 대몬(daemon)과 YARN 및 HDFS 사이에서 노드 상태가 항상 일관되도록 보장함으로써 클러스터 조정 중 단계 또는 작업이 실패하는 문제를 수정했습니다.

  • Kerberos 인증으로 활성화된 Amazon EMR 클러스터에서 스케일 다운 및 단계 제출과 같은 클러스터 작업이 실패하는 문제를 수정했습니다. 이는 Amazon EMR 클러스터 내 대몬(daemon)이 프라이머리 노드에서 실행되는 HDFS 및 YARN과 안전하게 통신하는 데 필요한 Kerberos 티켓을 갱신하지 않았기 때문입니다.

  • Apache YARN 타임라인 서버 버전 1 및 1.5 성능 문제를 해결하도록 클러스터 구성

    Apache YARN 타임라인 서버 버전 1 및 1.5는 매우 자주 사용되는 대규모 EMR 클러스터, 특히 Amazon EMR의 기본 설정인 yarn.resourcemanager.system-metrics-publisher.enabled=true에서 성능 문제를 일으킬 수 있습니다. 오픈 소스 YARN 타임라인 서버 v2는 YARN 타임라인 서버 확장성과 관련된 성능 문제를 해결했습니다.

    이 문제의 다른 해결 방법은 다음과 같습니다.

    • yarn-site.xml 파일에서 yarn.resourcemanager.system-metrics-publisher.enabled=false를 구성합니다.

    • 아래 설명에 따라 클러스터를 생성할 때 이 문제를 해결하는 수정 사항을 활성화합니다.

    다음 Amazon EMR 릴리스에는 이 YARN 타임라인 서버 성능 문제에 대한 수정 사항이 포함되어 있습니다.

    EMR 5.30.2, 5.31.1, 5.32.1, 5.33.1, 5.34.x, 6.0.1, 6.1.1, 6.2.1, 6.3.1, 6.4.x

    위에 지정된 Amazon EMR 릴리스에서 수정 사항을 활성화하려면 aws emr create-cluster 명령 파라미터(--configurations file://./configurations.json)를 사용하여 전달되는 구성 JSON 파일에서 이러한 속성을 true로 설정합니다. 또는 재구성 콘솔 UI를 사용하여 수정 사항을 활성화할 수도 있습니다.

    configurations.json 파일 내용 예제:

    [ { "Classification": "yarn-site", "Properties": { "yarn.resourcemanager.system-metrics-publisher.timeline-server-v1.enable-batch": "true", "yarn.resourcemanager.system-metrics-publisher.enabled": "true" }, "Configurations": [] } ]
  • WebHDFS 및 HttpFS 서버는 기본적으로 비활성화됩니다. Hadoop 구성(dfs.webhdfs.enabled)을 사용하여 WebHDFS를 다시 활성화할 수 있습니다. HttpFS 서버는 sudo systemctl start hadoop-httpfs를 사용하여 시작할 수 있습니다.

  • 이제 Amazon Linux 리포지토리에서 HTTPS가 기본적으로 활성화됩니다. Amazon S3 VPCE 정책을 사용하여 특정 버킷에 대한 액세스를 제한하는 경우 새 Amazon Linux 버킷 ARN arn:aws:s3:::amazonlinux-2-repos-$region/*을 정책에 추가해야 합니다($region을 엔드포인트가 있는 리전으로 바꿈). 자세한 내용은 AWS 토론 포럼에서 이 주제를 참조하세요. 공지 사항: 이제 Amazon Linux 2는 패키지 리포지토리에 연결하는 동안 HTTPS를 사용하는 기능을 지원합니다.

  • Hive: 마지막 작업에 HDFS의 스크래치 디렉터리를 사용할 수 있게 함으로써 쓰기 쿼리 성능이 개선되었습니다. 최종 작업의 임시 데이터는 Amazon S3 대신 HDFS에 기록되며, 데이터는 Amazon S3 디바이스 사이가 아닌 HDFS에서 최종 테이블 위치(Amazon S3)로 이동되므로 성능이 향상됩니다.

  • Hive: Glue 메타스토어 파티션 정리를 통해 쿼리 컴파일 시간이 최대 2.5배 개선되었습니다.

  • 기본적으로 내장된 UDF를 Hive에서 Hive Metastore Server로 전달하면 Glue는 제한된 표현식 연산자만 지원하므로 내장된 UDF의 하위 세트만 Glue 메타스토어로 전달됩니다. hive.glue.partition.pruning.client=true를 설정하면 모든 파티션 정리가 클라이언트 측에서 수행됩니다. hive.glue.partition.pruning.server=true를 설정하면 모든 파티션 정리가 서버 측에서 수행됩니다.

알려진 문제
  • Apache Hadoop HttpFS 서버는 기본적으로 비활성화되어 있기 때문에 Amazon EMR 6.4.0에서는 Hue 쿼리가 작동하지 않습니다. Amazon EMR 6.4.0에서 Hue를 사용하려면 sudo systemctl start hadoop-httpfs를 사용하여 Amazon EMR 프라이머리 노드에서 HttpFS 서버를 수동으로 시작하거나 Amazon EMR 단계를 사용합니다.

  • Livy 사용자 위장과 함께 사용되는 Amazon EMR Notebooks 기능은 기본적으로 HttpFS 가 비활성화되었기 때문에 작동하지 않습니다. 이 경우 EMR 노트북은 Livy 가장 기능이 활성화된 클러스터에 연결할 수 없습니다. 해결 방법은 클러스터에 EMR 노트북을 연결하기 전에 sudo systemctl start hadoop-httpfs를 사용하여 HttpFS 서버를 시작하는 것입니다.

  • Amazon EMR 버전 6.4.0에서 Phoenix는 Phoenix 커넥터 구성 요소를 지원하지 않습니다.

  • Apache Oozie에서 Spark 작업을 사용하려면 Oozie workflow.xml 파일에 다음 구성을 추가해야 합니다. 그렇지 않으면 Oozie가 시작하는 Spark 실행기의 클래스 경로에서 Hadoop 및 EMRFS와 같은 여러 중요한 라이브러리가 누락됩니다.

    <spark-opts>--conf spark.yarn.populateHadoopClasspath=true</spark-opts>
  • Hive 파티션 위치 형식과 함께 Spark를 사용하여 Amazon S3의 데이터를 읽고, Amazon EMR 릴리스 5.30.0~5.36.0 및 6.2.0~6.9.0에서 Spark를 실행하는 경우 클러스터가 데이터를 제대로 읽지 못하는 문제가 발생할 수 있습니다. 파티션에 다음과 같은 특성이 모두 있는 경우 이러한 상황이 발생할 수 있습니다.

    • 둘 이상의 파티션이 동일한 테이블에서 스캔됩니다.

    • 하나 이상의 파티션 디렉터리 경로가 하나 이상의 다른 파티션 디렉터리 경로의 접두사입니다. 예를 들어 s3://bucket/table/p=as3://bucket/table/p=a b의 접두사입니다.

    • 다른 파티션 디렉터리에서 접두사 뒤에 오는 첫 번째 문자의 UTF-8 값이 / 문자(U+002F)보다 작습니다. 예를 들어 s3://bucket/table/p=a b에서 a와 b 사이에 있는 공백 문자(U+0020)가 이 카테고리에 속합니다. !"#$%&‘()*+,-와 같은 14개의 비제어 문자가 있습니다. 자세한 내용은 UTF-8 인코딩 테이블 및 유니코드 문자를 참조하세요.

    이 문제를 해결하려면 spark-defaults 분류에서 spark.sql.sources.fastS3PartitionDiscovery.enabled 구성을 false로 설정합니다.

릴리스 5.32.0

다음 릴리스 정보에는 Amazon EMR 릴리스 5.32.0에 대한 정보가 포함됩니다. 변경 사항은 5.31.0에 관련됩니다.

최초 릴리스 날짜: 2021년 1월 8일

업그레이드
  • Amazon Glue 커넥터를 버전 1.14.0으로 업그레이드함

  • Amazon SageMaker Spark SDK를 버전 1.4.1로 업그레이드함

  • AWS SDK for Java를 버전 1.11.890으로 업그레이드함

  • EMR DynamoDB Connector 버전 4.16.0을 업그레이드함

  • EMRFS를 버전 2.45.0으로 업그레이드함

  • EMR Log Analytics Metric을 버전 1.18.0으로 업그레이드함

  • EMR MetricsAndEventsApiGateway 클라이언트를 버전 1.5.0으로 업그레이드함

  • EMR Record Server를 버전 1.8.0으로 업그레이드함

  • EMR S3 Dist CP를 버전 2.17.0으로 업그레이드함

  • EMR Secret Agent를 버전 1.7.0으로 업그레이드함

  • Flink를 버전 1.11.2로 업그레이드함

  • Hadoop을 버전 2.10.1-amzn-0으로 업그레이드함

  • Hive를 버전 2.3.7-amzn-3으로 업그레이드함

  • Hue를 버전 4.8.0으로 업그레이드함

  • Mxnet을 버전 1.7.0으로 업그레이드함

  • OpenCV를 버전 4.4.0으로 업그레이드함

  • Presto를 버전 0.240.1-amzn-0으로 업그레이드함

  • Spark를 버전 2.4.7-amzn-0으로 업그레이드함

  • TensorFlow를 버전 2.3.1로 업그레이드함

변경 사항, 향상된 기능 및 해결된 문제
  • 이 릴리스는 Amazon EMR 조정에서 클러스터를 성공적으로 스케일 업 또는 스케일 다운하지 못하거나 애플리케이션 장애가 발생한 경우 이 기능과 관련된 문제를 수정하기 위한 릴리스입니다.

  • Amazon EMR 클러스터 내 대몬(daemon)이 YARN 노드 상태 및 HDFS 노드 상태 수집과 같은 상태 확인 활동을 실행할 때 활용도가 높은 대규모 클러스터에 대한 조정 요청이 실패하는 문제를 수정했습니다. 이는 클러스터 내 대몬(daemon)이 내부 Amazon EMR 구성 요소로 노드의 상태 데이터를 전달할 수 없었기 때문에 발생했습니다.

  • 조정 작업 중에 신뢰성을 개선하기 위해 IP 주소를 재사용할 때 노드 상태를 올바르게 추적하도록 EMR 클러스터 내 대몬(daemon)을 개선했습니다.

  • SPARK-29683. Spark에서는 사용 가능한 모든 노드가 거부 목록에 있다고 가정했기 때문에 클러스터 스케일 다운 중에 작업 실패가 발생하는 문제를 수정했습니다.

  • YARN-9011. 클러스터를 스케일 업하거나 스케일 다운하려고 할 때 YARN 서비스 해제의 경쟁 조건으로 인해 작업 실패가 발생하는 문제를 수정했습니다.

  • Amazon EMR 클러스터 내 대몬(daemon)과 YARN 및 HDFS 사이에서 노드 상태가 항상 일관되도록 보장함으로써 클러스터 조정 중 단계 또는 작업이 실패하는 문제를 수정했습니다.

  • Kerberos 인증으로 활성화된 Amazon EMR 클러스터에서 스케일 다운 및 단계 제출과 같은 클러스터 작업이 실패하는 문제를 수정했습니다. 이는 Amazon EMR 클러스터 내 대몬(daemon)이 프라이머리 노드에서 실행되는 HDFS 및 YARN과 안전하게 통신하는 데 필요한 Kerberos 티켓을 갱신하지 않았기 때문입니다.

  • 최신 Amazon EMR 릴리스에서는 Amazon EMR의 이전 AL2에서 더 낮은 '최대 열린 파일' 한도와 관련된 문제가 수정되었습니다. Amazon EMR 릴리스 5.30.1, 5.30.2, 5.31.1, 5.32.1, 6.0.1, 6.1.1, 6.2.1, 5.33.0, 6.3.0 이상에는 이제 더 높은 '최대 열린 파일' 설정을 포함한 영구적 수정 사항이 포함되어 있습니다.

  • 업그레이드된 구성 요소 버전.

  • 구성 요소 버전 목록은 이 안내서에서 Amazon EMR 릴리스 정보를 참조하세요.

새로운 기능
  • Amazon EMR 5.32.0 및 6.5.0부터 Apache Spark의 동적 실행기 크기 조정이 기본적으로 활성화됩니다. 이 기능을 켜거나 끄기 위해 spark.yarn.heterogeneousExecutors.enabled 구성 파라미터를 사용할 수 있습니다.

  • 인스턴스 메타데이터 서비스(IMDS) V2 지원 상태: Amazon EMR 5.23.1, 5.27.1 및 5.32 이상의 구성 요소는 모든 IMDS 직접 호출에 IMDSv2를 사용합니다. 애플리케이션 코드에서 IMDS를 직접 호출하는 경우, IMDSv1 및 IMDSv2를 모두 사용하거나, 추가 보안을 위해 IMDSv2만 사용하도록 IMDS를 구성할 수 있습니다. 다른 5.x EMR 릴리스의 경우 ImDSv1을 비활성화하면 클러스터 시작 오류가 발생합니다.

  • Amazon EMR 5.32.0부터 Apache Ranger와 기본적으로 통합되는 클러스터를 시작할 수 있습니다. Apache Ranger는 Hadoop 플랫폼 전반에서 포괄적인 데이터 보안을 지원, 모니터링 및 관리할 수 있는 오픈 소스 프레임워크입니다. 자세한 내용은 Apache Ranger를 참조하세요. 기본 통합을 통해 자체 Apache Ranger를 이용해 Amazon EMR에서 세분화된 데이터 액세스 제어를 적용할 수 있습니다. Amazon EMR 릴리스 안내서에서 Amazon EMR과 Apache Ranger 통합을 참조하세요.

  • Amazon EMR 릴리스 5.32.0은 Amazon EMR on EKS를 지원합니다. EMR on EKS를 시작하는 방법에 대한 자세한 내용은 Amazon EMR on EKS란 무엇인가요?를 참조하세요.

  • Amazon EMR 릴리스 5.32.0은 Amazon EMR Studio(평가판)를 지원합니다. EMR Studio를 시작하는 방법에 대한 자세한 내용은 Amazon EMR Studio(평가판)을 참조하세요.

  • 범위가 지정된 관리형 정책: AWS 모범 사례에 따라 Amazon EMR은 더 이상 사용되지 않는 정책을 대체하기 위해 v2 EMR 범위의 기본 관리형 정책을 도입했습니다. Amazon EMR 관리형 정책을 참조하세요.

알려진 문제
  • Amazon EMR 6.3.0 및 6.2.0 프라이빗 서브넷 클러스터의 경우 Ganglia 웹 UI에 액세스할 수 없습니다. '액세스 거부됨(403)' 오류가 발생합니다. Spark, Hue, JupyterHub, Zeppelin, Livy, Tez와 같은 다른 웹 UI는 정상적으로 작동합니다. 퍼블릭 서브넷 클러스터에서 Ganglia 웹 UI 액세스도 정상적으로 작동합니다. 이 문제를 해결하려면 sudo systemctl restart httpd를 사용하여 프라이머리 노드에서 httpd 서비스를 다시 시작합니다. 이 문제는 Amazon EMR 6.4.0에서 수정되었습니다.

  • 이전 AL2에서 더 낮은 '최대 열린 파일' 한도[최신 릴리스에서 수정됨]. Amazon EMR 릴리스: emr-5.30.x, emr-5.31.0, emr-5.32.0, emr-6.0.0, emr-6.1.0, emr-6.2.0은 Amazon Linux 2(AL2)의 이전 버전에 기반합니다. 이전 버전에서는 Amazon EMR 클러스터가 기본 AMI에서 생성되는 경우 '최대 열린 파일'에 대한 ulimit 설정이 더 낮습니다. Amazon EMR 릴리스 5.30.1, 5.30.2, 5.31.1, 5.32.1, 6.0.1, 6.1.1, 6.2.1, 5.33.0, 6.3.0 이상에는 더 높은 '최대 열린 파일' 설정을 포함한 영구적 수정 사항이 포함되어 있습니다. 열린 파일 한도가 낮은 릴리스의 경우 Spark 작업을 제출할 때 'Too many open files' 오류가 발생합니다. 영향을 받는 릴리스에서 Amazon EMR 기본 AMI의 '최대 열린 파일'에 대한 기본 ulimit 설정은 4,096개이며, 이는 최신 Amazon Linux 2 AMI의 65,536개 파일 제한보다 낮습니다. '최대 열린 파일'에 대한 더 낮은 ulimit 설정을 사용하면 Spark 드라이버와 실행기가 4,096개가 넘는 파일을 열려고 할 때 Spark 작업이 실패합니다. 이 문제를 해결하기 위해 Amazon EMR에는 클러스터 생성 시 ulimit 설정을 조정하는 부트스트랩 작업(BA) 스크립트가 있습니다.

    이 문제에 대한 영구 수정 사항이 포함되지 않은 이전 Amazon EMR 버전을 사용하는 경우 다음 해결 방법을 통해 instance-controller ulimit를 최대 65,536개의 파일로 명시적으로 설정할 수 있습니다.

    명령줄에서 ulimit를 명시적으로 설정합니다.
    1. /etc/systemd/system/instance-controller.service를 편집하여 Service 섹션에 다음 파라미터를 추가합니다.

      LimitNOFILE=65536

      LimitNPROC=65536

    2. InstanceController 다시 시작

      $ sudo systemctl daemon-reload

      $ sudo systemctl restart instance-controller

    부트스트랩 작업(BA)을 사용하여 ulimit 설정

    클러스터 생성 시 부트스트랩 작업(BA) 스크립트를 사용하여 instance-controller ulimit를 65,536개 파일로 구성할 수도 있습니다.

    #!/bin/bash for user in hadoop spark hive; do sudo tee /etc/security/limits.d/$user.conf << EOF $user - nofile 65536 $user - nproc 65536 EOF done for proc in instancecontroller logpusher; do sudo mkdir -p /etc/systemd/system/$proc.service.d/ sudo tee /etc/systemd/system/$proc.service.d/override.conf << EOF [Service] LimitNOFILE=65536 LimitNPROC=65536 EOF pid=$(pgrep -f aws157.$proc.Main) sudo prlimit --pid $pid --nofile=65535:65535 --nproc=65535:65535 done sudo systemctl daemon-reload
  • 중요

    Amazon Linux 또는 Amazon Linux 2 AMI(Amazon Linux Machine Image)를 실행하는 Amazon EMR 클러스터는 기본 Amazon Linux 동작을 사용하며, 재부팅이 필요한 중요한 핵심 커널 업데이트를 자동으로 다운로드하여 설치하지는 않습니다. 이는 기본 Amazon Linux AMI를 실행하는 다른 Amazon EC2 인스턴스와 동일한 동작입니다. Amazon EMR 버전이 출시된 후 재부팅이 필요한 새 Amazon Linux 소프트웨어 업데이트(예: 커널, NVIDIA, CUDA 업데이트)가 제공되는 경우 기본 AMI를 실행하는 Amazon EMR 클러스터 인스턴스는 해당 업데이트를 자동으로 다운로드하고 설치하지 않습니다. 커널 업데이트를 받으려면 최신 Amazon Linux AMI를 사용하도록 Amazon EMR AMI를 사용자 지정할 수 있습니다.

  • AWS Ranger 통합 옵션을 지정하는 보안 구성을 생성하기 위한 콘솔 지원은 현재 GovCloud 리전에서 지원되지 않습니다. 보안 구성은 CLI를 사용하여 수행할 수 있습니다. Amazon EMR 관리 안내서에서 EMR 보안 구성 생성을 참조하세요.

  • Amazon EMR 5.31.0 또는 5.32.0을 사용하는 클러스터에서 AtRestEncryption 또는 HDFS 암호화를 활성화하면 Hive 쿼리에서 다음과 같은 런타임 예외가 발생합니다.

    TaskAttempt 3 failed, info=[Error: Error while running task ( failure ) : attempt_1604112648850_0001_1_01_000000_3:java.lang.RuntimeException: java.lang.RuntimeException: Hive Runtime Error while closing operators: java.io.IOException: java.util.ServiceConfigurationError: org.apache.hadoop.security.token.TokenIdentifier: Provider org.apache.hadoop.hbase.security.token.AuthenticationTokenIdentifier not found
  • Hive 파티션 위치 형식과 함께 Spark를 사용하여 Amazon S3의 데이터를 읽고, Amazon EMR 릴리스 5.30.0~5.36.0 및 6.2.0~6.9.0에서 Spark를 실행하는 경우 클러스터가 데이터를 제대로 읽지 못하는 문제가 발생할 수 있습니다. 파티션에 다음과 같은 특성이 모두 있는 경우 이러한 상황이 발생할 수 있습니다.

    • 둘 이상의 파티션이 동일한 테이블에서 스캔됩니다.

    • 하나 이상의 파티션 디렉터리 경로가 하나 이상의 다른 파티션 디렉터리 경로의 접두사입니다. 예를 들어 s3://bucket/table/p=as3://bucket/table/p=a b의 접두사입니다.

    • 다른 파티션 디렉터리에서 접두사 뒤에 오는 첫 번째 문자의 UTF-8 값이 / 문자(U+002F)보다 작습니다. 예를 들어 s3://bucket/table/p=a b에서 a와 b 사이에 있는 공백 문자(U+0020)가 이 카테고리에 속합니다. !"#$%&‘()*+,-와 같은 14개의 비제어 문자가 있습니다. 자세한 내용은 UTF-8 인코딩 테이블 및 유니코드 문자를 참조하세요.

    이 문제를 해결하려면 spark-defaults 분류에서 spark.sql.sources.fastS3PartitionDiscovery.enabled 구성을 false로 설정합니다.

릴리스 6.2.0

다음 릴리스 정보에는 Amazon EMR 릴리스 6.2.0에 대한 정보가 포함됩니다. 변경 사항은 6.1.0에 관련됩니다.

최초 릴리스 날짜: 2020년 12월 9일

최종 업데이트 날짜: 2021년 10월 4일

지원되는 애플리케이션
  • AWS SDK for Java 버전 1.11.828

  • emr-record-server 버전 1.7.0

  • Flink 버전 1.11.2

  • Ganglia 버전 3.7.2

  • Hadoop 버전 3.2.1-amzn-1

  • HBase 버전 2.2.6-amzn-0

  • HBase-operator-tools 1.0.0

  • HCatalog 버전 3.1.2-amzn-0

  • Hive 버전 3.1.2-amzn-3

  • Hudi 버전 0.6.0-amzn-1

  • Hue 버전 4.8.0

  • JupyterHub 버전 1.1.0

  • Livy 버전 0.7.0

  • MXNet 버전 1.7.0

  • Oozie 버전 5.2.0

  • Phoenix 버전 5.0.0

  • Pig 버전 0.17.0

  • Presto 버전 0.238.3-amzn-1

  • PrestoSQL 버전 343

  • Spark 버전 3.0.1-amzn-0

  • spark-rapids 0.2.0

  • TensorFlow 버전 2.3.1

  • Zeppelin 버전 0.9.0-preview1

  • Zookeeper 버전 3.4.14

  • 커넥터 및 드라이버: DynamoDB 커넥터 4.16.0

새로운 기능
  • HBase: 커밋 단계에서 이름 바꾸기를 제거하고 지속적 HFile 추적을 추가했습니다. Amazon EMR 릴리스 안내서에서 지속적 HFile 추적을 참조하세요.

  • HBase: Create a config that forces to cache blocks on compaction을 백포트했습니다.

  • PrestoDB: 동적 파티션 정리 기능이 개선되었습니다. 규칙 기반 조인 재정렬은 파티셔닝되지 않은 데이터에서 작동합니다.

  • 범위가 지정된 관리형 정책: AWS 모범 사례에 따라 Amazon EMR은 더 이상 사용되지 않는 정책을 대체하기 위해 v2 EMR 범위의 기본 관리형 정책을 도입했습니다. Amazon EMR 관리형 정책을 참조하세요.

  • 인스턴스 메타데이터 서비스(IMDS) V2 지원 상태: Amazon EMR 6.2 이상의 Amazon EMR 구성 요소는 모든 IMDS 직접 호출에 IMDSv2를 사용합니다. 애플리케이션 코드에서 IMDS를 직접 호출하는 경우, IMDSv1 및 IMDSv2를 모두 사용하거나, 추가 보안을 위해 IMDSv2만 사용하도록 IMDS를 구성할 수 있습니다. 이전 Amazon EMR 6.x 릴리스에서 IMDSv1을 비활성화하면 클러스터를 시작하지 못합니다.

변경 사항, 향상된 기능 및 해결된 문제
  • 이 릴리스는 Amazon EMR 조정에서 클러스터를 성공적으로 스케일 업 또는 스케일 다운하지 못하거나 애플리케이션 장애가 발생한 경우 이 기능과 관련된 문제를 수정하기 위한 릴리스입니다.

  • Amazon EMR 클러스터 내 대몬(daemon)이 YARN 노드 상태 및 HDFS 노드 상태 수집과 같은 상태 확인 활동을 실행할 때 활용도가 높은 대규모 클러스터에 대한 조정 요청이 실패하는 문제를 수정했습니다. 이는 클러스터 내 대몬(daemon)이 내부 Amazon EMR 구성 요소로 노드의 상태 데이터를 전달할 수 없었기 때문에 발생했습니다.

  • 조정 작업 중에 신뢰성을 개선하기 위해 IP 주소를 재사용할 때 노드 상태를 올바르게 추적하도록 EMR 클러스터 내 대몬(daemon)을 개선했습니다.

  • SPARK-29683. Spark에서는 사용 가능한 모든 노드가 거부 목록에 있다고 가정했기 때문에 클러스터 스케일 다운 중에 작업 실패가 발생하는 문제를 수정했습니다.

  • YARN-9011. 클러스터를 스케일 업하거나 스케일 다운하려고 할 때 YARN 서비스 해제의 경쟁 조건으로 인해 작업 실패가 발생하는 문제를 수정했습니다.

  • Amazon EMR 클러스터 내 대몬(daemon)과 YARN 및 HDFS 사이에서 노드 상태가 항상 일관되도록 보장함으로써 클러스터 조정 중 단계 또는 작업이 실패하는 문제를 수정했습니다.

  • Kerberos 인증으로 활성화된 Amazon EMR 클러스터에서 스케일 다운 및 단계 제출과 같은 클러스터 작업이 실패하는 문제를 수정했습니다. 이는 Amazon EMR 클러스터 내 대몬(daemon)이 프라이머리 노드에서 실행되는 HDFS 및 YARN과 안전하게 통신하는 데 필요한 Kerberos 티켓을 갱신하지 않았기 때문입니다.

  • 최신 Amazon EMR 릴리스에서는 Amazon EMR의 이전 AL2에서 더 낮은 '최대 열린 파일' 한도와 관련된 문제가 수정되었습니다. Amazon EMR 릴리스 5.30.1, 5.30.2, 5.31.1, 5.32.1, 6.0.1, 6.1.1, 6.2.1, 5.33.0, 6.3.0 이상에는 이제 더 높은 '최대 열린 파일' 설정을 포함한 영구적 수정 사항이 포함되어 있습니다.

  • Spark: Spark 런타임의 성능이 개선되었습니다.

알려진 문제
  • Amazon EMR 6.2에서는 EMR 6.2.0의 /etc/cron.d/libinstance-controller-java 파일에 잘못된 권한이 설정되어 있습니다. 파일의 권한이 644(-rw-r--r--)여야 하는 경우 645(-rw-r--r-x)입니다. 따라서 Amazon EMR 버전 6.2는 인스턴스 상태 로그를 로깅하지 않으며 /emr/instance-logs 디렉터리는 비어 있습니다. 이 문제는 Amazon EMR 6.3.0 이상에서 수정되었습니다.

    이 문제를 해결하려면 클러스터 시작 시 다음 스크립트를 부트스트랩 작업으로 실행합니다.

    #!/bin/bash sudo chmod 644 /etc/cron.d/libinstance-controller-java
  • Amazon EMR 6.2.0 및 6.3.0 프라이빗 서브넷 클러스터의 경우 Ganglia 웹 UI에 액세스할 수 없습니다. '액세스 거부됨(403)' 오류가 발생합니다. Spark, Hue, JupyterHub, Zeppelin, Livy, Tez와 같은 다른 웹 UI는 정상적으로 작동합니다. 퍼블릭 서브넷 클러스터에서 Ganglia 웹 UI 액세스도 정상적으로 작동합니다. 이 문제를 해결하려면 sudo systemctl restart httpd를 사용하여 프라이머리 노드에서 httpd 서비스를 다시 시작합니다. 이 문제는 Amazon EMR 6.4.0에서 수정되었습니다.

  • Amazon EMR 6.2.0에는 httpd에서 계속 실패하여 Ganglia를 사용할 수 없게 되는 문제가 있습니다. 'cannot connect to the server' 오류가 발생합니다. 이 문제를 포함하는 이미 실행 중인 클러스터를 수정하려면 클러스터 프라이머리 노드에 SSH로 연결하고 /etc/httpd/conf/httpd.conf에 있는 httpd.conf 파일에 Listen 80 줄을 추가합니다. 이 문제는 Amazon EMR 6.3.0에서 수정되었습니다.

  • 보안 구성을 사용하는 경우 EMR 6.2.0 클러스터에서 HTTPD에 오류가 발생합니다. 이로 인해 Ganglia 웹 애플리케이션 사용자 인터페이스를 사용할 수 없습니다. Ganglia 웹 애플리케이션 사용자 인터페이스에 액세스하려면 클러스터의 프라이머리 노드에 있는 /etc/httpd/conf/httpd.conf 파일에 Listen 80을 추가합니다. 클러스터 연결에 대한 자세한 내용은 SSH를 사용하여 프라이머리 노드에 연결을 참조하세요.

    또한 보안 구성을 사용할 때 EMR Notebooks는 EMR 6.2.0 클러스터와의 연결을 설정하지 못합니다. 노트북은 커널을 나열하지 못하고 Spark 작업을 제출하지 못합니다. 대신 다른 Amazon EMR 버전에서 EMR Notebooks를 사용하는 것이 좋습니다.

  • 이전 AL2에서 더 낮은 '최대 열린 파일' 한도[최신 릴리스에서 수정됨]. Amazon EMR 릴리스: emr-5.30.x, emr-5.31.0, emr-5.32.0, emr-6.0.0, emr-6.1.0, emr-6.2.0은 Amazon Linux 2(AL2)의 이전 버전에 기반합니다. 이전 버전에서는 Amazon EMR 클러스터가 기본 AMI에서 생성되는 경우 '최대 열린 파일'에 대한 ulimit 설정이 더 낮습니다. Amazon EMR 릴리스 5.30.1, 5.30.2, 5.31.1, 5.32.1, 6.0.1, 6.1.1, 6.2.1, 5.33.0, 6.3.0 이상에는 더 높은 '최대 열린 파일' 설정을 포함한 영구적 수정 사항이 포함되어 있습니다. 열린 파일 한도가 낮은 릴리스의 경우 Spark 작업을 제출할 때 'Too many open files' 오류가 발생합니다. 영향을 받는 릴리스에서 Amazon EMR 기본 AMI의 '최대 열린 파일'에 대한 기본 ulimit 설정은 4,096개이며, 이는 최신 Amazon Linux 2 AMI의 65,536개 파일 제한보다 낮습니다. '최대 열린 파일'에 대한 더 낮은 ulimit 설정을 사용하면 Spark 드라이버와 실행기가 4,096개가 넘는 파일을 열려고 할 때 Spark 작업이 실패합니다. 이 문제를 해결하기 위해 Amazon EMR에는 클러스터 생성 시 ulimit 설정을 조정하는 부트스트랩 작업(BA) 스크립트가 있습니다.

    이 문제에 대한 영구 수정 사항이 포함되지 않은 이전 Amazon EMR 버전을 사용하는 경우 다음 해결 방법을 통해 instance-controller ulimit를 최대 65,536개의 파일로 명시적으로 설정할 수 있습니다.

    명령줄에서 ulimit를 명시적으로 설정합니다.
    1. /etc/systemd/system/instance-controller.service를 편집하여 Service 섹션에 다음 파라미터를 추가합니다.

      LimitNOFILE=65536

      LimitNPROC=65536

    2. InstanceController 다시 시작

      $ sudo systemctl daemon-reload

      $ sudo systemctl restart instance-controller

    부트스트랩 작업(BA)을 사용하여 ulimit 설정

    클러스터 생성 시 부트스트랩 작업(BA) 스크립트를 사용하여 instance-controller ulimit를 65,536개 파일로 구성할 수도 있습니다.

    #!/bin/bash for user in hadoop spark hive; do sudo tee /etc/security/limits.d/$user.conf << EOF $user - nofile 65536 $user - nproc 65536 EOF done for proc in instancecontroller logpusher; do sudo mkdir -p /etc/systemd/system/$proc.service.d/ sudo tee /etc/systemd/system/$proc.service.d/override.conf << EOF [Service] LimitNOFILE=65536 LimitNPROC=65536 EOF pid=$(pgrep -f aws157.$proc.Main) sudo prlimit --pid $pid --nofile=65535:65535 --nproc=65535:65535 done sudo systemctl daemon-reload
  • 중요

    Amazon EMR 6.1.0 및 6.2.0에는 모든 Hudi 삽입, 업서트 및 삭제 작업에 큰 영향을 미칠 수 있는 성능 문제가 포함되어 있습니다. Amazon EMR 6.1.0 또는 6.2.0과 함께 Hudi를 사용하려는 경우 AWS 지원에 문의하여 패치가 적용된 Hudi RPM을 확보해야 합니다.

  • 중요

    Amazon Linux 또는 Amazon Linux 2 AMI(Amazon Linux Machine Image)를 실행하는 Amazon EMR 클러스터는 기본 Amazon Linux 동작을 사용하며, 재부팅이 필요한 중요한 핵심 커널 업데이트를 자동으로 다운로드하여 설치하지는 않습니다. 이는 기본 Amazon Linux AMI를 실행하는 다른 Amazon EC2 인스턴스와 동일한 동작입니다. Amazon EMR 버전이 출시된 후 재부팅이 필요한 새 Amazon Linux 소프트웨어 업데이트(예: 커널, NVIDIA, CUDA 업데이트)가 제공되는 경우 기본 AMI를 실행하는 Amazon EMR 클러스터 인스턴스는 해당 업데이트를 자동으로 다운로드하고 설치하지 않습니다. 커널 업데이트를 받으려면 최신 Amazon Linux AMI를 사용하도록 Amazon EMR AMI를 사용자 지정할 수 있습니다.

  • Amazon EMR 6.2.0 Maven 아티팩트는 게시되지 않습니다. 향후 Amazon EMR 릴리스와 함께 게시됩니다.

  • HBase 스토어파일 시스템 테이블을 사용한 지속적 HFile 추적은 HBase 리전 복제 기능을 지원하지 않습니다. HBase 리전 복제에 대한 자세한 내용은 타임라인이 일치하는 고가용성 읽기를 참조하세요.

  • Amazon EMR 6.x 및 EMR 5.x Hive 버킷팅 버전 차이

    EMR 5.x는 OOS Apache Hive 2를 사용하지만, EMR 6.x는 OOS Apache Hive 3을 사용합니다. 오픈 소스 Hive2는 버킷팅 버전 1을 사용하는 반면, 오픈 소스 Hive3은 버킷팅 버전 2를 사용합니다. Hive 2(EMR 5.x) 및 Hive 3(EMR 6.x)의 버킷팅 버전 차이는 Hive 버킷팅 해싱 기능이 다르다는 것을 의미합니다. 아래 예제를 참조하십시오.

    다음 표는 각각 EMR 6.x 및 EMR 5.x에서 생성된 예제입니다.

    -- Using following LOCATION in EMR 6.x CREATE TABLE test_bucketing (id INT, desc STRING) PARTITIONED BY (day STRING) CLUSTERED BY(id) INTO 128 BUCKETS LOCATION 's3://your-own-s3-bucket/emr-6-bucketing/'; -- Using following LOCATION in EMR 5.x LOCATION 's3://your-own-s3-bucket/emr-5-bucketing/';

    EMR 6.x 및 EMR 5.x 모두에 동일한 데이터를 삽입합니다.

    INSERT INTO test_bucketing PARTITION (day='01') VALUES(66, 'some_data'); INSERT INTO test_bucketing PARTITION (day='01') VALUES(200, 'some_data');

    S3 위치를 확인하는 경우 EMR 6.x(Hive 3) 및 EMR 5.x(Hive 2) 간에 해싱 함수가 다르기 때문에 버킷팅 파일 이름이 다르게 표시됩니다.

    [hadoop@ip-10-0-0-122 ~]$ aws s3 ls s3://your-own-s3-bucket/emr-6-bucketing/day=01/ 2020-10-21 20:35:16 13 000025_0 2020-10-21 20:35:22 14 000121_0 [hadoop@ip-10-0-0-122 ~]$ aws s3 ls s3://your-own-s3-bucket/emr-5-bucketing/day=01/ 2020-10-21 20:32:07 13 000066_0 2020-10-21 20:32:51 14 000072_0

    또한 EMR 6.x에서 Hive CLI를 통해 다음 명령을 실행하여 버전 차이를 확인할 수도 있습니다. 이 경우 버킷팅 버전 2가 반환됩니다.

    hive> DESCRIBE FORMATTED test_bucketing; ... Table Parameters: bucketing_version 2 ...
  • 여러 프라이머리 노드와 Kerberos 인증을 사용하는 클러스터에서 알려진 문제

    Amazon EMR 릴리스 5.20.0 이상에서 여러 프라이머리 노드와 Kerberos 인증을 사용하여 클러스터를 실행하는 경우, 클러스터를 일정 시간 실행한 후 스케일 다운 또는 단계 제출과 같은 클러스터 작업에 문제가 발생할 수 있습니다. 기간은 정의한 Kerberos 티켓 유효 기간에 따라 다릅니다. 스케일 다운 문제는 제출한 자동 스케일 다운 및 명시적 스케일 다운 요청 모두에 영향을 미칩니다. 이외의 다른 클러스터 작업도 영향을 받을 수 있습니다.

    해결 방법:

    • 여러 프라이머리 노드가 있는 EMR 클러스터의 리드 프라이머리 노드에 대한 hadoop 사용자로 SSH 연결합니다.

    • 다음 명령을 실행하여 hadoop 사용자의 Kerberos 티켓을 갱신합니다.

      kinit -kt <keytab_file> <principal>

      일반적으로 keytab 파일은 /etc/hadoop.keytab에 있으며, 보안 주체는 hadoop/<hostname>@<REALM> 양식입니다.

    참고

    이 해결 방법은 Kerberos 티켓이 유효한 기간에 작동합니다. 이 기간은 기본적으로 10시간이지만 Kerberos 설정으로 구성할 수 있습니다. Kerberos 티켓이 만료되면 위 명령을 다시 실행해야 합니다.

  • Hive 파티션 위치 형식과 함께 Spark를 사용하여 Amazon S3의 데이터를 읽고, Amazon EMR 릴리스 5.30.0~5.36.0 및 6.2.0~6.9.0에서 Spark를 실행하는 경우 클러스터가 데이터를 제대로 읽지 못하는 문제가 발생할 수 있습니다. 파티션에 다음과 같은 특성이 모두 있는 경우 이러한 상황이 발생할 수 있습니다.

    • 둘 이상의 파티션이 동일한 테이블에서 스캔됩니다.

    • 하나 이상의 파티션 디렉터리 경로가 하나 이상의 다른 파티션 디렉터리 경로의 접두사입니다. 예를 들어 s3://bucket/table/p=as3://bucket/table/p=a b의 접두사입니다.

    • 다른 파티션 디렉터리에서 접두사 뒤에 오는 첫 번째 문자의 UTF-8 값이 / 문자(U+002F)보다 작습니다. 예를 들어 s3://bucket/table/p=a b에서 a와 b 사이에 있는 공백 문자(U+0020)가 이 카테고리에 속합니다. !"#$%&‘()*+,-와 같은 14개의 비제어 문자가 있습니다. 자세한 내용은 UTF-8 인코딩 테이블 및 유니코드 문자를 참조하세요.

    이 문제를 해결하려면 spark-defaults 분류에서 spark.sql.sources.fastS3PartitionDiscovery.enabled 구성을 false로 설정합니다.

릴리스 5.31.0

다음 릴리스 정보에는 Amazon EMR 릴리스 5.31.0에 대한 정보가 포함됩니다. 변경 사항은 5.30.1에 관련됩니다.

최초 릴리스 날짜: 2020년 10월 9일

최종 업데이트 날짜: 2020년 10월 15일

업그레이드
  • Amazon Glue 커넥터를 버전 1.13.0으로 업그레이드함

  • Amazon SageMaker Spark SDK를 버전 1.4.0으로 업그레이드함

  • Amazon Kinesis 커넥터를 버전 3.5.9로 업그레이드함

  • AWS SDK for Java를 버전 1.11.852로 업그레이드함

  • Bigtop-tomcat을 버전 8.5.56으로 업그레이드함

  • EMR FS를 버전 2.43.0으로 업그레이드함

  • EMR MetricsAndEventsApiGateway 클라이언트를 버전 1.4.0으로 업그레이드함

  • EMR S3 Dist CP를 버전 2.15.0으로 업그레이드함

  • EMR S3 Select를 버전 1.6.0으로 업그레이드함

  • Flink를 버전 1.11.0으로 업그레이드함

  • Hadoop을 버전 2.10.0으로 업그레이드함

  • Hive를 버전 2.3.7로 업그레이드함

  • Hudi를 버전 0.6.0으로 업그레이드함

  • Hue를 버전 4.7.1로 업그레이드함

  • JupyterHub가 버전 1.1.0으로 업그레이드됨

  • Mxnet을 버전 1.6.0으로 업그레이드함

  • OpenCV를 버전 4.3.0으로 업그레이드함

  • Presto를 버전 0.238.3으로 업그레이드함

  • TensorFlow를 버전 2.1.0으로 업그레이드함

변경 사항, 향상된 기능 및 해결된 문제
  • 이 릴리스는 Amazon EMR 조정에서 클러스터를 성공적으로 스케일 업 또는 스케일 다운하지 못하거나 애플리케이션 장애가 발생한 경우 이 기능과 관련된 문제를 수정하기 위한 릴리스입니다.

  • Amazon EMR 클러스터 내 대몬(daemon)이 YARN 노드 상태 및 HDFS 노드 상태 수집과 같은 상태 확인 활동을 실행할 때 활용도가 높은 대규모 클러스터에 대한 조정 요청이 실패하는 문제를 수정했습니다. 이는 클러스터 내 대몬(daemon)이 내부 Amazon EMR 구성 요소로 노드의 상태 데이터를 전달할 수 없었기 때문에 발생했습니다.

  • 조정 작업 중에 신뢰성을 개선하기 위해 IP 주소를 재사용할 때 노드 상태를 올바르게 추적하도록 EMR 클러스터 내 대몬(daemon)을 개선했습니다.

  • SPARK-29683. Spark에서는 사용 가능한 모든 노드가 거부 목록에 있다고 가정했기 때문에 클러스터 스케일 다운 중에 작업 실패가 발생하는 문제를 수정했습니다.

  • YARN-9011. 클러스터를 스케일 업하거나 스케일 다운하려고 할 때 YARN 서비스 해제의 경쟁 조건으로 인해 작업 실패가 발생하는 문제를 수정했습니다.

  • Amazon EMR 클러스터 내 대몬(daemon)과 YARN 및 HDFS 사이에서 노드 상태가 항상 일관되도록 보장함으로써 클러스터 조정 중 단계 또는 작업이 실패하는 문제를 수정했습니다.

  • Kerberos 인증으로 활성화된 Amazon EMR 클러스터에서 스케일 다운 및 단계 제출과 같은 클러스터 작업이 실패하는 문제를 수정했습니다. 이는 Amazon EMR 클러스터 내 대몬(daemon)이 프라이머리 노드에서 실행되는 HDFS 및 YARN과 안전하게 통신하는 데 필요한 Kerberos 티켓을 갱신하지 않았기 때문입니다.

  • 최신 Amazon EMR 릴리스에서는 Amazon EMR의 이전 AL2에서 더 낮은 '최대 열린 파일' 한도와 관련된 문제가 수정되었습니다. Amazon EMR 릴리스 5.30.1, 5.30.2, 5.31.1, 5.32.1, 6.0.1, 6.1.1, 6.2.1, 5.33.0, 6.3.0 이상에는 이제 더 높은 '최대 열린 파일' 설정을 포함한 영구적 수정 사항이 포함되어 있습니다.

  • Hive 열 통계는 Amazon EMR 버전 5.31.0 이상에서 지원됩니다.

  • 업그레이드된 구성 요소 버전.

  • Amazon EMR 5.31.0에서 EMRFS S3EC V2 지원. S3 Java SDK 릴리스 1.11.837 이상에서 암호화 클라이언트 버전 2(S3EC V2)가 다양한 보안 개선 사항과 함께 도입되었습니다. 자세한 내용은 다음을 참조하세요.

    암호화 클라이언트 V1은 이전 버전과의 호환성을 위해 SDK에서 계속 사용할 수 있습니다.

새로운 기능
  • 이전 AL2에서 더 낮은 '최대 열린 파일' 한도[최신 릴리스에서 수정됨]. Amazon EMR 릴리스: emr-5.30.x, emr-5.31.0, emr-5.32.0, emr-6.0.0, emr-6.1.0, emr-6.2.0은 Amazon Linux 2(AL2)의 이전 버전에 기반합니다. 이전 버전에서는 Amazon EMR 클러스터가 기본 AMI에서 생성되는 경우 '최대 열린 파일'에 대한 ulimit 설정이 더 낮습니다. Amazon EMR 릴리스 5.30.1, 5.30.2, 5.31.1, 5.32.1, 6.0.1, 6.1.1, 6.2.1, 5.33.0, 6.3.0 이상에는 더 높은 '최대 열린 파일' 설정을 포함한 영구적 수정 사항이 포함되어 있습니다. 열린 파일 한도가 낮은 릴리스의 경우 Spark 작업을 제출할 때 'Too many open files' 오류가 발생합니다. 영향을 받는 릴리스에서 Amazon EMR 기본 AMI의 '최대 열린 파일'에 대한 기본 ulimit 설정은 4,096개이며, 이는 최신 Amazon Linux 2 AMI의 65,536개 파일 제한보다 낮습니다. '최대 열린 파일'에 대한 더 낮은 ulimit 설정을 사용하면 Spark 드라이버와 실행기가 4,096개가 넘는 파일을 열려고 할 때 Spark 작업이 실패합니다. 이 문제를 해결하기 위해 Amazon EMR에는 클러스터 생성 시 ulimit 설정을 조정하는 부트스트랩 작업(BA) 스크립트가 있습니다.

    이 문제에 대한 영구 수정 사항이 포함되지 않은 이전 Amazon EMR 버전을 사용하는 경우 다음 해결 방법을 통해 instance-controller ulimit를 최대 65,536개의 파일로 명시적으로 설정할 수 있습니다.

    명령줄에서 ulimit를 명시적으로 설정합니다.
    1. /etc/systemd/system/instance-controller.service를 편집하여 Service 섹션에 다음 파라미터를 추가합니다.

      LimitNOFILE=65536

      LimitNPROC=65536

    2. InstanceController 다시 시작

      $ sudo systemctl daemon-reload

      $ sudo systemctl restart instance-controller

    부트스트랩 작업(BA)을 사용하여 ulimit 설정

    클러스터 생성 시 부트스트랩 작업(BA) 스크립트를 사용하여 instance-controller ulimit를 65,536개 파일로 구성할 수도 있습니다.

    #!/bin/bash for user in hadoop spark hive; do sudo tee /etc/security/limits.d/$user.conf << EOF $user - nofile 65536 $user - nproc 65536 EOF done for proc in instancecontroller logpusher; do sudo mkdir -p /etc/systemd/system/$proc.service.d/ sudo tee /etc/systemd/system/$proc.service.d/override.conf << EOF [Service] LimitNOFILE=65536 LimitNPROC=65536 EOF pid=$(pgrep -f aws157.$proc.Main) sudo prlimit --pid $pid --nofile=65535:65535 --nproc=65535:65535 done sudo systemctl daemon-reload
  • Amazon EMR 5.31.0에서는 Lake Formation과 통합되는 클러스터를 시작할 수 있습니다. 이 통합은 AWS Glue 데이터 카탈로그의 데이터베이스 및 테이블에 대한 세분화된 열 수준 액세스를 제공합니다. 또한 엔터프라이즈 자격 증명 시스템에서 EMR 노트북 또는 Apache Zeppelin에 연동된 Single Sign-On을 사용할 수도 있습니다. 자세한 내용은 Amazon EMR 관리 안내서에서 Amazon EMR과 AWS Lake Formation 통합을 참조하세요.

    Lake Formation을 사용하는 Amazon EMR은 현재 미국 동부(오하이오 및 버지니아 북부), 미국 서부(캘리포니아 북부 및 오레곤), 아시아 태평양(뭄바이, 서울, 싱가포르, 시드니, 도쿄), 캐나다(중부), 유럽(프랑크푸르트, 아일랜드, 런던, 파리, 스톡홀름) 남아메리카(상파울루)와 같은 16개 AWS 리전에서 사용할 수 있습니다.

알려진 문제
  • 여러 프라이머리 노드와 Kerberos 인증을 사용하는 클러스터에서 알려진 문제

    Amazon EMR 릴리스 5.20.0 이상에서 여러 프라이머리 노드와 Kerberos 인증을 사용하여 클러스터를 실행하는 경우, 클러스터를 일정 시간 실행한 후 스케일 다운 또는 단계 제출과 같은 클러스터 작업에 문제가 발생할 수 있습니다. 기간은 정의한 Kerberos 티켓 유효 기간에 따라 다릅니다. 스케일 다운 문제는 제출한 자동 스케일 다운 및 명시적 스케일 다운 요청 모두에 영향을 미칩니다. 이외의 다른 클러스터 작업도 영향을 받을 수 있습니다.

    해결 방법:

    • 여러 프라이머리 노드가 있는 EMR 클러스터의 리드 프라이머리 노드에 대한 hadoop 사용자로 SSH 연결합니다.

    • 다음 명령을 실행하여 hadoop 사용자의 Kerberos 티켓을 갱신합니다.

      kinit -kt <keytab_file> <principal>

      일반적으로 keytab 파일은 /etc/hadoop.keytab에 있으며, 보안 주체는 hadoop/<hostname>@<REALM> 양식입니다.

    참고

    이 해결 방법은 Kerberos 티켓이 유효한 기간에 작동합니다. 이 기간은 기본적으로 10시간이지만 Kerberos 설정으로 구성할 수 있습니다. Kerberos 티켓이 만료되면 위 명령을 다시 실행해야 합니다.

  • Amazon EMR 5.31.0 또는 5.32.0을 사용하는 클러스터에서 AtRestEncryption 또는 HDFS 암호화를 활성화하면 Hive 쿼리에서 다음과 같은 런타임 예외가 발생합니다.

    TaskAttempt 3 failed, info=[Error: Error while running task ( failure ) : attempt_1604112648850_0001_1_01_000000_3:java.lang.RuntimeException: java.lang.RuntimeException: Hive Runtime Error while closing operators: java.io.IOException: java.util.ServiceConfigurationError: org.apache.hadoop.security.token.TokenIdentifier: Provider org.apache.hadoop.hbase.security.token.AuthenticationTokenIdentifier not found
  • Hive 파티션 위치 형식과 함께 Spark를 사용하여 Amazon S3의 데이터를 읽고, Amazon EMR 릴리스 5.30.0~5.36.0 및 6.2.0~6.9.0에서 Spark를 실행하는 경우 클러스터가 데이터를 제대로 읽지 못하는 문제가 발생할 수 있습니다. 파티션에 다음과 같은 특성이 모두 있는 경우 이러한 상황이 발생할 수 있습니다.

    • 둘 이상의 파티션이 동일한 테이블에서 스캔됩니다.

    • 하나 이상의 파티션 디렉터리 경로가 하나 이상의 다른 파티션 디렉터리 경로의 접두사입니다. 예를 들어 s3://bucket/table/p=as3://bucket/table/p=a b의 접두사입니다.

    • 다른 파티션 디렉터리에서 접두사 뒤에 오는 첫 번째 문자의 UTF-8 값이 / 문자(U+002F)보다 작습니다. 예를 들어 s3://bucket/table/p=a b에서 a와 b 사이에 있는 공백 문자(U+0020)가 이 카테고리에 속합니다. !"#$%&‘()*+,-와 같은 14개의 비제어 문자가 있습니다. 자세한 내용은 UTF-8 인코딩 테이블 및 유니코드 문자를 참조하세요.

    이 문제를 해결하려면 spark-defaults 분류에서 spark.sql.sources.fastS3PartitionDiscovery.enabled 구성을 false로 설정합니다.

릴리스 6.1.0

다음 릴리스 정보에는 Amazon EMR 릴리스 6.1.0에 대한 정보가 포함됩니다. 변경 사항은 6.0.0에 관련됩니다.

최초 릴리스 날짜: 2020년 9월 4일

최종 업데이트 날짜: 2020년 10월 15일

지원되는 애플리케이션
  • AWS SDK for Java 버전 1.11.828

  • Flink 버전 1.11.0

  • Ganglia 버전 3.7.2

  • Hadoop 버전 3.2.1-amzn-1

  • HBase 버전 2.2.5

  • HBase-operator-tools 1.0.0

  • HCatalog 버전 3.1.2-amzn-0

  • Hive 버전 3.1.2-amzn-1

  • Hudi 버전 0.5.2-incubating

  • Hue 버전 4.7.1

  • JupyterHub 버전 1.1.0

  • Livy 버전 0.7.0

  • MXNet 버전 1.6.0

  • Oozie 버전 5.2.0

  • Phoenix 버전 5.0.0

  • Presto 버전 0.232

  • PrestoSQL 버전 338

  • Spark 버전 3.0.0-amzn-0

  • TensorFlow 버전 2.1.0

  • Zeppelin 버전 0.9.0-preview1

  • Zookeeper 버전 3.4.14

  • 커넥터 및 드라이버: DynamoDB Connector 4.14.0

새로운 기능
  • ARM 인스턴스 유형은 Amazon EMR 버전 5.30.0 및 Amazon EMR 버전 6.1.0부터 지원됩니다.

  • M6g 범용 인스턴스 유형은 Amazon EMR 버전 6.1.0 및 5.30.0부터 지원됩니다. 자세한 내용은 Amazon EMR 관리 안내서에서 지원되는 인스턴스 유형을 참조하세요.

  • EC2 배치 그룹 기능은 여러 프라이머리 노드 클러스터에 대한 옵션으로 Amazon EMR 버전 5.23.0부터 지원됩니다. 현재 배치 그룹 기능에서는 프라이머리 노드 유형만 지원되며 해당 프라이머리 노드에는 SPREAD 전략이 적용됩니다. SPREAD 전략은 하드웨어 장애 발생 시 여러 프라이머리 노드의 손실을 방지하기 위해 별도의 기본 하드웨어에 작은 그룹의 인스턴스를 배치합니다. 자세한 내용은 Amazon EMR 관리 안내서에서 EMR과 EC2 배치 그룹 통합을 참조하세요.

  • Managed Scaling - Amazon EMR 버전 6.1.0에서는 Amazon EMR Managed Scaling을 활성화하여 워크로드에 따라 클러스터에서 인스턴스 또는 유닛 수를 자동으로 늘리거나 줄일 수 있습니다. Amazon EMR은 클러스터 지표를 지속적으로 평가하여 비용과 속도 측면에서 클러스터를 최적화하는 조정 결정을 내립니다. Amazon EMR 버전 5.30.0 이상(6.0.0 제외)에서도 Managed Scaling을 사용할 수 있습니다. 자세한 내용은 Amazon EMR 관리 안내서에서 클러스터 리소스 조정을 참조하세요.

  • PrestoSQL 버전 338은 EMR 6.1.0에서 지원됩니다. 자세한 내용은 Presto를 참조하세요.

    • PrestoSQL은 EMR 6.1.0 이상 버전에서만 지원되며, EMR 6.0.0 또는 EMR 5.x에서 지원되지 않습니다.

    • 애플리케이션 이름(Presto)은 클러스터에 PrestoDB를 설치하는 데 계속 사용됩니다. 클러스터에 PrestoSQL을 설치하려면 애플리케이션 이름, PrestoSQL을 사용합니다.

    • PrestoDB 또는 PrestoSQL 중 하나를 설치할 수 있지만 단일 클러스터에 둘 다 설치할 수는 없습니다. 클러스터를 생성하려고 할 때 PrestoDB와 PrestoSQL을 모두 지정하면 검증 오류가 발생하고 클러스터 생성 요청이 실패합니다.

    • PrestoSQL은 단일 마스터 클러스터 및 멀티 마스터 클러스터 모두에서 지원됩니다. 멀티 마스터 클러스터에서 PrestoSQL 또는 PrestoDB를 실행하려면 외부 Hive 메타스토어가 필요합니다. 여러 프라이머리 노드를 포함하는 EMR 클러스터에서 지원되는 애플리케이션을 참조하세요.

  • Docker를 통해 Apache Hadoop 및 Apache Spark에서의 ECR 자동 인증 지원: Spark 사용자는 Docker Hub와 Amazon Elastic Container Registry(Amazon ECR)의 도커 이미지를 사용하여 환경 및 라이브러리 종속 항목을 정의할 수 있습니다.

    Docker를 구성하고 Amazon EMR 6.x를 사용하여 Docker와 함께 Spark 애플리케이션을 실행합니다.

  • EMR에서 Apache Hive ACID 트랜잭션 지원: Amazon EMR 6.1.0에서는 Hive ACID 트랜잭션에 대한 지원을 추가하였고, 데이터베이스의 ACID 속성을 준수합니다. 이 기능을 사용하면 Amazon Simple Storage Service(S3)의 데이터를 사용하여 Hive 관리형 테이블에서 INSERT, UPDATE, DELETE,MERGE 작업을 실행할 수 있습니다. 이는 스트리밍 수집, 데이터 복원, MERGE를 사용한 대량 업데이트, 느리게 변화하는 크기 등과 같은 사용 사례와 관련된 주요 기능입니다. 구성 예제 및 사용 사례를 비롯한 자세한 내용은 Amazon EMR supports Apache Hive ACID transactions를 참조하세요.

변경 사항, 향상된 기능 및 해결된 문제
  • 이 릴리스는 Amazon EMR 조정에서 클러스터를 성공적으로 스케일 업 또는 스케일 다운하지 못하거나 애플리케이션 장애가 발생한 경우 이 기능과 관련된 문제를 수정하기 위한 릴리스입니다.

  • Amazon EMR 클러스터 내 대몬(daemon)이 YARN 노드 상태 및 HDFS 노드 상태 수집과 같은 상태 확인 활동을 실행할 때 활용도가 높은 대규모 클러스터에 대한 조정 요청이 실패하는 문제를 수정했습니다. 이는 클러스터 내 대몬(daemon)이 내부 Amazon EMR 구성 요소로 노드의 상태 데이터를 전달할 수 없었기 때문에 발생했습니다.

  • 조정 작업 중에 신뢰성을 개선하기 위해 IP 주소를 재사용할 때 노드 상태를 올바르게 추적하도록 EMR 클러스터 내 대몬(daemon)을 개선했습니다.

  • SPARK-29683. Spark에서는 사용 가능한 모든 노드가 거부 목록에 있다고 가정했기 때문에 클러스터 스케일 다운 중에 작업 실패가 발생하는 문제를 수정했습니다.

  • YARN-9011. 클러스터를 스케일 업하거나 스케일 다운하려고 할 때 YARN 서비스 해제의 경쟁 조건으로 인해 작업 실패가 발생하는 문제를 수정했습니다.

  • Amazon EMR 클러스터 내 대몬(daemon)과 YARN 및 HDFS 사이에서 노드 상태가 항상 일관되도록 보장함으로써 클러스터 조정 중 단계 또는 작업이 실패하는 문제를 수정했습니다.

  • Kerberos 인증으로 활성화된 Amazon EMR 클러스터에서 스케일 다운 및 단계 제출과 같은 클러스터 작업이 실패하는 문제를 수정했습니다. 이는 Amazon EMR 클러스터 내 대몬(daemon)이 프라이머리 노드에서 실행되는 HDFS 및 YARN과 안전하게 통신하는 데 필요한 Kerberos 티켓을 갱신하지 않았기 때문입니다.

  • 최신 Amazon EMR 릴리스에서는 Amazon EMR의 이전 AL2에서 더 낮은 '최대 열린 파일' 한도와 관련된 문제가 수정되었습니다. Amazon EMR 릴리스 5.30.1, 5.30.2, 5.31.1, 5.32.1, 6.0.1, 6.1.1, 6.2.1, 5.33.0, 6.3.0 이상에는 이제 더 높은 '최대 열린 파일' 설정을 포함한 영구적 수정 사항이 포함되어 있습니다.

  • Apache Flink는 EMR 6.0.0에서 지원되지 않지만 EMR 6.1.0에서 Flink 1.11.0으로 지원됩니다. 이 버전은 Hadoop 3을 공식적으로 지원하는 Flink의 첫 번째 버전입니다. Apache Flink 1.11.0 Release Announcement를 참조하세요.

  • Ganglia는 기본 EMR 6.1.0 패키지 번들에서 제거되었습니다.

알려진 문제
  • 이전 AL2에서 더 낮은 '최대 열린 파일' 한도[최신 릴리스에서 수정됨]. Amazon EMR 릴리스: emr-5.30.x, emr-5.31.0, emr-5.32.0, emr-6.0.0, emr-6.1.0, emr-6.2.0은 Amazon Linux 2(AL2)의 이전 버전에 기반합니다. 이전 버전에서는 Amazon EMR 클러스터가 기본 AMI에서 생성되는 경우 '최대 열린 파일'에 대한 ulimit 설정이 더 낮습니다. Amazon EMR 릴리스 5.30.1, 5.30.2, 5.31.1, 5.32.1, 6.0.1, 6.1.1, 6.2.1, 5.33.0, 6.3.0 이상에는 더 높은 '최대 열린 파일' 설정을 포함한 영구적 수정 사항이 포함되어 있습니다. 열린 파일 한도가 낮은 릴리스의 경우 Spark 작업을 제출할 때 'Too many open files' 오류가 발생합니다. 영향을 받는 릴리스에서 Amazon EMR 기본 AMI의 '최대 열린 파일'에 대한 기본 ulimit 설정은 4,096개이며, 이는 최신 Amazon Linux 2 AMI의 65,536개 파일 제한보다 낮습니다. '최대 열린 파일'에 대한 더 낮은 ulimit 설정을 사용하면 Spark 드라이버와 실행기가 4,096개가 넘는 파일을 열려고 할 때 Spark 작업이 실패합니다. 이 문제를 해결하기 위해 Amazon EMR에는 클러스터 생성 시 ulimit 설정을 조정하는 부트스트랩 작업(BA) 스크립트가 있습니다.

    이 문제에 대한 영구 수정 사항이 포함되지 않은 이전 Amazon EMR 버전을 사용하는 경우 다음 해결 방법을 통해 instance-controller ulimit를 최대 65,536개의 파일로 명시적으로 설정할 수 있습니다.

    명령줄에서 ulimit를 명시적으로 설정합니다.
    1. /etc/systemd/system/instance-controller.service를 편집하여 Service 섹션에 다음 파라미터를 추가합니다.

      LimitNOFILE=65536

      LimitNPROC=65536

    2. InstanceController 다시 시작

      $ sudo systemctl daemon-reload

      $ sudo systemctl restart instance-controller

    부트스트랩 작업(BA)을 사용하여 ulimit 설정

    클러스터 생성 시 부트스트랩 작업(BA) 스크립트를 사용하여 instance-controller ulimit를 65,536개 파일로 구성할 수도 있습니다.

    #!/bin/bash for user in hadoop spark hive; do sudo tee /etc/security/limits.d/$user.conf << EOF $user - nofile 65536 $user - nproc 65536 EOF done for proc in instancecontroller logpusher; do sudo mkdir -p /etc/systemd/system/$proc.service.d/ sudo tee /etc/systemd/system/$proc.service.d/override.conf << EOF [Service] LimitNOFILE=65536 LimitNPROC=65536 EOF pid=$(pgrep -f aws157.$proc.Main) sudo prlimit --pid $pid --nofile=65535:65535 --nproc=65535:65535 done sudo systemctl daemon-reload
  • 중요

    Amazon EMR 6.1.0 및 6.2.0에는 모든 Hudi 삽입, 업서트 및 삭제 작업에 큰 영향을 미칠 수 있는 성능 문제가 포함되어 있습니다. Amazon EMR 6.1.0 또는 6.2.0과 함께 Hudi를 사용하려는 경우 AWS 지원에 문의하여 패치가 적용된 Hudi RPM을 확보해야 합니다.

  • spark.driver.extraJavaOptionsspark.executor.extraJavaOptions를 사용하여 사용자 지정 가비지 수집 구성을 설정하면 가비지 수집 구성 충돌로 인해 EMR 6.1에서 드라이버 및 실행기를 시작하지 못할 수 있습니다. EMR 릴리스 6.1.0에서는 spark.driver.defaultJavaOptionsspark.executor.defaultJavaOptions 속성 대신, 드라이버와 실행기에 대한 사용자 지정 Spark 가비지 수집 구성을 지정해야 합니다. 자세한 내용은 Apache Spark Runtime EnvironmentAmazon EMR 6.1.0에서 Spark 가비지 수집 구성을 참조하세요.

  • Oozie에서 Pig를 사용하는 경우(또한 Hue는 Oozie 작업을 사용하여 Pig 스크립트를 실행하므로 Hue 내에서 Pig를 사용하는 경우) 네이티브 lzo 라이브러리를 로드할 수 없다는 오류가 발생합니다. 이 오류 메시지는 정보 제공용이며 Pig 실행을 차단하지 않습니다.

  • Hudi 동시성 지원: 현재 Hudi는 단일 Hudi 테이블에 대한 동시 쓰기를 지원하지 않습니다. 또한 Hudi는 새 작성기를 시작하기 전에 진행 중인 작성기에서 수행하는 모든 변경 사항을 롤백합니다. 동시 쓰기는 이 메커니즘을 방해하고 경쟁 조건을 유발하여 데이터를 손상시킬 수 있습니다. 데이터 처리 워크플로의 일부로 항상 Hudi 테이블에서 단일 Hudi 작성기만 작동해야 합니다. Hudi는 동일한 Hudi 테이블에서 작동하는 여러 개의 동시 리더를 지원합니다.

  • 여러 프라이머리 노드와 Kerberos 인증을 사용하는 클러스터에서 알려진 문제

    Amazon EMR 릴리스 5.20.0 이상에서 여러 프라이머리 노드와 Kerberos 인증을 사용하여 클러스터를 실행하는 경우, 클러스터를 일정 시간 실행한 후 스케일 다운 또는 단계 제출과 같은 클러스터 작업에 문제가 발생할 수 있습니다. 기간은 정의한 Kerberos 티켓 유효 기간에 따라 다릅니다. 스케일 다운 문제는 제출한 자동 스케일 다운 및 명시적 스케일 다운 요청 모두에 영향을 미칩니다. 이외의 다른 클러스터 작업도 영향을 받을 수 있습니다.

    해결 방법:

    • 여러 프라이머리 노드가 있는 EMR 클러스터의 리드 프라이머리 노드에 대한 hadoop 사용자로 SSH 연결합니다.

    • 다음 명령을 실행하여 hadoop 사용자의 Kerberos 티켓을 갱신합니다.

      kinit -kt <keytab_file> <principal>

      일반적으로 keytab 파일은 /etc/hadoop.keytab에 있으며, 보안 주체는 hadoop/<hostname>@<REALM> 양식입니다.

    참고

    이 해결 방법은 Kerberos 티켓이 유효한 기간에 작동합니다. 이 기간은 기본적으로 10시간이지만 Kerberos 설정으로 구성할 수 있습니다. Kerberos 티켓이 만료되면 위 명령을 다시 실행해야 합니다.

  • Amazon EMR 6.1.0에는 Presto를 실행하는 클러스터에 영향을 미치는 문제가 있습니다. 오랜 기간(일 단위)이 경과한 후 클러스터에서 'su: failed to execute /bin/bash: Resource temporarily unavailable' 또는 'shell request failed on channel 0'과 같은 오류가 발생할 수 있습니다. 이 문제는 내부 Amazon EMR 프로세스(InstanceController)에서 너무 많은 경량 프로세스(LWP)를 생성하여 결국 Hadoop 사용자가 nproc 한도를 초과하기 때문에 발생합니다. 이를 통해 사용자는 추가 프로세스를 열 수 없습니다. 이 문제의 해결 방법은 EMR 6.2.0으로 업그레이드하는 것입니다.

릴리스 6.0.0

다음 릴리스 정보에는 Amazon EMR 릴리스 6.0.0에 대한 정보가 포함됩니다.

최초 릴리스 날짜: 2020년 3월 10일

지원되는 애플리케이션
  • AWS SDK for Java 버전 1.11.711

  • Ganglia 버전 3.7.2

  • Hadoop 버전 3.2.1

  • HBase 버전 2.2.3

  • HCatalog 버전 3.1.2

  • Hive 버전 3.1.2

  • Hudi 버전 0.5.0-incubating

  • Hue 버전 4.4.0

  • JupyterHub 버전 1.0.0

  • Livy 버전 0.6.0

  • MXNet 버전 1.5.1

  • Oozie 버전 5.1.0

  • Phoenix 버전 5.0.0

  • Presto 버전 0.230

  • Spark 버전 2.4.4

  • TensorFlow 버전 1.14.0

  • Zeppelin 버전 0.9.0-SNAPSHOT

  • Zookeeper 버전 3.4.14

  • 커넥터 및 드라이버: DynamoDB Connector 4.14.0

참고

Flink, Sqoop, Pig 및 Mahout는 Amazon EMR 버전 6.0.0에서만 사용할 수 있습니다.

새로운 기능
  • YARN 도커 런타임 지원 - Spark 작업과 같은 YARN 애플리케이션은 이제 도커 컨테이너의 컨텍스트에서 실행될 수 있습니다. 이를 통해 Amazon EMR 클러스터에 사용자 지정 라이브러리를 설치할 필요 없이 도커 이미지의 종속성을 쉽게 정의할 수 있습니다. 자세한 내용은 Docker 통합 구성Amazon EMR 6.0.0을 사용하여 Docker와 함께 Spark 애플리케이션 실행을 참조하세요.

  • Hive LLAP 지원 - Hive는 이제 향상된 쿼리 성능을 위해 LLAP 실행 모드를 지원합니다. 자세한 내용은 Hive LLAP 사용을 참조하십시오.

변경 사항, 향상된 기능 및 해결된 문제
  • 이 릴리스는 Amazon EMR 조정에서 클러스터를 성공적으로 스케일 업 또는 스케일 다운하지 못하거나 애플리케이션 장애가 발생한 경우 이 기능과 관련된 문제를 수정하기 위한 릴리스입니다.

  • Amazon EMR 클러스터 내 대몬(daemon)이 YARN 노드 상태 및 HDFS 노드 상태 수집과 같은 상태 확인 활동을 실행할 때 활용도가 높은 대규모 클러스터에 대한 조정 요청이 실패하는 문제를 수정했습니다. 이는 클러스터 내 대몬(daemon)이 내부 Amazon EMR 구성 요소로 노드의 상태 데이터를 전달할 수 없었기 때문에 발생했습니다.

  • 조정 작업 중에 신뢰성을 개선하기 위해 IP 주소를 재사용할 때 노드 상태를 올바르게 추적하도록 EMR 클러스터 내 대몬(daemon)을 개선했습니다.

  • SPARK-29683. Spark에서는 사용 가능한 모든 노드가 거부 목록에 있다고 가정했기 때문에 클러스터 스케일 다운 중에 작업 실패가 발생하는 문제를 수정했습니다.

  • YARN-9011. 클러스터를 스케일 업하거나 스케일 다운하려고 할 때 YARN 서비스 해제의 경쟁 조건으로 인해 작업 실패가 발생하는 문제를 수정했습니다.

  • Amazon EMR 클러스터 내 대몬(daemon)과 YARN 및 HDFS 사이에서 노드 상태가 항상 일관되도록 보장함으로써 클러스터 조정 중 단계 또는 작업이 실패하는 문제를 수정했습니다.

  • Kerberos 인증으로 활성화된 Amazon EMR 클러스터에서 스케일 다운 및 단계 제출과 같은 클러스터 작업이 실패하는 문제를 수정했습니다. 이는 Amazon EMR 클러스터 내 대몬(daemon)이 프라이머리 노드에서 실행되는 HDFS 및 YARN과 안전하게 통신하는 데 필요한 Kerberos 티켓을 갱신하지 않았기 때문입니다.

  • 최신 Amazon EMR 릴리스에서는 Amazon EMR의 이전 AL2에서 더 낮은 '최대 열린 파일' 한도와 관련된 문제가 수정되었습니다. Amazon EMR 릴리스 5.30.1, 5.30.2, 5.31.1, 5.32.1, 6.0.1, 6.1.1, 6.2.1, 5.33.0, 6.3.0 이상에는 이제 더 높은 '최대 열린 파일' 설정을 포함한 영구적 수정 사항이 포함되어 있습니다.

  • Amazon Linux

    • Amazon Linux 2는 EMR 6.x 릴리스 시리즈의 운영 체제입니다.

    • systemd는 Amazon Linux 1에서 사용되는 upstart 대신 서비스 관리에 사용됩니다.

  • Java Development Kit(JDK)

    • Coretto JDK 8은 EMR 6.x 릴리스 시리즈의 기본 JDK입니다.

  • Scala

    • Scala 2.12는 Apache Spark 및 Apache Livy와 함께 사용됩니다.

  • Python 3

    • Python 3은 이제 EMR에서 Python의 기본 버전입니다.

  • YAR의 노드 레이블

    • Amazon EMR 6.x 릴리스 시리즈부터 YARN 노드 레이블 기능은 기본적으로 비활성화되어 있습니다. 애플리케이션 마스터 프로세스는 기본적으로 코어 및 작업 노드 모두에서 실행할 수 있습니다. yarn.node-labels.enabledyarn.node-labels.am.default-node-label-expression 속성을 구성하여 YARN 노드 레이블 기능을 활성화할 수 있습니다. 자세한 내용은 프라이머리, 코어 및 태스크 노드 이해를 참조하세요.

알려진 문제
  • 이전 AL2에서 더 낮은 '최대 열린 파일' 한도[최신 릴리스에서 수정됨]. Amazon EMR 릴리스: emr-5.30.x, emr-5.31.0, emr-5.32.0, emr-6.0.0, emr-6.1.0, emr-6.2.0은 Amazon Linux 2(AL2)의 이전 버전에 기반합니다. 이전 버전에서는 Amazon EMR 클러스터가 기본 AMI에서 생성되는 경우 '최대 열린 파일'에 대한 ulimit 설정이 더 낮습니다. Amazon EMR 릴리스 5.30.1, 5.30.2, 5.31.1, 5.32.1, 6.0.1, 6.1.1, 6.2.1, 5.33.0, 6.3.0 이상에는 더 높은 '최대 열린 파일' 설정을 포함한 영구적 수정 사항이 포함되어 있습니다. 열린 파일 한도가 낮은 릴리스의 경우 Spark 작업을 제출할 때 'Too many open files' 오류가 발생합니다. 영향을 받는 릴리스에서 Amazon EMR 기본 AMI의 '최대 열린 파일'에 대한 기본 ulimit 설정은 4,096개이며, 이는 최신 Amazon Linux 2 AMI의 65,536개 파일 제한보다 낮습니다. '최대 열린 파일'에 대한 더 낮은 ulimit 설정을 사용하면 Spark 드라이버와 실행기가 4,096개가 넘는 파일을 열려고 할 때 Spark 작업이 실패합니다. 이 문제를 해결하기 위해 Amazon EMR에는 클러스터 생성 시 ulimit 설정을 조정하는 부트스트랩 작업(BA) 스크립트가 있습니다.

    이 문제에 대한 영구 수정 사항이 포함되지 않은 이전 Amazon EMR 버전을 사용하는 경우 다음 해결 방법을 통해 instance-controller ulimit를 최대 65,536개의 파일로 명시적으로 설정할 수 있습니다.

    명령줄에서 ulimit를 명시적으로 설정합니다.
    1. /etc/systemd/system/instance-controller.service를 편집하여 Service 섹션에 다음 파라미터를 추가합니다.

      LimitNOFILE=65536

      LimitNPROC=65536

    2. InstanceController 다시 시작

      $ sudo systemctl daemon-reload

      $ sudo systemctl restart instance-controller

    부트스트랩 작업(BA)을 사용하여 ulimit 설정

    클러스터 생성 시 부트스트랩 작업(BA) 스크립트를 사용하여 instance-controller ulimit를 65,536개 파일로 구성할 수도 있습니다.

    #!/bin/bash for user in hadoop spark hive; do sudo tee /etc/security/limits.d/$user.conf << EOF $user - nofile 65536 $user - nproc 65536 EOF done for proc in instancecontroller logpusher; do sudo mkdir -p /etc/systemd/system/$proc.service.d/ sudo tee /etc/systemd/system/$proc.service.d/override.conf << EOF [Service] LimitNOFILE=65536 LimitNPROC=65536 EOF pid=$(pgrep -f aws157.$proc.Main) sudo prlimit --pid $pid --nofile=65535:65535 --nproc=65535:65535 done sudo systemctl daemon-reload
  • PySpark, SparkR 및 spark-shell을 포함한 Spark 대화형 셸은 도커를 추가 라이브러리와 함께 사용하는 것을 지원하지 않습니다.

  • Amazon EMR 버전 6.0.0에서 Python 3을 사용하려면 yarn.nodemanager.env-whitelistPATH를 추가해야 합니다.

  • AWS Glue 데이터 카탈로그를 Hive의 메타스토어로 사용하는 경우 Live Long and Process(LLAP) 기능이 지원되지 않습니다.

  • Spark 및 Docker 통합과 함께 Amazon EMR 6.0.0을 사용하는 경우 Docker 런타임으로 Spark 작업을 제출할 때 실패를 방지하기 위해 클러스터의 인스턴스를 동일한 인스턴스 유형과 동일한 크기의 EBS 볼륨으로 구성해야 합니다.

  • Amazon EMR 6.0.0의 경우 Amazon S3 스토리지 모드에서 HBase는 HBASE-24286 문제의 영향을 받습니다. 기존 S3 데이터를 사용하여 클러스터를 생성할 때는 HBase 마스터를 초기화할 수 없습니다.

  • 여러 프라이머리 노드와 Kerberos 인증을 사용하는 클러스터에서 알려진 문제

    Amazon EMR 릴리스 5.20.0 이상에서 여러 프라이머리 노드와 Kerberos 인증을 사용하여 클러스터를 실행하는 경우, 클러스터를 일정 시간 실행한 후 스케일 다운 또는 단계 제출과 같은 클러스터 작업에 문제가 발생할 수 있습니다. 기간은 정의한 Kerberos 티켓 유효 기간에 따라 다릅니다. 스케일 다운 문제는 제출한 자동 스케일 다운 및 명시적 스케일 다운 요청 모두에 영향을 미칩니다. 이외의 다른 클러스터 작업도 영향을 받을 수 있습니다.

    해결 방법:

    • 여러 프라이머리 노드가 있는 EMR 클러스터의 리드 프라이머리 노드에 대한 hadoop 사용자로 SSH 연결합니다.

    • 다음 명령을 실행하여 hadoop 사용자의 Kerberos 티켓을 갱신합니다.

      kinit -kt <keytab_file> <principal>

      일반적으로 keytab 파일은 /etc/hadoop.keytab에 있으며, 보안 주체는 hadoop/<hostname>@<REALM> 양식입니다.

    참고

    이 해결 방법은 Kerberos 티켓이 유효한 기간에 작동합니다. 이 기간은 기본적으로 10시간이지만 Kerberos 설정으로 구성할 수 있습니다. Kerberos 티켓이 만료되면 위 명령을 다시 실행해야 합니다.

릴리스 5.30.1

다음 릴리스 정보에는 Amazon EMR 릴리스 5.30.1에 대한 정보가 포함됩니다. 변경 사항은 5.30.0에 관련됩니다.

최초 릴리스 날짜: 2020년 6월 30일

최종 업데이트 날짜: 2020년 8월 24일

변경 사항, 향상된 기능 및 해결된 문제
  • 최신 Amazon EMR 릴리스에서는 Amazon EMR의 이전 AL2에서 더 낮은 '최대 열린 파일' 한도와 관련된 문제가 수정되었습니다. Amazon EMR 릴리스 5.30.1, 5.30.2, 5.31.1, 5.32.1, 6.0.1, 6.1.1, 6.2.1, 5.33.0, 6.3.0 이상에는 이제 더 높은 '최대 열린 파일' 설정을 포함한 영구적 수정 사항이 포함되어 있습니다.

  • 인스턴스 컨트롤러 프로세스에서 무한한 수의 프로세스를 생성하는 문제가 수정되었습니다.

  • Hue에서 Hive 쿼리를 실행할 수 없어서 'database is locked' 메시지를 표시하고 쿼리가 실행되지 않는 문제가 수정되었습니다.

  • EMR 클러스터에서 더 많은 작업을 동시에 실행할 수 있도록 Spark 문제가 수정되었습니다.

  • Jupyter 서버에서 'too many files open error'를 발생시키는 Jupyter Notebook 문제가 수정되었습니다.

  • 클러스터 시작 시간 관련 문제가 수정되었습니다.

새로운 기능
  • Amazon EMR 버전 6.x 및 EMR 버전 5.30.1 이상에서 Tez UI 및 YARN 타임라인 서버의 영구 애플리케이션 인터페이스를 사용할 수 있습니다. 영구 애플리케이션 기록에 대한 원클릭 링크 액세스를 사용하면 SSH 연결을 통해 웹 프록시를 설정하지 않고도 작업 기록에 빠르게 액세스할 수 있습니다. 활성 클러스터와 종료된 클러스터에 대한 로그는 애플리케이션 종료 후 30일 동안 사용할 수 있습니다. 자세한 내용은 Amazon EMR 관리 안내서에서 영구 애플리케이션 사용자 인터페이스 보기를 참조하세요.

  • EMR 노트북 실행 API는 스크립트 또는 명령줄을 통해 EMR 노트북을 실행하는 데 사용할 수 있습니다. AWS 콘솔 없이 EMR 노트북 실행을 시작, 중지, 나열 및 설명하는 기능을 사용하면 프로그래밍 방식으로 EMR 노트북을 제어할 수 있습니다. 파라미터화된 노트북 셀을 사용하면 새로운 파라미터 값 세트마다 노트북의 복사본을 만들지 않고도 노트북에 다양한 파라미터 값을 전달할 수 있습니다. EMR API 작업을 참조하세요. 샘플 코드는 EMR Notebooks를 프로그래밍 방식으로 실행하는 샘플 명령을 참조하세요.

알려진 문제
  • 이전 AL2에서 더 낮은 '최대 열린 파일' 한도[최신 릴리스에서 수정됨]. Amazon EMR 릴리스: emr-5.30.x, emr-5.31.0, emr-5.32.0, emr-6.0.0, emr-6.1.0, emr-6.2.0은 Amazon Linux 2(AL2)의 이전 버전에 기반합니다. 이전 버전에서는 Amazon EMR 클러스터가 기본 AMI에서 생성되는 경우 '최대 열린 파일'에 대한 ulimit 설정이 더 낮습니다. Amazon EMR 릴리스 5.30.1, 5.30.2, 5.31.1, 5.32.1, 6.0.1, 6.1.1, 6.2.1, 5.33.0, 6.3.0 이상에는 더 높은 '최대 열린 파일' 설정을 포함한 영구적 수정 사항이 포함되어 있습니다. 열린 파일 한도가 낮은 릴리스의 경우 Spark 작업을 제출할 때 'Too many open files' 오류가 발생합니다. 영향을 받는 릴리스에서 Amazon EMR 기본 AMI의 '최대 열린 파일'에 대한 기본 ulimit 설정은 4,096개이며, 이는 최신 Amazon Linux 2 AMI의 65,536개 파일 제한보다 낮습니다. '최대 열린 파일'에 대한 더 낮은 ulimit 설정을 사용하면 Spark 드라이버와 실행기가 4,096개가 넘는 파일을 열려고 할 때 Spark 작업이 실패합니다. 이 문제를 해결하기 위해 Amazon EMR에는 클러스터 생성 시 ulimit 설정을 조정하는 부트스트랩 작업(BA) 스크립트가 있습니다.

    이 문제에 대한 영구 수정 사항이 포함되지 않은 이전 Amazon EMR 버전을 사용하는 경우 다음 해결 방법을 통해 instance-controller ulimit를 최대 65,536개의 파일로 명시적으로 설정할 수 있습니다.

    명령줄에서 ulimit를 명시적으로 설정합니다.
    1. /etc/systemd/system/instance-controller.service를 편집하여 Service 섹션에 다음 파라미터를 추가합니다.

      LimitNOFILE=65536

      LimitNPROC=65536

    2. InstanceController 다시 시작

      $ sudo systemctl daemon-reload

      $ sudo systemctl restart instance-controller

    부트스트랩 작업(BA)을 사용하여 ulimit 설정

    클러스터 생성 시 부트스트랩 작업(BA) 스크립트를 사용하여 instance-controller ulimit를 65,536개 파일로 구성할 수도 있습니다.

    #!/bin/bash for user in hadoop spark hive; do sudo tee /etc/security/limits.d/$user.conf << EOF $user - nofile 65536 $user - nproc 65536 EOF done for proc in instancecontroller logpusher; do sudo mkdir -p /etc/systemd/system/$proc.service.d/ sudo tee /etc/systemd/system/$proc.service.d/override.conf << EOF [Service] LimitNOFILE=65536 LimitNPROC=65536 EOF pid=$(pgrep -f aws157.$proc.Main) sudo prlimit --pid $pid --nofile=65535:65535 --nproc=65535:65535 done sudo systemctl daemon-reload
  • EMR Notebooks

    클러스터 프라이머리 노드에 커널과 추가 Python 라이브러리를 설치할 수 있는 기능은 EMR 버전 5.30.1에서 기본적으로 비활성화됩니다. 이 기능에 대한 자세한 내용은 클러스터 프라이머리 노드에 커널 및 Python 라이브러리 설치를 참조하세요.

    이 기능을 활성화하려면 다음을 수행합니다.

    1. EMR Notebooks의 서비스 역할에 연결된 권한 정책이 다음 작업을 허용하는지 확인합니다.

      elasticmapreduce:ListSteps

      자세한 내용은 EMR 노트북 서비스 역할 단원을 참조하십시오.

    2. 다음 예제와 같이 AWS CLI를 사용하여 클러스터에서 EMR Notebooks를 설정하는 단계를 실행합니다. us-east-1을 클러스터가 상주하는 리전으로 바꿉니다. 자세한 내용은 AWS CLI를 사용하여 클러스터에 단계 추가를 참조하세요.

      aws emr add-steps --cluster-id MyClusterID --steps Type=CUSTOM_JAR,Name=EMRNotebooksSetup,ActionOnFailure=CONTINUE,Jar=s3://us-east-1.elasticmapreduce/libs/script-runner/script-runner.jar,Args=["s3://awssupportdatasvcs.com/bootstrap-actions/EMRNotebooksSetup/emr-notebooks-setup.sh"]
  • Managed Scaling

    Presto가 설치되지 않은 5.30.0 및 5.30.1 클러스터에서 Managed Scaling을 수행하면 애플리케이션 장애가 발생하거나 균일한 인스턴스 그룹 또는 인스턴스 플릿이 ARRESTED 상태로 유지될 수 있습니다. 특히 스케일 다운 작업 이후 바로 스케일 업 작업이 수행되는 경우가 이에 해당합니다.

    해결 방법으로 작업에 Presto가 필요하지 않더라도 Amazon EMR 릴리스 5.30.0 및 5.30.1에서 클러스터를 생성할 때 설치할 애플리케이션으로 Presto를 선택합니다.

  • 여러 프라이머리 노드와 Kerberos 인증을 사용하는 클러스터에서 알려진 문제

    Amazon EMR 릴리스 5.20.0 이상에서 여러 프라이머리 노드와 Kerberos 인증을 사용하여 클러스터를 실행하는 경우, 클러스터를 일정 시간 실행한 후 스케일 다운 또는 단계 제출과 같은 클러스터 작업에 문제가 발생할 수 있습니다. 기간은 정의한 Kerberos 티켓 유효 기간에 따라 다릅니다. 스케일 다운 문제는 제출한 자동 스케일 다운 및 명시적 스케일 다운 요청 모두에 영향을 미칩니다. 이외의 다른 클러스터 작업도 영향을 받을 수 있습니다.

    해결 방법:

    • 여러 프라이머리 노드가 있는 EMR 클러스터의 리드 프라이머리 노드에 대한 hadoop 사용자로 SSH 연결합니다.

    • 다음 명령을 실행하여 hadoop 사용자의 Kerberos 티켓을 갱신합니다.

      kinit -kt <keytab_file> <principal>

      일반적으로 keytab 파일은 /etc/hadoop.keytab에 있으며, 보안 주체는 hadoop/<hostname>@<REALM> 양식입니다.

    참고

    이 해결 방법은 Kerberos 티켓이 유효한 기간에 작동합니다. 이 기간은 기본적으로 10시간이지만 Kerberos 설정으로 구성할 수 있습니다. Kerberos 티켓이 만료되면 위 명령을 다시 실행해야 합니다.

  • Hive 파티션 위치 형식과 함께 Spark를 사용하여 Amazon S3의 데이터를 읽고, Amazon EMR 릴리스 5.30.0~5.36.0 및 6.2.0~6.9.0에서 Spark를 실행하는 경우 클러스터가 데이터를 제대로 읽지 못하는 문제가 발생할 수 있습니다. 파티션에 다음과 같은 특성이 모두 있는 경우 이러한 상황이 발생할 수 있습니다.

    • 둘 이상의 파티션이 동일한 테이블에서 스캔됩니다.

    • 하나 이상의 파티션 디렉터리 경로가 하나 이상의 다른 파티션 디렉터리 경로의 접두사입니다. 예를 들어 s3://bucket/table/p=as3://bucket/table/p=a b의 접두사입니다.

    • 다른 파티션 디렉터리에서 접두사 뒤에 오는 첫 번째 문자의 UTF-8 값이 / 문자(U+002F)보다 작습니다. 예를 들어 s3://bucket/table/p=a b에서 a와 b 사이에 있는 공백 문자(U+0020)가 이 카테고리에 속합니다. !"#$%&‘()*+,-와 같은 14개의 비제어 문자가 있습니다. 자세한 내용은 UTF-8 인코딩 테이블 및 유니코드 문자를 참조하세요.

    이 문제를 해결하려면 spark-defaults 분류에서 spark.sql.sources.fastS3PartitionDiscovery.enabled 구성을 false로 설정합니다.

릴리스 5.30.0

다음 릴리스 정보에는 Amazon EMR 릴리스 5.30.0에 대한 정보가 포함됩니다. 변경 사항은 5.29.0에 관련됩니다.

최초 릴리스 날짜: 2020년 5월 13일

최종 업데이트 날짜: 2020년 6월 25일

업그레이드
  • AWS SDK for Java가 버전 1.11.759로 업그레이드됨

  • Amazon SageMaker Spark SDK가 버전 1.3.0으로 업그레이드됨

  • EMR 레코드 서버가 버전 1.6.0으로 업그레이드됨

  • Flink가 버전 1.10.0으로 업그레이드됨

  • Ganglia가 버전 3.7.2로 업그레이드됨

  • HBase가 버전 1.4.13으로 업그레이드됨

  • Hudi가 버전 0.5.2-incubating으로 업그레이드됨

  • Hue가 버전 4.6.0으로 업그레이드됨

  • JupyterHub가 버전 1.1.0으로 업그레이드됨

  • Livy가 버전 0.7.0-incubating으로 업그레이드됨

  • Oozie가 버전 5.2.0으로 업그레이드됨

  • Presto가 버전 0.232로 업그레이드됨

  • Spark가 버전 2.4.5로 업그레이드됨

  • 업그레이드된 커넥터 및 드라이버: Amazon Glue 커넥터 1.12.0, Amazon Kinesis 커넥터 3.5.0, EMR DynamoDB 커넥터 4.14.0

새로운 기능
  • EMR Notebooks - 5.30.0을 사용하여 생성된 EMR 클러스터와 함께 사용하면 EMR 노트북 커널이 클러스터에서 실행됩니다. 이로써 노트북 성능이 향상되며, 커널을 설치하고 사용자 지정할 수 있습니다. 클러스터 프라이머리 노드에 Python 라이브러리를 설치할 수도 있습니다. 자세한 내용은 EMR 관리 안내서에서 커널 및 라이브러리 설치 및 사용을 참조하세요.

  • Managed Scaling - Amazon EMR 버전 5.30.0 이상에서는 EMR Managed Scaling을 활성화하여 워크로드에 따라 클러스터에서 인스턴스 또는 유닛 수를 자동으로 늘리거나 줄일 수 있습니다. Amazon EMR은 클러스터 지표를 지속적으로 평가하여 비용과 속도 측면에서 클러스터를 최적화하는 조정 결정을 내립니다. 자세한 내용은 Amazon EMR 관리 안내서에서 클러스터 리소스 조정을 참조하세요.

  • Amazon S3에 저장된 로그 파일 암호화 - Amazon EMR 버전 5.30.0 이상에서는 Amazon S3에 저장된 로그 파일을 AWS KMS 고객 관리형 키로 암호화할 수 있습니다. 자세한 내용은 Amazon EMR 관리 안내서에서 Amazon S3에 저장된 로그 파일 암호화를 참조하세요.

  • Amazon Linux 2 지원 - EMR 버전 5.30.0 이상에서 EMR은 Amazon Linux 2 OS를 사용합니다. 새로운 사용자 지정 Amazon Machine Image(AMI)는 Amazon Linux 2 AMI를 기반으로 해야 합니다. 자세한 내용은 사용자 지정 AMI 사용을 참조하십시오.

  • Presto 단계적 자동 조정 - 5.30.0 버전을 사용하는 EMR 클러스터의 경우 Auto Scaling 제한 시간을 설정할 수 있습니다. 이 제한 시간을 통해 Presto에서 노드가 서비스 해제되기 전에 실행을 완료할 수 있습니다. 자세한 내용은 단계적 서비스 해제 기능이 있는 자동 조정 사용 섹션을 참조하세요.

  • 새 할당 전략 옵션을 사용한 플릿 인스턴스 생성 - 새 할당 전략 옵션은 EMR 버전 5.12.1 이상에서 사용할 수 있습니다. 이를 통해 클러스터 프로비저닝 속도가 빨라지고 스팟 할당이 더 정확해지며 스팟 인스턴스 중단이 줄어듭니다. 기본이 아닌 EMR 서비스 역할은 업데이트해야 합니다. 인스턴스 플릿 구성을 참조하세요.

  • sudo systemctl stop 및 sudo systemctl start 명령 – Amazon Linux 2 OS를 사용하는 EMR 버전 5.30.0 이상에서 EMR은 sudo systemctl stopsudo systemctl start 명령을 사용하여 서비스를 다시 시작합니다. 자세한 내용은 Amazon EMR에서 서비스를 다시 시작하려면 어떻게 해야 하나요?를 참조하세요.

변경 사항, 향상된 기능 및 해결된 문제
  • EMR 버전 5.30.0은 기본적으로 Ganglia를 설치하지 않습니다. 클러스터 생성 시 Ganglia를 설치하도록 명시적으로 선택할 수 있습니다.

  • Spark 성능 최적화

  • Presto 성능 최적화

  • Python 3은 Amazon EMR 버전 5.30.0 이상의 기본값입니다.

  • 프라이빗 서브넷의 서비스 액세스에 대한 기본 관리형 보안 그룹이 새 규칙으로 업데이트되었습니다. 서비스 액세스에 대한 사용자 지정 보안 그룹을 사용하는 경우, 기본 관리형 보안 그룹과 동일한 규칙을 포함시켜야 합니다. 자세한 내용은 서비스 액세스에 대한 Amazon EMR 관리형 보안 그룹(프라이빗 서브넷)을 참조하세요. Amazon EMR에 대해 사용자 지정 서비스 역할을 사용하는 경우 EMR에서 보안 그룹이 올바르게 생성되는지 여부를 검증할 수 있도록 ec2:describeSecurityGroups에 대한 권한을 부여해야 합니다. EMR_DefaultRole을 사용하는 경우 이 권한은 이미 기본 관리형 정책에 포함되어 있습니다.

알려진 문제
  • 이전 AL2에서 더 낮은 '최대 열린 파일' 한도[최신 릴리스에서 수정됨]. Amazon EMR 릴리스: emr-5.30.x, emr-5.31.0, emr-5.32.0, emr-6.0.0, emr-6.1.0, emr-6.2.0은 Amazon Linux 2(AL2)의 이전 버전에 기반합니다. 이전 버전에서는 Amazon EMR 클러스터가 기본 AMI에서 생성되는 경우 '최대 열린 파일'에 대한 ulimit 설정이 더 낮습니다. Amazon EMR 릴리스 5.30.1, 5.30.2, 5.31.1, 5.32.1, 6.0.1, 6.1.1, 6.2.1, 5.33.0, 6.3.0 이상에는 더 높은 '최대 열린 파일' 설정을 포함한 영구적 수정 사항이 포함되어 있습니다. 열린 파일 한도가 낮은 릴리스의 경우 Spark 작업을 제출할 때 'Too many open files' 오류가 발생합니다. 영향을 받는 릴리스에서 Amazon EMR 기본 AMI의 '최대 열린 파일'에 대한 기본 ulimit 설정은 4,096개이며, 이는 최신 Amazon Linux 2 AMI의 65,536개 파일 제한보다 낮습니다. '최대 열린 파일'에 대한 더 낮은 ulimit 설정을 사용하면 Spark 드라이버와 실행기가 4,096개가 넘는 파일을 열려고 할 때 Spark 작업이 실패합니다. 이 문제를 해결하기 위해 Amazon EMR에는 클러스터 생성 시 ulimit 설정을 조정하는 부트스트랩 작업(BA) 스크립트가 있습니다.

    이 문제에 대한 영구 수정 사항이 포함되지 않은 이전 Amazon EMR 버전을 사용하는 경우 다음 해결 방법을 통해 instance-controller ulimit를 최대 65,536개의 파일로 명시적으로 설정할 수 있습니다.

    명령줄에서 ulimit를 명시적으로 설정합니다.
    1. /etc/systemd/system/instance-controller.service를 편집하여 Service 섹션에 다음 파라미터를 추가합니다.

      LimitNOFILE=65536

      LimitNPROC=65536

    2. InstanceController 다시 시작

      $ sudo systemctl daemon-reload

      $ sudo systemctl restart instance-controller

    부트스트랩 작업(BA)을 사용하여 ulimit 설정

    클러스터 생성 시 부트스트랩 작업(BA) 스크립트를 사용하여 instance-controller ulimit를 65,536개 파일로 구성할 수도 있습니다.

    #!/bin/bash for user in hadoop spark hive; do sudo tee /etc/security/limits.d/$user.conf << EOF $user - nofile 65536 $user - nproc 65536 EOF done for proc in instancecontroller logpusher; do sudo mkdir -p /etc/systemd/system/$proc.service.d/ sudo tee /etc/systemd/system/$proc.service.d/override.conf << EOF [Service] LimitNOFILE=65536 LimitNPROC=65536 EOF pid=$(pgrep -f aws157.$proc.Main) sudo prlimit --pid $pid --nofile=65535:65535 --nproc=65535:65535 done sudo systemctl daemon-reload
  • Managed Scaling

    Presto가 설치되지 않은 5.30.0 및 5.30.1 클러스터에서 Managed Scaling을 수행하면 애플리케이션 장애가 발생하거나 균일한 인스턴스 그룹 또는 인스턴스 플릿이 ARRESTED 상태로 유지될 수 있습니다. 특히 스케일 다운 작업 이후 바로 스케일 업 작업이 수행되는 경우가 이에 해당합니다.

    해결 방법으로 작업에 Presto가 필요하지 않더라도 Amazon EMR 릴리스 5.30.0 및 5.30.1에서 클러스터를 생성할 때 설치할 애플리케이션으로 Presto를 선택합니다.

  • 여러 프라이머리 노드와 Kerberos 인증을 사용하는 클러스터에서 알려진 문제

    Amazon EMR 릴리스 5.20.0 이상에서 여러 프라이머리 노드와 Kerberos 인증을 사용하여 클러스터를 실행하는 경우, 클러스터를 일정 시간 실행한 후 스케일 다운 또는 단계 제출과 같은 클러스터 작업에 문제가 발생할 수 있습니다. 기간은 정의한 Kerberos 티켓 유효 기간에 따라 다릅니다. 스케일 다운 문제는 제출한 자동 스케일 다운 및 명시적 스케일 다운 요청 모두에 영향을 미칩니다. 이외의 다른 클러스터 작업도 영향을 받을 수 있습니다.

    해결 방법:

    • 여러 프라이머리 노드가 있는 EMR 클러스터의 리드 프라이머리 노드에 대한 hadoop 사용자로 SSH 연결합니다.

    • 다음 명령을 실행하여 hadoop 사용자의 Kerberos 티켓을 갱신합니다.

      kinit -kt <keytab_file> <principal>

      일반적으로 keytab 파일은 /etc/hadoop.keytab에 있으며, 보안 주체는 hadoop/<hostname>@<REALM> 양식입니다.

    참고

    이 해결 방법은 Kerberos 티켓이 유효한 기간에 작동합니다. 이 기간은 기본적으로 10시간이지만 Kerberos 설정으로 구성할 수 있습니다. Kerberos 티켓이 만료되면 위 명령을 다시 실행해야 합니다.

  • Hue 4.6.0의 기본 데이터베이스 엔진은 SQLite이며, 이 때문에 외부 데이터베이스에서 Hue를 사용하려고 하면 문제가 발생합니다. 이 문제를 해결하려면 hue-ini 구성 분류에서 enginemysql로 설정합니다. 이 문제는 Amazon EMR 버전 5.30.1에서 수정되었습니다.

  • Hive 파티션 위치 형식과 함께 Spark를 사용하여 Amazon S3의 데이터를 읽고, Amazon EMR 릴리스 5.30.0~5.36.0 및 6.2.0~6.9.0에서 Spark를 실행하는 경우 클러스터가 데이터를 제대로 읽지 못하는 문제가 발생할 수 있습니다. 파티션에 다음과 같은 특성이 모두 있는 경우 이러한 상황이 발생할 수 있습니다.

    • 둘 이상의 파티션이 동일한 테이블에서 스캔됩니다.

    • 하나 이상의 파티션 디렉터리 경로가 하나 이상의 다른 파티션 디렉터리 경로의 접두사입니다. 예를 들어 s3://bucket/table/p=as3://bucket/table/p=a b의 접두사입니다.

    • 다른 파티션 디렉터리에서 접두사 뒤에 오는 첫 번째 문자의 UTF-8 값이 / 문자(U+002F)보다 작습니다. 예를 들어 s3://bucket/table/p=a b에서 a와 b 사이에 있는 공백 문자(U+0020)가 이 카테고리에 속합니다. !"#$%&‘()*+,-와 같은 14개의 비제어 문자가 있습니다. 자세한 내용은 UTF-8 인코딩 테이블 및 유니코드 문자를 참조하세요.

    이 문제를 해결하려면 spark-defaults 분류에서 spark.sql.sources.fastS3PartitionDiscovery.enabled 구성을 false로 설정합니다.

릴리스 5.29.0

다음 릴리스 정보에는 Amazon EMR 릴리스 5.29.0에 대한 정보가 포함됩니다. 변경 사항은 5.28.1에 관련됩니다.

최초 릴리스 날짜: 2020년 1월 17일

업그레이드
  • AWS SDK for Java를 버전 1.11.682로 업그레이드함

  • Hive가 버전 2.3.6으로 업그레이드됨

  • Flink가 버전 1.9.1로 업그레이드됨

  • EmrFS가 버전 2.38.0으로 업그레이드됨

  • EMR DynamoDB Connector가 버전 4.13.0으로 업그레이드됨

변경 사항, 향상된 기능 및 해결된 문제
  • Spark

    • Spark 성능 최적화

  • EMRFS

    • 일관된 보기를 위해 관리 안내서에서 emrfs-site.xml 기본 설정이 업데이트됩니다.

알려진 문제
  • 여러 프라이머리 노드와 Kerberos 인증을 사용하는 클러스터에서 알려진 문제

    Amazon EMR 릴리스 5.20.0 이상에서 여러 프라이머리 노드와 Kerberos 인증을 사용하여 클러스터를 실행하는 경우, 클러스터를 일정 시간 실행한 후 스케일 다운 또는 단계 제출과 같은 클러스터 작업에 문제가 발생할 수 있습니다. 기간은 정의한 Kerberos 티켓 유효 기간에 따라 다릅니다. 스케일 다운 문제는 제출한 자동 스케일 다운 및 명시적 스케일 다운 요청 모두에 영향을 미칩니다. 이외의 다른 클러스터 작업도 영향을 받을 수 있습니다.

    해결 방법:

    • 여러 프라이머리 노드가 있는 EMR 클러스터의 리드 프라이머리 노드에 대한 hadoop 사용자로 SSH 연결합니다.

    • 다음 명령을 실행하여 hadoop 사용자의 Kerberos 티켓을 갱신합니다.

      kinit -kt <keytab_file> <principal>

      일반적으로 keytab 파일은 /etc/hadoop.keytab에 있으며, 보안 주체는 hadoop/<hostname>@<REALM> 양식입니다.

    참고

    이 해결 방법은 Kerberos 티켓이 유효한 기간에 작동합니다. 이 기간은 기본적으로 10시간이지만 Kerberos 설정으로 구성할 수 있습니다. Kerberos 티켓이 만료되면 위 명령을 다시 실행해야 합니다.

릴리스 5.28.1

다음 릴리스 정보에는 Amazon EMR 릴리스 5.28.1에 대한 정보가 포함됩니다. 변경 사항은 5.28.0에 관련됩니다.

최초 릴리스 날짜: 2020년 1월 10일

변경 사항, 향상된 기능 및 해결된 문제
  • Spark

    • Spark 호환성 문제를 수정했습니다.

  • CloudWatch 지표

    • 여러 프라이머리 노드가 있는 EMR 클러스터에 Amazon CloudWatch 지표가 게시되는 문제를 수정했습니다.

  • 로그 메시지 비활성화

    • false 로그 메시지 "이전 버전(<4.5.8)의 Apache http 클라이언트를 사용..."을 비활성화했습니다.

알려진 문제
  • 여러 프라이머리 노드와 Kerberos 인증을 사용하는 클러스터에서 알려진 문제

    Amazon EMR 릴리스 5.20.0 이상에서 여러 프라이머리 노드와 Kerberos 인증을 사용하여 클러스터를 실행하는 경우, 클러스터를 일정 시간 실행한 후 스케일 다운 또는 단계 제출과 같은 클러스터 작업에 문제가 발생할 수 있습니다. 기간은 정의한 Kerberos 티켓 유효 기간에 따라 다릅니다. 스케일 다운 문제는 제출한 자동 스케일 다운 및 명시적 스케일 다운 요청 모두에 영향을 미칩니다. 이외의 다른 클러스터 작업도 영향을 받을 수 있습니다.

    해결 방법:

    • 여러 프라이머리 노드가 있는 EMR 클러스터의 리드 프라이머리 노드에 대한 hadoop 사용자로 SSH 연결합니다.

    • 다음 명령을 실행하여 hadoop 사용자의 Kerberos 티켓을 갱신합니다.

      kinit -kt <keytab_file> <principal>

      일반적으로 keytab 파일은 /etc/hadoop.keytab에 있으며, 보안 주체는 hadoop/<hostname>@<REALM> 양식입니다.

    참고

    이 해결 방법은 Kerberos 티켓이 유효한 기간에 작동합니다. 이 기간은 기본적으로 10시간이지만 Kerberos 설정으로 구성할 수 있습니다. Kerberos 티켓이 만료되면 위 명령을 다시 실행해야 합니다.

릴리스 5.28.0

다음 릴리스 정보에는 Amazon EMR 릴리스 5.28.0에 대한 정보가 포함됩니다. 변경 사항은 5.27.0에 관련됩니다.

최초 릴리스 날짜: 2019년 11월 12일

업그레이드
  • Flink가 버전 1.9.0으로 업그레이드됨

  • Hive가 버전 2.3.6으로 업그레이드됨

  • MXNet이 1.5.1로 업그레이드됨

  • Phoenix가 버전 4.14.3으로 업그레이드됨

  • Presto가 버전 0.227로 업그레이드됨

  • Zeppelin이 버전 0.8.2로 업그레이드됨

새로운 기능
  • 이제 Apache Hudi는 클러스터를 생성할 때 Amazon EMR에서 설치할 수 있습니다. 자세한 내용은 Hudi 섹션을 참조하세요.

  • (2019년 11월 25일) 이제 클러스터 사용률을 개선하고 비용을 절감하기 위해 여러 단계를 병렬로 실행하도록 선택할 수 있습니다. 대기 중인 단계와 실행 중인 단계를 모두 취소할 수도 있습니다. 자세한 내용은 AWS CLI 및 콘솔을 사용하여 단계 작업을 참조하십시오.

  • (2019년 12월 3일) 이제 AWS Outposts에서 EMR 클러스터를 생성하고 실행할 수 있습니다. AWS Outposts에서는 온프레미스 시설에서 네이티브 AWS 서비스, 인프라 및 운영 모델을 지원합니다. AWS Outposts 환경에서는 AWS 클라우드에서 사용하는 것과 동일한 AWS API, 도구 및 인프라를 사용할 수 있습니다. 자세한 내용은 AWS Outposts에서 EMR 클러스터를 참조하세요.

  • (2020년 3월 11일) Amazon EMR 버전 5.28.0부터 로컬 영역을 지원하는 AWS 리전의 논리적 확장으로 AWS 로컬 영역 서브넷에서 Amazon EMR 클러스터를 생성하고 실행할 수 있습니다. 로컬 영역을 사용하면 컴퓨팅 및 스토리지 서비스와 같은 Amazon EMR 기능 및 일부 AWS 서비스를 사용자와 더 가깝게 배치할 수 있으므로, 로컬로 실행되는 애플리케이션의 액세스 지연 시간을 크게 매우 단축할 수 있습니다 사용 가능한 로컬 영역 목록은 AWS Local Zones를 참조하세요. 사용 가능한 AWS 로컬 영역 액세스에 대한 자세한 내용은 리전, 가용 영역 및 로컬 영역을 참조하세요.

    로컬 영역은 현재 Amazon EMR Notebooks를 지원하지 않으며 인터페이스 VPC 엔드포인트(AWS PrivateLink)를 사용하여 Amazon EMR에 직접 연결하는 기능도 지원하지 않습니다.

변경 사항, 향상된 기능 및 해결된 문제
알려진 문제
  • 여러 프라이머리 노드와 Kerberos 인증을 사용하는 클러스터에서 알려진 문제

    Amazon EMR 릴리스 5.20.0 이상에서 여러 프라이머리 노드와 Kerberos 인증을 사용하여 클러스터를 실행하는 경우, 클러스터를 일정 시간 실행한 후 스케일 다운 또는 단계 제출과 같은 클러스터 작업에 문제가 발생할 수 있습니다. 기간은 정의한 Kerberos 티켓 유효 기간에 따라 다릅니다. 스케일 다운 문제는 제출한 자동 스케일 다운 및 명시적 스케일 다운 요청 모두에 영향을 미칩니다. 이외의 다른 클러스터 작업도 영향을 받을 수 있습니다.

    해결 방법:

    • 여러 프라이머리 노드가 있는 EMR 클러스터의 리드 프라이머리 노드에 대한 hadoop 사용자로 SSH 연결합니다.

    • 다음 명령을 실행하여 hadoop 사용자의 Kerberos 티켓을 갱신합니다.

      kinit -kt <keytab_file> <principal>

      일반적으로 keytab 파일은 /etc/hadoop.keytab에 있으며, 보안 주체는 hadoop/<hostname>@<REALM> 양식입니다.

    참고

    이 해결 방법은 Kerberos 티켓이 유효한 기간에 작동합니다. 이 기간은 기본적으로 10시간이지만 Kerberos 설정으로 구성할 수 있습니다. Kerberos 티켓이 만료되면 위 명령을 다시 실행해야 합니다.

릴리스 5.27.0

다음 릴리스 정보에는 Amazon EMR 릴리스 5.27.0에 대한 정보가 포함됩니다. 변경 사항은 5.26.0에 관련됩니다.

최초 릴리스 날짜: 2019년 9월 23일

업그레이드
  • AWS SDK for Java 1.11.615

  • Flink 1.8.1

  • JupyterHub 1.0.0

  • Spark 2.4.4

  • TensorFlow 1.14.0

  • 커넥터 및 드라이버:

    • DynamoDB 커넥터 4.12.0

새로운 기능
  • (2019년 10월 24일) 다음과 같은 EMR 노트북의 새로운 기능은 모든 Amazon EMR 릴리스에서 사용할 수 있습니다.

    • 이제 Git 리포지토리를 EMR 노트북과 연결하여 버전 제어 환경에서 노트북을 저장할 수 있습니다. 원격 Git 리포지토리를 통해 동료와 코드를 공유할 수 있고 기존 Jupyter Notebook을 재사용할 수 있습니다. 자세한 내용은 Amazon EMR 관리 안내서에서 Amazon EMR Notebooks에 Git 리포지토리 연결을 참조하세요.

    • 이제 EMR 노트북에서 nbdime 유틸리티를 사용하여 노트북 비교 및 병합을 간소화할 수 있습니다.

    • 이제 EMR 노트북이 JupyterLab을 지원합니다. JupyterLab은 Jupyter Notebook과 완전히 호환 가능한 웹 기반 대화식 개발 환경입니다. 이제 JupyterLab 또는 Jupyter Notebook 편집기에서 노트북을 열 수 있는 옵션이 제공됩니다.

  • (2019년 10월 30일) Amazon EMR 버전 5.25.0 이상부터 콘솔에서 클러스터 요약 페이지 또는 애플리케이션 기록 탭을 사용해 Spark 기록 서버 UI에 연결할 수 있습니다. SSH 연결을 통해 웹 프록시를 설정하는 대신, Spark 기록 서버 UI에 액세스하여 애플리케이션 지표를 보고 활성 클러스터 및 종료된 클러스터에 대한 관련 로그 파일에 액세스할 수 있습니다. 자세한 내용은 Amazon EMR 관리 안내서에서 영구 애플리케이션 사용자 인터페이스에 대해 클러스터 외부에서 액세스를 참조하세요.

변경 사항, 향상된 기능 및 해결된 문제
알려진 문제
  • 여러 프라이머리 노드와 Kerberos 인증을 사용하는 클러스터에서 알려진 문제

    Amazon EMR 릴리스 5.20.0 이상에서 여러 프라이머리 노드와 Kerberos 인증을 사용하여 클러스터를 실행하는 경우, 클러스터를 일정 시간 실행한 후 스케일 다운 또는 단계 제출과 같은 클러스터 작업에 문제가 발생할 수 있습니다. 기간은 정의한 Kerberos 티켓 유효 기간에 따라 다릅니다. 스케일 다운 문제는 제출한 자동 스케일 다운 및 명시적 스케일 다운 요청 모두에 영향을 미칩니다. 이외의 다른 클러스터 작업도 영향을 받을 수 있습니다.

    해결 방법:

    • 여러 프라이머리 노드가 있는 EMR 클러스터의 리드 프라이머리 노드에 대한 hadoop 사용자로 SSH 연결합니다.

    • 다음 명령을 실행하여 hadoop 사용자의 Kerberos 티켓을 갱신합니다.

      kinit -kt <keytab_file> <principal>

      일반적으로 keytab 파일은 /etc/hadoop.keytab에 있으며, 보안 주체는 hadoop/<hostname>@<REALM> 양식입니다.

    참고

    이 해결 방법은 Kerberos 티켓이 유효한 기간에 작동합니다. 이 기간은 기본적으로 10시간이지만 Kerberos 설정으로 구성할 수 있습니다. Kerberos 티켓이 만료되면 위 명령을 다시 실행해야 합니다.

Release 5.26.0

다음 릴리스 정보에는 Amazon EMR 릴리스 5.26.0에 대한 정보가 포함됩니다. 변경 사항은 5.25.0에 관련됩니다.

최초 릴리스 날짜: 2019년 8월 8일

최종 업데이트 날짜: 2019년 8월 19일

업그레이드
  • AWS SDK for Java 1.11.595

  • HBase 1.4.10

  • Phoenix 4.14.2

  • 커넥터 및 드라이버:

    • DynamoDB 커넥터 4.11.0

    • MariaDB 커넥터 2.4.2

    • Amazon Redshift JDBC 드라이버 1.2.32.1056

새로운 기능
  • (베타) Amazon EMR 5.26.0에서 Lake Formation과 통합된 클러스터를 시작할 수 있습니다. 이 통합은 AWS Glue 데이터 카탈로그의 데이터베이스 및 테이블에 대한 세분화된 열 수준 액세스를 제공합니다. 또한 엔터프라이즈 자격 증명 시스템에서 EMR 노트북 또는 Apache Zeppelin에 연동된 Single Sign-On을 사용할 수도 있습니다. 자세한 내용은 Amazon EMR과 AWS Lake Formation 통합(베타)을 참조하세요.

  • (2019년 8월 19일) 보안 그룹을 지원하는 모든 Amazon EMR 릴리스에 Amazon EMR 퍼블릭 액세스 차단 기능을 사용할 수 있습니다. 퍼블릭 액세스 차단은 각 AWS 리전에 적용되는 계정 차원의 설정입니다. 포트가 예외로 지정되지 않은 한, 퍼블릭 액세스 차단은 클러스터와 연결된 보안 그룹에 포트의 IPv4 0.0.0.0/0 또는 IPv6 ::/0(퍼블릭 액세스)에서 인바운드 트래픽을 허용하는 규칙이 있을 때 클러스터가 시작되지 않도록 합니다. 포트 22는 기본적으로 예외로 설정됩니다. 자세한 내용은 Amazon EMR 관리 안내서에서 Amazon EMR 퍼블랙 액세스 차단 기능 사용을 참조하세요.

변경 사항, 향상된 기능 및 해결된 문제
  • EMR 노트북

    • EMR 5.26.0 이상에서 EMR Notebooks는 기본 Python 라이브러리 외에도 노트북 범위의 Python 라이브러리를 지원합니다. 클러스터를 다시 생성하거나 노트북을 클러스터에 다시 연결할 필요 없이 노트북 편집기 내에서 노트북 범위 라이브러리를 설치할 수 있습니다. 노트북 범위의 라이브러리는 Python 가상 환경에서 생성되므로 현재 노트북 세션에만 적용됩니다. 이를 통해 노트북 종속성을 분리할 수 있습니다. 자세한 내용은 Amazon EMR 관리 안내서에서 노트북 범위 라이브러리 사용을 참조하세요.

  • EMRFS

    • fs.s3.consistent.metadata.etag.verification.enabledtrue로 설정하여 ETag 확인 기능(베타)을 활성화할 수 있습니다. 이 기능을 통해 EMRFS는 Amazon S3 ETag를 사용하여 읽고 있는 객체가 사용 가능한 최신 버전인지 확인합니다. 이 기능은 동일한 이름을 유지하면서 Amazon S3의 파일을 덮어쓰는 업데이트 후 읽기 사용 사례에 유용합니다. 이 ETag 확인 기능은 현재 S3 Select에서 작동하지 않습니다. 자세한 내용은 일관된 보기 구성 단원을 참조하십시오.

  • Spark

    • 동적 파티션 잘라내기, INTERSECT에 앞선 DISTINCT, JOIN-DISINCT 쿼리에 대한 SQL 계획 통계 추론의 개선, 스칼라 하위 쿼리 평면화, 최적화된 조인 재정렬 및 블룸 필터 조인과 같은 최적화가 이제 기본적으로 설정됩니다. 자세한 내용은 Spark 성능 최적화를 참조하십시오.

    • 정렬 병합 조인의 전체 스테이지 코드 생성 기능이 개선되었습니다.

    • 쿼리 조각 및 하위 쿼리 재사용이 개선되었습니다.

    • Spark 시작 시 실행기를 사전 할당하도록 개선되었습니다.

    • 조인의 작은 쪽에 브로드캐스트 힌트가 포함되어 있으면 블룸 필터 조인이 더 이상 적용되지 않습니다.

  • Tez의 Hive 실행 시간 비교

    • Tez 관련 문제를 해결했습니다. 이제 Tez UI는 여러 프라이머리 노드를 포함하는 Amazon EMR 클러스터에서 작동합니다.

알려진 문제
  • 정렬 병합 조인에 대한 향상된 전체 스테이지 코드 생성 기능을 사용하면 메모리 압력을 높일 수 있습니다. 이 최적화는 성능을 향상시키지만 spark.yarn.executor.memoryOverheadFactor가 충분한 메모리를 제공하도록 조정되지 않은 경우 작업 재시도 또는 실패를 초래할 수 있습니다. 이 기능을 비활성화하려면 spark.sql.sortMergeJoinExec.extendedCodegen.enabled를 false로 설정하십시오.

  • 여러 프라이머리 노드와 Kerberos 인증을 사용하는 클러스터에서 알려진 문제

    Amazon EMR 릴리스 5.20.0 이상에서 여러 프라이머리 노드와 Kerberos 인증을 사용하여 클러스터를 실행하는 경우, 클러스터를 일정 시간 실행한 후 스케일 다운 또는 단계 제출과 같은 클러스터 작업에 문제가 발생할 수 있습니다. 기간은 정의한 Kerberos 티켓 유효 기간에 따라 다릅니다. 스케일 다운 문제는 제출한 자동 스케일 다운 및 명시적 스케일 다운 요청 모두에 영향을 미칩니다. 이외의 다른 클러스터 작업도 영향을 받을 수 있습니다.

    해결 방법:

    • 여러 프라이머리 노드가 있는 EMR 클러스터의 리드 프라이머리 노드에 대한 hadoop 사용자로 SSH 연결합니다.

    • 다음 명령을 실행하여 hadoop 사용자의 Kerberos 티켓을 갱신합니다.

      kinit -kt <keytab_file> <principal>

      일반적으로 keytab 파일은 /etc/hadoop.keytab에 있으며, 보안 주체는 hadoop/<hostname>@<REALM> 양식입니다.

    참고

    이 해결 방법은 Kerberos 티켓이 유효한 기간에 작동합니다. 이 기간은 기본적으로 10시간이지만 Kerberos 설정으로 구성할 수 있습니다. Kerberos 티켓이 만료되면 위 명령을 다시 실행해야 합니다.

릴리스 5.25.0

다음 릴리스 정보에는 Amazon EMR 릴리스 5.25.0에 대한 정보가 포함됩니다. 변경 사항은 5.24.1에 관련됩니다.

최초 릴리스 날짜: 2019년 7월 17일

최종 업데이트 날짜: 2019년 10월 30일

Amazon EMR 5.25.0

업그레이드
  • AWS SDK for Java 1.11.566

  • Hive 2.3.5

  • Presto 0.220

  • Spark 2.4.3

  • TensorFlow 1.13.1

  • Tez 0.9.2

  • Zookeeper 3.4.14

새로운 기능
  • (2019년 10월 30일) Amazon EMR 버전 5.25.0부터 콘솔에서 클러스터 요약 페이지 또는 애플리케이션 기록 탭을 사용해 Spark 기록 서버 UI에 연결할 수 있습니다. SSH 연결을 통해 웹 프록시를 설정하는 대신, Spark 기록 서버 UI에 액세스하여 애플리케이션 지표를 보고 활성 클러스터 및 종료된 클러스터에 대한 관련 로그 파일에 액세스할 수 있습니다. 자세한 내용은 Amazon EMR 관리 안내서에서 영구 애플리케이션 사용자 인터페이스에 대해 클러스터 외부에서 액세스를 참조하세요.

변경 사항, 향상된 기능 및 해결된 문제
  • Spark

    • Bloom 필터로 입력을 사전 필터링하여 일부 조인의 성능을 개선했습니다. 이 최적화는 기본적으로 비활성화되어 있으며, Spark 구성 파라미터 spark.sql.bloomFilterJoin.enabledtrue로 설정하여 활성화할 수 있습니다.

    • 문자열 형식 열을 기준으로 그룹화하는 성능을 개선했습니다.

    • HBase를 설치하지 않고 클러스터에 대한 R4 인스턴스 유형의 핵심 구성 및 기본 Spark 실행기 메모리를 개선했습니다.

    • 잘린 테이블이 조인의 왼쪽에 있어야 하는 이전의 동적 파티션 잘라내기 기능에 대한 문제를 해결했습니다.

    • 별칭과 관련된 추가 사례를 적용하기 위해 INTERSECT 이전 DISTINCT 최적화를 개선했습니다.

    • DISTINCT 쿼리 이전 JOIN에 대한 SQL 계획 통계 추론을 개선했습니다. 이 개선 사항은 기본적으로 비활성화되어 있으며, Spark 구성 파라미터 spark.sql.statsImprovements.enabledtrue로 설정하여 활성화할 수 있습니다. 이 최적화는 Intersect 이전 Distinct 기능에 필요하며 spark.sql.optimizer.distinctBeforeIntersect.enabledtrue로 설정할 경우 자동으로 활성화됩니다.

    • 테이블 크기 및 필터에 따라 조인 순서를 최적화했습니다. 이 최적화는 기본적으로 비활성화되어 있으며, Spark 구성 파라미터 spark.sql.optimizer.sizeBasedJoinReorder.enabledtrue로 설정하여 활성화할 수 있습니다.

    자세한 내용은 Spark 성능 최적화를 참조하십시오.

  • EMRFS

    • 이제 EMRFS 설정 fs.s3.buckets.create.enabled가 기본적으로 비활성화됩니다. 테스트 결과 이 설정을 비활성화하면 성능이 향상되고 의도치 않은 S3 버킷 생성이 방지된다는 사실을 확인했습니다. 애플리케이션이 이 기능을 사용하는 경우 emrfs-site 구성 분류에서 속성 fs.s3.buckets.create.enabledtrue로 설정하여 활성화할 수 있습니다. 자세한 내용은 클러스터를 생성할 때 구성 제공 단원을 참조하십시오.

  • 보안 구성의 로컬 디스크 암호화 및 S3 암호화 개선(2019년 8월 5일)

    • 보안 구성 설정에서 로컬 디스크 암호화 설정과 Amazon S3 암호화 설정이 분리되었습니다.

    • EBS 암호화를 활성화하는 옵션이 5.24.0 이상 릴리스에 추가되었습니다. 이 옵션을 선택하면 스토리지 볼륨뿐만 아니라 루트 디바이스 볼륨도 암호화됩니다. 이전 버전에서는 사용자 지정 AMI를 사용하여 루트 디바이스 볼륨을 암호화해야 했습니다.

    • 자세한 내용은 Amazon EMR 관리 안내서에서 암호화 옵션을 참조하세요.

알려진 문제
  • 여러 프라이머리 노드와 Kerberos 인증을 사용하는 클러스터에서 알려진 문제

    Amazon EMR 릴리스 5.20.0 이상에서 여러 프라이머리 노드와 Kerberos 인증을 사용하여 클러스터를 실행하는 경우, 클러스터를 일정 시간 실행한 후 스케일 다운 또는 단계 제출과 같은 클러스터 작업에 문제가 발생할 수 있습니다. 기간은 정의한 Kerberos 티켓 유효 기간에 따라 다릅니다. 스케일 다운 문제는 제출한 자동 스케일 다운 및 명시적 스케일 다운 요청 모두에 영향을 미칩니다. 이외의 다른 클러스터 작업도 영향을 받을 수 있습니다.

    해결 방법:

    • 여러 프라이머리 노드가 있는 EMR 클러스터의 리드 프라이머리 노드에 대한 hadoop 사용자로 SSH 연결합니다.

    • 다음 명령을 실행하여 hadoop 사용자의 Kerberos 티켓을 갱신합니다.

      kinit -kt <keytab_file> <principal>

      일반적으로 keytab 파일은 /etc/hadoop.keytab에 있으며, 보안 주체는 hadoop/<hostname>@<REALM> 양식입니다.

    참고

    이 해결 방법은 Kerberos 티켓이 유효한 기간에 작동합니다. 이 기간은 기본적으로 10시간이지만 Kerberos 설정으로 구성할 수 있습니다. Kerberos 티켓이 만료되면 위 명령을 다시 실행해야 합니다.

릴리스 5.24.1

다음 릴리스 정보에는 Amazon EMR 릴리스 5.24.1에 대한 정보가 포함됩니다. 변경 사항은 5.24.0에 관련됩니다.

최초 릴리스 날짜: 2019년 6월 26일

변경 사항, 향상된 기능 및 해결된 문제
  • TCP SACK 서비스 거부 문제(AWS-2019-005)를 비롯한 중요한 Linux 커널 보안 업데이트를 포함하도록 Amazon EMR의 기본 Amazon Linux AMI를 업데이트했습니다.

알려진 문제
  • 여러 프라이머리 노드와 Kerberos 인증을 사용하는 클러스터에서 알려진 문제

    Amazon EMR 릴리스 5.20.0 이상에서 여러 프라이머리 노드와 Kerberos 인증을 사용하여 클러스터를 실행하는 경우, 클러스터를 일정 시간 실행한 후 스케일 다운 또는 단계 제출과 같은 클러스터 작업에 문제가 발생할 수 있습니다. 기간은 정의한 Kerberos 티켓 유효 기간에 따라 다릅니다. 스케일 다운 문제는 제출한 자동 스케일 다운 및 명시적 스케일 다운 요청 모두에 영향을 미칩니다. 이외의 다른 클러스터 작업도 영향을 받을 수 있습니다.

    해결 방법:

    • 여러 프라이머리 노드가 있는 EMR 클러스터의 리드 프라이머리 노드에 대한 hadoop 사용자로 SSH 연결합니다.

    • 다음 명령을 실행하여 hadoop 사용자의 Kerberos 티켓을 갱신합니다.

      kinit -kt <keytab_file> <principal>

      일반적으로 keytab 파일은 /etc/hadoop.keytab에 있으며, 보안 주체는 hadoop/<hostname>@<REALM> 양식입니다.

    참고

    이 해결 방법은 Kerberos 티켓이 유효한 기간에 작동합니다. 이 기간은 기본적으로 10시간이지만 Kerberos 설정으로 구성할 수 있습니다. Kerberos 티켓이 만료되면 위 명령을 다시 실행해야 합니다.

릴리스 5.24.0

다음 릴리스 정보에는 Amazon EMR 릴리스 5.24.0에 대한 정보가 포함됩니다. 변경 사항은 5.23.0에 관련됩니다.

최초 릴리스 날짜: 2019년 6월 11일

최종 업데이트 날짜: 2019년 8월 5일

업그레이드
  • Flink 1.8.0

  • Hue 4.4.0

  • JupyterHub 0.9.6

  • Livy 0.6.0

  • MxNet 1.4.0

  • Presto 0.219

  • Spark 2.4.2

  • AWS SDK for Java 1.11.546

  • 커넥터 및 드라이버:

    • DynamoDB 커넥터 4.9.0

    • MariaDB 커넥터 2.4.1

    • Amazon Redshift JDBC 드라이버 1.2.27.1051

변경 사항, 향상된 기능 및 해결된 문제
  • Spark

    • 파티션을 동적으로 삭제하는 최적화가 추가되었습니다. 최적화는 기본적으로 비활성화되어 있습니다. 활성화하려면 Spark 구성 파라미터 spark.sql.dynamicPartitionPruning.enabledtrue로 설정하십시오.

    • INTERSECT 쿼리의 성능을 개선했습니다. 이 최적화는 기본적으로 비활성화되어 있습니다. 활성화하려면 Spark 구성 파라미터 spark.sql.optimizer.distinctBeforeIntersect.enabledtrue로 설정하십시오.

    • 동일한 관계를 사용하는 집계로 스칼라 하위 쿼리를 평면화하는 최적화가 추가되었습니다. 최적화는 기본적으로 비활성화되어 있습니다. 활성화하려면 Spark 구성 파라미터 spark.sql.optimizer.flattenScalarSubqueriesWithAggregates.enabledtrue로 설정하십시오.

    • 전체 스테이지 코드 생성이 개선되었습니다.

    자세한 내용은 Spark 성능 최적화를 참조하십시오.

  • 보안 구성의 로컬 디스크 암호화 및 S3 암호화 개선(2019년 8월 5일)

    • 보안 구성 설정에서 로컬 디스크 암호화 설정과 Amazon S3 암호화 설정이 분리되었습니다.

    • EBS 암호화를 활성화하는 옵션이 추가되었습니다. 이 옵션을 선택하면 스토리지 볼륨뿐만 아니라 루트 디바이스 볼륨도 암호화됩니다. 이전 버전에서는 사용자 지정 AMI를 사용하여 루트 디바이스 볼륨을 암호화해야 했습니다.

    • 자세한 내용은 Amazon EMR 관리 안내서에서 암호화 옵션을 참조하세요.

알려진 문제
  • 여러 프라이머리 노드와 Kerberos 인증을 사용하는 클러스터에서 알려진 문제

    Amazon EMR 릴리스 5.20.0 이상에서 여러 프라이머리 노드와 Kerberos 인증을 사용하여 클러스터를 실행하는 경우, 클러스터를 일정 시간 실행한 후 스케일 다운 또는 단계 제출과 같은 클러스터 작업에 문제가 발생할 수 있습니다. 기간은 정의한 Kerberos 티켓 유효 기간에 따라 다릅니다. 스케일 다운 문제는 제출한 자동 스케일 다운 및 명시적 스케일 다운 요청 모두에 영향을 미칩니다. 이외의 다른 클러스터 작업도 영향을 받을 수 있습니다.

    해결 방법:

    • 여러 프라이머리 노드가 있는 EMR 클러스터의 리드 프라이머리 노드에 대한 hadoop 사용자로 SSH 연결합니다.

    • 다음 명령을 실행하여 hadoop 사용자의 Kerberos 티켓을 갱신합니다.

      kinit -kt <keytab_file> <principal>

      일반적으로 keytab 파일은 /etc/hadoop.keytab에 있으며, 보안 주체는 hadoop/<hostname>@<REALM> 양식입니다.

    참고

    이 해결 방법은 Kerberos 티켓이 유효한 기간에 작동합니다. 이 기간은 기본적으로 10시간이지만 Kerberos 설정으로 구성할 수 있습니다. Kerberos 티켓이 만료되면 위 명령을 다시 실행해야 합니다.

릴리스 5.23.0

다음 릴리스 정보에는 Amazon EMR 릴리스 5.23.0에 대한 정보가 포함됩니다. 변경 사항은 5.22.0에 관련됩니다.

최초 릴리스 날짜: 2019년 4월 1일

최종 업데이트 날짜: 2019년 4월 30일

업그레이드
  • AWS SDK for Java 1.11.519

새로운 기능
  • (2019년 4월 30일) Amazon EMR 5.23.0 이상에서 3개의 프라이머리 노드를 포함하는 클러스터를 시작하고 YARN Resource Manager, HDFS NameNode, Spark, Hive, Ganglia와 같은 애플리케이션의 고가용성을 지원할 수 있습니다. 이 기능을 사용하면 프라이머리 노드가 더 이상 잠재적 단일 장애 지점이 아닙니다. 프라이머리 노드 중 하나에 장애가 발생할 경우, Amazon EMR이 자동으로 대기 프라이머리 노드로 장애 조치하고 장애가 발생한 프라이머리 노드를 동일한 구성 및 부트스트랩 작업을 갖는 새로운 프라이머리 노드로 교체합니다. 자세한 내용은 프라이머리 노드 계획 및 구성을 참조하세요.

알려진 문제
  • Tez UI(Amazon EMR 릴리스 5.26.0에서 수정됨)

    Tez UI는 여러 프라이머리 노드를 포함하는 EMR 클러스터에서 작동하지 않습니다.

  • Hue(Amazon EMR 릴리스 5.24.0에서 수정됨)

    • Amazon EMR에서 실행되는 Hue는 Solr을 지원하지 않습니다. Amazon EMR 릴리스 5.20.0부터 잘못된 구성 문제로 인해 Solr이 활성화되고 다음과 유사한 무해한 오류 메시지가 표시됩니다.

      Solr server could not be contacted properly: HTTPConnectionPool('host=ip-xx-xx-xx-xx.ec2.internal', port=1978): Max retries exceeded with url: /solr/admin/info/system?user.name=hue&doAs=administrator&wt=json (Caused by NewConnectionError(': Failed to establish a new connection: [Errno 111] Connection refused',))

      Solr 오류 메시지를 표시하지 않으려면

      1. SSH를 사용하여 프라이머리 노드 명령줄에 연결합니다.

      2. 텍스트 편집기를 사용하여 hue.ini 파일을 엽니다. 예:

        sudo vim /etc/hue/conf/hue.ini

      3. appblacklist라는 단어를 검색하고 해당 줄을 다음과 같이 수정합니다.

        appblacklist = search
      4. 변경 내용을 저장하고 다음 예와 같이 Hue를 다시 시작합니다.

        sudo stop hue; sudo start hue
  • 여러 프라이머리 노드와 Kerberos 인증을 사용하는 클러스터에서 알려진 문제

    Amazon EMR 릴리스 5.20.0 이상에서 여러 프라이머리 노드와 Kerberos 인증을 사용하여 클러스터를 실행하는 경우, 클러스터를 일정 시간 실행한 후 스케일 다운 또는 단계 제출과 같은 클러스터 작업에 문제가 발생할 수 있습니다. 기간은 정의한 Kerberos 티켓 유효 기간에 따라 다릅니다. 스케일 다운 문제는 제출한 자동 스케일 다운 및 명시적 스케일 다운 요청 모두에 영향을 미칩니다. 이외의 다른 클러스터 작업도 영향을 받을 수 있습니다.

    해결 방법:

    • 여러 프라이머리 노드가 있는 EMR 클러스터의 리드 프라이머리 노드에 대한 hadoop 사용자로 SSH 연결합니다.

    • 다음 명령을 실행하여 hadoop 사용자의 Kerberos 티켓을 갱신합니다.

      kinit -kt <keytab_file> <principal>

      일반적으로 keytab 파일은 /etc/hadoop.keytab에 있으며, 보안 주체는 hadoop/<hostname>@<REALM> 양식입니다.

    참고

    이 해결 방법은 Kerberos 티켓이 유효한 기간에 작동합니다. 이 기간은 기본적으로 10시간이지만 Kerberos 설정으로 구성할 수 있습니다. Kerberos 티켓이 만료되면 위 명령을 다시 실행해야 합니다.

릴리스 5.22.0

다음 릴리스 정보에는 Amazon EMR 릴리스 5.22.0에 대한 정보가 포함됩니다. 변경 사항은 5.21.0에 관련됩니다.

중요

Amazon EMR 릴리스 5.22.0부터 Amazon EMR은 AWS 서명 버전 4를 단독으로 사용하여 Amazon S3에 대한 요청을 인증합니다. 릴리스 정보에 서명 버전 4가 단독으로 사용된다고 표시되어 있지 않는 한, 이전 Amazon EMR 릴리스에서는 AWS 서명 버전 2를 사용하는 경우도 있습니다. 자세한 내용은 Amazon Simple Storage Service 개발자 안내서에서 Authenticating Requests (AWS Signature Version 4)Authenticating Requests (AWS Signature Version 2)를 참조하세요.

최초 릴리스 날짜: 2019년 3월 20일

업그레이드
  • Flink 1.7.1

  • HBase 1.4.9

  • Oozie 5.1.0

  • Phoenix 4.14.1

  • Zeppelin 0.8.1

  • 커넥터 및 드라이버:

    • DynamoDB 커넥터 4.8.0

    • MariaDB Connector 2.2.6

    • Amazon Redshift JDBC 드라이버 1.2.20.1043

새로운 기능
  • EBS 전용 스토리지를 사용하는 EC2 인스턴스 유형에 대한 기본 EBS 구성을 수정했습니다. Amazon EMR 릴리스 5.22.0 이상을 사용하여 클러스터를 생성할 때 EBS 스토리지의 기본적인 크기가 인스턴스 크기에 따라 증가합니다. 뿐만 아니라 증가한 스토리지를 여러 볼륨에 분할하여 향상된 IOPS 성능을 제공합니다. 다른 EBS 인스턴스 스토리지 구성을 사용하려는 경우 EMR 클러스터를 생성하거나 기존 클러스터에 노드를 추가할 때 이 구성을 지정할 수 있습니다. 각 인스턴스 유형에 기본적으로 할당된 스토리지 크기와 볼륨 수에 대한 자세한 내용은 Amazon EMR 관리 안내서에서 인스턴스의 기본 EBS 스토리지를 참조하세요.

변경 사항, 향상된 기능 및 해결된 문제
  • Spark

    • YARN의 Spark에 새로운 구성 속성 spark.yarn.executor.memoryOverheadFactor를 추가했습니다. 이 속성의 값은 최소 384MB의 메모리 오버헤드 값을 실행기 메모리의 백분율로 설정하는 확장 팩터입니다. 메모리 오버헤드가 spark.yarn.executor.memoryOverhead를 사용하여 명시적으로 설정된 경우 이 속성은 아무 효과가 없습니다. 기본값은 18.75%를 나타내는 0.1875입니다. Amazon EMR의 기본값은 실행기 메모리 오버헤드를 위해 Spark에서 내부적으로 설정한 기본값 10%보다 더 많은 공간을 YARN 컨테이너에 남깁니다. TPC-DS 벤치마크 결과 Amazon EMR 기본값, 18.75%로 설정하면 메모리 관련 오류가 경험적으로 적었습니다.

    • 성능 개선을 위해 SPARK-26316을 백포트했습니다.

  • Amazon EMR 버전 5.19.0, 5.20.0 및 5.21.0에서 YARN 노드 레이블은 HDFS 디렉터리에 저장됩니다. 이로 인해 경우에 따라 코어 노드 시작이 지연되어 클러스터가 시간 초과되고 시작이 실패할 수 있습니다. Amazon EMR 5.22.0부터 이 문제가 해결되었습니다. YARN 노드 레이블은 각 클러스터 노드의 로컬 디스크에 저장되어 HDFS에 종속되지 않습니다.

알려진 문제
  • Hue(Amazon EMR 릴리스 5.24.0에서 수정됨)

    • Amazon EMR에서 실행되는 Hue는 Solr을 지원하지 않습니다. Amazon EMR 릴리스 5.20.0부터 잘못된 구성 문제로 인해 Solr이 활성화되고 다음과 유사한 무해한 오류 메시지가 표시됩니다.

      Solr server could not be contacted properly: HTTPConnectionPool('host=ip-xx-xx-xx-xx.ec2.internal', port=1978): Max retries exceeded with url: /solr/admin/info/system?user.name=hue&doAs=administrator&wt=json (Caused by NewConnectionError(': Failed to establish a new connection: [Errno 111] Connection refused',))

      Solr 오류 메시지를 표시하지 않으려면

      1. SSH를 사용하여 프라이머리 노드 명령줄에 연결합니다.

      2. 텍스트 편집기를 사용하여 hue.ini 파일을 엽니다. 예:

        sudo vim /etc/hue/conf/hue.ini

      3. appblacklist라는 단어를 검색하고 해당 줄을 다음과 같이 수정합니다.

        appblacklist = search
      4. 변경 내용을 저장하고 다음 예와 같이 Hue를 다시 시작합니다.

        sudo stop hue; sudo start hue
  • 여러 프라이머리 노드와 Kerberos 인증을 사용하는 클러스터에서 알려진 문제

    Amazon EMR 릴리스 5.20.0 이상에서 여러 프라이머리 노드와 Kerberos 인증을 사용하여 클러스터를 실행하는 경우, 클러스터를 일정 시간 실행한 후 스케일 다운 또는 단계 제출과 같은 클러스터 작업에 문제가 발생할 수 있습니다. 기간은 정의한 Kerberos 티켓 유효 기간에 따라 다릅니다. 스케일 다운 문제는 제출한 자동 스케일 다운 및 명시적 스케일 다운 요청 모두에 영향을 미칩니다. 이외의 다른 클러스터 작업도 영향을 받을 수 있습니다.

    해결 방법:

    • 여러 프라이머리 노드가 있는 EMR 클러스터의 리드 프라이머리 노드에 대한 hadoop 사용자로 SSH 연결합니다.

    • 다음 명령을 실행하여 hadoop 사용자의 Kerberos 티켓을 갱신합니다.

      kinit -kt <keytab_file> <principal>

      일반적으로 keytab 파일은 /etc/hadoop.keytab에 있으며, 보안 주체는 hadoop/<hostname>@<REALM> 양식입니다.

    참고

    이 해결 방법은 Kerberos 티켓이 유효한 기간에 작동합니다. 이 기간은 기본적으로 10시간이지만 Kerberos 설정으로 구성할 수 있습니다. Kerberos 티켓이 만료되면 위 명령을 다시 실행해야 합니다.

릴리스 5.21.1

다음 릴리스 정보에는 Amazon EMR 릴리스 5.21.1에 대한 정보가 포함됩니다. 변경 사항은 5.21.0에 관련됩니다.

최초 릴리스 날짜: 2019년 7월 18일

변경 사항, 향상된 기능 및 해결된 문제
  • TCP SACK 서비스 거부 문제(AWS-2019-005)를 비롯한 중요한 Linux 커널 보안 업데이트를 포함하도록 Amazon EMR의 기본 Amazon Linux AMI를 업데이트했습니다.

알려진 문제
  • 여러 프라이머리 노드와 Kerberos 인증을 사용하는 클러스터에서 알려진 문제

    Amazon EMR 릴리스 5.20.0 이상에서 여러 프라이머리 노드와 Kerberos 인증을 사용하여 클러스터를 실행하는 경우, 클러스터를 일정 시간 실행한 후 스케일 다운 또는 단계 제출과 같은 클러스터 작업에 문제가 발생할 수 있습니다. 기간은 정의한 Kerberos 티켓 유효 기간에 따라 다릅니다. 스케일 다운 문제는 제출한 자동 스케일 다운 및 명시적 스케일 다운 요청 모두에 영향을 미칩니다. 이외의 다른 클러스터 작업도 영향을 받을 수 있습니다.

    해결 방법:

    • 여러 프라이머리 노드가 있는 EMR 클러스터의 리드 프라이머리 노드에 대한 hadoop 사용자로 SSH 연결합니다.

    • 다음 명령을 실행하여 hadoop 사용자의 Kerberos 티켓을 갱신합니다.

      kinit -kt <keytab_file> <principal>

      일반적으로 keytab 파일은 /etc/hadoop.keytab에 있으며, 보안 주체는 hadoop/<hostname>@<REALM> 양식입니다.

    참고

    이 해결 방법은 Kerberos 티켓이 유효한 기간에 작동합니다. 이 기간은 기본적으로 10시간이지만 Kerberos 설정으로 구성할 수 있습니다. Kerberos 티켓이 만료되면 위 명령을 다시 실행해야 합니다.

릴리스 5.21.0

다음 릴리스 정보에는 Amazon EMR 릴리스 5.21.0에 대한 정보가 포함됩니다. 변경 사항은 5.20.0에 관련됩니다.

최초 릴리스 날짜: 2019년 2월 18일

최종 업데이트 날짜: 2019년 4월 3일

업그레이드
  • Flink 1.7.0

  • Presto 0.215

  • AWS SDK for Java 1.11.479

새로운 기능
  • (2019년 4월 3일) Amazon EMR 버전 5.21.0 이상에서는 클러스터 구성을 재정의할 수 있으며, 실행 중인 클러스터의 각 인스턴스 그룹에 대해 추가 구성 분류를 지정할 수 있습니다. Amazon EMR 콘솔, AWS Command Line Interface(AWS CLI) 또는 AWS SDK를 사용하여 이 작업을 수행할 수 있습니다. 자세한 내용은 실행 중 클러스터의 인스턴스 그룹에 대해 구성 제공을 참조하십시오.

변경 사항, 향상된 기능 및 해결된 문제
알려진 문제
  • Hue(Amazon EMR 릴리스 5.24.0에서 수정됨)

    • Amazon EMR에서 실행되는 Hue는 Solr을 지원하지 않습니다. Amazon EMR 릴리스 5.20.0부터 잘못된 구성 문제로 인해 Solr이 활성화되고 다음과 유사한 무해한 오류 메시지가 표시됩니다.

      Solr server could not be contacted properly: HTTPConnectionPool('host=ip-xx-xx-xx-xx.ec2.internal', port=1978): Max retries exceeded with url: /solr/admin/info/system?user.name=hue&doAs=administrator&wt=json (Caused by NewConnectionError(': Failed to establish a new connection: [Errno 111] Connection refused',))

      Solr 오류 메시지를 표시하지 않으려면

      1. SSH를 사용하여 프라이머리 노드 명령줄에 연결합니다.

      2. 텍스트 편집기를 사용하여 hue.ini 파일을 엽니다. 예:

        sudo vim /etc/hue/conf/hue.ini

      3. appblacklist라는 단어를 검색하고 해당 줄을 다음과 같이 수정합니다.

        appblacklist = search
      4. 변경 내용을 저장하고 다음 예와 같이 Hue를 다시 시작합니다.

        sudo stop hue; sudo start hue
  • Tez의 Hive 실행 시간 비교

    • 이 문제는 Amazon EMR 5.22.0에서 해결되었습니다.

      클러스터 프라이머리 노드에 대한 SSH 연결을 통해 http://MasterDNS:8080/tez-ui의 Tez UI에 연결할 때 'Adapter operation failed - Timeline server (ATS) is out of reach. Either it is down, or CORS is not enabled(어댑터 작동이 실패했습니다. - 타임라인 서버(ATS)가 범위를 벗어났습니다. 다운되었거나 CORS가 활성화되어 있지 않습니다.)"라는 오류가 나타나거나, 작업 중 예기치 않게 N/A(해당 사항 없음)가 표시됩니다.

      이 오류는 Tez UI가 프라이머리 노드의 호스트 이름 대신 localhost를 사용하여 YARN 타임라인 서버에 요청할 때 발생합니다. 이 문제를 해결하기 위해 스크립트를 부트스트랩 작업 또는 단계로 실행할 수 있습니다. 스크립트는 Tez configs.env 파일의 호스트 이름을 업데이트합니다. 스크립트에 대한 자세한 내용과 위치를 보려면 부트스트랩 지침을 참조하십시오.

  • Amazon EMR 버전 5.19.0, 5.20.0 및 5.21.0에서 YARN 노드 레이블은 HDFS 디렉터리에 저장됩니다. 이로 인해 경우에 따라 코어 노드 시작이 지연되어 클러스터가 시간 초과되고 시작이 실패할 수 있습니다. Amazon EMR 5.22.0부터 이 문제가 해결되었습니다. YARN 노드 레이블은 각 클러스터 노드의 로컬 디스크에 저장되어 HDFS에 종속되지 않습니다.

  • 여러 프라이머리 노드와 Kerberos 인증을 사용하는 클러스터에서 알려진 문제

    Amazon EMR 릴리스 5.20.0 이상에서 여러 프라이머리 노드와 Kerberos 인증을 사용하여 클러스터를 실행하는 경우, 클러스터를 일정 시간 실행한 후 스케일 다운 또는 단계 제출과 같은 클러스터 작업에 문제가 발생할 수 있습니다. 기간은 정의한 Kerberos 티켓 유효 기간에 따라 다릅니다. 스케일 다운 문제는 제출한 자동 스케일 다운 및 명시적 스케일 다운 요청 모두에 영향을 미칩니다. 이외의 다른 클러스터 작업도 영향을 받을 수 있습니다.

    해결 방법:

    • 여러 프라이머리 노드가 있는 EMR 클러스터의 리드 프라이머리 노드에 대한 hadoop 사용자로 SSH 연결합니다.

    • 다음 명령을 실행하여 hadoop 사용자의 Kerberos 티켓을 갱신합니다.

      kinit -kt <keytab_file> <principal>

      일반적으로 keytab 파일은 /etc/hadoop.keytab에 있으며, 보안 주체는 hadoop/<hostname>@<REALM> 양식입니다.

    참고

    이 해결 방법은 Kerberos 티켓이 유효한 기간에 작동합니다. 이 기간은 기본적으로 10시간이지만 Kerberos 설정으로 구성할 수 있습니다. Kerberos 티켓이 만료되면 위 명령을 다시 실행해야 합니다.

릴리스 5.20.0

다음 릴리스 정보에는 Amazon EMR 릴리스 5.20.0에 대한 정보가 포함됩니다. 변경 사항은 5.19.0에 관련됩니다.

최초 릴리스 날짜: 2018년 12월 18일

마지막 업데이트 날짜: 2019년 1월 22일

업그레이드
  • Flink 1.6.2

  • HBase 1.4.8

  • Hive 2.3.4

  • Hue 4.3.0

  • MXNet 1.3.1

  • Presto 0.214

  • Spark 2.4.0

  • TensorFlow 1.12.0

  • Tez 0.9.1

  • AWS SDK for Java 1.11.461

새로운 기능
  • (2019년 1월 22일) Amazon EMR의 Kerberos가 외부 KDC의 인증 보안 주체를 지원하도록 개선되었습니다. 이는 여러 클러스터가 하나의 외부 KDC를 공유할 수 있기 때문에 보안 주체 관리를 중앙 집중화합니다. 또한 외부 KDC는 Active Directory 도메인과 교차 영역 신뢰를 가질 수 있습니다. 이를 통해 모든 클러스터는 Active Directory의 보안 주체를 인증할 수 있습니다. 자세한 내용은 Amazon EMR 관리 안내서에서 Kerberos 인증 사용을 참조하세요.

변경 사항, 향상된 기능 및 해결된 문제
  • Amazon EMR의 기본 Amazon Linux AMI

    • Python3 패키지가 python 3.4에서 3.6으로 업그레이드되었습니다.

  • EMRFS S3 최적화 커미터

    • EMRFS S3 최적화 커미터가 이제 기본적으로 활성화되며 쓰기 성능을 향상시킵니다. 자세한 내용은 EMRFS S3 최적화 커미터 사용 섹션을 참조하세요.

  • Hive

  • Glue와 Spark 및 Hive

    • EMR 5.20.0 이상에서는 AWS Glue 데이터 카탈로그를 메타스토어로 사용할 경우 Spark 및 Hive에 대해 병렬 파티션 잘라내기가 자동으로 활성화됩니다. 이 변경 사항은 여러 요청을 병렬로 실행하여 파티션을 검색함으로써 쿼리 계획 시간을 크게 단축합니다. 동시에 실행할 수 있는 총 세그먼트 수는 1~10입니다. 기본값은 5이며, 또한 권장 설정입니다. hive-site 구성 분류에서 aws.glue.partition.num.segments 속성을 지정하여 이 설정을 변경할 수 있습니다. 조절이 발생할 경우 값을 1로 변경하여 기능을 끌 수 있습니다. 자세한 내용은 AWS Glue 그먼트 구조를 참조하세요.

알려진 문제
  • Hue(Amazon EMR 릴리스 5.24.0에서 수정됨)

    • Amazon EMR에서 실행되는 Hue는 Solr을 지원하지 않습니다. Amazon EMR 릴리스 5.20.0부터 잘못된 구성 문제로 인해 Solr이 활성화되고 다음과 유사한 무해한 오류 메시지가 표시됩니다.

      Solr server could not be contacted properly: HTTPConnectionPool('host=ip-xx-xx-xx-xx.ec2.internal', port=1978): Max retries exceeded with url: /solr/admin/info/system?user.name=hue&doAs=administrator&wt=json (Caused by NewConnectionError(': Failed to establish a new connection: [Errno 111] Connection refused',))

      Solr 오류 메시지를 표시하지 않으려면

      1. SSH를 사용하여 프라이머리 노드 명령줄에 연결합니다.

      2. 텍스트 편집기를 사용하여 hue.ini 파일을 엽니다. 예:

        sudo vim /etc/hue/conf/hue.ini

      3. appblacklist라는 단어를 검색하고 해당 줄을 다음과 같이 수정합니다.

        appblacklist = search
      4. 변경 내용을 저장하고 다음 예와 같이 Hue를 다시 시작합니다.

        sudo stop hue; sudo start hue
  • Tez의 Hive 실행 시간 비교

    • 이 문제는 Amazon EMR 5.22.0에서 해결되었습니다.

      클러스터 프라이머리 노드에 대한 SSH 연결을 통해 http://MasterDNS:8080/tez-ui의 Tez UI에 연결할 때 'Adapter operation failed - Timeline server (ATS) is out of reach. Either it is down, or CORS is not enabled(어댑터 작동이 실패했습니다. - 타임라인 서버(ATS)가 범위를 벗어났습니다. 다운되었거나 CORS가 활성화되어 있지 않습니다.)"라는 오류가 나타나거나, 작업 중 예기치 않게 N/A(해당 사항 없음)가 표시됩니다.

      이 오류는 Tez UI가 프라이머리 노드의 호스트 이름 대신 localhost를 사용하여 YARN 타임라인 서버에 요청할 때 발생합니다. 이 문제를 해결하기 위해 스크립트를 부트스트랩 작업 또는 단계로 실행할 수 있습니다. 스크립트는 Tez configs.env 파일의 호스트 이름을 업데이트합니다. 스크립트에 대한 자세한 내용과 위치를 보려면 부트스트랩 지침을 참조하십시오.

  • Amazon EMR 버전 5.19.0, 5.20.0 및 5.21.0에서 YARN 노드 레이블은 HDFS 디렉터리에 저장됩니다. 이로 인해 경우에 따라 코어 노드 시작이 지연되어 클러스터가 시간 초과되고 시작이 실패할 수 있습니다. Amazon EMR 5.22.0부터 이 문제가 해결되었습니다. YARN 노드 레이블은 각 클러스터 노드의 로컬 디스크에 저장되어 HDFS에 종속되지 않습니다.

  • 여러 프라이머리 노드와 Kerberos 인증을 사용하는 클러스터에서 알려진 문제

    Amazon EMR 릴리스 5.20.0 이상에서 여러 프라이머리 노드와 Kerberos 인증을 사용하여 클러스터를 실행하는 경우, 클러스터를 일정 시간 실행한 후 스케일 다운 또는 단계 제출과 같은 클러스터 작업에 문제가 발생할 수 있습니다. 기간은 정의한 Kerberos 티켓 유효 기간에 따라 다릅니다. 스케일 다운 문제는 제출한 자동 스케일 다운 및 명시적 스케일 다운 요청 모두에 영향을 미칩니다. 이외의 다른 클러스터 작업도 영향을 받을 수 있습니다.

    해결 방법:

    • 여러 프라이머리 노드가 있는 EMR 클러스터의 리드 프라이머리 노드에 대한 hadoop 사용자로 SSH 연결합니다.

    • 다음 명령을 실행하여 hadoop 사용자의 Kerberos 티켓을 갱신합니다.

      kinit -kt <keytab_file> <principal>

      일반적으로 keytab 파일은 /etc/hadoop.keytab에 있으며, 보안 주체는 hadoop/<hostname>@<REALM> 양식입니다.

    참고

    이 해결 방법은 Kerberos 티켓이 유효한 기간에 작동합니다. 이 기간은 기본적으로 10시간이지만 Kerberos 설정으로 구성할 수 있습니다. Kerberos 티켓이 만료되면 위 명령을 다시 실행해야 합니다.

릴리스 5.19.0

다음 릴리스 정보에는 Amazon EMR 릴리스 5.19.0에 대한 정보가 포함됩니다. 변경 사항은 5.18.0에 관련됩니다.

최초 릴리스 날짜: 2018년 11월 7일

최종 업데이트: 2018년 11월 19일

업그레이드
  • 하둡 2.8.5

  • Flink 1.6.1

  • JupyterHub 0.9.4

  • MXNet 1.3.0

  • Presto 0.212

  • TensorFlow 1.11.0

  • Zookeeper 3.4.13

  • AWS SDK for Java 1.11.433

새로운 기능
  • (2018년 11월 19일) EMR Notebooks는 Jupyter Notebook 기반의 관리형 환경입니다. PySpark, Spark SQL, Spark R 및 Scala에 대한 Spark 매직 커널을 지원합니다. EMR Notebooks는 Amazon EMR 릴리스 5.18.0 이상을 사용하여 생성한 클러스터와 함께 사용할 수 있습니다. 자세한 내용은 Amazon EMR 관리 안내서에서 EMR Notebooks 사용을 참조하세요.

  • Spark 및 EMRFS를 사용하여 Parquet 파일을 작성할 때 EMRFS S3 최적화 커미터를 사용할 수 있습니다. 이 커미터는 쓰기 성능을 향상시킵니다. 자세한 내용은 EMRFS S3 최적화 커미터 사용 섹션을 참조하세요.

변경 사항, 향상된 기능 및 해결된 문제
  • YARN

  • Amazon EMR의 기본 Amazon Linux AMI

    • ruby18, php56, gcc48이 이제 기본적으로 설치되지 않습니다. 필요할 경우 yum을 사용하여 설치할 수 있습니다.

    • aws-java-sdk ruby gem이 이제 더 이상 기본적으로 설치되지 않습니다. 필요할 경우 gem install aws-sdk를 사용하여 설치할 수 있습니다. 특정 구성 요소도 설치할 수 있습니다. 예: gem install aws-sdk-s3.

알려진 문제
  • EMR Notebooks - 일부 상황에서 노트북 편집기가 여러 개 열려 있는 경우 노트북 편집기가 클러스터에 연결할 수 없는 것처럼 보일 수 있습니다. 이 경우 브라우저 쿠키를 지우고 노트북 편집기를 다시 여십시오.

  • CloudWatch ContainerPending 지표 및 자동 조정 - (5.20.0에서 수정됨) Amazon EMR은 ContainerPending에 대해 음수 값을 생성할 수 있습니다. 자동 조정 규칙에 ContainerPending을 사용할 경우 자동 조정이 예상대로 작동하지 않습니다. 자동 조정에 ContainerPending을 사용하지 마십시오.

  • Amazon EMR 버전 5.19.0, 5.20.0 및 5.21.0에서 YARN 노드 레이블은 HDFS 디렉터리에 저장됩니다. 이로 인해 경우에 따라 코어 노드 시작이 지연되어 클러스터가 시간 초과되고 시작이 실패할 수 있습니다. Amazon EMR 5.22.0부터 이 문제가 해결되었습니다. YARN 노드 레이블은 각 클러스터 노드의 로컬 디스크에 저장되어 HDFS에 종속되지 않습니다.

릴리스 5.18.0

다음 릴리스 정보에는 Amazon EMR 릴리스 5.18.0에 대한 정보가 포함됩니다. 변경 사항은 5.17.0에 관련됩니다.

최초 릴리스 날짜: 2018년 10월 24일

업그레이드
  • Flink 1.6.0

  • HBase 1.4.7

  • Presto 0.210

  • Spark 2.3.2

  • Zeppelin 0.8.0

새로운 기능
  • Amazon EMR 5.18.0부터 Amazon EMR 아티팩트 리포지토리를 사용하여 특정 Amazon EMR 릴리스 버전에서 사용할 수 있는 정확한 버전의 라이브러리와 종속 항목에 대해 작업 코드를 빌드할 수 있습니다. 자세한 내용은 Amazon EMR 아티팩트 리포지토리를 사용하여 종속성 확인 섹션을 참조하세요.

변경 사항, 향상된 기능 및 해결된 문제

릴리스 5.17.1

다음 릴리스 정보에는 Amazon EMR 릴리스 5.17.1에 대한 정보가 포함됩니다. 변경 사항은 5.17.0에 관련됩니다.

최초 릴리스 날짜: 2019년 7월 18일

변경 사항, 향상된 기능 및 해결된 문제
  • TCP SACK 서비스 거부 문제(AWS-2019-005)를 비롯한 중요한 Linux 커널 보안 업데이트를 포함하도록 Amazon EMR의 기본 Amazon Linux AMI를 업데이트했습니다.

릴리스 5.17.0

다음 릴리스 정보에는 Amazon EMR 릴리스 5.17.0에 대한 정보가 포함됩니다. 변경 사항은 5.16.0에 관련됩니다.

최초 릴리스 날짜: 2018년 8월 30일

업그레이드
  • Flink 1.5.2

  • HBase 1.4.6

  • Presto 0.206

새로운 기능
  • Tensorflow에 대한 지원을 추가했습니다. 자세한 내용은 TensorFlow 섹션을 참조하세요.

변경 사항, 향상된 기능 및 해결된 문제
알려진 문제
  • Kerberos 인증을 사용하는 클러스터를 생성하고 Livy를 설치하면 단순 인증이 활성화되지 않았다는 오류가 발생하면서 Livy가 실패합니다. Livy 서버를 재부팅하면 문제가 해결됩니다. 해결 방법으로, 클러스터 생성 중에 프라이머리 노드에서 sudo restart livy-server를 실행하는 단계를 추가합니다.

  • 생성 날짜가 2018-08-11인 Amazon Linux AMI를 기반으로 사용자 지정 Amazon Linux AMI를 사용하면 Oozie 서버가 시작에 실패합니다. Oozie를 사용하는 경우 생성 날짜가 다른 Amazon Linux AMI ID를 기반으로 사용자 지정 AMI를 생성하십시오. 적절한 Amazon Linux AMI를 기반으로 선택할 수 있도록 다음 AWS CLI 명령을 사용하여 2018.03 버전의 모든 HVM Amazon Linux AMI에 대한 이미지 ID의 목록을 릴리스 날짜와 함께 반환할 수 있습니다. MyRegion을 사용자의 리전 식별자(예: us-west-2)로 바꿉니다.

    aws ec2 --region MyRegion describe-images --owner amazon --query 'Images[?Name!=`null`]|[?starts_with(Name, `amzn-ami-hvm-2018.03`) == `true`].[CreationDate,ImageId,Name]' --output text | sort -rk1

릴리스 5.16.0

다음 릴리스 정보에는 Amazon EMR 릴리스 5.16.0에 대한 정보가 포함됩니다. 변경 사항은 5.15.0에 관련됩니다.

최초 릴리스 날짜: 2018년 7월 19일

업그레이드
  • Hadoop 2.8.4

  • Flink 1.5.0

  • Livy 0.5.0

  • MXNet 1.2.0

  • Phoenix 4.14.0

  • Presto 0.203

  • Spark 2.3.1

  • AWS SDK for Java 1.11.336

  • CUDA 9.2

  • Redshift JDBC 드라이버 1.2.15.1025

변경 사항, 향상된 기능 및 해결된 문제
알려진 문제
  • 이 릴리스 버전은 c1.medium 또는 m1.small 인스턴스 유형을 지원하지 않습니다. 둘 중 어느 쪽이든 이런 인스턴스 유형을 사용하는 클러스터는 시작되지 않습니다. 차선책으로 다른 인스턴스 유형을 지정하거나 다른 릴리스 버전을 사용하십시오.

  • Kerberos 인증을 사용하는 클러스터를 생성하고 Livy를 설치하면 단순 인증이 활성화되지 않았다는 오류가 발생하면서 Livy가 실패합니다. Livy 서버를 재부팅하면 문제가 해결됩니다. 해결 방법으로, 클러스터 생성 중에 프라이머리 노드에서 sudo restart livy-server를 실행하는 단계를 추가합니다.

  • 프라이머리 노드가 재부팅되거나 인스턴스 컨트롤러가 다시 시작된 후에는 CloudWatch 지표가 수집되지 않으며 Amazon EMR 버전 5.14.0, 5.15.0 또는 5.16.0에서는 자동 조정 기능을 사용할 수 없습니다. 이 문제는 Amazon EMR 5.17.0에서 수정되었습니다.

릴리스 5.15.0

다음 릴리스 정보에는 Amazon EMR 릴리스 5.15.0에 대한 정보가 포함됩니다. 변경 사항은 5.14.0에 관련됩니다.

최초 릴리스 날짜: 2018년 6월 21일

업그레이드
  • HBase를 1.4.4로 업그레이드

  • Hive를 2.3.3으로 업그레이드

  • Hue를 4.2.0으로 업그레이드

  • Oozie를 5.0.0로 업그레이드

  • Zookeeper를 3.4.12로 업그레이드

  • AWS SDK를 1.11.333으로 업그레이드함

변경 사항, 향상된 기능 및 해결된 문제
  • Hive

  • Hue

    • Kerberos 사용 시 Livy로 올바로 인증하도록 Hue를 업데이트했습니다. 이제 Livy가 Amazon EMR에서 Kerberos를 사용할 때 지원됩니다.

  • JupyterHub

    • Amazon EMR이 LDAP 클라이언트 라이브러리를 기본으로 설치하도록 JupyterHub를 업데이트했습니다.

    • 자체 서명 인증서를 생성하는 스크립트 오류를 수정했습니다.

알려진 문제
  • 이 릴리스 버전은 c1.medium 또는 m1.small 인스턴스 유형을 지원하지 않습니다. 둘 중 어느 쪽이든 이런 인스턴스 유형을 사용하는 클러스터는 시작되지 않습니다. 차선책으로 다른 인스턴스 유형을 지정하거나 다른 릴리스 버전을 사용하십시오.

  • 프라이머리 노드가 재부팅되거나 인스턴스 컨트롤러가 다시 시작된 후에는 CloudWatch 지표가 수집되지 않으며 Amazon EMR 버전 5.14.0, 5.15.0 또는 5.16.0에서는 자동 조정 기능을 사용할 수 없습니다. 이 문제는 Amazon EMR 5.17.0에서 수정되었습니다.

릴리스 5.14.1

다음 릴리스 정보에는 Amazon EMR 릴리스 5.14.1에 대한 정보가 포함됩니다. 변경 사항은 5.14.0에 관련됩니다.

최초 릴리스 날짜: 2018년 10월 17일

잠재적 보안 취약성을 해결하기 위해 Amazon EMR의 기본 AMI를 업데이트했습니다.

릴리스 5.14.0

다음 릴리스 정보에는 Amazon EMR 릴리스 5.14.0에 대한 정보가 포함됩니다. 변경 사항은 5.13.0에 관련됩니다.

최초 릴리스 날짜: 2018년 6월 4일

업그레이드
  • Apache Flink를 1.4.2로 업그레이드

  • Apache MXnet을 1.1.0으로 업그레이드

  • Apache Sqoop를 1.4.7로 업그레이드

새로운 기능
  • JupyterHub 지원을 추가했습니다. 자세한 내용은 JupyterHub 섹션을 참조하세요.

변경 사항, 향상된 기능 및 해결된 문제
  • EMRFS

    • Amazon S3에 대한 요청의 userAgent 문자열이 간접 호출하는 보안 주체의 사용자 및 그룹 정보를 포함하도록 업데이트되었습니다. 보다 포괄적인 요청 추적을 위해 이 문자열을 AWS CloudTrail 로그와 함께 사용할 수 있습니다.

  • HBase

    • 포함된 HBASE-20447은 특히 분할된 리전과 함께 캐시 문제를 야기할 수 있는 문제를 해결합니다.

  • MXnet

    • OpenCV 라이브러리를 추가했습니다.

  • Spark

    • Spark가 EMRFS를 사용하여 Amazon S3 위치에 Parquet 파일을 쓸 때, FileOutputCommitter 알고리즘이 버전 1 대신 버전 2를 사용하도록 업데이트되었습니다. 따라서 이름 변경 횟수가 감소하여 애플리케이션 성능이 개선됩니다. 다음 애플리케이션에는 이 변경이 영향을 미치지 않습니다.

      • Spark 이외의 애플리케이션

      • HDFS(여전히 버전 1의 FileOutputCommitter를 사용)와 같이 다른 파일 시스템에 쓰는 애플리케이션

      • 텍스트 또는 csv 같이 이미 EMRFS 직접 쓰기를 사용하는 다른 출력 형식을 사용하는 애플리케이션

알려진 문제
  • JupyterHub

    • 클러스터를 생성할 때 구성 분류를 사용하여 JupyterHub 및 개별 Jupyter Notebook을 설정하는 것은 지원되지 않습니다. 각 사용자에 대해 수동으로 jupyterhub_config.py 파일 및 jupyter_notebook_config.py 파일을 편집하십시오. 자세한 내용은 JupyterHub 구성 섹션을 참조하세요.

    • JupyterHub는 프라이빗 서브넷 내의 클러스터에서 시작되지 않으며 Error: ENOENT: no such file or directory, open '/etc/jupyter/conf/server.crt' 메시지와 함께 실패합니다. 이는 자체 서명된 인증서를 생성하는 스크립트의 오류에 의해 야기됩니다. 다음 차선책을 사용하여 자체 서명된 인증서를 생성합니다. 모든 명령은 프라이머리 노드에 연결되어 있는 동안 실행됩니다.

      1. 컨테이너에서 프라이머리 노드로 인증서 생성 스크립트를 복사합니다.

        sudo docker cp jupyterhub:/tmp/gen_self_signed_cert.sh ./
      2. 아래와 같이 텍스트 편집기를 사용하여 23행을 변경하고 퍼블릭 호스트 이름을 로컬 호스트 이름으로 변경합니다.

        local hostname=$(curl -s $EC2_METADATA_SERVICE_URI/local-hostname)
      3. 스크립트를 실행하여 자체 서명된 인증서를 생성합니다.

        sudo bash ./gen_self_signed_cert.sh
      4. 스크립트가 생성하는 인증서 파일을 /etc/jupyter/conf/ 디렉터리로 이동합니다.

        sudo mv /tmp/server.crt /tmp/server.key /etc/jupyter/conf/

      JupyterHub의 재시작과 200 응답 코드의 반환을 확인하기 위해 jupyter.log 파일을 tail할 수 있습니다. 예:

      tail -f /var/log/jupyter/jupyter.log

      그러면 다음과 비슷한 응답이 돌아옵니다.

      # [I 2018-06-14 18:56:51.356 JupyterHub app:1581] JupyterHub is now running at https://:9443/ # 19:01:51.359 - info: [ConfigProxy] 200 GET /api/routes
  • 프라이머리 노드가 재부팅되거나 인스턴스 컨트롤러가 다시 시작된 후에는 CloudWatch 지표가 수집되지 않으며 Amazon EMR 버전 5.14.0, 5.15.0 또는 5.16.0에서는 자동 조정 기능을 사용할 수 없습니다. 이 문제는 Amazon EMR 5.17.0에서 수정되었습니다.

릴리스 5.13.0

다음 릴리스 정보에는 Amazon EMR 릴리스 5.13.0에 대한 정보가 포함됩니다. 변경 사항은 5.12.0에 관련됩니다.

업그레이드
  • Spark를 2.3.0으로 업그레이드

  • HBase를 1.4.2로 업그레이드

  • Presto를 0.194로 업그레이드

  • AWS SDK for Java를 1.11.297로 업그레이드함

변경 사항, 향상된 기능 및 해결된 문제
  • Hive

    • HIVE-15436을 백포트했습니다. Hive API를 뷰만 반환하도록 개선했습니다.

알려진 문제
  • 현재 MXNet에는 OpenCV 라이브러리가 포함되어 있지 않습니다.

릴리스 5.12.2

다음 릴리스 정보에는 Amazon EMR 릴리스 5.12.2에 대한 정보가 포함됩니다. 변경 사항은 5.12.1에 관련됩니다.

최초 릴리스 날짜: 2018년 8월 29일

변경 사항, 향상된 기능 및 해결된 문제
  • 이 릴리스는 잠재적인 보안 취약점을 해결합니다.

릴리스 5.12.1

다음 릴리스 정보에는 Amazon EMR 릴리스 5.12.1에 대한 정보가 포함됩니다. 변경 사항은 5.12.0에 관련됩니다.

최초 릴리스 날짜: 2018년 3월 29일

변경 사항, 향상된 기능 및 해결된 문제
  • 잠재적인 취약성을 해결하기 위해 Amazon EMR에 대한 기본 Amazon Linux AMI의 Amazon Linux 커널을 업데이트했습니다.

릴리스 5.12.0

다음 릴리스 정보에는 Amazon EMR 릴리스 5.12.0에 대한 정보가 포함됩니다. 변경 사항은 5.11.1에 관련됩니다.

업그레이드
변경 사항, 향상된 기능 및 해결된 문제
  • Hadoop

    • yarn.resourcemanager.decommissioning.timeout 속성을 yarn.resourcemanager.nodemanager-graceful-decommission-timeout-secs로 변경했습니다. 이 속성을 사용하여 클러스터 축소를 사용자 지정할 수 있습니다. 자세한 내용은 Amazon EMR 관리 안내서에서 클러스터 스케일 다운을 참조하세요.

    • Hadoop CLI는 직접 복사를 지정하는 -d(복사) 명령에 cp 옵션을 추가했습니다. 이를 사용하면 중간 .COPYING 파일을 생성하지 않아도 되므로 Amazon S3 사이에서 데이터를 더 빠르게 복사할 수 있습니다. 자세한 내용은 HADOOP-12384를 참조하십시오.

  • Pig

    • Pig 환경 속성의 구성을 단순화하는 pig-env 구성 분류를 추가했습니다. 자세한 내용은 애플리케이션 구성 섹션을 참조하세요.

  • Presto

    • Presto presto-connector-redshift 구성 파일에서 값을 구성하는 데 사용할 수 있는 redshift.properties 구성 분류를 추가했습니다. 자세한 내용은 Presto 문서의 Redshift Connector애플리케이션 구성 단원을 참조하십시오.

    • EMRFS에 대한 Presto 지원이 추가되었으며 이것이 기본 구성입니다. 이전 Amazon EMR 릴리스에서는 유일한 옵션인 PrestoS3FileSystem을 사용했습니다. 자세한 내용은 EMRFS 및 PrestoS3FileSystem 구성 섹션을 참조하세요.

      참고

      Amazon EMR 버전 5.12.0을 사용하여 Amazon S3에서 기본 데이터를 쿼리하는 경우 Presto 오류가 발생할 수 있습니다. 이는 Presto가 emrfs-site.xml에서 구성 분류 값을 가져오지 못하기 때문입니다. 이 문제를 해결하려면 usr/lib/presto/plugin/hive-hadoop2/ 아래에 emrfs 하위 디렉터리를 생성하고 usr/lib/presto/plugin/hive-hadoop2/emrfs에서 기존 /usr/share/aws/emr/emrfs/conf/emrfs-site.xml 파일에 대한 기호 링크를 생성합니다. 그런 다음, presto-server 프로세스를 다시 시작합니다(sudo presto-server stopsudo presto-server start의 순서대로)

  • Spark

알려진 문제
  • MXNet에는 OpenCV 라이브러리가 포함되어 있지 않습니다.

  • 클러스터 노드에 R이 기본적으로 설치되어 있지 않으므로 사용자 지정 AMI를 사용하여 만든 클러스터에는 SparkR을 사용할 수 없습니다.

릴리스 5.11.3

다음 릴리스 정보에는 Amazon EMR 릴리스 5.11.3에 대한 정보가 포함됩니다. 변경 사항은 5.11.2에 관련됩니다.

최초 릴리스 날짜: 2019년 7월 18일

변경 사항, 향상된 기능 및 해결된 문제
  • TCP SACK 서비스 거부 문제(AWS-2019-005)를 비롯한 중요한 Linux 커널 보안 업데이트를 포함하도록 Amazon EMR의 기본 Amazon Linux AMI를 업데이트했습니다.

릴리스 5.11.2

다음 릴리스 정보에는 Amazon EMR 릴리스 5.11.2에 대한 정보가 포함됩니다. 변경 사항은 5.11.1에 관련됩니다.

최초 릴리스 날짜: 2018년 8월 29일

변경 사항, 향상된 기능 및 해결된 문제
  • 이 릴리스는 잠재적인 보안 취약점을 해결합니다.

릴리스 5.11.1

다음 릴리스 정보에는 Amazon EMR 릴리스 5.11.1에 대한 정보가 포함됩니다. 변경 사항은 Amazon EMR 5.11.0 릴리스에 관련됩니다.

최초 릴리스 날짜: 2018년 1월 22일

변경 사항, 향상된 기능 및 해결된 문제

알려진 문제

  • MXNet에는 OpenCV 라이브러리가 포함되어 있지 않습니다.

  • Hive 2.3.2에서는 기본적으로 hive.compute.query.using.stats=true를 설정합니다. 따라서 쿼리에서는 데이터를 직접 가져오지 않고 기존 통계에서 데이터를 가져오므로 혼동될 수 있습니다. 예를 들어, hive.compute.query.using.stats=true인 테이블이 있을 때 새 파일을 LOCATION 테이블에 업로드하고 테이블에서 SELECT COUNT(*) 쿼리를 실행하면 추가된 행이 선택되지 않고 통계에 있는 수치가 반환됩니다.

    차선책으로 ANALYZE TABLE 명령을 사용하여 새 통계를 수집하거나 hive.compute.query.using.stats=false를 설정합니다. 자세한 내용은 Apache Hive 설명서의 Statistics in Hive를 참조하십시오.

릴리스 5.11.0

다음 릴리스 정보에는 Amazon EMR 릴리스 5.11.0에 대한 정보가 포함됩니다. 변경 사항은 Amazon EMR 5.10.0 릴리스에 관련됩니다.

업그레이드

이 릴리스에서는 다음 버전을 포함하도록 다음 애플리케이션과 구성 요소를 업그레이드했습니다.

  • Hive 2.3.2

  • Spark 2.2.1

  • SDK for Java 1.11.238

새로운 기능

  • Spark

    • 스팟 인스턴스 사용 시 Spark 폐기를 개선하는 spark.decommissioning.timeout.threshold 설정이 추가되었습니다. 자세한 내용은 노드 서비스 해제 동작 구성 섹션을 참조하세요.

    • Amazon SageMaker Spark 및 Amazon SageMaker와 Spark의 통합을 위한 관련 종속 항목을 설치하는 aws-sagemaker-spark-sdk 구성 요소가 Spark에 추가되었습니다. Amazon SageMaker Spark를 사용하면 Amazon SageMaker 단계를 사용하여 Spark 기계 학습(ML) 파이프라인을 생성할 수 있습니다. 자세한 내용은 GitHub의 SageMaker Spark ReadmeAmazon SageMaker 개발자 안내서Using Apache Spark with Amazon SageMaker를 참조하세요.

알려진 문제

  • MXNet에는 OpenCV 라이브러리가 포함되어 있지 않습니다.

  • Hive 2.3.2에서는 기본적으로 hive.compute.query.using.stats=true를 설정합니다. 따라서 쿼리에서는 데이터를 직접 가져오지 않고 기존 통계에서 데이터를 가져오므로 혼동될 수 있습니다. 예를 들어, hive.compute.query.using.stats=true인 테이블이 있을 때 새 파일을 LOCATION 테이블에 업로드하고 테이블에서 SELECT COUNT(*) 쿼리를 실행하면 추가된 행이 선택되지 않고 통계에 있는 수치가 반환됩니다.

    차선책으로 ANALYZE TABLE 명령을 사용하여 새 통계를 수집하거나 hive.compute.query.using.stats=false를 설정합니다. 자세한 내용은 Apache Hive 설명서의 Statistics in Hive를 참조하십시오.

릴리스 5.10.0

다음 릴리스 정보에는 Amazon EMR 릴리스 5.10.0에 대한 정보가 포함됩니다. 변경 사항은 Amazon EMR 5.9.0 릴리스에 관련됩니다.

업그레이드

이 릴리스에서는 다음 버전을 포함하도록 다음 애플리케이션과 구성 요소를 업그레이드했습니다.

  • AWS SDK for Java 1.11.221

  • Hive 2.3.1

  • Presto 0.187

새로운 기능

  • Kerberos 인증에 대한 지원이 추가되었습니다. 자세한 내용은 Amazon EMR 관리 안내서에서 Kerberos 인증 사용을 참조하세요.

  • Amazon S3에 대한 EMRFS 요청을 위해 IAM 역할에 대한 지원을 추가했습니다. 자세한 내용은 Amazon EMR 관리 안내서에서 Amazon S3에 대한 EMRFS 요청을 위해 IAM 역할 구성을 참조하세요.

  • GPU 기반의 P2 및 P3 인스턴스 유형에 대한 지원을 추가했습니다. 자세한 내용은 Amazon EC2 P2 인스턴스Amazon EC2 P3 인스턴스를 참조하세요. 기본적으로 이러한 유형의 인스턴스에 NVIDIA 드라이버 384.81 및 CUDA 드라이버 9.0.176가 설치됩니다.

  • Apache MXNet에 대한 지원이 추가되었습니다.

변경 사항, 향상된 기능 및 해결된 문제

  • Presto

  • Spark

    • SPARK-20640을 백포트했습니다. 이를 통해 spark.shuffle.registration.timeoutspark.shuffle.registration.maxAttempts 속성을 사용하여 셔플 등록에 대한 제시도와 rpc 제한 시간을 구성할 수 있습니다.

    • 사용자 지정 OutputFormat를 비 HDFS 위치에 기록할 때 발생하는 오류를 교정하는 SPARK-21549를 백포트했습니다.

  • 하둡-13270을 백포트했습니다.

  • Numpy, Scipy 및 Matplotlib 라이브러리가 기본 Amazon EMR AMI에서 제거되었습니다. 애플리케이션에서 이러한 라이브러리가 필요한 경우, 애플리케이션 리포지토리에서 라이브러리를 사용할 수 있기 때문에 부트스트랩 작업 시 yum install을 사용하여 모든 노드에 라이브러리를 설치할 수 있습니다.

  • Amazon EMR 기본 AMI는 더 이상 애플리케이션 RPM 패키지를 포함하고 있지 않기 때문에 RPM 패키지가 더 이상 클러스터 노드에 존재하지 않습니다. 이제 사용자 지정 AMI 및 Amazon EMR 기본 AMI는 Amazon S3에서 RPM 패키지 리포지토리를 참조합니다.

  • Amazon EC2에 초당 요금이 도입됨에 따라 이제 기본 스케일 다운 동작인스턴스 시간에 종료가 아닌 작업 완료 시 종료입니다. 자세한 내용은 클러스터 스케일 다운 구성을 참조하세요.

알려진 문제

  • MXNet에는 OpenCV 라이브러리가 포함되어 있지 않습니다.

  • Hive 2.3.1에서는 기본적으로 hive.compute.query.using.stats=true를 설정합니다. 따라서 쿼리에서는 데이터를 직접 가져오지 않고 기존 통계에서 데이터를 가져오므로 혼동될 수 있습니다. 예를 들어, hive.compute.query.using.stats=true인 테이블이 있을 때 새 파일을 LOCATION 테이블에 업로드하고 테이블에서 SELECT COUNT(*) 쿼리를 실행하면 추가된 행이 선택되지 않고 통계에 있는 수치가 반환됩니다.

    차선책으로 ANALYZE TABLE 명령을 사용하여 새 통계를 수집하거나 hive.compute.query.using.stats=false를 설정합니다. 자세한 내용은 Apache Hive 설명서의 Statistics in Hive를 참조하십시오.

릴리스 5.9.0

다음 릴리스 정보에는 Amazon EMR 릴리스 5.9.0에 대한 정보가 포함됩니다. 변경 사항은 Amazon EMR 5.8.0 릴리스에 관련됩니다.

릴리스 날짜: 2017년 10월 5일

최근 기능 업데이트: 2017년 10월 12일

업그레이드

이 릴리스에서는 다음 버전을 포함하도록 다음 애플리케이션과 구성 요소를 업그레이드했습니다.

  • AWS SDK for Java 버전 1.11.183

  • Flink 1.3.2

  • Hue 4.0.1

  • Pig 0.17.0

  • Presto 0.184

새로운 기능

  • Livy 지원이 추가되었습니다(버전 0.4.0-incubating). 자세한 내용은 Apache Livy 섹션을 참조하세요.

  • Spark용 Hue Notebook에 대한 지원이 추가되었습니다.

  • i3 시리즈 Amazon EC2 인스턴스에 대한 지원이 추가되었습니다(2017년 10월 12일).

변경 사항, 향상된 기능 및 해결된 문제

  • Spark

    • Spark가 수동 크기 조절 또는 자동 조정 정책 요청으로 인한 노드 종료를 보다 원활하게 처리할 수 있도록 도움을 주는 새로운 기능 세트를 추가했습니다. 자세한 내용은 노드 서비스 해제 동작 구성 섹션을 참조하세요.

    • SSL은 블록 전송 서비스의 전송 중 암호화 시 3DES를 대신해 사용되며, AES-NI와 함께 Amazon EC2 인스턴스 유형을 사용할 때 성능을 개선합니다.

    • SPARK-21494를 백포트했습니다.

  • Zeppelin

  • HBase

    • HBase-18533 패치를 추가했습니다. 이 패치는 hbase-site 구성 분류를 사용하여 HBase BucketCache 구성을 위한 추가적인 값들을 허용합니다.

  • Hue

    • Hue에서 Hive 쿼리 편집기를 위한 AWS Glue 데이터 카탈로그 지원을 추가했습니다.

    • 기본적으로 Hue의 수퍼유저는 Amazon EMR IAM 역할에서 액세스할 수 있는 모든 파일에 액세스할 수 있습니다. 새로 생성된 사용자에게는 Amazon S3 파일 브라우저에 액세스할 수 있는 권한이 자동으로 부여되지 않기 때문에 사용자의 그룹에 대해 활성화된 filebrowser.s3_access 권한이 있어야 합니다.

  • AWS Glue 데이터 카탈로그를 사용하여 생성된 기본 JSON 데이터를 액세스할 수 없는 문제가 해결되었습니다.

알려진 문제

  • 모든 애플리케이션을 설치하고 기본 Amazon EBS 루트 볼륨 크기를 변경하지 않은 상태에서 클러스터가 시작되지 않습니다. 차선책으로 AWS CLI에서 aws emr create-cluster 명령을 사용하고 더 큰 --ebs-root-volume-size 파라미터를 지정합니다.

  • Hive 2.3.0에서는 기본적으로 hive.compute.query.using.stats=true를 설정합니다. 따라서 쿼리에서는 데이터를 직접 가져오지 않고 기존 통계에서 데이터를 가져오므로 혼동될 수 있습니다. 예를 들어, hive.compute.query.using.stats=true인 테이블이 있을 때 새 파일을 LOCATION 테이블에 업로드하고 테이블에서 SELECT COUNT(*) 쿼리를 실행하면 추가된 행이 선택되지 않고 통계에 있는 수치가 반환됩니다.

    차선책으로 ANALYZE TABLE 명령을 사용하여 새 통계를 수집하거나 hive.compute.query.using.stats=false를 설정합니다. 자세한 내용은 Apache Hive 설명서의 Statistics in Hive를 참조하십시오.

릴리스 5.8.2

다음 릴리스 정보에는 Amazon EMR 릴리스 5.8.2에 대한 정보가 포함됩니다. 변경 사항은 5.8.1에 관련됩니다.

최초 릴리스 날짜: 2018년 3월 29일

변경 사항, 향상된 기능 및 해결된 문제
  • 잠재적인 취약성을 해결하기 위해 Amazon EMR에 대한 기본 Amazon Linux AMI의 Amazon Linux 커널을 업데이트했습니다.

릴리스 5.8.1

다음 릴리스 정보에는 Amazon EMR 릴리스 5.8.1에 대한 정보가 포함됩니다. 변경 사항은 Amazon EMR 5.8.0 릴리스에 관련됩니다.

최초 릴리스 날짜: 2018년 1월 22일

변경 사항, 향상된 기능 및 해결된 문제

릴리스 5.8.0

다음 릴리스 정보에는 Amazon EMR 릴리스 5.8.0에 대한 정보가 포함됩니다. 변경 사항은 Amazon EMR 5.7.0 릴리스에 관련됩니다.

최초 릴리스 날짜: 2017년 8월 10일

최근 기능 업데이트: 2017년 9월 25일

업그레이드

이 릴리스에서는 다음 버전을 포함하도록 다음 애플리케이션과 구성 요소를 업그레이드했습니다.

  • AWS SDK 1.11.160

  • Flink 1.3.1

  • Hive 2.3.0 자세한 내용은 Apache Hive 사이트에서 Release notes를 참조하세요.

  • Spark 2.2.0 자세한 내용은 Apache Spark 사이트에서 Release notes를 참조하세요.

새로운 기능

  • 애플리케이션 이력 보기 지원이 추가되었습니다(2017년 9월 25일). 자세한 내용은 Amazon EMR 관리 안내서에서 애플리케이션 기록 보기를 참조하세요.

변경 사항, 향상된 기능 및 해결된 문제

  • AWS Glue 데이터 카탈로그와 통합

  • YARN 애플리케이션에 대한 기록 데이터 및 Spark 애플리케이션에 대한 추가 세부 정보를 볼 수 있는 클러스터 정보에 애플리케이션 이력을 추가했습니다. 자세한 내용은 Amazon EMR 관리 안내서에서 애플리케이션 기록 보기를 참조하세요.

  • Oozie

  • Hue

  • HBase

    • getMasterInitializedTime을 사용하여 JMX(Java Management Extensions)를 통해 HBase 마스터 서버 시작 시간을 공개하도록 패치를 추가했습니다.

    • 클러스터 시작 시간을 개선하는 패치를 추가했습니다.

알려진 문제

  • 모든 애플리케이션을 설치하고 기본 Amazon EBS 루트 볼륨 크기를 변경하지 않은 상태에서 클러스터가 시작되지 않습니다. 차선책으로 AWS CLI에서 aws emr create-cluster 명령을 사용하고 더 큰 --ebs-root-volume-size 파라미터를 지정합니다.

  • Hive 2.3.0에서는 기본적으로 hive.compute.query.using.stats=true를 설정합니다. 따라서 쿼리에서는 데이터를 직접 가져오지 않고 기존 통계에서 데이터를 가져오므로 혼동될 수 있습니다. 예를 들어, hive.compute.query.using.stats=true인 테이블이 있을 때 새 파일을 LOCATION 테이블에 업로드하고 테이블에서 SELECT COUNT(*) 쿼리를 실행하면 추가된 행이 선택되지 않고 통계에 있는 수치가 반환됩니다.

    차선책으로 ANALYZE TABLE 명령을 사용하여 새 통계를 수집하거나 hive.compute.query.using.stats=false를 설정합니다. 자세한 내용은 Apache Hive 설명서의 Statistics in Hive를 참조하십시오.

  • Spark - Spark를 사용할 때, apppusher 대몬(daemon)과 관련된 파일 핸들러 유출 문제가 있습니다. 이는 몇 시간 또는 며칠 후에 장시간 실행되는 Spark 작업에 나타날 수 있습니다. 이 문제를 해결하려면 마스터 노드에 연결하고 sudo /etc/init.d/apppusher stop을 입력합니다. 이렇게 하면 apppusher 대몬(daemon)이 중단되며 Amazon EMR이 이를 자동으로 다시 시작합니다.

  • 애플리케이션 이력

    • 작동 중단 Spark 실행기의 기록 데이터는 사용할 수 없습니다.

    • 진행 중인 암호화를 사용하기 위해 보안 구성을 사용하는 클러스터에서는 애플리케이션 이력을 사용할 수 없습니다.

릴리스 5.7.0

다음 릴리스 정보에는 Amazon EMR 릴리스 5.7.0에 대한 정보가 포함됩니다. 변경 사항은 Amazon EMR 5.6.0 릴리스에 관련됩니다.

릴리스 날짜: 2017년 7월 13일

업그레이드

  • Flink 1.3.0

  • Phoenix 4.11.0

  • Zeppelin 0.7.2

새로운 기능

  • 클러스터를 생성할 때 사용자 지정 Amazon Linux AMI를 지정하는 기능을 추가했습니다. 자세한 내용은 사용자 지정 AMI 사용을 참조하세요.

변경 사항, 향상된 기능 및 해결된 문제

  • HBase

  • Presto - node.properties 구성 기능을 추가했습니다.

  • YARN - container-log4j.properties 구성 기능을 추가했습니다.

  • Sqoop - SQOOP-2880을 백포트하여 Sqoop 임시 디렉터리를 설정할 수 있는 인수를 도입했습니다.

릴리스 5.6.0

다음 릴리스 정보에는 Amazon EMR 릴리스 5.6.0에 대한 정보가 포함됩니다. 변경 사항은 Amazon EMR 5.5.0 릴리스에 관련됩니다.

릴리스 날짜: 2017년 6월 5일

업그레이드

  • Flink 1.2.1

  • HBase 1.3.1

  • Mahout 0.13.0. Amazon EMR 버전 5.0 이상에서 Spark 2.x를 지원하는 첫 번째 버전의 Mahout입니다.

  • Spark 2.1.1

변경 사항, 향상된 기능 및 해결된 문제

  • Presto

    • 보안 구성에서 전송 데이터 암호화를 사용하여 Presto 노드 간 SSL/TLS 보안 통신을 활성화할 수 있는 기능이 추가되었습니다. 자세한 내용은 전송 중인 데이터 암호화를 참조하세요.

    • Presto 7661의 백포트와 함께 VERBOSE 옵션이 EXPLAIN ANALYZE 문에 추가되면서 쿼리 계획에 대해 더욱 자세한 저레벨 통계를 보고할 수 있게 되었습니다.

릴리스 5.5.3

다음 릴리스 정보에는 Amazon EMR 릴리스 5.5.3에 대한 정보가 포함됩니다. 변경 사항은 5.5.2에 관련됩니다.

최초 릴리스 날짜: 2018년 8월 29일

변경 사항, 향상된 기능 및 해결된 문제
  • 이 릴리스는 잠재적인 보안 취약점을 해결합니다.

릴리스 5.5.2

다음 릴리스 정보에는 Amazon EMR 릴리스 5.5.2에 대한 정보가 포함됩니다. 변경 사항은 5.5.1에 관련됩니다.

최초 릴리스 날짜: 2018년 3월 29일

변경 사항, 향상된 기능 및 해결된 문제
  • 잠재적인 취약성을 해결하기 위해 Amazon EMR에 대한 기본 Amazon Linux AMI의 Amazon Linux 커널을 업데이트했습니다.

릴리스 5.5.1

다음 릴리스 정보에는 Amazon EMR 릴리스 5.5.1에 대한 정보가 포함됩니다. 변경 사항은 Amazon EMR 5.5.0 릴리스에 관련됩니다.

최초 릴리스 날짜: 2018년 1월 22일

변경 사항, 향상된 기능 및 해결된 문제

릴리스 5.5.0

다음 릴리스 정보에는 Amazon EMR 릴리스 5.5.0에 대한 정보가 포함됩니다. 변경 사항은 Amazon EMR 5.4.0 릴리스에 관련됩니다.

릴리스 날짜: 2017년 4월 26일

업그레이드

  • Hue 3.12

  • Presto 0.170

  • Zeppelin 0.7.1

  • ZooKeeper 3.4.10

변경 사항, 향상된 기능 및 해결된 문제

  • Spark

  • Flink

    • Flink는 이제 Scala 2.11로 빌드됩니다. 따라서 Scala API 및 라이브러리를 사용하는 경우에는 프로젝트에 Scala 2.11을 사용하는 것이 좋습니다.

    • HADOOP_CONF_DIRYARN_CONF_DIR 기본값이 올바로 설정되지 않아서 start-scala-shell.sh 작업이 중단되던 문제가 해결되었습니다. 또한 env.hadoop.conf.dir 또는 env.yarn.conf.dir 구성 분류에서 /etc/flink/conf/flink-conf.yamlflink-conf을 사용하여 이 값들을 설정할 수 있는 기능도 추가되었습니다.

    • 새로운 EMR 전용 명령인 flink-scala-shellstart-scala-shell.sh 래퍼로 도입되었습니다. 앞으로 start-scala-shell이 아닌 이 명령을 사용하는 것이 좋습니다. 새로운 명령은 실행이 간편합니다. 예를 들어 flink-scala-shell -n 2는 Flink Scala 셸을 작업 병렬 처리 2로 시작합니다.

    • 새로운 EMR 전용 명령인 flink-yarn-sessionyarn-session.sh 래퍼로 도입되었습니다. 앞으로 yarn-session이 아닌 이 명령을 사용하는 것이 좋습니다. 새로운 명령은 실행이 간편합니다. 예를 들어, flink-yarn-session -d -n 2는 연결이 끊어진 상태에서 작업 관리자 2개를 사용하여 장기 실행 Flink 세션을 시작합니다.

    • (FLINK-6125) commons httpclient is not shaded anymore in Flink 1.2 문제를 해결했습니다

  • Presto

    • LDAP 인증에 대한 지원이 추가되었습니다. 단, Amazon EMR 기반 Presto에서 LDAP를 사용하려면 Presto 코디네이터의 HTTPS 액세스를 활성화해야 합니다(config.propertieshttp-server.https.enabled=true). 구성에 대한 자세한 내용은 Presto 설명서에서 LDAP authentication을 참조하세요.

    • SHOW GRANTS에 대한 지원이 추가되었습니다.

  • Amazon EMR 기본 Linux AMI

    • Amazon EMR 릴리스는 이제 Amazon Linux 2017.03을 기반으로 합니다. 자세한 내용은 Amazon Linux AMI 2017.03 릴리스 정보를 참조하세요.

    • Amazon EMR 기본 Linux 이미지에서 Python 2.6을 제거했습니다. 이제는 Python 2.7 및 3.4가 기본 설치됩니다. 필요하다면 Python 2.6을 수동으로 설치할 수도 있습니다.

릴리스 5.4.0

다음 릴리스 정보에는 Amazon EMR 릴리스 5.4.0에 대한 정보가 포함됩니다. 변경 사항은 Amazon EMR 5.3.0 릴리스에 관련됩니다.

릴리스 날짜: 2017년 3월 8일

업그레이드

이 릴리스에서는 다음 업그레이드를 사용할 수 있습니다.

  • Flink 1.2.0로 업그레이드

  • Hbase 1.3.0로 업그레이드

  • Phoenix 4.9.0로 업그레이드

    참고

    이전 버전의 Amazon EMR에서 Amazon EMR 버전 5.4.0 이상으로 업그레이드하고 보조 인덱싱을 사용하는 경우 Apache Phoenix 설명서에 설명된 대로 로컬 인덱스를 업그레이드합니다. Amazon EMR은 hbase-site 분류에서 필수 구성을 제거하지만 인덱스를 다시 채워야 합니다. 인덱스의 온라인 및 오프라인 업그레이드가 지원됩니다. 온라인 업그레이드는 기본값이므로, 버전 4.8.0 이상인 Phoenix 클라이언트에서 초기화하는 동안 인덱스가 다시 채워집니다. 오프라인 업그레이드를 지정하려면 phoenix.client.localIndexUpgrade 분류에서 phoenix-site 구성을 false로 설정한 다음 SSH를 마스터 노드로 설정하여 psql [zookeeper] -1을 실행합니다.

  • Presto 0.166로 업그레이드

  • Zeppelin 0.7.0로 업그레이드

변경 사항 및 기능 향상

릴리스 레이블 emr-5.4.0의 Amazon EMR 릴리스에 대한 변경 사항은 다음과 같습니다.

릴리스 5.3.1

다음 릴리스 정보에는 Amazon EMR 릴리스 5.3.1에 대한 정보가 포함됩니다. 변경 사항은 Amazon EMR 5.3.0 릴리스에 관련됩니다.

릴리스 날짜: 2017년 2월 7일

Zeppelin 패치를 백포트하고 Amazon EMR의 기본 AMI를 업데이트하는 부수적 변경 내용을 포함합니다.

릴리스 5.3.0

다음 릴리스 정보에는 Amazon EMR 릴리스 5.3.0에 대한 정보가 포함됩니다. 변경 사항은 Amazon EMR 5.2.1 릴리스에 관련됩니다.

릴리스 날짜: 2017년 1월 26일

업그레이드

이 릴리스에서는 다음 업그레이드를 사용할 수 있습니다.

  • Hive 2.1.1으로 업그레이드

  • Hue 3.11.0로 업그레이드

  • Spark 2.1.0로 업그레이드

  • Oozie 4.3.0로 업그레이드

  • Flink 1.1.4로 업그레이드

변경 사항 및 기능 향상

릴리스 레이블 emr-5.3.0의 Amazon EMR 릴리스에 대한 변경 사항은 다음과 같습니다.

  • interpreters_shown_on_wheel 파일에 지정된 순서와 상관없이 hue.ini 설정을 사용하여 노트북 선택 휠에 첫 번째로 표시할 인터프리터를 구성할 수 있는 Hue 패치를 추가했습니다.

  • Hive의 hive-parquet-logging 파일에서 값을 구성하는 데 사용할 수 있는 parquet-logging.properties 구성 분류를 추가했습니다.

릴리스 5.2.2

다음 릴리스 정보에는 Amazon EMR 릴리스 5.2.2에 대한 정보가 포함됩니다. 변경 사항은 Amazon EMR 5.2.1 릴리스에 관련됩니다.

릴리스 날짜: 2017년 5월 2일

이전 릴리스에서 해결된 알려진 문제

  • SPARK-194459의 백포트와 함께 char/varchar 열이 포함된 ORC 테이블에서 데이터를 읽어오지 못하던 문제가 해결되었습니다.

릴리스 5.2.1

다음 릴리스 정보에는 Amazon EMR 릴리스 5.2.1에 대한 정보가 포함됩니다. 변경 사항은 Amazon EMR 5.2.0 릴리스에 관련됩니다.

릴리스 날짜: 2016년 12월 29일

업그레이드

이 릴리스에서는 다음 업그레이드를 사용할 수 있습니다.

  • Presto 0.157.1로 업그레이드되었습니다. 자세한 내용은 Presto 설명서에서 Presto 릴리스 정보를 참조하세요.

  • Zookeeper 3.4.9로 업그레이드되었습니다. 자세한 내용은 Apache ZooKeeper 설명서에서 ZooKeeper 릴리스 정보를 참조하세요.

변경 사항 및 기능 향상

릴리스 레이블 emr-5.2.1의 Amazon EMR 릴리스에 대한 변경 사항은 다음과 같습니다.

  • Amazon EMR 버전 4.8.3 이상(5.0.0, 5.0.3 및 5.2.0 제외)에서 Amazon EC2 m4.16xlarge 인스턴스 유형에 대한 지원을 추가했습니다.

  • Amazon EMR 릴리스는 이제 Amazon Linux 2016.09를 기반으로 합니다. 자세한 내용은 https://aws.amazon.com/amazon-linux-ami/2016.09-release-notes/ 섹션을 참조하세요.

  • 이제 Flink 및 YARN 구성 경로가 /etc/default/flink에서 기본적으로 설정되므로 FLINK_CONF_DIR 또는 HADOOP_CONF_DIR 드라이버 스크립트를 실행하여 Flink 작업을 시작할 때 환경 변수 flinkyarn-session.sh을 설정할 필요가 없습니다.

  • FlinkKinesisConsumer 클래스에 대한 지원을 추가했습니다.

이전 릴리스에서 해결된 알려진 문제

  • 대규모 클러스터에서 동일한 파일의 복제 및 삭제 간 경합 때문에 ReplicationMonitor 스레드가 장시간 정체될 수 있는 하둡 문제를 수정했습니다.

  • 작업 상태가 성공적으로 업데이트되지 않은 경우 ControlledJob#toString이 null 포인터 예외(NPE)와 함께 실패하는 문제를 수정했습니다.

릴리스 5.2.0

다음 릴리스 정보에는 Amazon EMR 릴리스 5.2.0에 대한 정보가 포함됩니다. 변경 사항은 Amazon EMR 5.1.0 릴리스에 관련됩니다.

릴리스 날짜: 2016년 11월 21일

변경 사항 및 기능 향상

이 릴리스에서는 다음과 같은 변경 사항 및 기능 향상을 사용할 수 있습니다.

  • HBase에 대한 Amazon S3 스토리지 모드를 추가했습니다.

  • HBase rootdir의 Amazon S3 위치를 지정할 수 있습니다. 자세한 내용은 Amazon S3용 HBase를 참조하세요.

업그레이드

이 릴리스에서는 다음 업그레이드를 사용할 수 있습니다.

  • Spark 2.0.2로 업그레이드

이전 릴리스에서 해결된 알려진 문제

  • EBS 전용 인스턴스 유형에서 /mnt가 2TB로 제약되는 문제를 수정했습니다.

  • instance-controller 및 logpusher 로그가 매시간 회전하는 정상적인 og4j-configured .log 파일 대신 해당 .out 파일로 출력되는 문제를 수정했습니다. .out 파일은 회전하지 않으므로 결국 /emr 파티션이 파일로 가득 찰 수 있습니다. 이 문제는 하드웨어 가상 머신(HVM) 인스턴스 유형에만 영향을 미칩니다.

릴리스 5.1.0

다음 릴리스 정보에는 Amazon EMR 릴리스 5.1.0에 대한 정보가 포함됩니다. 변경 사항은 Amazon EMR 5.0.0 릴리스에 관련됩니다.

릴리스 날짜: 2016년 11월 3일

변경 사항 및 기능 향상

이 릴리스에서는 다음과 같은 변경 사항 및 기능 향상을 사용할 수 있습니다.

  • Flink 1.1.3에 대한 지원을 추가했습니다.

  • Presto는 Hue의 노트북 섹션에서 옵션으로 추가되었습니다.

업그레이드

이 릴리스에서는 다음 업그레이드를 사용할 수 있습니다.

  • HBase 1.2.3로 업그레이드

  • Zeppelin 0.6.2로 업그레이드

이전 릴리스에서 해결된 알려진 문제

  • ORC 파일이 이전 Amazon EMR 4.x 버전만큼 좋은 성능을 나타내지 않는 Amazon S3의 Tez 쿼리 문제를 수정했습니다.

릴리스 5.0.3

다음 릴리스 정보에는 Amazon EMR 릴리스 5.0.3에 대한 정보가 포함됩니다. 변경 사항은 Amazon EMR 5.0.0 릴리스에 관련됩니다.

릴리스 날짜: 2016년 10월 24일

업그레이드

이 릴리스에서는 다음 업그레이드를 사용할 수 있습니다.

  • Hadoop 2.7.3로 업그레이드

  • Presto 0.152.3로 업그레이드했습니다. 여기에는 Presto 웹 인터페이스에 대한 지원이 포함됩니다. 포트 8889를 사용하여 Presto 코디네이터의 Presto 웹 인터페이스에 액세스할 수 있습니다. Presto 웹 인터페이스에 대한 자세한 내용은 Presto 설명서에서 Web interface를 참조하세요.

  • Spark 2.0.1으로 업그레이드

  • Amazon EMR 릴리스는 이제 Amazon Linux 2016.09를 기반으로 합니다. 자세한 내용은 https://aws.amazon.com/amazon-linux-ami/2016.09-release-notes/ 섹션을 참조하세요.

릴리스 5.0.0

릴리스 날짜: 2016년 7월 27일

업그레이드

이 릴리스에서는 다음 업그레이드를 사용할 수 있습니다.

  • Hive 2.1으로 업그레이드

  • Presto 0.150로 업그레이드

  • Spark 2.0로 업그레이드

  • Hue 3.10.0로 업그레이드

  • Pig 0.16.0로 업그레이드

  • Tez 0.8.4로 업그레이드

  • Zeppelin 0.6.1으로 업그레이드

변경 사항 및 기능 향상

릴리스 레이블 emr-5.0.0 이상의 Amazon EMR 릴리스에 대한 변경 사항은 다음과 같습니다.

  • Amazon EMR은 최신 오픈 소스 버전의 Hive(버전 2.1)와 Pig(버전 0.16.0)를 지원합니다. 이전에 Amazon EMR에서 Hive나 Pig를 사용한 적이 있는 경우 일부 사용 사례에 영향을 미칠 수 있습니다. 자세한 내용은 HivePig를 참조하십시오.

  • Hive 및 Pig용 기본 실행 엔진은 이제 Tez입니다. 이 항목을 변경하려면 각각 hive-sitepig-properties 구성 분류에서 해당 값을 편집합니다.

  • 향상된 단계 디버깅 기능이 추가되었습니다. 서비스에서 원인을 결정할 수 있는 경우 이 기능을 사용하여 단계 실패의 근본 원인을 확인할 수 있습니다. 자세한 내용은 Amazon EMR 관리 안내서에서 향상된 단계 디버깅을 참조하세요.

  • 이전에 "-Sandbox"로 끝났던 애플리케이션은 더 이상 해당 접미사를 사용하지 않습니다. 이로 인해 예를 들어 스크립트를 사용하여 이 애플리케이션이 있는 클러스터를 시작하는 경우 자동화가 중단될 수 있습니다. 다음 테이블에서는 Amazon EMR 5.0.0 대비 Amazon EMR 4.7.2의 애플리케이션 이름을 보여줍니다.

    애플리케이션 이름 변경
    Amazon EMR 4.7.2 Amazon EMR 5.0.0
    Oozie-Sandbox Oozie
    Presto-Sandbox Presto
    Sqoop-Sandbox Sqoop
    Zeppelin-Sandbox Zeppelin
    ZooKeeper-Sandbox ZooKeeper
  • Spark는 이제 Scala 2.11용으로 컴파일됩니다.

  • 이제 기본 JVM은 Java 8입니다. 모든 애플리케이션은 Java 8 실행 시간을 사용하여 실행됩니다. 애플리케이션의 바이트 코드 대상에는 변경 사항이 없습니다. 대부분의 애플리케이션은 계속해서 Java 7을 대상으로 합니다.

  • Zeppelin에는 이제 인증 기능이 포함됩니다. 자세한 내용은 Zeppelin을 참조하십시오.

  • 암호화 옵션을 더 쉽게 생성하고 적용할 수 있도록 보안 구성에 대한 지원을 추가했습니다. 자세한 내용은 데이터 암호화를 참조하세요.

릴리스 4.9.5

다음 릴리스 정보에는 Amazon EMR 릴리스 4.9.5에 대한 정보가 포함됩니다. 변경 사항은 4.9.4에 관련됩니다.

최초 릴리스 날짜: 2018년 8월 29일

변경 사항, 향상된 기능 및 해결된 문제
  • HBase

    • 이 릴리스는 잠재적인 보안 취약점을 해결합니다.

릴리스 4.9.4

다음 릴리스 정보에는 Amazon EMR 릴리스 4.9.4에 대한 정보가 포함됩니다. 변경 사항은 4.9.3에 관련됩니다.

최초 릴리스 날짜: 2018년 3월 29일

변경 사항, 향상된 기능 및 해결된 문제
  • 잠재적인 취약성을 해결하기 위해 Amazon EMR에 대한 기본 Amazon Linux AMI의 Amazon Linux 커널을 업데이트했습니다.

릴리스 4.9.3

다음 릴리스 정보에는 Amazon EMR 릴리스 4.9.3에 대한 정보가 포함됩니다. 변경 사항은 Amazon EMR 4.9.2 릴리스에 관련됩니다.

최초 릴리스 날짜: 2018년 1월 22일

변경 사항, 향상된 기능 및 해결된 문제

릴리스 4.9.2

다음 릴리스 정보에는 Amazon EMR 릴리스 4.9.2에 대한 정보가 포함됩니다. 변경 사항은 Amazon EMR 4.9.1 릴리스에 관련됩니다.

릴리스 날짜: 2017년 7월 13일

이번 릴리스에서 일반적인 변경, 버그 수정 및 기능 개선이 이루어졌습니다.

릴리스 4.9.1

다음 릴리스 정보에는 Amazon EMR 릴리스 4.9.1에 대한 정보가 포함됩니다. 변경 사항은 Amazon EMR 4.8.4 릴리스에 관련됩니다.

릴리스 날짜: 2017년 4월 10일

이전 릴리스에서 해결된 알려진 문제

  • HIVE-9976HIVE-10106 백포트

  • YARN에서 다수의 노드(2,000개 이상) 및 컨테이너(5,000개 이상)가 메모리 부족 오류를 야기하던 문제(예: "Exception in thread 'main' java.lang.OutOfMemoryError")가 수정되었습니다.

변경 사항 및 기능 향상

릴리스 레이블 emr-4.9.1의 Amazon EMR 릴리스에 대한 변경 사항은 다음과 같습니다.

  • Amazon EMR 릴리스는 이제 Amazon Linux 2017.03을 기반으로 합니다. 자세한 내용은 https://aws.amazon.com/amazon-linux-ami/2017.03-release-notes/ 섹션을 참조하세요.

  • Amazon EMR 기본 Linux 이미지에서 Python 2.6을 제거했습니다. 필요하다면 Python 2.6을 수동으로 설치할 수도 있습니다.

릴리스 4.8.4

다음 릴리스 정보에는 Amazon EMR 릴리스 4.8.4에 대한 정보가 포함됩니다. 변경 사항은 Amazon EMR 4.8.3 릴리스에 관련됩니다.

릴리스 날짜: 2017년 2월 7일

이번 릴리스에서 일반적인 변경, 버그 수정 및 기능 개선이 이루어졌습니다.

릴리스 4.8.3

다음 릴리스 정보에는 Amazon EMR 릴리스 4.8.3에 대한 정보가 포함됩니다. 변경 사항은 Amazon EMR 4.8.2 릴리스에 관련됩니다.

릴리스 날짜: 2016년 12월 29일

업그레이드

이 릴리스에서는 다음 업그레이드를 사용할 수 있습니다.

  • Presto 0.157.1로 업그레이드되었습니다. 자세한 내용은 Presto 설명서에서 Presto 릴리스 정보를 참조하세요.

  • Spark 1.6.3으로 업그레이드되었습니다. 자세한 내용은 Apache Spark 설명서에서 Spark 릴리스 정보를 참조하세요.

  • ZooKeeper 3.4.9로 업그레이드되었습니다. 자세한 내용은 Apache ZooKeeper 설명서에서 ZooKeeper 릴리스 정보를 참조하세요.

변경 사항 및 기능 향상

릴리스 레이블 emr-4.8.3의 Amazon EMR 릴리스에 대한 변경 사항은 다음과 같습니다.

  • Amazon EMR 버전 4.8.3 이상(5.0.0, 5.0.3 및 5.2.0 제외)에서 Amazon EC2 m4.16xlarge 인스턴스 유형에 대한 지원을 추가했습니다.

  • Amazon EMR 릴리스는 이제 Amazon Linux 2016.09를 기반으로 합니다. 자세한 내용은 https://aws.amazon.com/amazon-linux-ami/2016.09-release-notes/ 섹션을 참조하세요.

이전 릴리스에서 해결된 알려진 문제

  • 대규모 클러스터에서 동일한 파일의 복제 및 삭제 간 경합 때문에 ReplicationMonitor 스레드가 장시간 정체될 수 있는 하둡 문제를 수정했습니다.

  • 작업 상태가 성공적으로 업데이트되지 않은 경우 ControlledJob#toString이 null 포인터 예외(NPE)와 함께 실패하는 문제를 수정했습니다.

릴리스 4.8.2

다음 릴리스 정보에는 Amazon EMR 릴리스 4.8.2에 대한 정보가 포함됩니다. 변경 사항은 Amazon EMR 4.8.0 릴리스에 관련됩니다.

릴리스 날짜: 2016년 10월 24일

업그레이드

이 릴리스에서는 다음 업그레이드를 사용할 수 있습니다.

  • Hadoop 2.7.3로 업그레이드

  • Presto 0.152.3로 업그레이드했습니다. 여기에는 Presto 웹 인터페이스에 대한 지원이 포함됩니다. 포트 8889를 사용하여 Presto 코디네이터의 Presto 웹 인터페이스에 액세스할 수 있습니다. Presto 웹 인터페이스에 대한 자세한 내용은 Presto 설명서에서 Web interface를 참조하세요.

  • Amazon EMR 릴리스는 이제 Amazon Linux 2016.09를 기반으로 합니다. 자세한 내용은 https://aws.amazon.com/amazon-linux-ami/2016.09-release-notes/ 섹션을 참조하세요.

릴리스 4.8.0

릴리스 날짜: 2016년 9월 7일

업그레이드

이 릴리스에서는 다음 업그레이드를 사용할 수 있습니다.

  • HBase 1.2.2로 업그레이드

  • Presto-Sandbox 0.151으로 업그레이드

  • Tez 0.8.4로 업그레이드

  • Zeppelin-Sandbox 0.6.1으로 업그레이드

변경 사항 및 기능 향상

릴리스 레이블 emr-4.8.0의 Amazon EMR 릴리스에 대한 변경 사항은 다음과 같습니다.

  • YARN에서 인스턴스가 종료되었기 때문에 더 이상 존재하지 않는 컨테이너를 ApplicationMaster가 정리하려고 시도하는 문제를 수정했습니다.

  • Oozie 예제에서 Hive2 작업에 대한 hive-server2 URL을 수정했습니다.

  • 추가 Presto 카탈로그에 대한 지원을 추가했습니다.

  • 백포트된 패치: HIVE-8948, HIVE-12679, HIVE-13405, PHOENIX-3116, HADOOP-12689

  • 암호화 옵션을 더 쉽게 생성하고 적용할 수 있도록 보안 구성에 대한 지원을 추가했습니다. 자세한 내용은 데이터 암호화를 참조하세요.

릴리스 4.7.2

다음 릴리스 정보에는 Amazon EMR 릴리스 4.7.2에 대한 정보가 포함됩니다.

릴리스 날짜: 2016년 7월 15일

기능

이 릴리스에서는 다음 기능을 사용할 수 있습니다.

  • Mahout 0.12.2로 업그레이드

  • Presto 0.148으로 업그레이드

  • Spark 1.6.2로 업그레이드

  • 이제 URI를 파라미터로 사용하여 EMRFS과 함께 사용할 AWSCredentialsProvider를 생성할 수 있습니다. 자세한 내용은 EMRFS에 대한 AWSCredentialsProvider 생성을 참조하십시오.

  • 이제 EMRFS에서 사용자는 emrfs-site.xmlfs.s3.consistent.dynamodb.endpoint 속성을 사용하여 일관된 보기 메타데이터에 대한 사용자 지정 DynamoDB 엔드포인트를 구성할 수 있습니다.

  • /usr/bin이라고 하는 spark-example에 스크립트가 추가되면서 /usr/lib/spark/spark/bin/run-example을 래핑하여 직접 예제를 실행할 수 있습니다. 예를 들어, Spark 배포와 함께 제공되는 SparkPi 예제를 실행하려면 명령줄에서 또는 spark-example SparkPi 100을 API에서 단계로 사용하여 command-runner.jar를 실행할 수 있습니다.

이전 릴리스에서 해결된 알려진 문제

  • Oozie 와 함께 Spark도 설치된 경우 spark-assembly.jar이 올바른 위치에 있지 않아서 Spark 애플리케이션이 Oozie와 함께 시작되지 못하는 문제를 수정했습니다.

  • YARN 컨테이너에서 Spark Log4j 기반 로깅 문제를 수정했습니다.

릴리스 4.7.1

릴리스 날짜: 2016년 6월 10일

이전 릴리스에서 해결된 알려진 문제

  • VPC에서 프라이빗 서브넷을 사용하여 시작된 클러스터의 스타트업 시간을 연장하는 문제를 수정했습니다. 이 버그는 Amazon EMR 4.7.0 릴리스를 사용하여 시작된 클러스터에만 영향을 미칩니다.

  • Amazon EMR 4.7.0 릴리스를 사용하여 시작된 클러스터의 경우 Amazon EMR에서 파일 목록을 부적절하게 처리하는 문제를 수정했습니다.

릴리스 4.7.0

중요

Amazon EMR 4.7.0은 더 이상 사용되지 않습니다. 대신 Amazon EMR 4.7.1 이상을 사용합니다.

릴리스 날짜: 2016년 6월 2일

기능

이 릴리스에서는 다음 기능을 사용할 수 있습니다.

  • Apache Phoenix 4.7.0 추가

  • Apache Tez 0.8.3 추가

  • HBase 1.2.1으로 업그레이드

  • Mahout 0.12.0로 업그레이드

  • Presto 0.147으로 업그레이드

  • AWS SDK for Java를 1.10.75로 업그레이드

  • 사용자가 로컬 모드에서 Pig를 실행할 수 있도록 mapreduce.cluster.local.dirmapred-site.xml 속성에서 최종 플래그가 제거되었습니다.

클러스터에서 사용할 수 있는 Amazon Redshift JDBC 드라이버

이제 Amazon Redshift JDBC 드라이버는 /usr/share/aws/redshift/jdbc에 포함됩니다. /usr/share/aws/redshift/jdbc/RedshiftJDBC41.jar은 JDBC 4.1 호환 Amazon Redshift 드라이버이고 /usr/share/aws/redshift/jdbc/RedshiftJDBC4.jar은 JDBC 4.0 호환 Amazon Redshift 드라이버입니다. 자세한 내용은 Amazon Redshift 관리 안내서에서 JDBC 연결 구성을 참조하세요.

Java 8

Presto를 제외하고 모든 애플리케이션에 사용되는 기본 JDK는 OpenJDK 1.7입니다. 하지만 OpenJDK 1.7 및 1.8이 모두 설치됩니다. 애플리케이션에 대해 JAVA_HOME을 설정하는 방법에 대한 자세한 내용은 Java 8을 사용하도록 애플리케이션 구성을 참조하세요.

이전 릴리스에서 해결된 알려진 문제

  • emr-4.6.0에서 Amazon EMR에 사용되는 처리량에 최적화된 HDD(st1) EBS 볼륨의 성능에 상당한 영향을 미치는 커널 문제를 수정했습니다.

  • 하둡을 애플리케이션으로 선택하지 않고 HDFS 암호화 영역을 지정할 경우 클러스터가 실패하는 문제를 수정했습니다.

  • 기본 HDFS 쓰기 정책을 RoundRobin에서 AvailableSpaceVolumeChoosingPolicy로 변경했습니다. RoundRobin 구성에서 일부 볼륨이 제대로 이용되지 않았으며 결과적으로 코어 노드가 실패하고 HDFS가 불안정한 상태가 되었습니다.

  • 일관된 보기에 대한 기본 DynamoDB 메타데이터 테이블을 생성할 때 예외가 발생하는 EMRFS CLI 문제를 수정했습니다.

  • 멀티파트 이름 바꾸기 및 복사 작업 중에 발생할 수 있는 EMRFS의 교착 문제를 수정했습니다.

  • CopyPart 크기가 기본적으로 5MB로 설정되는 EMRFS 문제를 수정했습니다. 기본값은 이제 128MB로 올바르게 설정됩니다.

  • 서비스를 중단할 수 없는 Zeppelin upstart 구성 문제를 수정했습니다.

  • s3a://이 해당 클래스 경로에 올바르게 로드되지 않기 때문에 /usr/lib/hadoop/hadoop-aws.jar URI 스키마를 사용할 수 없는 Spark 및 Zeppelin 문제를 수정했습니다.

  • HUE-2484를 백포트했습니다.

  • HBase 브라우저 샘플 문제를 수정하기 위해 Hue 3.9.0(JIRA가 존재하지 않음)의 커밋을 백포트했습니다.

  • HIVE-9073를 백포트했습니다.

릴리스 4.6.0

릴리스 날짜: 2016년 4월 21일

기능

이 릴리스에서는 다음 기능을 사용할 수 있습니다.

처리량에 최적화된 HDD(st1) EBS 볼륨 유형에 영향을 미치는 문제

Linux 커널 버전 4.2 이상의 문제는 EMR에 사용되는 처리량에 최적화된 HDD(st1) EBS 볼륨의 성능에 상당한 영향을 미칩니다. 이 릴리스(emr-4.6.0)는 커널 버전 4.4.5를 사용하므로 영향을 받습니다. 따라서 st1 EBS 볼륨을 사용하려는 경우 emr-4.6.0를 사용하지 않는 것이 좋습니다. emr-4.5.0 이전의 Amazon EMR 릴리스를 st1과 함께 사용하면 영향을 받지 않을 수 있습니다. 또한 향후 릴리스에서 수정을 제공합니다.

Python 기본값

이제 Python 3.4가 기본적으로 설치되지만, 시스템 기본값은 여전히 Python 2.7입니다. 부트스트랩 작업을 사용하여 Python 3.4를 시스템 기본값으로 구성할 수 있습니다. 구성 API를 사용하여 /usr/bin/python3.4 분류의 PYSPARK_PYTHON 내보내기를 spark-env로 설정하면 PySpark에서 사용되는 Python 버전에 영향을 미칠 수 있습니다.

Java 8

Presto를 제외하고 모든 애플리케이션에 사용되는 기본 JDK는 OpenJDK 1.7입니다. 하지만 OpenJDK 1.7 및 1.8이 모두 설치됩니다. 애플리케이션에 대해 JAVA_HOME을 설정하는 방법에 대한 자세한 내용은 Java 8을 사용하도록 애플리케이션 구성을 참조하세요.

이전 릴리스에서 해결된 알려진 문제

  • 생성된 암호로 인해 애플리케이션 프로비저닝이 가끔 임의로 실패하는 문제를 수정했습니다.

  • 이전에는 mysqld가 모든 노드에 설치되었습니다. 이제 이 항목은 마스터 인스턴스에만 설치되며 선택한 애플리케이션에 mysql-server가 구성 요소로 포함되는 경우에만 설치됩니다. 현재 HCatalog, Hive, Hue, Presto-Sandbox, Sqoop-Sandbox 등의 애플리케이션에 mysql-server 구성 요소가 포함됩니다.

  • yarn.scheduler.maximum-allocation-vcores를 기본값 32에서 80으로 변경했습니다. 이 변경에 따라 emr-4.4.0에 도입된 한 가지 문제가 수정됩니다. 이 문제는 코어 인스턴스 유형이 32 이상의 YARN vcore 세트를 갖춘 몇 가지 대규모 인스턴스 유형 중 하나인 클러스터에서 maximizeResourceAllocation 옵션을 사용하는 동안 주로 Spark에 발생합니다. 다시 말해서 c4.8xlarge, cc2.8xlarge, hs1.8xlarge, i2.8xlarge, m2.4xlarge, r3.8xlarge, d2.8xlarge 또는 m4.10xlarge가 이 문제의 영향을 받습니다.

  • s3-dist-cp는 이제 모든 Amazon S3 추천에 EMRFS를 사용하며 더 이상 임시 HDFS 디렉터리로 준비하지 않습니다.

  • 클라이언트 측 암호화 멀티파트 업로드에 대한 예외 처리 문제를 수정했습니다.

  • 사용자가 Amazon S3 스토리지 클래스를 변경할 수 있는 옵션을 추가했습니다. 기본적으로 이 설정은 STANDARD입니다. emrfs-site 구성 분류 설정은 fs.s3.storageClass이며 가능한 값은 STANDARD, STANDARD_IAREDUCED_REDUNDANCY입니다. 스토리지 클래스에 대한 자세한 내용은 Amazon Simple Storage Service 사용 설명서에서 스토리지 클래스를 참조하세요.

릴리스 4.5.0

릴리스 날짜: 2016년 4월 4일

기능

이 릴리스에서는 다음 기능을 사용할 수 있습니다.

  • Spark 1.6.1으로 업그레이드

  • Hadoop 2.7.2로 업그레이드

  • Presto 0.140로 업그레이드

  • Amazon S3 서버 측 암호화에 대한 AWS KMS 지원을 추가했습니다.

이전 릴리스에서 해결된 알려진 문제

  • 노드를 재부팅한 후 MySQL 및 Apache 서버가 시작되지 않는 문제를 수정했습니다.

  • Amazon S3에 파티션되지 않은 테이블이 저장되면 IMPORT가 올바르게 작동하지 않는 문제를 수정했습니다.

  • Hive 테이블에 쓸 때 준비 디렉터리를 /mnt/tmp 대신 /tmp로 지정해야 하는 Presto 문제를 수정했습니다.

릴리스 4.4.0

릴리스 날짜: 2016년 3월 14일

기능

이 릴리스에서는 다음 기능을 사용할 수 있습니다.

  • HCatalog 1.0.0 추가

  • Sqoop-Sandbox 1.4.6 추가

  • Presto 0.136로 업그레이드

  • Zeppelin 0.5.6로 업그레이드

  • Mahout 0.11.1으로 업그레이드

  • dynamicResourceAllocation을 기본적으로 활성화했습니다.

  • 릴리스에 대한 모든 구성 분류의 표를 추가했습니다. 자세한 내용은 애플리케이션 구성의 구성 분류 테이블을 참조하세요.

이전 릴리스에서 해결된 알려진 문제

  • maximizeResourceAllocation 설정에서 YARN ApplicationMaster 데몬에 충분한 메모리가 예약되지 않는 문제를 수정했습니다.

  • 사용자 지정 DNS에 발생하는 문제를 수정했습니다. 제공된 사용자 지정 항목 앞에 resolve.conf의 항목이 있으면 사용자 지정 항목을 확인할 수 없습니다. 이 동작은 기본 VPC 이름 서버가 resolve.conf에 최상위 항목으로 삽입되는 VPC의 클러스터에서 영향을 받은 것입니다.

  • 기본 Python이 버전 2.7으로 이동하고 해당 버전에 대해 boto가 설치되지 않는 문제를 수정했습니다.

  • YARN 컨테이너와 Spark 애플리케이션이 고유의 Ganglia rrd(round robin database) 파일을 생성하여 인스턴스에 연결된 첫 번째 디스크가 가득 채워지는 문제를 수정했습니다. 이러한 수정으로 인해 YARN 컨테이너 수준 지표가 비활성화되었으며 Spark 애플리케이션 수준 지표가 비활성화되었습니다.

  • 로그 푸셔에서 비어 있는 모든 로그 폴더가 삭제되는 문제를 수정했습니다. 이 문제의 영향으로 로그 푸셔가 user에서 비어 있는 /var/log/hive 폴더를 제거하기 때문에 Hive CLI가 로그를 작성할 수 없었습니다.

  • Hive 가져오기에 영향을 미치는 문제를 수정했습니다. 이 문제는 파티셔닝에 영향을 미치며 결과적으로 가져오기 중 오류가 발생했습니다.

  • EMRFS 및 s3-dist-cp에서 마침표가 포함된 버킷 이름이 올바르게 처리되지 않는 문제를 수정했습니다.

  • 버전 관리를 사용하는 버킷에서 _$folder$ 마커 파일이 연속적으로 생성되지 않도록 EMRFS의 동작을 변경했습니다. 이 변경은 버전 관리를 사용하는 버킷의 성능을 향상하는 데 도움이 될 수 있습니다.

  • 클라이언트 측 암호화를 사용하는 경우를 제외하고 지침 파일을 사용하지 않도록 EMRFS의 동작을 변경했습니다. 클라이언트 측 암호화를 사용하는 동안 지침 파일을 삭제하려는 경우 emrfs-site.xml 속성인 fs.s3.cse.cryptoStorageMode.deleteInstructionFiles.enabled를 true로 설정할 수 있습니다.

  • 2일 동인 집계 대상에서 로그를 유지하도록 Changed YARN 로그 집계를 변경했습니다. 기본 대상은 클러스터의 HDFS 스토리지입니다. 이 기간을 변경하려는 경우 클러스터를 생성할 때 yarn.log-aggregation.retain-seconds 분류를 사용하여 yarn-site의 값을 변경합니다. 평소와 같이, 클러스터를 생성할 때 log-uri 파라미터를 사용하여 애플리케이션 로그를 Amazon S3에 저장할 수 있습니다.

패치 적용됨

이 릴리스에는 다음과 같은 오픈 소스 프로젝트의 패치가 포함되었습니다.

릴리스 4.3.0

릴리스 날짜: 2016년 1월 19일

기능

이 릴리스에서는 다음 기능을 사용할 수 있습니다.

  • Hadoop 2.7.1으로 업그레이드

  • Spark 1.6.0로 업그레이드

  • Ganglia를 3.7.2로 업그레이드

  • Presto를 0.130로 업그레이드

Amazon EMR에서 spark.dynamicAllocation.enabled를 true로 설정한 경우 이 설정이 약간 변경되었습니다. 이 설정은 기본적으로 false입니다. 이 값을 true로 설정하면 이 설정은 maximizeResourceAllocation 설정을 통해 지정된 기본값에 영향을 미칩니다.

  • spark.dynamicAllocation.enabled가 true로 설정되면 spark.executor.instances에서 maximizeResourceAllocation가 설정되지 않습니다.

  • 이제 spark.driver.memory 설정은 spark.executors.memory가 설정되는 방식과 비슷한 방식으로 클러스터의 인스턴스 유형에 따라 구성됩니다. 하지만 Spark 드라이버 애플리케이션을 마스터 또는 코어 인스턴스 중 하나에서(예를 들면 각각 YARN 클라이언트 및 클러스터 모드에서) 실행할 수 있으므로 spark.driver.memory 설정이 이러한 두 인스턴스 그룹 중 더 작은 인스턴스 유형에 따라 설정됩니다.

  • 이제 spark.default.parallelism 설정은 YARN 컨테이너에 사용할 수 있는 CPU 코어 수의 두 배로 설정됩니다. 이전 릴리스에서 이 설정은 해당 값의 절반이었습니다.

  • Spark YARN 프로세스에서 예약된 메모리 오버헤드에 대한 계산이 더 정확하게 조정되어 Spark에 사용 가능한 총 메모리 양(즉, spark.executor.memory)이 약간 증가했습니다.

이전 릴리스에서 해결된 알려진 문제

  • 이제 YARN 로그 집계가 기본적으로 활성화됩니다.

  • YARN 로그 집계를 활성화하면 로그가 클러스터의 Amazon S3 로그 버킷에 푸시되지 않는 문제를 수정했습니다.

  • 이제 YARN 컨테이너 크기의 새로운 최소값은 모든 노드 유형에서 32입니다.

  • 대규모 클러스터의 마스터 노드에 과도한 디스크 I/O를 유발하는 Ganglia 문제를 수정했습니다.

  • 클러스터를 종료할 때 애플리케이션 로그가 Amazon S3에 푸시되지 않는 문제를 수정했습니다.

  • EMRFS CLI에서 특정 명령이 실패하는 문제를 수정했습니다.

  • 종속성이 기본 SparkContext에 로드되지 않는 Zeppelin 문제를 수정했습니다.

  • 크기 조정을 실행하여 인스턴스를 추가하려고 할 때 발생하는 문제를 수정했습니다.

  • Hive에서 CREATE TABLE AS SELECT를 실행하면 Amazon S3에 대한 목록이 과도하게 직접 호출되는 문제를 수정했습니다.

  • Hue, Oozie 및 Ganglia를 설치하면 대규모 클러스터가 제대로 프로비저닝되지 않는 문제를 수정했습니다.

  • s3-dist-cp가 오류로 실패하더라도 0 종료 코드가 반환되는 문제를 수정했습니다.

패치 적용됨

이 릴리스에는 다음과 같은 오픈 소스 프로젝트의 패치가 포함되었습니다.

릴리스 4.2.0

릴리스 날짜: 2015년 11월 18일

기능

이 릴리스에서는 다음 기능을 사용할 수 있습니다.

  • Ganglia 지원 추가

  • Spark 1.5.2로 업그레이드

  • Presto 0.125로 업그레이드

  • Oozie를 4.2.0로 업그레이드

  • Zeppelin을 0.5.5로 업그레이드

  • AWS SDK for Java를 1.10.27로 업그레이드

이전 릴리스에서 해결된 알려진 문제

  • 기본 메타데이터 테이블 이름이 사용되지 않는 EMRFS CLI 문제를 수정했습니다.

  • Amazon S3에서 ORC 지원 테이블을 사용할 때 발생하는 문제를 수정했습니다.

  • Spark 구성에서 Python 버전이 일치하지 않는 경우 발생하는 문제를 수정했습니다.

  • VPC에서 클러스터의 DNS 문제 때문에 YARN 노드 상태가 보고되지 않는 문제를 수정했습니다.

  • YARN에서 노드를 폐기하면 애플리케이션이 정지되거나 새 애플리케이션을 예약할 수 없게 되는 문제를 수정했습니다.

  • 클러스터가 TIMED_OUT_STARTING 상태로 종료될 때 발생하는 문제를 수정했습니다.

  • EMRFS Scala 종속성을 다른 빌드에 포함시킬 때 발생하는 문제를 수정했습니다. Scala 종속성이 제거되었습니다.