Nas versões 3,32 e posteriores, 4,5 e posteriores e 5.x do EMR, o MetaService foi substituído por uma função de aplicação ECS. Essa função é anexada automaticamente a cada instância ECS em um cluster EMR quando você cria ou expande o cluster. As aplicações executadas no cluster EMR utilizam essa função para obter permissões de interação com outros services da cloud. Isso permite que as aplicações acessem recursos da Alibaba Cloud sem precisar de um AccessKey, evitando assim a exposição dessa credencial em arquivos de configuração.
Pré-requisitos
A função necessária deve estar autorizada. Para mais informações, consulte Alibaba Cloud account role authorization.
Permissões
A função padrão AliyunECSInstanceForEMRRole inclui a política de sistema AliyunECSInstanceForEMRRolePolicy. A tabela a seguir lista as permissões para OSS, Tablestore e DLF.
|
Action |
Descrição |
|
oss:PutObject |
Faz upload de um objeto, como um arquivo ou pasta. |
|
oss:GetObject |
Recupera um objeto, como um arquivo ou pasta. |
|
oss:ListObjects |
Lista objetos. |
|
oss:DeleteObject |
Exclui um objeto especificado. |
|
oss:ListBuckets |
Lista todos os buckets. |
|
oss:AbortMultipartUpload |
Interrompe um evento de upload multipart. |
|
oss:ListMultipartUploads |
Lista todos os eventos de upload multipart em andamento. |
|
oss:RestoreObject |
Restaura um objeto da classe de armazenamento Archive ou Cold Archive. |
|
oss:GetBucketInfo |
Recupera informações sobre um bucket específico. |
|
oss:ListObjectVersions |
Lista as versões de todos os objetos em um bucket, incluindo marcadores de exclusão. |
|
oss:DeleteObjectVersion |
Exclui uma versão específica de um objeto. |
|
oss:PostDataLakeStorageFileOperation |
Concede permissões para acessar o OSS-HDFS. |
|
ots:CreateTable |
Cria uma tabela de dados com a estrutura especificada. |
|
ots:DeleteTable |
Exclui uma tabela de dados especificada. |
|
ots:GetRow |
Lê uma única linha de dados pela sua chave primária. |
|
ots:PutRow |
Insere dados em uma linha especificada. |
|
ots:UpdateRow |
Atualiza dados em uma linha especificada. |
|
ots:DeleteRow |
Exclui uma linha especificada. |
|
ots:GetRange |
Lê dados dentro de um intervalo de chave primária definido. |
|
ots:BatchWriteRow |
Insere, atualiza ou exclui várias linhas em uma ou mais tabelas. |
|
ots:BatchGetRow |
Lê várias linhas de uma ou mais tabelas. |
|
ots:ComputeSplitPointsBySize |
Divide logicamente uma tabela em vários shards de tamanho aproximado especificado e retorna os pontos de divisão e sugestões de host para os shards. |
|
ots:StartLocalTransaction |
Inicia uma transação local em uma chave de partição e retorna o ID da transação. |
|
ots:CommitTransaction |
Confirma uma transação local. |
|
ots:AbortTransaction |
Interrompe uma transação local. |
|
dlf:BatchCreatePartitions |
Cria múltiplas partições. |
|
dlf:BatchCreateTables |
Cria múltiplas tabelas de dados. |
|
dlf:BatchDeletePartitions |
Exclui múltiplas partições. |
|
dlf:BatchDeleteTables |
Exclui múltiplas tabelas de dados. |
|
dlf:BatchGetPartitions |
Recupera múltiplas partições. |
|
dlf:BatchGetTables |
Recupera múltiplas tabelas de dados. |
|
dlf:BatchUpdatePartitions |
Atualiza informações de múltiplas partições. |
|
dlf:BatchUpdateTables |
Atualiza múltiplas tabelas de dados. |
|
dlf:CreateDatabase |
Cria um banco de dados. |
|
dlf:CreateFunction |
Cria uma função. |
|
dlf:CreatePartition |
Cria uma partição. |
|
dlf:CreateTable |
Cria uma tabela de dados. |
|
dlf:DeleteDatabase |
Exclui um banco de dados. |
|
dlf:DeleteFunction |
Exclui uma função. |
|
dlf:DeletePartition |
Exclui uma partição. |
|
dlf:DeleteTable |
Exclui uma tabela de dados. |
|
dlf:GetDatabase |
Recupera um banco de dados. |
|
dlf:GetFunction |
Recupera uma função. |
|
dlf:GetPartition |
Recupera uma partição. |
|
dlf:GetTable |
Recupera uma tabela de dados. |
|
dlf:ListCatalogs |
Lista catálogos de dados. |
|
dlf:ListDatabases |
Lista bancos de dados. |
|
dlf:ListFunctionNames |
Lista os nomes das funções. |
|
dlf:ListFunctions |
Lista funções. |
|
dlf:ListPartitionNames |
Lista os nomes das partições. |
|
dlf:ListPartitions |
Lista partições. |
|
dlf:ListPartitionsByExpr |
Lista partições em uma tabela de metadados com base em uma expressão. |
|
dlf:ListPartitionsByFilter |
Lista partições em uma tabela de metadados com base em um filtro. |
|
dlf:ListTableNames |
Lista os nomes das tabelas de dados. |
|
dlf:ListTables |
Lista tabelas de dados. |
|
dlf:RenamePartition |
Renomeia uma partição. |
|
dlf:RenameTable |
Renomeia uma tabela de dados. |
|
dlf:UpdateDatabase |
Atualiza informações do banco de dados. |
|
dlf:UpdateFunction |
Atualiza informações da função. |
|
dlf:UpdateTable |
Atualiza informações da tabela de dados. |
|
dlf:UpdateTableColumnStatistics |
Atualiza estatísticas de colunas para uma tabela de metadados. |
|
dlf:GetTableColumnStatistics |
Recupera estatísticas de colunas para uma tabela de metadados. |
|
dlf:DeleteTableColumnStatistics |
Exclui estatísticas de colunas para uma tabela de metadados. |
|
dlf:UpdatePartitionColumnStatistics |
Atualiza estatísticas de colunas para uma partição. |
|
dlf:GetPartitionColumnStatistics |
Recupera estatísticas de colunas para uma partição. |
|
dlf:DeletePartitionColumnStatistics |
Exclui estatísticas de colunas para uma partição. |
|
dlf:BatchGetPartitionColumnStatistics |
Recupera estatísticas de colunas para múltiplas partições de tabela. |
|
dlf:CreateLock |
Cria um bloqueio de metadados. |
|
dlf:UnLock |
Libera um bloqueio de metadados especificado. |
|
dlf:AbortLock |
Interrompe um bloqueio de metadados. |
|
dlf:RefreshLock |
Atualiza um bloqueio de metadados. |
|
dlf:GetLock |
Recupera um bloqueio de metadados. |
|
dlf:GetAsyncTaskStatus |
Recupera o status de uma tarefa assíncrona. |
|
dlf:DeltaGetPermissions |
Recupera uma lista de permissões. |
|
dlf:GetPermissions |
Recupera informações de permissão de dados. |
|
dlf:GetServiceInfo |
Recupera informações do service. |
|
dlf:GetRoles |
Recupera informações da função. |
|
dlf:CheckPermissions |
Verifica permissões de dados. |
Tenha cuidado ao edite ou exclua a função padrão AliyunECSInstanceForEMRRole. Caso contrário, a criação do cluster ou a execução de jobs falhará.
Uso da função ECS para credenciais temporárias
Utilize uma credencial temporária do STS para acessar outros recursos da cloud. Para mais informações, consulte Instance RAM roles.