Skip to main content
  • Place orders quickly and easily
  • View orders and track your shipping status
  • Enjoy members-only rewards and discounts
  • Create and access a list of your products
  • Manage your Dell EMC sites, products, and product-level contacts using Company Administration.

Fazendo backup do Hadoop no PowerScale

Summary: Este artigo descreve as práticas recomendadas para o backup de ambientes Hadoop sem Isilon em um Isilon Cluster.

This article may have been automatically translated. If you have any feedback regarding its quality, please let us know using the form at the bottom of this page.

Article Content


Instructions


Práticas recomendadas para usar a ferramenta DistCp para fazer backup do Hadoop

Este artigo descreve as práticas recomendadas para o backup de ambientes Hadoop sem PowerScale em um Dell PowerScale Cluster. Com a proteção de dados de codificação de eliminação robusta, que oferece mais de 80% de eficiência de armazenamento, o Dell PowerScale é um destino de backup ideal para dados localizados em um cluster do Hadoop. A ferramenta DistCp (distributed copy, cópia distribuída) vem por padrão com todas as distribuições e versões do Hadoop. A ferramenta DistCp pode copiar diretórios inteiros do Hadoop. A ferramenta DistCp é executada como um trabalho MapReduce para realizar cópias de arquivos em paralelo, usando totalmente seus sistemas, conforme necessário. Há também uma opção para limitar a largura de banda para controlar o impacto em outras tarefas.

AMBIENTE
Este artigo usa o seguinte ambiente de teste:

  • Pivotal HD (PHD) 2.0.1, instalado usando o Pivotal Control Center 2.0. Todas as configurações usam valores padrão. Em particular, o HDFS é instalado nos nós do PHD para uma configuração de DAS tradicional.
  • PowerScale OneFS 7.2.0

Como a ferramenta DistCp é padrão do Hadoop, a abordagem descrita neste documento é aplicável à maioria ou a todas as outras distribuições e versões do Hadoop.

Durante a leitura deste documento, suponha que os dados para backup estejam localizados no cluster PHD Hadoop HDFS, no diretório /mydata. Nos exemplos, o backup de dados é feito no PowerScale Cluster, no diretório /ifs/hadoop/backup/mydata.

Backup de um cluster do Hadoop no Isilon
Figura 1: Backup de um cluster do Hadoop no Isilon


MÉTODOS DE BACKUP:

O MÉTODO DE BACKUP MAIS SIMPLES

O comando de backup mais simples é mostrado abaixo:

[gpadmin@phddas2-0 ~]$ hadoop distcp -skipcrccheck -update /mydata hdfs://all-nc-s-hdfs/backup/mydata

Você pode executar o comando acima em qualquer host que tenha o client Hadoop (hadoop) instalado. O usuário que executar o comando precisa ter permissões para ler os arquivos de origem e gravar os arquivos de destino.

As opções -skipcrccheck e -update devem ser especificadas para evitar a verificação de CRC nos arquivos de destino colocados no PowerScale Cluster. O PowerScale não armazena o CRC do Hadoop. Fazer esse cálculo seria muito caro. Portanto, essas opções são necessárias para evitar erros relacionados à verificação de CRC.

O próximo parâmetro, "/mydata", é o caminho de origem no cluster do Hadoop de origem. Também pode ser "/" para fazer backup de todo o namespace do HDFS. Como o caminho não é totalmente qualificado, ele usa o NameNode do HDFS especificado no parâmetro "fs.defaultFS" do core-site.xml.

O parâmetro final, "hdfs://all-nc-s-hdfs/backup/mydata", é o caminho de destino em seu PowerScale Cluster. A parte do host "all-nc-s-hdfs" pode ser um nome DNS relativo ou totalmente qualificado, como all-nc-s-hdfs.exemplo.com. Ele deve ser o nome DNS de SmartConnect Zone para seu PowerScale Cluster. O fragmento de diretório "/backup/mydata" é relativo ao caminho raiz de HDFS, definido na zona de acesso do PowerScale Cluster. Se o caminho raiz de HDFS for /ifs/hadoop, então esse valor será /ifs/hadoop/backup/mydata.

