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:
-
Teste o acesso às portas TCP listadas em Requisitos de rede para armazenamento on-premises, autogerenciado, em outra nuvem e a na borda.
-
Teste o acesso entre seu agente local e seu cluster Hadoop. Para obter instruções, consulte Verificação da conexão do agente com sistema de armazenamento.
Abra o AWS DataSync console do em https://console.aws.amazon.com/datasync/
. -
No painel de navegação esquerdo, expanda Transferência de dados e escolha Locais e Criar local.
-
Em Tipo de localização, escolha Sistema de arquivos distribuído Hadoop (HDFS).
Você configurará esse local como origem ou destino posteriormente.
-
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.
-
Em NameNode, forneça o nome de domínio ou o endereço IP do NameNode principal do cluster do HDFS.
-
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.
-
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.
-
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.
-
-
(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.
-
Escolha Criar local.
-
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" -
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. -
No parâmetro
--authentication-type, especifique o tipo de autenticação a ser usada ao se conectar ao cluster do Hadoop. É possível especificarSIMPLEouKERBEROS.Se você usa a autenticação
SIMPLE, use o parâmetro--simple-userpara especificar o nome de usuário do usuário. Se você usa a autenticaçãoKERBEROS, use os parâmetros--kerberos-principal,--kerberos-keytabe--kerberos-krb5-conf. Para obter mais informações consulte create-location-hdfs. -
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.
-
(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.
-
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" }