Versão 5.21.0 do Amazon EMR - Amazon EMR

Versão 5.21.0 do Amazon EMR

Versões 5.21.0 da aplicação

As seguintes aplicações são compatíveis com esta versão: Flink, Ganglia, HBase, HCatalog, Hadoop, Hive, Hue, JupyterHub, Livy, MXNet, Mahout, Oozie, Phoenix, Pig, Presto, Spark, Sqoop, TensorFlow, Tez, Zeppelin e ZooKeeper.

A tabela abaixo lista as versões das aplicações disponíveis nesta versão do Amazon EMR e as versões de aplicações nas três versões anteriores do Amazon EMR (quando aplicável).

Para obter um histórico abrangente das versões das aplicações de cada versão do Amazon EMR, consulte os seguintes tópicos:

Informações da versão da aplicação
emr-5.21.0 emr-5.20.1 emr-5.20.0 emr-5.19.1
AWS SDK para Java 1.11.4791.11.4611.11.4611.11.433
Python 2.7, 3.62.7, 3.62.7, 3.62.7, 3.4
Scala 2.11.122.11.122.11.122.11.8
AmazonCloudWatchAgent - - - -
Delta - - - -
Flink1.7.01.6.21.6.21.6.1
Ganglia3.7.23.7.23.7.23.7.2
HBase1.4.81.4.81.4.81.4.7
HCatalog2.3.42.3.42.3.42.3.3
Hadoop2.8.52.8.52.8.52.8.5
Hive2.3.42.3.42.3.42.3.3
Hudi - - - -
Hue4.3.04.3.04.3.04.2.0
Iceberg - - - -
JupyterEnterpriseGateway - - - -
JupyterHub0.9.40.9.40.9.40.9.4
Livy0.5.00.5.00.5.00.5.0
MXNet1.3.11.3.11.3.11.3.0
Mahout0.13.00.13.00.13.00.13.0
Oozie5.0.05.0.05.0.05.0.0
Phoenix4.14.04.14.04.14.04.14.0
Pig0.17.00.17.00.17.00.17.0
Presto0.2150.2140.2140.212
Spark2.4.02.4.02.4.02.3.2
Sqoop1.4.71.4.71.4.71.4.7
TensorFlow1.12.01.12.01.12.01.11.0
Tez0.9.10.9.10.9.10.8.4
Trino (PrestoSQL) - - - -
Zeppelin0.8.00.8.00.8.00.8.0
ZooKeeper3.4.133.4.133.4.133.4.13

Notas da versão 5.21.0

As notas da versão a seguir incluem informações para a versão 5.21.0 do Amazon EMR. As alterações são referentes à versão 5.20.0.

Data da versão inicial: 18 de fevereiro de 2019

Data da última atualização: 3 de abril de 2019

Atualizações
  • Flink 1.7.0

  • Presto 0.215

  • AWS SDK for Java 1.11.479

Novos atributos
  • (3 de abril de 2019) Com as versões 5.21.0 e posteriores do Amazon EMR, você pode substituir as configurações de cluster e especificar classificações de configuração adicionais para cada grupo de instâncias em um cluster em execução. Você pode fazer isso usando o console do Amazon EMR, a AWS Command Line Interface (AWS CLI) ou o AWS SDK. Para obter mais informações, consulte Supplying a Configuration for an Instance Group in a Running Cluster.