Os arquivos cujos tamanhos são idênticos nos diretórios de origem e destino são considerados inalterados e, portanto, não são copiados. Em particular, os registros de data e hora do arquivo não são usados para identificar arquivos alterados. Para obter mais detalhes sobre a ferramenta DistCp, consulte o Guia da versão 2 da ferramenta DistCp do Hadoop. Esse hiperlink direcionará você para um site fora da Dell Technologies.

COPIANDO PERMISSÕES
Por padrão, os novos arquivos criados pelo usuário que inicia a ferramenta DistCp terão o proprietário, o grupo e as permissões dos arquivos de destino redefinidos com os valores padrão. O proprietário, o grupo e as permissões definidos para o arquivo de origem serão perdidos. Para manter essas informações dos arquivos de origem, use a opção -p. Como a opção -p deve executar chown/chgrp, o usuário que inicia a ferramenta DistCp deve ser um superusuário no sistema de destino. O usuário root no PowerScale Cluster funciona para essa finalidade. Por exemplo: 

[root@phddas2-0 ~]$ hadoop distcp -skipcrccheck -update -pugp /mydata hdfs://all-nc-s-hdfs/backup/mydata

USANDO SNAPSHOTS PARA SUA ORIGEM DE BACKUP
O backup de grandes conjuntos de dados pode levar muito tempo. Os arquivos existentes no início do processo da ferramenta DistCp, quando a estrutura de diretórios é verificada, podem não existir mais quando esse arquivo é copiado. Essa alteração nos arquivos produz erros. Além disso, um aplicativo pode exigir um backup consistente de ponto único no tempo para que ele possa ser utilizável. Para lidar com esses problemas, é recomendável que você crie um snapshot do HDFS de sua origem para garantir que o conjunto de dados não mude durante o processo de backup. Isso não está relacionado ao recurso SnapshotIQ do PowerScale Cluster de destino.

Para usar snapshots do HDFS, você precisa primeiro permitir snapshots para um diretório específico:

[gpadmin@phddas2-0 ~]$ hdfs dfsadmin -allowSnapshot /mydata
Allowing snapshot on /mydata succeeded


Crie um snapshot do HDFS logo antes de realizar o backup com a ferramenta DistCp:

[gpadmin@phddas2-0 ~]$ hdfs dfs -createSnapshot /mydata backupsnap Created snapshot /mydata/.snapshot/backupsnap

O nome desse snapshot é backupsnap. Você pode acessá-lo no caminho de HDFS: /mydata/.snapshot/backupsnap. Todas as alterações em seus arquivos do HDFS após esse snapshot não serão refletidas no backup subsequente. Você pode fazer backup do snapshot no PowerScale usando o seguinte comando:

[gpadmin@phddas2-0 ~]$ hadoop distcp -skipcrccheck -update /mydata/.snapshot/backupsnap hdfs://all-nc-s-hdfs/backup/mydata

Quando o comando de backup terminar de ser executado, você poderá excluir o snapshot. Isso libera qualquer espaço usado para armazenar versões mais antigas de arquivos que foram modificados desde o snapshot: 

[gpadmin@phddas2-0 ~]$ hdfs dfs -deleteSnapshot /mydata backupsnap

USANDO SNAPSHOTS DO POWERSCALE PARA SEU DESTINO DE BACKUP
Independentemente de usar snapshots para sua origem de backup, talvez você queira manter vários snapshots de seu diretório de destino de backup para restaurar versões mais antigas de arquivos.

