Configuração de transferências do AWS DataSync com um cluster do HDFS - DataSync AWS

Configuração de transferências do AWS DataSync com um cluster do HDFS

Com o AWS DataSync, você pode transferir dados entre o cluster do Sistema de Arquivos Distribuído do Hadoop (HDFS) e um dos seguintes serviços de armazenamento da AWS:

Para configurar esse tipo de transferência, você cria um local para o cluster do HDFS. Você pode usar esse local como origem ou destino de uma transferência.

Fornecer ao DataSync acesso aos clusters do HDFS

Para se conectar ao cluster do HDFS, o DataSync usa um agente que você implanta o mais próximo possível do cluster do HDFS. O agente do DataSync atua como cliente do HDFS e se comunica com os NameNodes e DataNodes no cluster.

Quando você inicia uma tarefa, o DataSync consulta o NameNode para encontrar os locais de arquivos e pastas no cluster. Se você configurar o local do HDFS como local de origem, o DataSync lerá dados de arquivos e pastas dos DataNodes no cluster e copiará os dados para o destino. Se você configurar o local do HDFS como local de destino, o DataSync gravará os arquivos e as pastas da origem para os DataNodes do cluster.

Autenticação

Ao se conectar a um cluster HDFS, o DataSync oferece suporte à autenticação simples ou à autenticação Kerberos. Para usar a autenticação simples, forneça o nome de usuário de um usuário com direitos de leitura e gravação no cluster HDFS. Para usar a autenticação Kerberos, forneça um arquivo de configuração Kerberos, um arquivo de tabela de chaves Kerberos (keytab) e um nome principal Kerberos. As credenciais da entidade principal do Kerberos devem estar no arquivo keytab fornecido.

Criptografia

Ao usar a autenticação Kerberos, o DataSync é compatível com a criptografia de dados à medida que são transmitidos entre o agente do DataSync e seu cluster HDFS. Criptografe seus dados usando as configurações de Qualidade de Proteção (QOP) em seu cluster HDFS e especificando as configurações de QOP ao criar sua localização HDFS. A configuração de QOP inclui configurações para proteção de transferência de dados e proteção RPC (Remote Procedure Call).

O DataSync oferece suporte aos seguintes tipos de criptografia Kerberos:
  • des-cbc-crc

  • des-cbc-md4

  • des-cbc-md5

  • des3-cbc-sha1

  • arcfour-hmac

  • arcfour-hmac-exp

  • aes128-cts-hmac-sha1-96

  • aes256-cts-hmac-sha1-96

  • aes128-cts-hmac-sha256-128

  • aes256-cts-hmac-sha384-192

  • camellia128-cts-cmac

  • camellia256-cts-cmac

Você também pode configurar clusters HDFS para criptografia em repouso usando a Transparent Data Encryption, TDE (Criptografia transparente de dados). Ao usar a autenticação simples, o DataSync lê e grava em clusters habilitados para TDE. Se você estiver usando o DataSync para copiar dados para um cluster habilitado para TDE, primeiro configure as zonas de criptografia no cluster HDFS. O DataSync não cria zonas de criptografia.

Recursos do HDFS não compatíveis

Atualmente, os seguintes recursos do HDFS não são compatíveis com o DataSync:

  • Transparent Data Encryption (TDE) ao usar a autenticação Kerberos

  • Configurar vários NameNodes

  • Hadoop HDFS sobre HTTP (HttpFS)

  • Listas de controle de acesso POSIX

  • Atributos estendidos do HDFS (xattrs)

  • Clusters do HDFS usando o Apache HBase

Criar seu local de transferência HDFS

Você pode usar o local como origem ou destino para a transferência do DataSync.

