Avamar - FLR - Linux FLR wget-scripts mislukken wanneer HTTP-proxy is geconfigureerd op virtuele machine.

Summary: Avamar - FLR - Kan bestanden niet herstellen via netwerk als gevolg van Linux-doel-VM met behulp van interne internetproxy voor "wget"-verkeer

This article applies to This article does not apply to This article is not tied to any specific product. Not all product versions are identified in this article.

Symptoms

In het Avamar FLR-herstellogboek zien we het volgende: 
avvmwfile Error <0000>: Failed to restore files via network, check proxy log for details
avvmwfile Error <0000>: assist_restore error. ret: 157
In de Avamar proxy FLR-logboeken:   /usr/local/avamaravamarclient/logs/VmwareFlr.log We zien dat het automatisch gegenereerde FLR-script "flrTBow8V" wordt uitgevoerd in het gastbesturingssysteem van virtuele machines.   Het script is echter niet geslaagd (Opmerking: alleen afsluitcode 0 geeft aan dat het gelukt is, elk ander nummer is een foutcode) De mislukte afsluitcode in dit logboek was 8. 
ExecuteProgram failed. script text:/bin/bash /root/flrTBow8V, Return: 0, script return code: 8
FLRBase:: ScriptUploadAndExecute failed

In het Avamar FLR-scriptlogboek zien we het volgende: /usr/local/avamaravamarclient/logs/flrTBow8V.err 
<DATE>  https://Avamar-proxy-IP/download/<uuid>
Resolving internetproxy.example.com (internetproxy.example.com)... 10.2.3.4 
Connecting to internetproxy.example.com (internetproxy.example.com )|10.2.3.4|:3128... connected.

WARNING: cannot verify 10.1.4.50's certificate, issued by ‘/C=US/ST=California/L=Irvine/O=Dell Technologies/OU=Dell EMC/CN=Administrator’:
  Self-signed certificate encountered.
    WARNING: certificate common name ‘Administrator’ doesn't match requested host name ‘10.1.4.50’.Proxy request sent, awaiting response...
  HTTP/1.1 500 Failed to exec CGI
  Connection: close
  X-Frame-Options: SAMEORIGIN
  X-Content-Type-Options: nosniff
  Strict-Transport-Security: max-age=31536000;includeSubDomains
  X-XSS-Protection: 1; mode=block
  Cache-Control: must-revalidate,no-cache,no-store
  Content-Type: text/html;charset=iso-8859-1
  Content-Length: 368
  Server: Jetty(9.4.19.v20190610)
<DATE> ERROR 500: Failed to exec CGI.

ecode: "8"

Cause

Dit is een omgevingsprobleem dat wordt veroorzaakt door een niet-standaard Linux-configuratie. 

In het uitvoerbestand van het FLR-script (flrTBow8V.err) kunnen we zien dat het verkeer door het internet van de http-proxy van de klant stroomt internetproxy.example.com

Probleem: Om veiligheidsredenen mag alleen de virtuele doelmachine bestanden downloaden voor deze specifieke FLR-taak/-script.  

De HTTP-PROXY zorgt ervoor dat het inkomende IP-adres NIET overeenkomt met het IP-adres van de doel-VM en activeert de HTTP-statuscode 500.   


Configuratie:  
  In het gastbesturingssysteem van de virtuele machine is een HTTP-proxy geconfigureerd in een wget-configuratiebestand ( ~/.wgetrc of /usr/local/etc/wgetrc).    

https_proxy  =  http://internetproxy.example.com:3128
 

Resolution

Oplossing: 

Om dit probleem op te lossen, moeten we ervoor zorgen dat het FLR-script GEEN http-proxy gebruikt door de specificatiesjabloon van het wget-script te wijzigen.  

     

Stappen:
1. SSH naar de Avamar Proxy
2. Bewerk het wget-sjabloonscript op de volgende locatie: 
/usr/local/avamarclient/bin/wget_linux_script.template
3.  Voeg de wget-opdrachtschakelaar "--no-proxy"

toeVoorbeeld van configuratie vóór wijziging:
#!/bin/bash
logfile=$0.err
url=https://%s/download
token=%s
files=(%s)
exit_code=0
for file in "${files[@]}";do
        IFS='","' read filepath dest  <<< "$file"
        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
        let exit_code=$exit_code+$?
        if Avamar_PlaceHolderFile=$filepath; then
           rm -f "$dest/$filepath"
        fi
done
# delete it self after finish execution
rm -f "$0"
echo "ecode: \"$exit_code\"" >> $logfile
exit $exit_code

Voorbeeld van configuratie NA wijziging:
#!/bin/bash
logfile=$0.err
url=https://%s/download
token=%s
files=(%s)
exit_code=0
for file in "${files[@]}";do
        IFS='","' read filepath dest  <<< "$file"
        wget "$url/$filepath" -N --no-proxy -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
        let exit_code=$exit_code+$?
        if Avamar_PlaceHolderFile=$filepath; then
           rm -f "$dest/$filepath"
        fi
done
# delete it self after finish execution
rm -f "$0"
echo "ecode: \"$exit_code\"" >> $logfile
exit $exit_code
4. Start de vmwareflr-webservice opnieuw op de proxy.   (of de proxy opnieuw opstarten)
192proxy:~ #  systemctl restart vmwareflr.service

Affected Products

Avamar

Products

Avamar Client for VMware
Article Properties
Article Number: 000183577
Article Type: Solution
Last Modified: 05 Sep 2021
Version:  5
Find answers to your questions from other Dell users
Support Services
Check if your device is covered by Support Services.