Para criar snapshots no PowerScale, você deve ter uma licença do SnapshotIQ. Você pode criar snapshots usando a interface Web de administração ou a CLI. Para criar um único snapshot do PowerScale manualmente com a CLI, acesse o SSH em qualquer PowerScale Node e execute o seguinte comando:

all-nc-s-1# isi snapshot snapshots create /ifs/hadoop/backup/mydata --name backup-2014-07-01 --expires 1D --verbose
Created snapshot backup-2014-07-01 with ID 6


Você pode adicionar esse comando ao processo de backup discutido na seção Programando backups abaixo. 

Para obter mais detalhes sobre snapshots do PowerScale OneFS, consulte o Guia de administração da CLI do PowerScale OneFS relacionado à sua versão do OneFS: Hubs de informações do PowerScale OneFS

REPLICAÇÃO DO SYNCIQ PARA VÁRIOS POWERSCALE CLUSTERS
Depois que a ferramenta DistCp realizar o backup no PowerScale Cluster, você poderá usar o OneFS SyncIQ para replicar os snapshots em uma WAN para outros PowerScale Clusters. Os snapshots replicados podem representar um componente versátil e eficiente de sua estratégia de recuperação de desastres.

Replicação do SyncIQ para vários Isilon Clusters
Figura 2: Replicação do SyncIQ para vários Isilon Clusters

MANUSEANDO ARQUIVOS EXCLUÍDOS
Por padrão, os arquivos excluídos do cluster de origem do Hadoop não são excluídos do cluster de destino do Hadoop. Se você precisar desse comportamento, adicione o argumento -delete ao comando da ferramenta DistCp. Ao executar esse comando, é recomendável usar snapshots no destino de backup para permitir a recuperação de arquivos excluídos.

PROGRAMANDO BACKUPS
Você pode automatizar e agendar as etapas para fazer backup de um cluster do Hadoop usando vários métodos. O Apache Oozie é usado com frequência para automatizar tarefas do Hadoop, além de ser diretamente compatível com a ferramenta DistCp. O CRON também pode ser usado para executar um script de shell. Para automatizar a execução de comandos em uma sessão SSH, habilite o SSH sem senha. O SSH sem senha permite que um usuário do CRON se conecte ao seu client Hadoop e ao seu PowerScale Cluster (se estiver usando o SnapshotIQ).


MÉTODOS DE RECUPERAÇÃO

DISTCP NA DIREÇÃO INVERSA

O método padrão para restaurar um backup da ferramenta DistCp, do PowerScale para uma infraestrutura tradicional do Hadoop, é executar a ferramenta DistCp na direção inversa. Faça isso invertendo os caminhos de origem e de destino.

[gpadmin@phddas2-0 ~]$ hadoop distcp -skipcrccheck -update hdfs://all-nc-s-hdfs/backup/mydata /mydata

Talvez você queira criar um snapshot do diretório de destino para poder desfazer quaisquer erros cometidos durante o processo de recuperação. No entanto, esteja ciente do uso de disco adicional que é necessário para manter snapshots.


ACESSO DIRETO AOS DADOS DE BACKUP USANDO O HDFS

Os arquivos de destino de backup no PowerScale podem ser acessados a partir de aplicativos do Hadoop, da mesma forma que os arquivos de origem, devido à compatibilidade do PowerScale com o HDFS. Você pode usar seus dados de backup diretamente, sem precisar primeiro restaurá-los para o ambiente Hadoop de origem inicial. Esse recurso economiza tempo de análise. Por exemplo, se você executar um comando MapReduce, como este:

hadoop jar /usr/lib/gphd/hadoop-mapreduce/hadoop-mapreduce-examples.jar grep /mydata/mydataset1 output1 ABC

Você poderá executar o trabalho MapReduce no conjunto de dados de backup do PowerScale usando o seguinte comando:

hadoop jar /usr/lib/gphd/hadoop-mapreduce/hadoop-mapreduce-examples.jar grep hdfs://all-nc-s-hdfs/backup/ /mydata/mydataset1 output1 ABC

