cancel
Showing results for 
Search instead for 
Did you mean: 

NBU6.0 - VSS/VSP method implementation - best practices? Let's start by the proper commands!

Alexandre_Rappo
Level 5
Hi Guys,
I just found a symantec supplement regarding VSP. Really clear and simple, but only for VSP. But if you carefully read the NBU commands, then you can configure the WOFB (Windows Open File Backup) by the command line, maybe a nice script...
 
bpclient -client <client_name> -update -WOFB_FIM <0 for VSP / 1 for VSS>
 
Remember that VSP is only recommended for win2k servers, while VSS is the recommended snapshot method for win2k3 servers.
 
Now the questions are around the parameters:
  1.  WOFB_usage       Individual OR Global Drive Snapshot   -  best practice?
  2. WOFB_error          abort on error OR disable snapshot and continue   -  best practice?

 

2 REPLIES 2

Alexandre_Rappo
Level 5

Ok, it works!!

A windows 2003 server (let's call it Hobbit_1) was configured without any WOFB method.
To confirm, 2 methods:
  1. check the file list details in any of its backup jobs ; it should be the drive letter only
  2. check host ppties > Master Server > Ckient Attributes > Clients list ; Hobbit_1 should not be listed or the WOFB tab should be greyed out ie unconfigured
To double check WOFB on the client:
I ran from the command line on the master server to check its WOFB config:
>bpclient -client Hobbit_1 -L
bpclient: no entity was found (227)
To implement WOFB on the client:
then I configure it to use WOFB with VSS:
bpclient -client Hobbit_1 -add -WOFB_enabled 1 -WOFB_FIM 1
To confirm WOFB change has been applied on Hobbit_1:
  1. do a test backup, the file list will be showing the VSS query BACKUP C:\ USING \\?\GLOBALROOT\Device\HarddiskVolumeShadowCopy8\ OPTIONS:ALT_PATH_PREFIX=C:\Program Files\VERITAS\NetBackup\temp\_vrts_frzn_img_9280,FITYPE=MIRROR,MNTPOINT=C:\,FSTYPE=NTFS                                 note the volumeshadowcopy string specific to VSS, while VSP will use a weird alphanumeric ID like 3cbd581a-66f9-4ac7-834d-d3333b457eaf
  2. find Hobbit_1 in check host ppties > Master Server > Client Attributes > Clients list > Hobbit_1 > WOFB tab

 

 I will create a script for all our windows clients, I'll update this thread when completed!

Cheers

sdo
Moderator
Moderator
Partner    VIP    Certified
A DOS script to report client attributes...
Code:
@echo offsetlocal enabledelayedexpansionset z_drive=%~d0set z_path=%~dp0set z_name=%~n0set z_file_act=!z_name!.actset z_file_cli=!z_name!.cliset z_file_csv=!z_name!.csvset z_file_lis=!z_name!.lisset z_file_log=!z_name!.logset z_file_pol=!z_name!.polset z_file_rep=!z_name!.repset z_file_tmp=!z_name!.tmpset z_scripts=!z_drive!\_Scripts\echo !time:~0,8!  Listing special client settings from master server...bpclient -All -L > "!z_file_cli!"echo !time:~0,8!  Listing clients from policies...bpplclients -allunique -l > "!z_file_pol!"call :process_actualif exist "!z_file_csv!" del "!z_file_csv!"if exist "!z_file_rep!" del "!z_file_rep!"echo Date:  !date! >> "!z_file_rep!"echo Time:  !time:~0,8! >> "!z_file_rep!"echo Node:  !computername! >> "!z_file_rep!"echo User:  !username! >> "!z_file_rep!"echo !time:~0,8!echo !time:~0,8!  Reporting master client properties...set z_cli_clients_deleted=0set z_cli_clients_found=0set z_cli_clients_reported=0set z_cli_clients_used=0set z_cli_clients_unused=0call :headercall :clear_clientfor /f "tokens=1,2,3,4,5,6,7,8,9,10,11" %%a in (!z_file_cli!) do (  if /i "%%a %%b"=="Client Name:" (    Call :report_client    Call :clear_client    set z_client=%%c  )  if /i "%%a"=="Hostname:"    set z_host=%%b  if /i "%%a %%b"=="IP Address:"   set z_ip=%%c  if /i "%%a %%b %%c %%d"=="Connect on non-reserved port:" set z_conn_on_non_res_port=%%e  if /i "%%a %%b %%c"=="No call-back connections:" set z_no_call_back_conn=%%d  if /i "%%a %%b"=="Dynamic Address:"   set z_dyn_addr=%%c  if /i "%%a %%b"=="Free Browse:"   set z_free_browse=%%c  if /i "%%a %%b"=="List Restore:"   set z_list_restore=%%c  if /i "%%a %%b %%c %%d"=="Max Jobs This Client:" set z_max_jobs=%%e  if /i "%%a %%b"=="WOFB Enabled:"   set z_wofb_enabled=%%c  if /i "%%a %%b"=="WOFB FIM:"    set z_wofb_fim=%%c  if /i "%%a %%b"=="WOFB Usage:"   set z_wofb_usage=%%c  if /i "%%a %%b %%c"=="WOFB Error Control:"  set z_wofb_err_ctrl=%%d)Call :report_clientCall :clear_clientREM cscript //nologo "!z_scripts!session\csv-2-xls.vbs" -centre -csv "!z_file_csv!" -filter -header -split 1echo !time:~0,8!echo !time:~0,8!  Clients found:     !z_cli_clients_found!echo !time:~0,8!  Clients reported:  !z_cli_clients_reported!echo !time:~0,8!  Clients used:      !z_cli_clients_used!echo !time:~0,8!  Clients unused:    !z_cli_clients_unused!echo !time:~0,8!  Clients deleted:   !z_cli_clients_deleted!:endecho+pauseexit /b:report_clientif "!z_client!"=="" goto :eofset /a z_cli_clients_found+=1 if exist "!z_file_tmp!" del "!z_file_tmp!"find /i "[client:!z_client!]" "!z_file_act!">"!z_file_tmp!" 2>NULif !errorlevel!==0 (  set z_used=yes  set /a z_cli_clients_used+=1  for /f "tokens=1,2 skip=2" %%a in (!z_file_tmp!) do (set z_platform=%%b)) else (  set z_used=NO  set /a z_cli_clients_unused+=1  set z_platform=.)if exist "!z_file_tmp!" del "!z_file_tmp!"if /i "!z_used!"=="NO" (  REM bpclient -client !z_client! -delete  REM set /a z_cli_clients_deleted+=1  REM (echo !time:~0,8!  !computername!  !username!  Deleted client "!z_client!" from master server...) >> "!z_file_log!"  REM goto :eof)set z_csv="!z_client!","!z_used!","!z_host!","!z_ip!","!z_conn_on_non_res_port!","!z_no_call_back_conn!","!z_dyn_addr!","!z_free_browse!","!z_list_restore!"set z_csv=!z_csv!,"!z_max_jobs:~0,3!","!z_platform!","!z_wofb_enabled!","!z_wofb_fim!","!z_wofb_usage:~0,5!","!z_wofb_err_ctrl:~0,7!"echo !z_csv! >> "!z_file_csv!"set z_client=!z_client!                 set z_client=!z_client:~0,14!set z_host=!z_host!              set z_host=!z_host:~0,14!set z_ip=!z_ip!               set z_ip=!z_ip:~0,15!set z_conn_on_non_res_port=!z_conn_on_non_res_port!              set z_conn_on_non_res_port=!z_conn_on_non_res_port:~0,14!set z_no_call_back_conn=!z_no_call_back_conn!              set z_no_call_back_conn=!z_no_call_back_conn:~0,14!set z_dyn_addr=!z_dyn_addr!       set z_dyn_addr=!z_dyn_addr:~0,7!set z_free_browse=!z_free_browse!          set z_free_browse=!z_free_browse:~0,10!set z_list_restore=!z_list_restore!           set z_list_restore=!z_list_restore:~0,11!set z_max_jobs=!z_max_jobs!       set z_max_jobs=!z_max_jobs:~0,7!set z_platform=!z_platform!        set z_platform=!z_platform:~0,8!set z_wofb_enabled=!z_wofb_enabled!    set z_wofb_enabled=!z_wofb_enabled:~0,4!set z_wofb_fim=!z_wofb_fim!   set z_wofb_fim=!z_wofb_fim:~0,3!set z_wofb_usage=!z_wofb_usage!     set z_wofb_usage=!z_wofb_usage:~0,5!set z_wofb_err_ctrl=!z_wofb_err_ctrl!       set z_wofb_err_ctrl=!z_wofb_err_ctrl:~0,7!set z_used=!z_used!    set z_used=!z_used:~0,4!set z_out=!z_client!  !z_used!  !z_host!  !z_ip!  !z_conn_on_non_res_port!  !z_no_call_back_conn!  !z_dyn_addr!  !z_free_browse!  !z_list_restore!set z_out=!z_out!  !z_max_jobs!  !z_platform!  !z_wofb_enabled!  !z_wofb_fim!  !z_wofb_usage!  !z_wofb_err_ctrl!echo !z_out!echo !z_out! >> "!z_file_rep!"set /a z_cli_clients_reported+=1goto :eof:headerecho "Client Name","Used","Hostname","IP Address","ConnNonResPort","NoCallBackConn","DynAddr","FreeBrowse","ListRestore","MaxJobs","Platform","WOFB","FIM","Usage","ErrCtrl">>"!z_file_csv!"set z_head1=Client Name     Used  Hostname        IP Address       ConnNonResPort  NoCallBackConn  DynAddr  FreeBrowse  ListRestore  MaxJobs  Platform  WOFB  FIM  Usage  ErrCtrlset z_head2=-----------     ----  --------        ----------       --------------  --------------  -------  ----------  -----------  -------  --------  ----  ---  -----  -------REM         XXXXXXXXXXXXXX  XXXX  XXXXXXXXXXXXXX  999.999.999.999  XXX             XXX             XXX      XXX         XXX          999      XXXXXXXX  XXX   XXX  XXXXX  XXXXXXXREM         12345678901234  1234  12345678901234  123456789012345  12345678901234  12345678901234  1234567  1234567890  12345678901  1234567  12345678  1234  123  12345  1234567REM         123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345REM                  1         2         3         4         5         6         7         8         9         0         1         2         3         4         5         6echo+echo !z_head1!echo !z_head2!echo+ >> "!z_file_rep!"echo !z_head1! >> "!z_file_rep!"echo !z_head2! >> "!z_file_rep!"goto :eof:clear_clientset z_client=set z_used=set z_host=set z_ip=set z_conn_on_non_res_port=set z_no_call_back_conn=set z_dyn_addr=set z_free_browse=set z_list_restore=set z_max_jobs=set z_platform=set z_wofb_enabled=set z_wofb_fim=set z_wofb_usage=set z_wofb_err_ctrl=goto :eof:process_actualecho !time:~0,8!echo !time:~0,8!  Extracting list of actual clients, and platforms, found in policies...if exist "!z_file_act!" del "!z_file_act!"set z_act_clients=0for /f "tokens=1,2,3" %%a in (!z_file_pol!) do (  set /a z_act_clients+=1  REM echo !time!   Client:  %%b  (echo [client:%%b] %%c)>>"!z_file_act!")echo !time:~0,8!  NetBackup has "!z_act_clients!" actual clients defined within policies...goto :eof