Oplysninger om Avamar FLR:
Avamars gendannelse på filniveau er en agentfri gendannelsesløsning, som kan bruges til at gendanne en eller flere gæstefiler fra en virtuel maskines (VM) afbildningssikkerhedskopi. Den mekanisme, der bruges til at udføre gendannelsen på filniveau, er VMware-værktøjer og vSphere API-gæstehandlingsfunktioner. Afbildningssikkerhedskopien på den virtuelle maskine opretter forbindelse til den virtuelle disk (.vmdk) på Avamar-proxyen under gennemsynet. Når filerne er valgt til gendannelse, bliver de kopieret til filoverførselsfilen fra proxyen til destinations-VM'en.
Obligatoriske krav for FLR:
- Den virtuelle destinationsmaskine skal være tændt.
- Den virtuelle destinationsmaskine skal have VMware-værktøjer installeret, og tjenesten skal køre under gendannelseshandlinger.
- Avamar-administratoren eller Avamar-sikkerhedskopien/-gendannelseshandlingen/-brugeren skal have gyldige legitimationsoplysninger på destinationsgæsten (kræves af VMware-gæstehandlings-SDK), og disse legitimationsoplysninger skal indtastes i starten af handlingerne for gendannelse på filniveau.
- Destinationsgæstebrugeren skal have rettigheder til at skrive placering, ellers vil handlingen mislykkes. For den virtuelle Windows-maskine skal gendannelses-VM-brugeren også have rettigheder til at skrive uden UAC-elevation, og for virtuelle Linux-maskiner skal gendannelses-VM'en være i stand til at skrive uden sudo.
Valgfrie krav for FLR: Påkrævet for hurtigere HTTPS-overførselsmetode.
- Virtuelle destinationsmaskiner skal have TCP 443-adgang til proxyens virtuelle maskiner.
- På virtuelle Linux-maskiner skal der installeres et moderne wget-program internt i den virtuelle maskine inden gendannelseshandlingen.
Hvis driftskravene ikke er opfyldt, vises følgende advarsler, inden du indsender jobbet:
Hvis destinations-VM'en ikke kan oprette en HTTPS-forbindelse til proxyen:
Inde i proxyen: /usr/local/avamarclient/bin/logs/VSphereWebService.log, see wget non zero exit code
[VWS - DEBUG] 2020/02/24 15:56:20 TID=2403 MID=398040: sGuestExeFullFilename = /usr/bin/wget --no-check-certificate --spider -t 1 -T 10 https://182proxy.burlington.lab:443/test
[VWS - DEBUG] 2020/02/24 15:56:20 TID=2403 MID=398041: sUnicodeExeDir = /usr/bin
[VWS - DEBUG] 2020/02/24 15:56:20 TID=2403 MID=398042: sExeFullPath = /usr/bin/wget
[VWS - DEBUG] 2020/02/24 15:56:20 TID=2403 MID=398043: sParameters = --no-check-certificate --spider -t 1 -T 10 https://182proxy.burlington.lab:443/test
[VWS - FUNC] 2020/02/24 15:56:2 TID=3662 MID=254389: VirtualMachineWs::CheckProcessStatus ENTER
[VWS - DEBUG] 2020/02/24 15:56:2 TID=3662 MID=254390: ullPid = 3053
[VWS - WARN] 2020/02/24 15:56:2 TID=140664473914958 MID=254428: CheckProcessStatus Succeeded
[VWS - DEBUG] 2020/02/24 15:56:2 TID=3662 MID=254441: StartProgramInGuest Succeeded. Ret: 4
Eller
Linux uden wget:
Inde i proxyen: /usr/local/avamarclient/bin/logs/VSphereWebService.log, see:
[VWS - DEBUG] 2020/02/24 15:56:20 TID=2403 MID=398040: sGuestExeFullFilename = /usr/bin/wget --no-check-certificate --spider -t 1 -T 10 https://182proxy.burlington.lab:443/test
[VWS - DEBUG] 2020/02/24 15:56:20 TID=2403 MID=398041: sUnicodeExeDir = /usr/bin
[VWS - DEBUG] 2020/02/24 15:56:20 TID=2403 MID=398042: sExeFullPath = /usr/bin/wget
[VWS - DEBUG] 2020/02/24 15:56:20 TID=2403 MID=398043: sParameters = --no-check-certificate --spider -t 1 -T 10 https://182proxy.burlington.lab:443/test
[VWS - ERROR] 2020/02/24 15:56:20 TID=140363826202979 MID=398068: StartProgramInGuest Error: SOAP 1.1 fault: "":ServerFaultCode [no subcode]
"File /usr/bin/wget was not found"
Detail: <FileNotFoundFault xmlns="urn:vim25" xsi:type="FileNotFound"><file>/usr/bin/wget</file></FileNotFoundFault>
Eller
[VWS - DEBUG] 2020/02/24 15:34:22 TID=2397 MID=395783: StartProgramInGuest Succeeded. Ret: 1
Valgfri FLR-funktion: Restore Access Control List ( ACL)
Denne funktion er som standard ikke aktiveret.
Resultat:
Uden ACL-funktion (standard):
Alle gendannede filer fra funktionen til gendannelse på filniveau vil blive ejet af de VM-gæstelegitimationsoplysninger, brugeren angav under FLR-handlinger, og tidligere filtilladelser angives ikke.
Med ACL-funktion aktiveret:
Hvis brugeren ønsker, at de gendannede filer skal have den oprindelige oprettelses filejerskab og -tilladelser,
skal denne valgfri funktion aktiveres.
Resultat:
Under gendannelseshandlinger vil der blive oprettet nye filer som FLR-VM-brugerne, men ved afslutningen af en gendannelse vil ACL-arbejdsprocessen køre og tilbageføre ejerskabet og filtilladelserne til den oprindelige tilstand.
Inde i proxyen: /usr/local/avamarclient/bin/logs/VSphereWebService.log, see:
[VWS - FUNC] 2020/03/03 03:42:29 TID=140664473914958 MID=254066: VirtualMachineWs::ExecuteRestoreAcl ENTER
[VWS - FUNC] 2020/03/03 03:42:29 TID=140664473914958 MID=254067: VirtualMachineWs::ExecuteRestoreAcl RestoreAcl Input file created
[VWS - FUNC] 2020/03/03 03:42:29 TID=140664473914958 MID=254068: VirtualMachineWs::ExecuteRestoreAcl Input File transfer /usr/local/avamarclient/bin/7fc01f28-c871-4835-948d-2d8a14bd1d8b.xml to /tmp/7fc01f28-c871-4835-948d-2d8a14bd1d8b.xml
[VWS - FUNC] 2020/03/03 03:42:32 TID=140664473914958 MID=254140: VirtualMachineWs::ExecuteRestoreAcl Exe File transfer /usr/local/avamarclient/bin/RestoreAcl to /tmp/7fc01f28-c871-4835-948d-2d8a14bd1d8b.exe
[VWS - DEBUG] 2020/03/03 03:42:40 TID=3662 MID=254349: sGuestExeFullFilename = /tmp/7fc01f28-c871-4835-948d-2d8a14bd1d8b.exe /tmp/7fc01f28-c871-4835-948d-2d8a14bd1d8b.xml 0001
[VWS - FUNC] 2020/03/03 03:42:42 TID=3662 MID=254389: VirtualMachineWs::CheckProcessStatus ENTER
[VWS - DEBUG] 2020/03/03 03:42:42 TID=3662 MID=254390: ullPid = 3053
[VWS - WARN] 2020/03/03 03:42:47 TID=140664473914958 MID=254428: CheckProcessStatus Succeeded
[VWS - DEBUG] 2020/03/03 03:42:47 TID=3662 MID=254441: StartProgramInGuest Succeeded. Ret: 0
[VWS - FUNC] 2020/03/03 03:42:47 TID=140664473914958 MID=254519: VirtualMachineWs::ExecuteRestoreAcl LEAVE
I nogle Linux-distributioner som f.eks. Ubuntu eller Photon OS er OS-rodbrugere som standard ikke angivet eller konfigureret. I stedet bruger Linux-administratorer sudo-kommandoen til at køre elevationshandlinger.
Men på grund af VMware-værktøjer og VMware SDK er det ved de fleste handlinger (VM_LoginInGuest, CopyFileFromHostToGuest og ListFilesInGuest) ikke muligt for VMware-værktøjerne at udføre sudo-kommandoen.
Når gendannelseshandlingerne udføres med en normal bruger, kan handlingen mislykkes på grund af utilstrækkelige destinationsgæsteprivilegier.
I miljøer, hvor Linux-rodbrugeren er deaktiveret, ikke er konfigureret eller ikke kan deles på grund af sikkerhedshensyn, bør du overveje følgende løsningstrin:
Valgmulighed 1. Gendan til alternativ placering som ikke-rodbruger.
Eksempel:
Kildefil: /root/test (begrænset mappe/fil)
Destinationsfil: /home/flruser/ (placering uden begrænsninger)
VM-gæsteoprettelser: "flruser"
Resultat:
Under FLR-gennemsyn oprettes forbindelse fra de virtuelle diske til Avamar-proxyen, og de vises i brugergrænsefladen. Dette omfatter alle mapper og filer. Gennemse mappen /root, vælg file1.txt, og vælg derefter "
restore everything to a different location" og naviger til eller indtast /home/flruser/ som
Absolution Destination.
Resultat:
Filen root/test vil blive gendannet til /home/flruser/test
Bemærk, at filen vil have FLR-gæstebrugertilladelse.
Valgmulighed 2. Gendan til alternativ placering med indstillingen Restore ACL ved hjælp af sudo-funktionen.
I Avamar 18.2 skal du installere proxy-hotfix 318791 (eller nyere)
I Avamar 19.2 skal du installere proxy-hotfix 318791 (eller nyere)
Disse hotfixes tilføjer en ny "
enablesudouserrestore"-funktion, der som standard er deaktiveret.
Instruktion til aktivering af sudo-funktion:
På en Avamar-proxy:
- Installer ovenstående hotfix på proxyen
- Rediger /usr/local/avamarclient/bin/config.xml, tilføj/rediger linjen (<enablesudouserrestore>1</enablesudouserrestore) i filen
- Genstart FLR med kommandoen: service vmwareflr restart
På alle virtuelle Linux-maskiner, hvor FLR-funktionen vil være aktiveret:
- Opret dedikeret FLR-bruger: example flruser. For ekstra sikkerhed kan shell deaktiveres for denne konto
- Kopiér den binære fil /usr/local/avamarclient/bin/RestoreAcl fra Avamar-proxyen til destinations-VM vha. den faste placering /usr/bin/RestoreACL, og angiv tilladelsen til 755 ved hjælp af chmod
eksempel:
linux-da91:~ # ls -l /usr/bin/RestoreAcl
-rwxr-xr-x 1 root root 148016 Feb 13 17:48 /usr/bin/RestoreAcl
- Rediger /etc/sudoers for at give FLR-brugeren fra trin 1 tilladelse til at udføre den binære fil RestoreACL uden adgangskode.
eksempel
flruser ALL=(ALL) NOPASSWD: /usr/bin/RestoreAcl
Bemærk: Hvis indstillingen sudoers requiretty er aktiveret (linjen "Defaults requiretty" findes i filen), skal vi også bruge denne linje.
Defaults!/usr/bin/RestoreAcl !requiretty
Valgmulighed 3: Gendan til oprindelig placering ved hjælp af sudo wget-metoden med ACL.
Bemærk:
- Denne indstilling er kun tilgængelig, når det valgfrie netværks-HTTPS er tilgængeligt, og når gendannelsen har >5 MB eller 10 filer valgt.
- Brug af Avamar GUI til at gennemse live-destinationsplaceringer for VM med begrænset mappeplacering kan mislykkes, men direkte indtastning af "Absolution Destination" vil stadig fungere.
- Udfør trinnene i valgmulighed 2 på proxyen for at aktivere ACL Restore.
- På Avamar-proxyen skal du redigere /usr/local/avamarclient/bin/wget_linux_script.template
Før:
wget "$url/$filepath" -N -nH -x -P "$dest" --no-check-certificate -S --restrict-file-names=nocontrol --no-parent --tries 5 --header="Authorization:$token" --cut-dirs=2 --content-disposition 2>> $logfile
Efter:
sudo wget "$url/$filepath" -N -nH -x -P "$dest" --no-check-certificate -S --restrict-file-names=nocontrol --no-parent --tries 5 --header="Authorization:$token" --cut-dirs=2 --content-disposition 2>> $logfile
- Genstart FLR med kommandoen: service vmwareflr restart
- På alle virtuelle Linux-maskiner, hvor FLR-gendannelse til den oprindelige placering vil blive brugt, skal du redigere /etc/sudoers for at give FLR-brugeren fra trin 1 tilladelse til at udføre den binære fil wget uden adgangskode.
Eksempel:
flruser ALL=(ALL) NOPASSWD: /usr/bin/RestoreAcl
flruser ALL=(ALL) NOPASSWD: /usr/bin/wget
Bemærk: Hvis indstillingen sudoers requiretty er aktiveret (linjen "Defaults requiretty" findes i filen), skal vi også bruge disse linjer:
Defaults!/usr/bin/RestoreAcl !requiretty
Defaults!/usr/bin/wget !requiretty