Programa
As empresas enfrentam desafios na transferência de dados quando transferem cargas de trabalho para a nuvem ou gerenciam backups e recuperação de desastres. Técnicas desatualizadas - como uploads manuais ou scripts personalizados - carecem de automação e confiabilidade, resultando em custos mais altos e sobrecarga operacional.
O AWS DataSync torna isso mais fácil, oferecendo um método seguro e automatizado para transferir conjuntos de dados entre sistemas de armazenamento, no local e serviços do AWS, ou entre diferentes regiões do AWS.
Neste tutorial, vou orientar você:
- Configuração do AWS DataSync - Criando e configurando agentes para transferência de dados.
- Configuração de tarefas de transferência de dados - Definição de pontos de extremidade de origem e destino, filtragem de dados e agendamento de transferências.
- Usando o DataSync para os principais casos de uso - Incluindo migração para a nuvem, backup e recuperação de desastres.
O que é o AWS DataSync?
O AWS DataSync é um serviço de transferência de dados que visa a mover grandes quantidades de dados entre sistemas de armazenamento locais e ambientes de nuvem usando os serviços da AWS. Ele agiliza os processos de transferência de dados ao lidar com tarefas como validação e criptografia de dados, além de oferecer opções de agendamento. Isso o torna uma opção confiável para migrações, backups de dados e replicação contínua de dados.
O DataSync acelera a transferência de dados em comparação com métodos que envolvem scripts complexos ou etapas manuais, permitindo a movimentação rápida e segura de dados automatizados entre várias fontes. Ele suporta transferências entre:
- Armazenamento no local (NFS, SMB, armazenamento de objetos) e AWS.
- Amazon S3,Amazon EFS, Amazon FSx e Amazon S3 Glacier.
- Serviços AWS em diferentes regiões e contas.
> Se você é novo na AWS ou quer se atualizar sobre as principais ferramentas de nuvemvocê quiser se atualizar sobre as principais ferramentas de nuvem, o curso AWS Cloud Technology and Services oferece a você umaVocê terá uma visão geral sólida dos principais serviços, como EC2, S3 e IAM.
Recursos do AWS DataSync
- Transferência de dados em alta velocidade: A utilização de fluxos de dados paralelos e otimizados permite a transferência de dados até 10 vezes mais rápida.
- Validação automatizada de dados: Verifica a precisão dos dados transferidos por meio de cálculos de soma de verificação para manter a integridade dos dados.
- Integração perfeita com os serviços do AWS: Suporta nativamenterts Amazon S3,Amazon EFS, Amazon FSx para Windows e FSx para Lustre como origem e destino.
- Transferências incrementais e programadas: Transfere apenas dados alterados (sincronização diferencial) para minimizar o uso e os custos da largura de banda e oferece suporte ao agendamento para sincronização periódica de dados.
- Segurança e criptografia: As transferências de dados são protegidas por criptografia de ponta a ponta usando TLS para segurança de trânsito e AES 256 para proteção de dados em repouso. O AWS Identity and Access Management (IAM) tambémfornece controle de acesso .
- Transferências multirregionais e entre contas: Isso facilita a cópia de dados entre regiões e contas no AWS para planejamento e compartilhamento.
Agora que o contexto está definido, vamos para a seção prática deste tutorial!
Configuração do AWS DataSync
Antes de transferir dados, você precisa configurar o AWS DataSync corretamente. Esta seção aborda os pré-requisitos e as etapas de configuração, incluindo a instalação do agente, as funções do IAM e a configuração do armazenamento.
Pré-requisitos para o AWS DataSync
Usaremos o AWS CloudFormation para automatizar o processo de provisionamento e nos concentraremos na migração de dados. Criaremos os seguintes recursos:
- Uma VPC do AWS com sub-redes públicas para conectividade de rede.
- Um servidor NFS em uma instância do Amazon EC2 para simular um sistema de armazenamento no local.
- Agentes do AWS DataSync em instâncias do EC2 para facilitar a movimentação de dados.
- Funções e políticas de IAM para conceder as permissões necessárias para as operações do DataSync.
Faça login no console do AWS
- Faça login no console de gerenciamento do AWSusando suas credenciais.
- Clique no menu suspenso no canto superior direito da tela e selecione a opção "N. Califórnia" para este tutorial.
Figura 1 - Seleção da região da AWS no console de gerenciamento da AWS
- Vá para o Console do EC2 e navegue até a seçãoKey Pair. Verifique se você está na mesma região da AWS que na etapa anterior.
- Clique em Criar par de chaves e nomeie-o como "datasync".
Figura 2 - Criação de um par de chaves para acesso seguro no AWS EC2
- Clique em Criare seu navegador fará o download de um arquivo
datasync.pem
. - Salve esse arquivo de forma segura - você precisará dele mais tarde no tutorial.
Configurar o ambiente
Nesta etapa, você usará um modelo do CloudFormation para configurar a infraestrutura do AWS necessária para o AWS DataSync, que foi mencionado anteriormente.
- Abra o console do AWS CloudFormation e clique em Criar pilha.
- Selecione O modelo está pronto e, em seguida, selecione Carregar um arquivo de modelo.
Figura 3 - Carregando um modelo do CloudFormation para criar uma nova pilha.
- Faça o download do arquivo do Github Gist e clique em Choose file( Escolher arquivo), carregue
datasync-onprem.yaml
e clique em Next (Avançar). - Na seção Parâmetros, selecione um par de chaves EC2 para permitir o login SSH nas instâncias criadas por essa pilha. Não edite os valores dos IDs de AMI, mas clique em Next.
- Na página Stack Options (Opções de pilha ), mantenha as configurações padrão e clique em Next (Avançar).
- Revise a configuração e clique em Criar pilha.
- Você será redirecionado para o console do CloudFormation, onde o status mostrará "CREATE_IN_PROGRESS". Aguarde até que a mensagem mude para "CREATE_COMPLETE".
Figura 4 - Revisão do status de criação de recursos no AWS CloudFormation
- Depois de concluído, navegue até a seção Outputs (Saídas ) e anote os valores - você precisará deles no restante do tutorial.
- Você precisa implementar outra pilha seguindo as mesmas etapas descritas anteriormente. Esse modelo não requer parâmetros adicionais. Baixe o modelo do GitHub Gist e prossiga com a implantação.
Configuração do agente DataSync
Neste tutorial, replicamos um ambiente local no AWS para emular cenários de transferência de dados do mundo real usando o AWS DataSync.
Em vez de usar uma infraestrutura real no local, lançamos um servidor NFS em uma instância do Amazon EC2, que será o sistema de armazenamento de origem. Isso nos permite testar e configurar o AWS DataSync como se estivéssemos movendo dados de um local no local.
Lançamos os agentes do AWS DataSync em instâncias do EC2 no mesmo ambiente para permitir a movimentação de dados. Esses agentes são responsáveis por vincular o servidor NFS ao AWS DataSync, permitindo que você transfira dados para serviços de armazenamento em nuvem, como o Amazon S3.
Essa arquitetura nos permite imitar, configurar e validar as tarefas do AWS DataSync para obter um fluxo de trabalho contínuo antes de implementá-las em um ambiente real no local. Neste tutorial, usaremos esse ambiente para registrar o agente, criar as tarefas do DataSync e mover os dados com eficiência.
Figura 5 - Arquitetura implementada pelo AWS CloudFormation
Configurando o servidor NFS para o AWS DataSync
Antes de configurar o AWS DataSync, é essencial entender os dados que você transferirá e como eles estão organizados. Nesta seção, configuraremos um servidor NFS implantado em nosso ambiente AWS para atuar como um sistema de armazenamento local. Essa configuração nos permitirá simular a migração de dados para os serviços do AWS.
Primeiro, faça login no servidor NFS:
- Abra o Console de gerenciamento do AWS e navegue até a seção "N. Região da Califórnia".
- Selecione EC2 na lista de serviços do AWS.
- Localize a instância do servidor NFS na lista de instâncias do EC2.
- Clique em Connect e siga as instruções para se conectar usando o Session Manager ou SSH.
Em seguida, navegue pelos sistemas de arquivos. O servidor NFS contém três volumes EBS de 200 GiB, cada um formatado com o sistema de arquivos XFS e preenchido previamente com conjuntos de dados de amostra.
- Execute o seguinte comando para verificar os sistemas de arquivos montados:
mount | grep /mnt
Figura 6 - Saída esperada do comando mount
- Em seguida, verifique a quantidade de dados presentes em cada sistema de arquivos:
df -h | grep /mnt
Figura 7 - Saída esperada do comando df
Como você pode ver, fs1
e fs2
contêm 12 GiB de dados, e fs3
contém 22 GiB de dados.
Agora, vamos configurar as exportações de NFS. Para permitir que os agentes do AWS DataSync acessem o servidor NFS, configure o arquivo /etc/exports
:
- Abra o arquivo
/etc/exports
como root usando um editor de texto:
sudo nano /etc/exports
- Adicione as seguintes linhas para definir exportações somente leitura (ro) para os agentes DataSync:
/mnt/fs1 10.12.14.243(ro,no_root_squash) 10.12.14.249(ro,no_root_squash)
/mnt/fs2 10.12.14.243(ro,no_root_squash) 10.12.14.249(ro,no_root_squash)
/mnt/fs3 10.12.14.243(ro,no_root_squash) 10.12.14.249(ro,no_root_squash)
Substitua 10.12.14.243
e 10.12.14.249
pelos IPs privados das instâncias do EC2 do seu agente DataSync nos resultados do CloudFormation.
- Aplique as novas configurações de exportação reiniciando o serviço NFS:
sudo systemctl restart nfs
- Verifique as exportações de NFS:
showmount -e
Figura 8 - Saída esperada do comando showmount
Configuração do CloudWatch e ativação dos agentes do AWS DataSync
Com o servidor NFS configurado, a próxima etapa é habilitar o registro em log do AWS CloudWatch para o DataSync e ativar os agentes do DataSync na seção "N. Região da Califórnia". Isso garante que todas as transferências de arquivos sejam registradas, proporcionando visibilidade de erros ou falhas.
Antes que o AWS DataSync possa enviar logs para o CloudWatch, precisamos criar uma política de recursos que conceda ao DataSync as permissões necessárias.
- Copie a política JSON a seguir e salve-a como
datasync-policy.json
em seu computador local:
{
"Statement": [
{
"Sid": "DataSyncLogsToCloudWatchLogs",
"Effect": "Allow",
"Action": [
"logs:PutLogEvents",
"logs:CreateLogStream"
],
"Principal": {
"Service": "datasync.amazonaws.com"
},
"Resource": "*"
}
],
"Version": "2012-10-17"
}
- Em seguida, execute o seguinte comando em seu terminal:
aws logs put-resource-policy --region us-west-1 --policy-name trustDataSync --policy-document file://datasync-policy.json
O comando acima permite que o AWS DataSync grave logs no CloudWatch, o que ajudará a monitorar e depurar problemas de transferência.
Agora, vamos ativar os agentes do DataSync. Embora as instâncias EC2 do agente DataSync tenham sido criadas no "N. Califórnia", eles devem ser ativados nessa região antes de serem usados.
Observação: Se você precisar instalar o agente DataSync no VMware ou em outro ambiente local, consulte o guia oficial do AWS. No entanto, como estamos simulando uma configuração no local usando instâncias do EC2, os agentes DataSync neste tutorial são implantados seguindo as práticas recomendadas da AWS para instalações baseadas em nuvem.
- Navegue até o console de gerenciamento do AWS e selecione a opção "N. Região da Califórnia".
- Abra o serviço AWS DataSync.
- Se não houver agentes, clique em Get started (Iniciar); caso contrário, clique em Create agent (Criar agente).
- Na seção Ponto de extremidade de serviço, deixe-a como "Pontos de extremidade de serviço público...".
- Na seção Activation key (Chave de ativação ), insira o endereço IP público do primeiro agente DataSync das saídas do CloudFormation:
- Agente 1 IP público:
- IP público do agente 2:
- Agente 1 IP público:
Figura 8 - Criar e ativar o agente DataSync
- Clique em Obter key para recuperar a chave de ativação.
- Quando a ativação for bem-sucedida, insira um nome de agente (por exemplo, "Agente 1" ou "Agente 2").
- Aplique as etiquetas, se necessário.
- Clique em Criaragente .
- Repita as etapas acima para o segundo agente DataSync.
Criação de uma tarefa DataSync
Agora, vamos finalmente criar uma tarefa DataSync! Siga estas etapas:
- Vá para o console do AWS DataSync.
- Clique em Tarefas → Criar tarefa.
- Criar local de origem:
- Local type: Sistema de arquivos de rede (NFS).
- Agentes: Selecione "IP privado do agente 1" e "IP privado do agente 2".
- NFS Servidor Privado IP: IP privado do NFS.
- Caminho de montagem:
/mnt/fs1/d0001
(copia apenas o diretóriod0001
).
Figura 10 - Configuração do local de origem para o AWS DataSync
- Criar local de destino:
- Tipo de localização: Amazon S3.
- Selecione o bucket S3 nas saídas do CloudFormation.
- Classe de armazenamento: Padrão.
- Função de IAM: Selecione entre as saídas do CloudFormation
Configuração de tarefas de transferência de dados
Depois que o AWS DataSync estiver configurado, a próxima etapa será a configuração das tarefas de transferência de dados. Essas tarefas definem como, quando e para onde os dados serão transferidos. O AWS DataSync oferece suporte a várias opções para otimizar as transferências, incluindo filtragem de arquivos, agendamento e monitoramento.
- Definir as configurações da tarefa:
- Nome da tarefa: Tarefa de teste
- Excluir padrões:
*/.htaccess
e*/index.html
- Modo de transferência: Transferir dados que foram apenas alterados (determina se o DataSync transfere apenas os dados e metadados que diferem entre a origem e o destino).
- Verifique os dados: Selecione "Verify only the data transferred" (Verificar somente os dados transferidos).
- Ative o registro do CloudWatch:
- Grupo de registros: Selecione
DataSyncLogs-datasync-incloud
. - Clique em Próximo, revise as configurações e clique em Criar tarefa.
Realização da transferência de dados com o AWS DataSync
Depois de configurar uma tarefa DataSync, você precisa executar a transferência e monitorar seu progresso. Esta seção aborda como iniciar uma transferência manualmente ou por meio da CLI, programar seu status e solucionar problemas comuns.
Iniciando a transferência de dados
- Aguarde até que o status da tarefa mude de "Criando" para "Disponível".
- Clique no botão Iniciar revise as configurações e clique em Iniciar.
Figura 11 - Lista de tarefas do AWS DataSync mostrando opções para iniciar, editar ou excluir a tarefa
- Monitore o progresso da tarefa:
- Você passará por esses status: Lançamento → Preparação → Transferência → Verificação → Sucesso.
Monitoramento do progresso da transferência
Clique na Tarefa histórico e selecione o objeto de execução para ver as estatísticas de transferência na tarefa.
Figura 12 - Métricas de desempenho do AWS DataSync mostrando a taxa de transferência de arquivos, a taxa de transferência de dados e a utilização da rede
Solução de problemas de transferência de dados
Durante as transferências do AWS DataSync, podem ocorrer problemas comuns, como falhas de conectividade, erros de permissão ou velocidades de transferência lentas. Para solucionar problemas:
- Verifique os registros do CloudWatch - Identifique erros relacionados a permissões de arquivos, conectividade de agentes ou transferências com falha.
- Verifique a conectividade da rede - Certifique-se de que os agentes DataSync possam acessar a origem (NFS/SMB) e o destino (S3, EFS, FSx).
- Revise as permissões do IAM - Confirme se a função de serviço DataSync tem as permissões necessárias para ler/gravar dados.
- Inspecionar a configuração do agente - Verifique se os agentes estão corretamente ativados, íntegros e capazes de se comunicar com o serviço AWS DataSync.
Etapas pós-transferência e sincronização de dados
Após a conclusão da transferência de dados, é importante verificar a integridade dos arquivos transferidos e configurar a sincronização contínua, se necessário. Esta seção explica como verificar a precisão dos dados, agendar sincronizações incrementais e limpar os recursos não utilizados para otimizar os custos.
Verificação da integridade dos dados
- Abra o console do AWS S3 e navegue até o bucket que começa com "datasync".
- Navegue pelo bucket e verifique se todos os arquivos esperados foram transferidos.
Figura 13 - Compartimento do AWS S3 mostrando arquivos transferidos via AWS DataSync
- Certifique-se de que os arquivos
.htaccess
eindex.html
não foram copiados.
Você também pode verificar os detalhes da execução da tarefa por meio da CLI do AWS:
- Obter o ARN de execução da tarefa:
aws datasync list-task-executions --region us-west-1 | grep exec-
- Descreva a execução da tarefa:
aws datasync describe-task-execution --region us-west-1 --task-execution-arn <task-execution-arn>
Figura 14 - Detalhes da execução da tarefa do AWS DataSync
- Analise as principais métricas de desempenho:
EstimatedFilesToTransfer
,BytesTransferred
, velocidade de transferência e duração.
Sincronização contínua de dados
Em cenários reais, os arquivos continuam a ser adicionados e modificados após uma transferência inicial. O AWS DataSync oferece suporte a transferências incrementais, garantindo que apenas os arquivos novos ou alterados sejam copiados para o destino. Nesta seção, modificaremos os dados em fs2
, executaremos uma transferência incremental e otimizaremos o processo usando filtros.
Vamos começar modificando os arquivos em fs2
.
- Faça login no servidor NFS via SSH:
ssh ec2-user@<NFS-Server-IP>
- Crie um novo arquivo e atualize a lista de manifestos:
cd /mnt/fs2/d0001/dir0001
dd if=/dev/urandom of=newfile1 bs=1M count=1
echo "newfile1" >> manifest.lst
Isso adiciona um novo arquivo (newfile1
) e modifica manifest.lst
.
Em seguida, execute novamente a tarefa para sincronizar as alterações:
- Vá para o console do AWS DataSync.
- Clique em Tarefas → Testar Tarefa (tarefa criada anteriormente).
- Clique em Iniciar para iniciar uma nova execução.
- Monitorar o progresso da Tarefa histórico você pode monitorar o progresso na guia Histórico de tarefas.
- Depois de concluído, verifique:
- 3 arquivos transferidos (
newfile1
,manifest.lst
atualizado e atualização de pasta). - 1 MiB de dados copiados para o S3.
Figura 15 - Métricas de desempenho do AWS DataSync mostrando uma transferência incremental
- Valide a transferência no S3:
- Vá até o bucket S3 e confirme a presença de
newfile1
. - Consulte
manifest.lst
para obter um registro de data e hora atualizado.
Automatizando transferências do DataSync com tarefas agendadas
Para ambientes em que os dados são alterados com frequência, o agendamento de sincronizações periódicas garante que o destino permaneça atualizado com o mínimo de intervenção manual. O AWS DataSync permite que você configure tarefas em intervalos regulares (por exemplo, por hora, diariamente ou semanalmente), reduzindo a sobrecarga operacional.
Ao configurar uma programação recorrente, o DataSync detectará e transferirá automaticamente apenas os arquivos novos e modificados, otimizando o uso da largura de banda e a eficiência da transferência.
Para agendar uma tarefa:
- Vá para o console do AWS DataSync e edite uma tarefa existente.
- No Programação selecione "Daily" (Diariamente), "Weekly" (Semanalmente), etc.
- Forneça o horário específico (opcional).
- Salve as configurações e o DataSync executará a tarefa nos intervalos especificados.
Limpeza e otimização de custos
Após a conclusão da transferência de dados, é essencial limpar os recursos não utilizados para evitar custos desnecessários. Siga estas etapas:
- Interromper e excluir tarefas do DataSync:
- Vá para o console do AWS DataSync, selecione a tarefa e escolha Parar se ela estiver em execução.
- Clique em Ações → Excluir para remover as tarefas concluídas.
- Excluir agentes do DataSync:
- Navegue até Agentes no console do DataSync.
- Selecione os agentes e clique em Excluir para removê-los.
Exclua a pilha do CloudFormation
- Abra o console do AWS CloudFormation.
- Selecione o CloudFormation Stack criado durante o tutorial.
- Clique em Excluir (canto superior direito).
Figura 15 - Confirmação da exclusão da pilha no AWS
- Confirme a exclusão - o CloudFormation removerá automaticamente todos os recursos associados (isso pode levar até 15 minutos).
- Monitore o console do CloudFormation para garantir que a pilha seja totalmente excluída.
Otimize os custos do AWS DataSync
Para minimizar as despesas com transferência de dados, considere estas práticas recomendadas:
- Use transferências incrementais - Configure o DataSync para transferir somente arquivos novos ou modificados para reduzir a movimentação desnecessária de dados.
- Otimize a frequência de transferência - Programe tarefas com base nas taxas de alteração de dados, em vez de executar sincronizações contínuas.
- Escolha um armazenamento econômico - Armazene dados acessados com pouca frequência no Amazon S3 Glacier em vez do Amazon EFS, que tem custos mais altos.
Com a limpeza adequada dos recursos e a otimização das estratégias de transferência, você pode reduzir significativamente os custos do AWS e, ao mesmo tempo, manter a sincronização eficiente dos dados.
Recursos avançados do AWS DataSync
Além das transferências básicas, o AWS DataSync oferece recursos avançados que melhoram o desempenho, a eficiência de custos e a segurança. Esta seção explora os principais casos de uso avançado, incluindo a integração com o S3 e a migração de NFS para EFS.
Usando o DataSync com o Amazon S3
O AWS DataSync é uma ferramenta poderosa para mover grandes quantidades de dados de e para o S3 e é ideal para tarefas de backup, arquivamento e migração para a nuvem. Ele aumenta o desempenho por meio de uploads de várias partes, que dividem arquivos grandes em partes menores e os transferem em paralelo. Além disso, a integração do DataSync com as classes de armazenamento S3 ajuda os usuários a economizar dinheiro migrando dados menos ativos para o S3 Glacier ou o S3 Intelligent-Tiering.
Neste tutorial, explicamos como configurar uma tarefa do DataSync, definir uma fonte NFS e mover arquivos para um bucket S3, tudo isso excluindo arquivos indesejados. Você pode usar essas etapas para programar grandes movimentações de dados com pouco ou nenhum impacto operacional.
Migrando do NFS para o Amazon EFS com o DataSync
Para as organizações que precisam migrar compartilhamentos NFS locais para o Amazon EFS, a solução é automatizada, segura e dimensionável: o AWS DataSync. O problema é que o S3 é um armazenamento de objetos. Ao mesmo tempo, o Amazon EFS (Elastic File System) é um serviço de armazenamento de arquivos totalmente gerenciado com conformidade POSIX, o que o torna uma boa opção para aplicativos que precisam de acesso compartilhado e desempenho de baixa latência.
Veja como o DataSync ajuda na migração de NFS para EFS:
- Preserva os metadados - Mantém as permissões, os registros de data e hora e a propriedade dos arquivos.
- Oferece suporte a sincronizações incrementais - Copia apenas arquivos novos ou alterados, reduzindo os custos de transferência.
- Automatiza a migração - Não há necessidade de scripts manuais ou estratégias complexas de movimentação de dados.
Embora este tutorial tenha sido baseado na migração de NFS para S3, os mesmos princípios do DataSync podem ser usados na migração para o Amazon EFS. A principal variação é escolher o EFS como destino para que a movimentação de dados seja bem executada para aplicativos que precisam de um sistema de arquivos com dimensionamento dinâmico no AWS.
Práticas recomendadas para usar o AWS DataSync
Para que você aproveite ao máximo o AWS DataSync, é essencial seguir as práticas recomendadas que aumentam a velocidade, a segurança e a eficiência de custos. Esta seção aborda as principais estratégias para otimizar as transferências de dados, garantir a segurança dos dados e gerenciar o monitoramento de forma eficaz.
Otimize a velocidade e o custo da transferência
Para migrações de dados em larga escala, o AWS Direct Connect (DX) é uma conexão de rede privada dedicada que evita a Internet pública e permite transferências mais rápidas e seguras com menor latência. Se o DX não estiver disponível, outras alternativas, comoconexões VPN ou peering VPC, podem aumentar as velocidades de transferência e, ao mesmo tempo, manter a segurança.
Além disso, o AWS DataSync tem a compactação integrada que reduz a quantidade de dados movidos pela rede, aumentando assim as velocidades e minimizando os custos de largura de banda. No entanto, como a compactação usa recursos da CPU, é fundamental comparar os benefícios de desempenho com a possível sobrecarga do sistema.
Além disso, o agendamento de tarefas e a configuração podem ser otimizados para melhorar ainda mais o desempenho do DataSync. O reagendamento das transferências para horários fora de pico evita o tráfego de rede e garante a disponibilidade da largura de banda, especialmente ao mover arquivos grandes. O ajuste fino do tamanho do buffer e de vários fluxos de transferência paralelos com base na capacidade da rede e do armazenamento melhora drasticamente a taxa de transferência.
Para fluxos de trabalho de arquivos pequenos, o aumento do nível de paralelismo reduz o tempo necessário para transferir dados. Por outro lado, o gerenciamento eficaz do buffer aumenta o desempenho e a confiabilidade de arquivos grandes.
Garantir a segurança dos dados
Todos os dados que o AWS DataSync transfere são criptografados em trânsito por meio de TLS para garantir a segurança da transferência de rede. A criptografia para serviços de armazenamento de destino, incluindo Amazon S3, Amazon EFS e Amazon FSx, também deve ser ativada. Para aumentar o nível de proteção ao usar o S3, habilite também a criptografia no lado do servidor.
Ao atribuir funções de IAM para tarefas do DataSync, siga o princípio do menor privilégio. Para minimizar os riscos de segurança, conceda apenas as permissões necessárias aos agentes do DataSync e às funções de execução de tarefas. Evite usar chaves de política baseadas em tags e, em vez disso, empregue políticas baseadas em recursos para evitar alterações imprevistas nos dados.
Para transferências de dados intra-VPC, habilite os pontos de extremidade da VPC para atender ao tráfego do DataSync dentro da rede da AWS sem envolver a Internet pública. Isso ajuda a reduzir os riscos de segurança e a melhorar o desempenho ao mover dados entre diferentes serviços da AWS.
O agente DataSync deve ser executado com segurança, seguindo as novas recomendações de segurança do sistema operacional e segmentação da rede. Você também deve ter o site atualizado, e as políticas de grupo de segurança da AWS devem ser aplicadas para impedir o acesso não autorizado.
Monitorar e gerenciar transferências de forma eficaz
O monitoramento eficaz ajudará a garantir que as transferências de dados sejam bem-sucedidas e otimizadas no AWS DataSync. Este tutorial também mostrou como você pode se integrar ao CloudWatch para fornecer rastreamento em tempo real da execução de tarefas, velocidades de transferência, taxas de erro e taxa de transferência. A revisão dos registros de tarefas ajuda a identificar problemas, verificar a integridade dos arquivos e solucionar problemas de transferências com falha.
Figura 16 - Painel de monitoramento do AWS DataSync CloudWatch mostrando arquivos transferidos, bytes transferidos
Além disso, os alarmes do CloudWatchnotificam quando há falhas nas transferências ou problemas de desempenho, que podem ocorrer antes do previsto e podem ser resolvidos antes que se tornem um problema maior.
Solução de problemas do AWS DataSync
Embora o AWS DataSync automatize as transferências de dados, você pode encontrar problemas de conectividade, erros de permissão ou inconsistências de dados. Esta seção fornece soluções para problemas comuns, explica como depurar usando logs e garante a sincronização de dados sem problemas.
Erros comuns e como corrigi-los
Os usuários do AWS DataSync podem encontrar tempos limite, problemas de permissão ou erros de integridade de dados durante as transferências. Aqui estão alguns problemas comuns e suas soluções:
- Tempo limite da tarefa ou transferências lentas
- Causa: Congestionamento da rede, limites de largura de banda ou grande número de arquivos.
- Solução: Aumente a alocação de largura de banda e programe as transferências fora dos horários de pico.
- Erros de permissão negada
- Causa: Funções IAM ou restrições de acesso NFS/SMB.
- Solução: Certifique-se de que a função IAM do DataSync tenha as permissões corretas e verifique se a exportação NFS ou as permissões de compartilhamento SMB permitem o acesso do agente.
- Problemas de integridade de dados (arquivos corrompidos ou ausentes)
- Causa: Transferências incompletas, interrupções ou configurações incorretas de verificação.
- Solução: Ative o modo de verificação de dados nas configurações da tarefa, verifique se há arquivos ignorados ou com falha nos registros e execute novamente a tarefa, se necessário.
- Falhas na conexão do agente
- Causa: Configuração incorreta da rede, bloqueios de firewall ou ativação incorreta.
- Solução: Certifique-se de que o agente tenha acesso à Internet ou configure os pontos de extremidade da VPC para conectividade privada. Se necessário, registre novamente o agente.
Depuração com logs e CloudWatch
Para solucionar problemas de forma eficaz nas tarefas do AWS DataSync, os registros fornecem informações valiosas sobre transferências com falha, arquivos ignorados e erros de rede. Este tutorial mostrou a integração do CloudWatch para monitorar e depurar execuções do DataSync.
Veja como você pode verificar os registros de tarefas do DataSync:
- Navegue até Registros do CloudWatch Registros → Abra o grupo de registros associado à tarefa DataSync.
- Procure mensagens de erro ou falhas de transferência relacionadas a problemas de permissão, tempos limite ou erros de rede.
Figura 17 - Fluxo de registro do AWS CloudWatch para execução da tarefa DataSync
Em seguida, configure os alarmes do CloudWatch para falhas:
- Ir para Métricas Métricas → Selecionar AWS/DataSync.
- Crie alarmes para altas taxas de falha, quedas na velocidade de transferência ou problemas de conectividade do agente.
Conclusão
O AWS DataSync simplifica as transferências de dados automatizadas, seguras e eficientes entre ambientes locais e serviços de armazenamento do AWS, como Amazon S3, EFS e FSx. Este tutorial oferece uma abordagem prática para que você configure o DataSync, configure o NFS como uma fonte e transfira dados, garantindo a segurança e o desempenho.
Exploramos transferências incrementais, agendamento de tarefas e monitoramento do CloudWatch para otimizar o DataSync em termos de custo, velocidade e confiabilidade. Além disso, as etapas de solução de problemas e as técnicas de análise de registros ajudam a diagnosticar e resolver problemas de transferência de forma eficaz.
Se você é novo na AWS ou deseja aprofundar sua compreensão dos conceitos e serviços de nuvem, recomendo que confira estes recursos de aprendizagem relacionados:
- Conceitos da AWS
- Tecnologia e serviços em nuvem da AWS
- Segurança e gerenciamento de custos da AWS
- Programa de certificação do AWS Cloud Practitioner (CLF-C02)
Esses cursos são uma ótima maneira de você desenvolver o conhecimento básico e se preparar para cenários de nuvem do mundo real usando a AWS!
Rahul Sharma é embaixador da AWS, arquiteto de DevOps e blogueiro técnico especializado em computação em nuvem, práticas de DevOps e tecnologias de código aberto. Com experiência em AWS, Kubernetes e Terraform, ele simplifica conceitos complexos para alunos e profissionais por meio de artigos e tutoriais envolventes. Rahul é apaixonado por resolver desafios de DevOps e compartilhar insights para capacitar a comunidade de tecnologia.