A resposta ao nosso post anterior,
Para repatriar dados do AWS S3, você seguirá estas diretrizes gerais:
Revise os requisitos de dados: determine os buckets e objetos específicos que precisam ser repatriados do AWS S3. Certifique-se de entender as necessidades de negócios e os requisitos de conformidade passo a passo.
Identifique o destino de repatriação: você já decidiu repatriar para o MinIO, agora pode optar por executar o MinIO em um data center local ou em outro provedor de nuvem ou instalação de colocation. Usando os requisitos do item 1, você selecionará hardware ou instâncias para necessidades previstas de armazenamento, transferência e disponibilidade.
Transferência de dados: planeje e execute a transferência de dados do AWS S3 para o MinIO. Basta usar a replicação em lote integrada do MinIO ou espelhar usando o MinIO Client (consulte
Acesso e permissões aos dados: certifique-se de que os controles e permissões de acesso apropriados sejam configurados para os dados repatriados por balde. Isso inclui políticas de IAM e bucket para gerenciar o acesso, autenticação e autorização do usuário para garantir a segurança dos dados.
Bloqueios de objetos: é fundamental preservar a retenção de bloqueios de objetos e as políticas de retenção legal após a migração. O armazenamento de objetos de destino deve interpretar as regras da mesma forma que o Amazon S3. Se você não tiver certeza, peça o
Gerenciamento do ciclo de vida dos dados: Defina e implemente uma estratégia de gerenciamento do ciclo de vida dos dados repatriados. Isso inclui a definição de políticas de retenção, procedimentos de backup e recuperação e práticas de arquivamento de dados por bucket.
Validação de dados: Valide os dados transferidos para garantir sua integridade e integridade. Execute as verificações e testes necessários para garantir que os dados foram transferidos com sucesso, sem qualquer corrupção ou perda. Após a transferência, o nome do objeto, ETag e metadados, soma de verificação e o número de objetos correspondem entre a origem e o destino.
Atualizar aplicativos e fluxos de trabalho: a boa notícia é que, se você seguir os princípios nativos da nuvem para criar seus aplicativos, tudo o que precisará fazer é reconfigurá-los para o novo endpoint MinIO. No entanto, se seus aplicativos e fluxos de trabalho foram projetados para funcionar com o ecossistema da AWS, faça as atualizações necessárias para acomodar os dados repatriados. Isso pode envolver a atualização de configurações, a reconfiguração de integrações ou, em alguns casos, a modificação do código.
Monitore e otimize: monitore e otimize continuamente o ambiente de dados repatriados para garantir desempenho ideal, economia e adesão às melhores práticas de gerenciamento de dados.
Há muitos fatores a serem considerados ao orçar e planejar a repatriação da nuvem. Felizmente, nossos engenheiros fizeram isso com muitos clientes e desenvolvemos um plano detalhado para você. Temos clientes que repatriaram tudo, desde um punhado de cargas de trabalho até centenas de petabytes.
A maior tarefa de planejamento é pensar nas opções de rede, largura de banda alugada, hardware de servidor, custos de arquivamento dos dados não selecionados para serem repatriados e o custo humano de gerenciamento e manutenção de sua própria infraestrutura em nuvem. Estime esses custos e planeje-os. Os custos de repatriação na nuvem incluirão taxas de saída de dados para mover os dados da nuvem de volta ao data center. Essas taxas são intencionalmente altas o suficiente para obrigar ao aprisionamento na nuvem. Tome nota dessas altas taxas de saída: elas fundamentam o argumento econômico para deixar a nuvem pública porque, à medida que a quantidade de dados que você gerencia aumenta, as taxas de saída aumentam. Portanto, se você pretende repatriar, vale a pena agir o quanto antes.
Vamos nos concentrar nos dados e metadados que devem ser movidos – isto representa oitenta por cento do trabalho necessário para repatriar. Os metadados incluem propriedades e políticas de bucket (gerenciamento de acesso baseado em chave de acesso/secreta, gerenciamento do ciclo de vida, criptografia, acesso público anônimo, bloqueio de objetos e controle de versão).
Vamos nos concentrar nos dados (objetos) por enquanto. Para cada namespace que você deseja migrar, faça um inventário dos buckets e dos objetos que deseja mover. É provável que sua equipe de DevOps já saiba quais buckets contêm dados atuais importantes. Você também pode usar
Espaço para nome | Total de baldes | Contagem total de objetos | Tamanho total do objeto (GB) | Upload total diário (TB) | Download total diário (TB) |
---|---|---|---|---|---|
ns-001 | 166 | 47.751.258 | 980.014,48 | 50.04 | 14h80 |
ns-002 | 44 | 24.320.810 | 615.033,35 | 23,84 | 675,81 |
ns-002 | 648 | 88.207.041 | 601.298,91 | 328,25 | 620,93 |
ns-001 | 240 | 68.394.231 | 128.042,16 | 62,48 | 12h45 |
A próxima etapa é listar, por namespace, cada bucket e suas propriedades para cada bucket que você irá migrar. Observe os aplicativos que armazenam e leem dados nesse bucket. Com base no uso, classifique cada bucket como dados de nível quente, quente ou frio.
Em uma versão resumida, isso será parecido com
Nome do intervalo | Propriedades | Aplicativo(s) | Nível Quente/Quente/Frio |
---|---|---|---|
A | Copie e cole JSON aqui | Faísca, Iceberg, Dremio | Quente |
B | Copie e cole JSON aqui | Elástico | Esquentar |
C | Copie e cole JSON aqui | Elástico (instantâneos) | Frio |
Você tem algumas decisões a tomar sobre o gerenciamento do ciclo de vida dos dados neste momento e preste muita atenção porque esta é uma ótima maneira de economizar dinheiro em taxas da AWS. Categorize os objetos em cada bucket como quentes, mornos ou frios com base na frequência com que são acessados. Um ótimo lugar para economizar dinheiro é migrar buckets de camada fria diretamente para o S3 Glacier – não há motivo para incorrer em taxas de saída para fazer download apenas para fazer upload novamente.
Dependendo da quantidade de dados que você está repatriando, você tem algumas opções para escolher como migrar. Recomendamos que você carregue e trabalhe com novos dados no novo cluster MinIO enquanto copia dados quentes e quentes para o novo cluster ao longo do tempo. A quantidade de tempo e largura de banda necessária para copiar objetos dependerá, obviamente, do número e do tamanho dos objetos que você está copiando.
É aqui que será muito útil calcular o total de dados que você irá repatriar do AWS S3. Observe seu inventário e some o tamanho de todos os baldes classificados como quentes e mornos.
Dados totais de níveis quentes e quentes = 1.534.096,7 GB |
---|
Largura de banda disponível = 10 Gbps |
Tempo mínimo de transferência necessário (tamanho total do objeto/largura de banda disponível) = 14,2 dias |
Calcule as taxas de saída de dados com base no total acima. estou a usar
Total de dados em camadas para S3 Glacier = 767.048,337 GB |
---|
Taxas de transferência de S3 para S3 Glacier (US$ 0,05/1.000 objetos) = US$ 3.773,11 |
Taxa mensal de armazenamento do S3 Glacier Deep Archive = US$ 760 |
Não se esqueça de fazer um orçamento para o uso do S3 Glacier Deep Archive no futuro.
Total de dados a serem transferidos = 1.534.096,7 GB |
---|
Primeiros 10 TB a US$ 0,09/GB = US$ 900 |
Próximos 40 TB a US$ 0,085/GB = US$ 3.400 |
Próximos 100 TB a US$ 0,07/GB = US$ 70.000 |
Adicional acima de 150 TB a US$ 0,05/GB = US$ 69.205 |
Taxas totais de saída = $ 143.504 |
Por uma questão de simplicidade, o cálculo acima não inclui nem a taxa para operações por objeto (US$ 0,40/1 milhão) nem o custo de LISTing (US$ 5/1 milhão). Para projetos de repatriação muito grandes, também podemos compactar objetos antes de enviá-los pela rede, economizando parte do custo das taxas de saída.
Outra opção é usar o AWS Snowball para transferir objetos. Os dispositivos Snowball têm 80 TB cada, então sabemos de antemão que precisaremos de 20 deles para nosso esforço de repatriação. A taxa por dispositivo inclui 10 dias de uso, mais 2 dias para envio. Dias adicionais estão disponíveis por US$ 30/dispositivo.
Taxa de serviço de 20 dispositivos Snowball (US$ 300 cada) = US$ 6.000 |
---|
Frete R/T (3-5 dias a US$ 400/dispositivo) = US$ 8.000 |
Saída de dados S3 (US$ 0,02/GB) = US$ 30.682 |
Taxas totais de bola de neve = $ 38.981,93 |
A AWS cobrará taxas padrão de solicitação, armazenamento e transferência de dados para leitura e gravação em serviços da AWS, incluindo
Agora sabemos quanto tempo levará para migrar essa enorme quantidade de dados e o custo. Tome uma decisão comercial sobre qual método atende às suas necessidades com base na combinação de prazos e taxas.
Neste ponto, também conhecemos os requisitos de hardware necessários para executar o MinIO no local ou em uma instalação de colocation. Considere o requisito acima para 1,5 PB de armazenamento, estime o crescimento dos dados e consulte nosso
A primeira etapa é recriar seus buckets S3 no MinIO. Você terá que fazer isso independentemente de como escolher migrar objetos. Embora o S3 e o MinIO armazenem objetos usando criptografia no lado do servidor, você não precisa se preocupar com a migração de chaves de criptografia. Você pode se conectar ao KMS de sua escolha usando
Você tem várias opções para copiar objetos: Replicação em lote e mc mirror
. Minha postagem anterior no blog,
Normalmente, os clientes usam ferramentas que escrevemos combinadas com o hardware e serviços de migração de dados do AWS Snowball ou TD SYNNEX para mover grandes quantidades de dados (mais de 1 PB).
MinIO recentemente fez parceria com Western Digital e TD SYNNEX para lançar uma alternativa Snowball. Os clientes podem agendar janelas para receber o hardware Western Digital e pagar pelo que precisam durante o período de locação. Mais importante ainda, o serviço não está vinculado a uma nuvem específica – o que significa que a empresa pode usar o serviço para mover dados para dentro, para fora e entre nuvens – tudo isso usando o onipresente protocolo S3. Detalhes adicionais sobre o serviço podem ser encontrados no site
Os metadados do bucket, incluindo políticas e propriedades do bucket, podem ser lidos usando get-bucket
Preste especial atenção a
Preste atenção especial ao gerenciamento do ciclo de vida de dados, como retenção de objetos, bloqueio de objetos e arquivamento/classificação em camadas. Execute uma get-bucket-lifecycle-configuration
em cada bucket para obter uma lista JSON legível de regras de ciclo de vida. Você pode recriar facilmente as configurações do AWS S3 usando o console MinIO ou o cliente MinIO (mc). Use comandos como get-object-legal-hold
e get-object-lock-configuration
para identificar objetos que exigem tratamento especial de segurança e governança.
Já que estamos falando sobre ciclo de vida, vamos falar um pouco sobre backup e recuperação de desastres. Você deseja um cluster MinIO adicional para replicação, para backup e recuperação de desastres?
Depois que os objetos são copiados do AWS S3 para o MinIO, é importante validar a integridade dos dados. A maneira mais fácil de fazer isso é usar o MinIO Client para executar mc diff
em buckets antigos no S3 e em novos buckets no MinIO. Isso calculará a diferença entre os intervalos e retornará uma lista apenas dos objetos ausentes ou diferentes. Este comando usa os argumentos dos buckets de origem e de destino. Para sua conveniência, você pode querer criar
mc diff s3/bucket1 minio/bucket1
A boa notícia é que tudo o que você precisa fazer é apontar os aplicativos existentes para o novo endpoint MinIO. As configurações podem ser reescritas aplicativo por aplicativo durante um período de tempo. A migração de dados no armazenamento de objetos causa menos interrupções do que um sistema de arquivos; basta alterar a URL para leitura/gravação de um novo cluster. Observe que se você anteriormente dependia dos serviços da AWS para oferecer suporte aos seus aplicativos, eles não estarão presentes no seu data center, portanto, você terá que substituí-los por seus equivalentes de código aberto e reescrever alguns códigos. Por exemplo, Athena pode ser substituído por Spark SQL, Apache Hive e Presto, Kinesis por Apache Kafka e AWS Glue por Apache Airflow.
Se a migração do S3 faz parte de um esforço maior para mover um aplicativo inteiro no local, é provável que você tenha usado
Agora que você concluiu a repatriação, é hora de voltar sua atenção para a operação, monitoramento e otimização do armazenamento. A boa notícia é que nenhuma otimização é necessária para o MinIO – incorporamos a otimização diretamente no software para que você saiba que está obtendo o melhor desempenho para o seu hardware. Você desejará começar a monitorar seu novo cluster MinIO para avaliar continuamente a utilização e o desempenho de recursos. MinIO expõe
Com
Não é segredo que os dias de passar cheques em branco para provedores de nuvem acabaram. Muitas empresas estão atualmente avaliando seus gastos com nuvem para encontrar possíveis economias. Agora você tem tudo o que precisa para iniciar sua migração do AWS S3 para o MinIO, incluindo etapas técnicas concretas e uma estrutura financeira.
Se você estiver entusiasmado com a perspectiva de economia nos custos de repatriação, entre em contato conosco pelo e-mail
Também aparece aqui .