Para especificar um caminho do Hadoop totalmente qualificado em vez de usar o parâmetro "fs.defaultFS", obtenha detalhes com seu provedor de aplicativos. Além disso, um PowerScale Cluster projetado para backup e arquivamento, e não para alto desempenho, provavelmente não fornecerá o mesmo desempenho que o seu ambiente Hadoop primário. É recomendável testar ou consultar o Dell PowerScale para saber o dimensionamento adequado.


RECUPERAÇÃO DE SNAPSHOTS DO POWERSCALE

Você pode recuperar arquivos de um snapshot anterior do PowerScale. Os arquivos estão disponíveis no diretório /ifs/.snapshot. Para obter detalhes e outras opções, consulte o Guia de administração da CLI do PowerScale OneFS.

COMPATIBILIDADE DE VERSÕES DO HDFS
O PowerScale é compatível com várias versões do HDFS. Você pode usá-las simultaneamente para acessar o mesmo conjunto de dados. O PowerScale pode detectar automaticamente a versão apropriada do HDFS por conexão, sem qualquer configuração. Consulte o Guia de administração da CLI do PowerScale OneFS para obter a lista de distribuições e versões compatíveis do Hadoop ou acesse Distribuições e produtos do Hadoop compatíveis com o OneFS. A compatibilidade de versões significa que vários ambientes Hadoop que executam diferentes versões do Hadoop podem fazer backup em um único PowerScale Cluster usando o HDFS.

Quando o PowerScale não for compatível com a sua versão do Hadoop, você ainda poderá usar a ferramenta DistCp para fazer o backup e a restauração dos seus dados do Hadoop com o PowerScale usando o HFTP. Por exemplo, o PHD 2.0 ou posterior não é compatível com o PowerScale OneFS 7.1.1 ou anterior. Nessa configuração, você deve criar um pequeno cluster do Hadoop usando uma versão do Hadoop compatível diretamente com o PowerScale. Depois que o cluster do Hadoop for criado, execute a ferramenta DistCp nesse novo cluster usando o protocolo HFTP para acessar os dados de origem em seu cluster original do Hadoop. O protocolo HFTP é um file system somente leitura, compatível com diferentes versões do Hadoop. Por exemplo:
[gpadmin@phddas2-0 ~]$ hadoop distcp -skipcrccheck -update hftp://phddas2-namenode-0/mydata hdfs://all-nc-s-hdfs/backup/mydata

O tamanho do novo pequeno cluster que executa o trabalho MapReduce da ferramenta DistCp depende principalmente da quantidade de throughput que é necessária. Se o seu backup exigir somente uma taxa de 10 Gbps, você precisará apenas de um único nó do Hadoop. Nenhum de seus dados é armazenado nesse pequeno cluster do Hadoop, portanto, os requisitos de disco são mínimos.

Backup de um cluster do Hadoop no Isilon com versões de protocolo incompatíveis
Figura 3: Backup de um cluster do Hadoop no Isilon com versões de protocolo incompatíveis


CONCLUSÃO

O Dell PowerScale é uma ótima plataforma para Hadoop e outros aplicativos de big data. Ele usa codificação de eliminação para proteger os dados com mais de 80% de eficiência de armazenamento, em contraste com o HDFS tradicional, que conta com 33% de eficiência de armazenamento. O Dell PowerScale tem várias classes de tipos de nós, desde o NL400 denso e o X410 intermediário até o S210 de alto desempenho. Os diversos tipos de nós permitem otimizar diferentes níveis do PowerScale para cargas de trabalho específicas. O backup de ambientes Hadoop tradicionais para o PowerScale é fácil de fazer e permite o destino de backup do HDFS utilizável mais denso.

Article Properties


Affected Product

Isilon, PowerScale OneFS, Isilon with HDFS

Last Published Date

20 Sep 2023

Version

6

Article Type

How To