Alterações, melhorias e problemas resolvidos
Problemas conhecidos
  • Hue (corrigido na versão 5.24.0 do Amazon EMR)

    • O Hue executado no Amazon EMR não é compatível com o Solr. Desde a versão 5.20.0 do Amazon EMR, um problema de configuração incorreta faz com que o Solr seja habilitado e uma mensagem de erro inofensiva semelhante à seguinte seja exibida:

      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',))

      Para evitar que a mensagem de erro do Solr seja exibida:

      1. Conecte-se à linha de comando do nó primário usando SSH.

      2. Use um editor de texto para abrir o arquivo hue.ini. Por exemplo:

        sudo vim /etc/hue/conf/hue.ini

      3. Pesquise o termo appblacklist e modifique a linha para o seguinte:

        appblacklist = search
      4. Salve as alterações e reinicie o Hue, conforme mostrado no exemplo a seguir:

        sudo stop hue; sudo start hue
  • Tez

    • Esse problema foi corrigido no Amazon EMR 5.22.0.

      Quando você se conecta à interface do usuário do Tez em http://MasterDNS:8080/tez-ui por meio de uma conexão SSH com o nó primário do cluster, é exibido o erro “Falha na operação do adaptador: o servidor de linha do tempo (ATS) está fora de alcance. Ele está inoperante ou o CORS não está habilitado” ou as tarefas mostram, inesperadamente, N/A.

      Isso é causado pela interface do usuário do Tez ao fazer solicitações ao servidor de linha do tempo do YARN usando localhost em vez do nome do host do nó primário. Como solução alternativa, um script está disponível para execução como ação ou etapa de bootstrap. O script atualiza o nome do host no arquivo configs.env do Tez. Para obter mais informações e a localização do script, consulte Instruções de bootstrap.

  • Nas versões 5.19.0, 5.20.0 e 5.21.0 do Amazon EMR, os rótulos dos nós do YARN são armazenados em um diretório do HDFS. Em algumas situações, isso leva a atrasos na inicialização do nó central causando, em seguida, tempo limite do cluster e falha na inicialização. Desde a versão 5.22.0 do Amazon EMR, esse problema foi resolvido. Os rótulos dos nós do YARN são armazenados no disco local de cada nó do cluster, evitando dependências no HDFS.

  • Problema conhecido em clusters com vários nós primários e autenticação Kerberos

    Se você executar clusters com vários nós primários e autenticação Kerberos nas versões 5.20.0 e posteriores do Amazon EMR, poderá encontrar problemas nas operações de cluster, como redução da escala verticalmente ou envio de etapas depois que o cluster estiver em execução por algum tempo. O período depende do período de validade do tíquete do Kerberos que você definiu. O problema de redução da escala verticalmente afeta tanto as solicitações de redução automática quanto as de reduções explícitas que você enviou. Operações adicionais de cluster também podem ser afetadas.

    Solução:

    • SSH como usuário do hadoop para o nó primário de liderança do cluster do EMR com vários nós primários.

    • Execute o comando a seguir para renovar o tíquete do Kerberos para o usuário do hadoop.

      kinit -kt <keytab_file> <principal>

      Normalmente, o arquivo keytab está localizado em /etc/hadoop.keytab e a entidade principal está na forma de hadoop/<hostname>@<REALM>.

    nota

    Essa solução alternativa entrará em vigor durante o período de validade do tíquete do Kerberos. Essa duração é de 10 horas por padrão, mas pode ser configurada pelas definições do Kerberos. Você deve executar novamente o comando acima quando o tíquete do Kerberos expirar.

Versões de componente 5.21.0

Os componentes que o Amazon EMR instala com esta versão estão listados abaixo. Alguns são instalados como parte de pacotes de aplicativos de big data. Outros são exclusivos do Amazon EMR e instalados para processos e atributos do sistema. Eles normalmente começam com emr ou aws. Os pacotes de aplicações de big data na versão mais recente do Amazon EMR são geralmente a versão mais recente encontrada na comunidade. Disponibilizamos as versões da comunidade no Amazon EMR o mais rapidamente possível.

Alguns componentes no Amazon EMR diferem das versões da comunidade. Esses componentes tem um rótulo de versão no formulário CommunityVersion-amzn-EmrVersion. O EmrVersion começa em 0. Por exemplo, se um componente da comunidade de código aberto denominado myapp-component com a versão 2.2 tiver sido alterado três vezes para inclusão em versões diferentes do Amazon EMR, sua versão será listada como 2.2-amzn-2.

