Article Number: 000126807
Denne artikel beskriver de anbefalede best practices for sikkerhedskopiering af ikke-PowerScale Hadoop-miljøer til en Dell PowerScale-klynge. Med dens robuste databeskyttelse for sletningkodning, der giver mere end 80 % storageeffektivitet, er Dell PowerScale et ideelt backup-mål for data placeret på en Hadoop-klynge. DistCp (distribueret kopi) er et standardværktøj, der leveres med alle Hadoop-distributioner og -versioner. DistCp kan kopiere hele Hadoop-mapper. DistCp kører som et MapReduce-job for at udføre filkopier parallelt og fuldt ud bruge dine systemer, hvis det er nødvendigt. Der er også mulighed for at begrænse båndbredden for at styre påvirkningen af andre opgaver.
MILJØ
Denne artikel bruger følgende testmiljø:
Da DistCp er et standard Hadoop-værktøj, er den fremgangsmåde, der er beskrevet i dette dokument, gældende for de fleste, hvis ikke alle andre Hadoop-distributioner og -versioner.
Mens du læser dette dokument, antages det, at de data, der skal sikkerhedskopieres, findes på PHD Hadoop HDFS-klyngen i mappen /mydata. Eksemplerne sikkerhedskopierer disse data til PowerScale-klyngen i mappen /ifs/hadoop/backup/mydata.
Figur 1: Sikkerhedskopiering af en Hadoop-klynge til Isilon
Den enkleste sikkerhedskopieringskommando vises nedenfor:
[gpadmin@phddas2-0 ~]$ hadoop distcp -skipcrccheck -update /mydata hdfs://all-nc-s-hdfs/backup/mydata
Du kan køre ovenstående kommando på enhver vært, som har Hadoop-klienten (hadoop) installeret. Den bruger, der kører kommandoen, skal have tilladelse til at læse kildefilerne og skrive destinationsfilerne.
Indstillingerne -skipcrccheck og -update skal angives for at undgå CRC-kontrollen på de målfiler, der er placeret på PowerScale-klyngen. PowerScale gemmer ikke Hadoop CRC, og beregning af den vil være for dyr. Derfor er disse indstillinger påkrævet for at forhindre fejl, der er relateret til CRC-kontrollen.
Den næste parameter "/mydata" er kildestien på kildens Hadoop-klynge. Det kan også være "/" for at sikkerhedskopiere hele dit HDFS-navneområde. Da stien ikke er fuldt kvalificeret, bruger den det HDFS NameNode, der er angivet i fs.defaultFS-parameteren i core-site.xml.
Den sidste parameter "hdfs://all-nc-s-hdfs/backup/mydata" er destinationsstien på din PowerScale-klynge. Værtsdelen "all-nc-s-hdfs" kan være et relativ eller fuldt kvalificeret DNS-navn som f.eks. all-nc-s-hdfs.example.com. Det skal være SmartConnect Zone DNS-navnet for din PowerScale-klynge. Mappedelen "/backup/mydata" er i forhold til den HDFS-rodsti, der er defineret i din PowerScale-klyngeadgangszone. Hvis din HDFS-rodsti er /ifs/hadoop, henviser denne værdi til /ifs/hadoop/backup/mydata.
Filer, hvis størrelse er identiske på kilde- og målbiblioteker, antages at være uændrede og kopieres ikke. Især bruges tidsstempler for filer ikke til at bestemme ændrede filer. Du kan finde flere oplysninger om DistCp i Hadoop DistCp version 2-vejledningen.
KOPIERINGSTILLADELSER
Som standard nulstilles ejer, gruppe og tilladelser for destinationsfilerne til standardindstillingerne for nye filer, der er oprettet af den bruger, der starter DistCp. Alle ejer-, gruppe- og tilladelser, der er defineret for kildefilen, går tabt. Hvis du vil gemme disse oplysninger fra kildefilerne, skal du bruge indstillingen -p. Da indstillingen -p skal udførewn/chgrp, skal den bruger, der starter DistCp, være en superbruger på målsystemet. Root-brugeren på PowerScale-klyngen fungerer til dette formål. F.eks.: [root@phddas2-0 ~]$ hadoop distcp -skipcrccheck -update -pugp /mydata hdfs://all-nc-s-hdfs/backup/mydata
BRUG AF SNAPSHOTS TIL DIN SIKKERHEDSKOPIERINGSKILDE
Sikkerhedskopieringen af store datasæt kan tage lang tid. Filer, der findes i starten af DistCp-processen, når mappestrukturen scannes, findes muligvis ikke længere, når den pågældende fil kopieres. Denne ændring i filer genererer fejl. Desuden kan et program kræve en konsistent engangssikkerhedskopiering, for at det kan bruges. For at løse disse problemer anbefales det, at du opretter et HDFS-snapshot af din kilde for at sikre, at datasættet ikke ændres under sikkerhedskopieringsprocessen. Dette er ikke relateret til SnapshotIQ-funktionen i din PowerScale-klynge.
For at bruge HDFS-snapshots skal du først tillade snapshots for en bestemt mappe:[gpadmin@phddas2-0 ~]$ hdfs dfsadmin -allowSnapshot /mydata
Allowing snapshot on /mydata succeeded
Umiddelbart før en sikkerhedskopiering med DistCp skal du oprette HDFS-snapshot:[gpadmin@phddas2-0 ~]$ hdfs dfs -createSnapshot /mydata backupsnap Created snapshot /mydata/.snapshot/backupsnap
Navnet på dette snapshot er backupsnap.
Du kan få adgang til den på HDFS-stien /mydata/.snapshot/backupsnap. Eventuelle ændringer af dine HDFS-filer efter dette snapshot afspejles ikke i den efterfølgende sikkerhedskopiering. Du kan sikkerhedskopiere snapshottet til PowerScale ved hjælp af følgende kommando:
[gpadmin@phddas2-0 ~]$ hadoop distcp -skipcrccheck -update /mydata/.snapshot/backupsnap hdfs://all-nc-s-hdfs/backup/mydata
Når sikkerhedskopieringskommandoen er færdig med at køre, kan du slette snapshottet. Dermed frigøres plads, der bruges til at opbevare ældre versioner af filer, der er blevet ændret siden snapshottet:
[gpadmin@phddas2-0 ~]$ hdfs dfs -deleteSnapshot /mydata backupsnap
BRUG AF PowerScale-SNAPSHOTS TIL DINE SIKKERHEDSKOPIERINGSMÅL
Uanset om du bruger snapshots til din sikkerhedskopieringskilde, kan det være en fordel at beholde flere snapshots af din sikkerhedskopieringsdestinationsmappe for at gendanne ældre versioner af filer.
Hvis du vil oprette snapshots på PowerScale, skal du have en SnapshotIQ-licens. Du kan oprette snapshots ved hjælp af webadministrationsgrænsefladen eller CLI. Hvis du vil oprette et enkelt PowerScale-snapshot manuelt med CLI, skal du sSH i en PowerScale-node og køre følgende: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
Du kan føje denne kommando til den sikkerhedskopieringsproces, der er beskrevet i afsnittet Planlægning af sikkerhedskopieringer nedenfor.
Du kan finde flere oplysninger om PowerScale OneFS-snapshots i PowerScale OneFS CLI-administrationsvejledningen til din version af OneFS: PowerScale OneFS informationshubs
SYNCIQ-REPLIKERING FOR FLERE PowerScale-KLYNGER
Når DistCp-sikkerhedskopieringen til PowerScale-klyngen er afsluttet, kan du bruge OneFS SyncIQ til at replikere snapshots på tværs af en WAN til andre PowerScale-klynger. Replikerede snapshots kan levere en alsidig og effektiv komponent i din strategi for genoprettelse efter nedbrud.
Figur 2: SynIQ-replikering for flere Isilon-klynger
HÅNDTERING AF SLETTEDE FILER
Som standard slettes filer, som slettes fra kildens Hadoop-klynge, ikke fra destinationens Hadoop-klynge. Hvis du har brug for denne adfærd, skal du føje argument -delete til kommandoen DistCp. Når du bruger denne kommando, anbefales det at bruge snapshots på sikkerhedskopieringsmålet for at gøre det muligt at gendanne slettede filer.
PLANLÆGNING AF SIKKERHEDSKOPIERINGER
Du kan automatisere og planlægge trinnene til sikkerhedskopiering af en Hadoop-klynge vha. forskellige metoder. Apache Ootid bruges ofte til at automatisere Hadoop-opgaver, og den understøtter direkte DistCp. CRON kan også bruges til at køre et Shell-script. For at automatisere kørsel af kommandoer i en SSH-session skal du aktivere SSH uden adgangskode. Den adgangskodefri SSH giver en CRON-bruger mulighed for at oprette forbindelse til din Hadoop-klient og din PowerScale-klynge (hvis du bruger SnapshotIQ).
Sikkerhedskopieringsdestinationsfilerne på PowerScale er tilgængelige fra Hadoop-programmer på samme måde som kildefilerne på grund af PowerScales understøttelse af HDFS. Du kan bruge dine sikkerhedskopieringsdata direkte uden først at gendanne dem til dit oprindelige Kilde-Hadoop-miljø. Denne funktion sparer analysetid. Hvis du f.eks. kører en MapReduce-kommando som denne:hadoop jar /usr/lib/gphd/hadoop-mapreduce/hadoop-mapreduce-examples.jar grep /mydata/mydataset1 output1 ABC
Du kan køre MapReduce-jobbet i sikkerhedskopieringsdatasættet på PowerScale ved hjælp af følgende kommando:hadoop jar /usr/lib/gphd/hadoop-mapreduce/hadoop-mapreduce-examples.jar grep hdfs://all-nc-s-hdfs/backup/ /mydata/mydataset1 output1 ABC
For at angive en fuldt kvalificeret Hadoop-sti i stedet for at bruge fs.defaultFS-parameteren skal du spørge din programudbyder for at få flere oplysninger. En PowerScale-klynge, der er designet til sikkerhedskopiering og arkivering i stedet for høj ydeevne, leverer sandsynligvis ikke den samme ydeevne som dit primære Hadoop-miljø. Test anbefales, eller kontakt Dell PowerScale for at få oplysninger om korrekt størrelse.
Isilon, PowerScale OneFS, Isilon with HDFS
20 Sep 2023
6
How To