Antes de começar: verifique a conectividade de rede entre seu agente e o cluster Hadoop fazendo o seguinte:

  1. Abra o AWS DataSync console do em https://console.aws.amazon.com/datasync/.

  2. No painel de navegação esquerdo, expanda Transferência de dados e escolha Locais e Criar local.

  3. Em Tipo de localização, escolha Sistema de arquivos distribuído Hadoop (HDFS).

    Você configurará esse local como origem ou destino posteriormente.

  4. Em Agentes, escolha o agente do DataSync que pode se conectar ao cluster do HDFS.

    Você pode escolher mais de um agente. Para obter mais informações, consulte Uso de vários agentes do DataSync.

  5. Em NameNode, forneça o nome de domínio ou o endereço IP do NameNode principal do cluster do HDFS.

  6. Em Pasta, insira uma pasta no cluster do HDFS que o DataSync usará para a transferência de dados.

    Se o local do HDFS for uma origem, o DataSync copiará os arquivos dessa pasta para o destino. Se o local do HDFS for um destino, o DataSync gravará os arquivos nessa pasta.

  7. Para definir o Tamanho do bloco ou o Fator de replicação, escolha Configurações adicionais.

    O tamanho de bloco padrão é 128 MiB. O tamanho fornecido deve ser um múltiplo de 512 bytes.

    O fator de replicação padrão é três DataNodes ao transferir dados para o cluster do HDFS.

  8. Na seção Segurança, escolha o Tipo de autenticação usado no cluster HDFS.

    • Simples: em Usuário, especifique o nome do usuário com as seguintes permissões no cluster HDFS (dependendo do seu caso de uso):

      • Se você planeja usar esse local como local de origem, especifique um usuário que tenha apenas permissões de leitura.

      • Se você planeja usar esse local como local de origem, especifique um usuário que tenha apenas permissões de leitura e gravação.

      Opcionalmente, especifique o URI do Key Management Server (KMS) do cluster do HDFS.

    • Kerberos: especifique o Kerberos Principal com acesso ao cluster HDFS. Em seguida, forneça o arquivo KeyTab que contém o principal Kerberos fornecido. Depois, forneça o arquivo de configuração do Kerberos. Por fim, especifique o tipo de criptografia na proteção de trânsito nas listas suspensas Proteção RPC e Proteção de transferência de dados.

  9. (Opcional) Escolha Adicionar tag para marcar sua localização HDFS.

    As Tags são pares de chave-valor que ajudam você a gerenciar, filtrar e pesquisar seus locais. Recomendamos criar pelo menos uma etiqueta de nome para a sua localização.

  10. Escolha Criar local.

  1. Copie o seguinte comando create-location-hdfs:

    aws datasync create-location-hdfs --name-nodes [{"Hostname":"host1", "Port": 8020}] \ --authentication-type "SIMPLE|KERBEROS" \ --agent-arns [arn:aws:datasync:us-east-1:123456789012:agent/agent-01234567890example] \ --subdirectory "/path/to/my/data"
  2. No parâmetro --name-nodes, especifique o nome do host ou endereço IP do NameNode principal do cluster do HDFS e a porta TCP na qual o NameNode está escutando.

  3. No parâmetro --authentication-type, especifique o tipo de autenticação a ser usada ao se conectar ao cluster do Hadoop. É possível especificar SIMPLE ou KERBEROS.

    Se você usa a autenticação SIMPLE, use o parâmetro --simple-user para especificar o nome de usuário do usuário. Se você usa a autenticação KERBEROS, use os parâmetros --kerberos-principal, --kerberos-keytab e --kerberos-krb5-conf. Para obter mais informações consulte create-location-hdfs.

  4. No parâmetro --agent-arns, especifique o ARN do agente do DataSync que pode se conectar ao cluster do HDFS.

    Você pode escolher mais de um agente. Para obter mais informações, consulte Uso de vários agentes do DataSync.

  5. (Opcional) No parâmetro --subdirectory, especifique uma pasta no cluster do HDFS que você deseja que o DataSync use para a transferência de dados.

    Se o local do HDFS for uma origem, o DataSync copiará os arquivos dessa pasta para o destino. Se o local do HDFS for um destino, o DataSync gravará os arquivos nessa pasta.

  6. Execute o comando create-location-hdfs.

    Se o comando for bem-sucedido, você receberá uma resposta que mostra o ARN do local que você criou. Por exemplo:

    { "arn:aws:datasync:us-east-1:123456789012:location/loc-01234567890example" }