Componente Version (Versão) Descrição
aws-sagemaker-spark-sdk1.2.1Spark SDK para o Amazon SageMaker
emr-ddb4.7.0O conector do Amazon DynamoDB para aplicativos do ecossistema do Hadoop.
emr-goodies2.5.1Bibliotecas convenientes para o ecossistema do Hadoop.
emr-kinesis3.4.0O conector do Amazon Kinesis para aplicativos do ecossistema do Hadoop.
emr-s3-dist-cp2.11.0Cópia distribuída otimizada de aplicativos para o Amazon S3.
emr-s3-select1.2.0EMR S3Select Connector
emrfs2.30.0O conector do Amazon S3 para aplicações do ecossistema do Hadoop.
flink-client1.7.0Scripts do cliente da linha de comando e aplicativos do Apache Flink.
ganglia-monitor3.7.2O agente incorporado do Ganglia para aplicativos do ecossistema do Hadoop, juntamente com o agente de monitoramento do Ganglia.
ganglia-metadata-collector3.7.2O coletor de metadados do Ganglia para agregar métricas de agentes de monitoramento do Ganglia.
ganglia-web3.7.1O aplicativo web para visualizar as métricas coletadas pelo coletor de metadados do Ganglia.
hadoop-client2.8.5-amzn-1Clientes da linha de comando do Hadoop, como 'hdfs', 'hadoop', ou 'yarn'.
hadoop-hdfs-datanode2.8.5-amzn-1O serviço de nível de nó do HDFS para armazenamento de blocos.
hadoop-hdfs-library2.8.5-amzn-1O cliente de linha de comando e biblioteca do HDFS
hadoop-hdfs-namenode2.8.5-amzn-1O serviço do HDFS para rastrear nomes de arquivos e locais de blocos.
hadoop-httpfs-server2.8.5-amzn-1O endpoint de HTTP para as operações do HDFS.
hadoop-kms-server2.8.5-amzn-1O servidor de gerenciamento de chaves criptográficas baseado na API de KeyProvider do Hadoop.
hadoop-mapred2.8.5-amzn-1As bibliotecas do mecanismo de execução do MapReduce para a execução de aplicativos do MapReduce.
hadoop-yarn-nodemanager2.8.5-amzn-1O serviço do YARN para o gerenciamento de contêineres em um nó individual.
hadoop-yarn-resourcemanager2.8.5-amzn-1O serviço do YARN para alocar e gerenciar recursos de cluster e aplicativos distribuídos.
hadoop-yarn-timeline-server2.8.5-amzn-1O serviço para recuperar informações atuais e históricas dos aplicativos do YARN.
hbase-hmaster1.4.8O serviço de um cluster do HBase responsável pela coordenação de regiões e execução de comandos administrativos.
hbase-region-server1.4.8O serviço que abrange uma ou mais regiões do HBase.
hbase-client1.4.8O cliente da linha de comando do HBase.
hbase-rest-server1.4.8O serviço que fornece um endpoint do HTTP RESTful para o HBase.
hbase-thrift-server1.4.8O serviço que fornece um endpoint do Thrift para o HBase.
hcatalog-client2.3.4-amzn-0O cliente da linha de comando 'hcat' para manipular o hcatalog-server.
hcatalog-server2.3.4-amzn-0O serviço que fornece a HCatalog, uma camada de gerenciamento de tabelas e armazenamento para aplicativos distribuídos.
hcatalog-webhcat-server2.3.4-amzn-0O endpoint do HTTP que fornece uma interface REST para a HCatalog.
hive-client2.3.4-amzn-0O cliente da linha de comando do Hive.
hive-hbase2.3.4-amzn-0Cliente do Hive-hbase.
hive-metastore-server2.3.4-amzn-0O serviço de acesso à metastore do Hive, um repositório de semântica que armazena metadados do SQL nas operações do Hadoop.
hive-server22.3.4-amzn-0O serviço que aceita as consultas do Hive como solicitações da web.
hue-server4.3.0O aplicativo web para analisar dados usando aplicativos do ecossistema do Hadoop
jupyterhub0.9.4Servidor de vários usuários para blocos de anotações Jupyter
livy-server0.5.0-incubatingInterface REST para interagir com o Apache Spark
nginx1.12.1nginx [mecanismo x] é um servidor de proxy reverso e HTTP
mahout-client0.13.0A biblioteca de Machine Learning.
mxnet1.3.1Uma biblioteca flexível, escalável e eficiente para aprendizado aprofundado.
mysql-server5.5.54+O servidor de banco de dados MySQL.
nvidia-cuda9.2.88Drivers NVIDIA e toolkit CUDA
oozie-client5.0.0O cliente da linha de comando do Oozie.
oozie-server5.0.0O serviço que aceita solicitações de fluxo de trabalho do Oozie.
opencv3.4.0Biblioteca de Visão Computacional de Código Aberto.
phoenix-library4.14.0-HBase-1.4As bibliotecas do phoenix para servidor e cliente
phoenix-query-server4.14.0-HBase-1.4Um servidor leve que fornece acesso à JDBC, bem como buffers de protocolo e acesso no formato JSON à API do Avatica
presto-coordinator0.215O serviço que aceita consultas e gerencia a execução de consultas entre os presto-workers.
presto-worker0.215O serviço que executa partes de uma consulta.
pig-client0.17.0O cliente da linha de comando do Pig.
r3.4.1O projeto R para computação estatística
spark-client2.4.0Os clientes da linha de comando do Spark.
spark-history-server2.4.0A interface de usuário da web para visualizar os eventos registrados por toda a vida útil de um aplicativo Spark concluído.
spark-on-yarn2.4.0O mecanismo de execução em memória para o YARN.
spark-yarn-slave2.4.0As bibliotecas do Apache Spark necessárias para subordinados do YARN.
sqoop-client1.4.7O cliente da linha de comando do Apache Sqoop.
tensorflow1.12.0Biblioteca de software de código aberto TensorFlow para computação numérica de alto desempenho.
tez-on-yarn0.9.1O aplicativo e as bibliotecas do YARN para Tez.
webserver2.4.25+O servidor Apache HTTP.
zeppelin-server0.8.0O notebook baseado na web que permite um data analytics interativo.
zookeeper-server3.4.13O serviço centralizado de manutenção de informações de configuração, nomenclatura, fornecimento de sincronização distribuída, e fornecimento de serviços de grupo.
zookeeper-client3.4.13O cliente da linha de comando do ZooKeeper.

Classificações de configuração 5.21.0

As classificações de configuração permitem que você personalize aplicações. Elas geralmente correspondem a um arquivo XML de configuração da aplicação, como hive-site.xml. Para ter mais informações, consulte Configurar aplicações.

Classificações do emr-5.21.0
Classificações Descrição

capacity-scheduler

Alterar os valores no arquivo capacity-scheduler.xml do Hadoop.

container-log4j

Altere os valores no arquivo container-log4j.properties do YARN do Hadoop.

core-site

Alterar os valores no arquivo core-site.xml do Hadoop.

emrfs-site

Alterar as configurações do EMRFS.

flink-conf

Alterar as configurações do flink-conf.yaml.

flink-log4j

Alterar as configurações de log4j.properties no Flink.

flink-log4j-yarn-session

Alterar as configurações de log4j-yarn-session.properties no Flink.

flink-log4j-cli

Alterar as configurações de log4j-cli.properties no Flink.

hadoop-env

Alterar os valores no ambiente do Hadoop para todos os componentes do Hadoop.

hadoop-log4j

Alterar os valores no arquivo log4j.properties do Hadoop.

hadoop-ssl-server

Alterar a configuração do servidor SSL no Hadoop

hadoop-ssl-client

Alterar a configuração do cliente SSL no Hadoop

hbase

As configurações administradas pelo Amazon EMR para o Apache HBase.

hbase-env

Alterar os valores no ambiente do HBase.

hbase-log4j

Alterar os valores no arquivo hbase-log4j.properties do HBase.

hbase-metrics

Altere os valores no arquivo hadoop-metrics2-hbase.properties do HBase.

hbase-policy

Alterar os valores no arquivo hbase-policy.xml do HBase.

hbase-site

Alterar os valores no arquivo hbase-site.xml do HBase.

hdfs-encryption-zones

Configurar as zonas de criptografia do HDFS.

hdfs-site

Alterar os valores no arquivo hdfs-site.xml do HDFS.

hcatalog-env

Alterar os valores no ambiente do HCatalog.

hcatalog-server-jndi

Alterar os valores no jndi.properties do HCatalog.

hcatalog-server-proto-hive-site

Alterar os valores no arquivo proto-hive-site.xml do HCatalog.

hcatalog-webhcat-env

Alterar os valores no ambiente do HCatalog WebHCat.

hcatalog-webhcat-log4j2

Alterar os valores no log4j2.properties do HCatalog WebHCat.

hcatalog-webhcat-site

Alterar os valores no arquivo webhcat-site.xml do HCatalog WebHCat.

hive-beeline-log4j2

Alterar os valores no arquivo beeline-log4j2.properties do Hive.

hive-parquet-logging

Alterar os valores no arquivo parquet-logging.properties do Hive.

hive-env

Alterar os valores no ambiente do Hive.

hive-exec-log4j2

Alterar os valores no arquivo hive-exec-log4j2.properties do Hive.

hive-llap-daemon-log4j2

Alterar os valores no arquivo llap-daemon-log4j2.properties do Hive.

hive-log4j2

Alterar os valores no arquivo hive-log4j2.properties do Hive.

hive-site

Alterar os valores no arquivo hive-site.xml do Hive.

hiveserver2-site

Alterar os valores no arquivo hiveserver2-site.xml do Hive Server2.

hue-ini

Alterar os valores no arquivo ini do Hue

httpfs-env

Alterar os valores no ambiente do HTTPFS.

httpfs-site

Alterar os valores no arquivo httpfs-site.xml do Hadoop.

hadoop-kms-acls

Alterar os valores no arquivo kms-acls.xml do Hadoop.

hadoop-kms-env

Alterar os valores no ambiente do Hadoop KMS.

hadoop-kms-log4j

Alterar os valores no arquivo kms-log4j.properties do Hadoop.

hadoop-kms-site

Alterar os valores no arquivo kms-site.xml do Hadoop.

jupyter-notebook-conf

Alterar os valores no arquivo jupyter_notebook_config.py do Notebook Jupyter.

jupyter-hub-conf

Alterar os valores no arquivo jupyterhub_config.py de JupyterHubs.

jupyter-s3-conf

Configurar a persistência do notebook Jupyter S3.

jupyter-sparkmagic-conf

Altere os valores no arquivo config.json do Sparkmagic.

livy-conf

Alterar os valores no arquivo livy.conf do Livy.

livy-env

Alterar os valores no ambiente do Livy.

livy-log4j

Alterar as configurações de log4j.properties no Livy.

mapred-env

Alterar os valores no ambiente do aplicativo MapReduce.

mapred-site

Alterar os valores no arquivo mapred-site.xml do aplicativo MapReduce.

oozie-env

Alterar os valores no ambiente do Oozie.

oozie-log4j

Alterar os valores no arquivo oozie-log4j.properties do Oozie.

oozie-site

Alterar os valores no arquivo oozie-site.xml do Oozie.

phoenix-hbase-metrics

Alterar os valores no arquivo hadoop-metrics2-hbase.properties do Phoenix.

phoenix-hbase-site

Alterar os valores no arquivo hbase-site.xml do Phoenix.

phoenix-log4j

Alterar os valores no arquivo log4j.properties do Phoenix.

phoenix-metrics

Alterar os valores no arquivo hadoop-metrics2-phoenix.properties do Phoenix.

pig-env

Alterar os valores no ambiente do Pig.

pig-properties

Alterar os valores no arquivo pig.properties do Pig.

pig-log4j

Alterar os valores no arquivo log4j.properties do Pig.

presto-log

Alterar os valores no arquivo log.properties do Presto.

presto-config

Alterar os valores no arquivo config.properties do Presto.

presto-password-authenticator

Altere os valores no arquivo password-authenticator.properties do Presto.

presto-env

Altere os valores no arquivo presto-env.sh do Presto.

presto-node

Altere os valores no arquivo node.properties do Presto.

presto-connector-blackhole

Alterar os valores no arquivo blackhole.properties do Presto.

presto-connector-cassandra

Alterar os valores no arquivo cassandra.properties do Presto.

presto-connector-hive

Alterar os valores no arquivo hive.properties do Presto.

presto-connector-jmx

Alterar os valores no arquivo jmx.properties do Presto.

presto-connector-kafka

Alterar os valores no arquivo kafka.properties do Presto.

presto-connector-localfile

Alterar os valores no arquivo localfile.properties do Presto.

presto-connector-memory

Alterar os valores no arquivo memory.properties do Presto.

presto-connector-mongodb

Alterar os valores no arquivo mongodb.properties do Presto.

presto-connector-mysql

Alterar os valores no arquivo mysql.properties do Presto.

presto-connector-postgresql

Alterar os valores no arquivo postgresql.properties do Presto.

presto-connector-raptor

Alterar os valores no arquivo raptor.properties do Presto.

presto-connector-redis

Alterar os valores no arquivo redis.properties do Presto.

presto-connector-redshift

Alterar os valores no arquivo de propriedades redshift do Presto.

presto-connector-tpch

Alterar os valores no arquivo tpch.properties do Presto.

presto-connector-tpcds

Alterar os valores no arquivo tpcds.properties do Presto.

spark

As configurações administradas pelo Amazon EMR para o Apache Spark.

spark-defaults

Alterar os valores no arquivo spark-defaults.conf do Spark.

spark-env

Alterar os valores no ambiente do Spark.

spark-hive-site

Alterar os valores no arquivo hive-site.xml do Spark.

spark-log4j

Alterar os valores no arquivo log4j.properties do Spark.

spark-metrics

Alterar os valores no arquivo metrics.properties do Spark.

sqoop-env

Alterar os valores no ambiente do Sqoop.

sqoop-oraoop-site

Alterar os valores no arquivo oraoop-site.xml do Sqoop OraOop.

sqoop-site

Alterar os valores no arquivo sqoop-site.xml do Sqoop.

tez-site

Alterar os valores no arquivo tez-site.xml do Tez.

yarn-env

Alterar os valores no ambiente do YARN.

yarn-site

Alterar os valores no arquivo yarn-site.xml do YARN.

zeppelin-env

Alterar os valores no ambiente do Zeppelin.

zookeeper-config

Alterar os valores no arquivo zoo.cfg do ZooKeeper.

zookeeper-log4j

Alterar os valores no arquivo log4j.properties do ZooKeeper.