How to configure a "null" Storage Unit for NetBackup 8.x, 9.x and 10.x Media servers.

Article: 100006382
Last Published: 2021-06-08
Ratings: 3 0
Product(s): NetBackup & Alta Data Protection

Problem

Prior to NetBackup 7.5 there was not a granular method to test a backup by sending data to a "null" Storage Unit (a virtual Storage Unit that doesn't actually store data).

For example, to rule out a performance issue on a backup where the Storage Unit (Tape or Disk) may be the cause of degraded performance, it would be useful to send the data to a Null Storage Unit where there are no i/o restrictions.

With the introduction of Null Storage Units in NetBackup 7.5, it is now possible to rule out (or prove) performance issues on destination Storage Units.

Note: An OST (OpenStorage Technology) license is required to create a null storage unit.
 

Combining this with "bpbkar -nocont" or using GEN_DATA (to allow bpbkar to generate the data sent), you can remove the potential performance impact from both client side reads of target backup information, and storage unit destination writes when troubleshooting a performance related issue.

Using the Null storage unit also allows the testing of data read speed from a client using a NetBackup policy and a regular backup initiated from the Master.  This can be helpful since running "bpbkar -nocont" requires root access to the client, which is sometimes difficult to obtain.

More informationhttps://www.veritas.com/docs/000013839

GEN_DATA articlehttps://www.veritas.com/docs/000091135

Note:
It is strongly recommended when using a Null Storage Unit, to copy the policy you wish to test to a new policy before making any changes to the storage unit. This prevents accidentally sending crucial backup data to the Null Storage Unit, where recovery would be impossible.  It is also recommended to delete any schedule windows for this test policy to keep scheduled backups from being submitted, unless running the backup on a schedule is needed.

Note:
The Null Storage Unit is only intended to be used for debug and once the first backup is submitted, backups can only be submitted to the Null Storage Unit for 18 hours.  When the first backup to this storage unit is submitted, a touch file called TF_NULL_DISK is created in /usr/openv/lib/ost-plugins or %install_path%\veritas\netbackup\bin\ost-plugins\ on Windows. Any backup submitted more than 18 hours after this first backup will fail with a Status 84.  This is to assure that the Null Storage Unit is only used for debug purposes.  If further debug is needed after the 18 hour window expires, just delete the touch file and the next backup submitted to the Null Storage Unit will start a new 18 hour window where further backups can be submitted.  Any active backup that was submitted within the 18 hour window and is still running when the window closes, will run to completion.

Note:
Catalog backups will fail with ' Status 11 ' when using a Null Storage Unit (below is from the BPDBM log).

<16> ImageCatalogBackup::executeQuery: change_file_modified_date(<Backup_C-TIME>, /usr/openv/netbackup/db/images/<Client_Name>/<C-Time>/<Catalog_Policy_Name>_<Backup_C-TIME>_FULL.f) failed (11)

Note:
Null Storage Units can not be used as a duplication destination storage unit in Storage Lifecycle Policies. The duplication will fail with a 191 and the detailed status will report

10/28/2011 09:25:59 - Critical bptm (pid=20271) image open failed: error 2060038: no such device
10/28/2011 09:25:59 - Error bpduplicate (pid=19361) write host kmsuse1.uklab.veritas.com: media write error (84)
10/28/2011 09:26:00 - Error bpduplicate (pid=19361) Duplicate of backupid kmsuse1_1319790102 failed, media write error (84).
10/28/2011 09:26:00 - Info bptm (pid=20271) EXITING with status 84 <----------
10/28/2011 09:26:00 - Error bpduplicate (pid=19361) Status = no images were successfully processed.

Note:
Adding the NOExpire touch file does not stop the Null Storage Unit from launching the image cleanup to cleanup its images.

NOExpire article: https://www.veritas.com/docs/000008058

Note:
The Null Storage Unit is a storage unit on a media server.  The client backed up by the test policy may or may not be on the same system.  If this is a network backup of a client on the network, the speeds reported will be both the time required to read the data from the disk on the client AND to send that data over the network to the media server.

Solution

Steps to create the Null Storage Unit, disk pool, and storage server by command line:

 1.  Copy the required plugin files on the media server

Unix: Copy these two files indicated below to /usr/openv/lib/ost-plugins/ on the media server.

/usr/openv/netbackup/bin/support/libstspinulldiskMT.so
/usr/openv/netbackup/bin/support/libstspinulldisk.so

Windows: Copy the one dll file indicated below to [Install Drive]:\Program Files\Veritas\NetBackup\bin\ost-plugins\ on the media server.

 [Install Drive]:\Program Files\Veritas\NetBackup\bin\support\libstspinulldisk.dll

2.  Ensure the NullDisk Plugin is available with the following command:

Unix:
/usr/openv/netbackup/bin/admincmd/bpstsinfo -pi

Windows:
[Install Drive]:\Program Files\Veritas\NetBackup\bin\admincmd\bpstsinfo -pi

Sample output:

Plugin Name: libstspinulldisk.dll
Prefix: nulldisk
Label: NullDisk Plugin
Build Version: 10
Build Version Minor: 1
Operating Version: 10
Vendor Version: See https://tinyurl.com/nulldisk

3.  Restart the NetBackup Remote Manager and Monitor Service on the media server:

Unix:
/usr/openv/netbackup/bin/nbrmms -terminate
/usr/openv/netbackup/bin/nbrmms


Windows:
Start > Run > Services.msc.
Right-click the NetBackup Remote Manager and Monitor Service, Select Restart.

4.  Configure the storage server:

Note:
For this example, the Storage Server will be entered as "nullstsv", however, the Storage Server name can be any unique string.  Whatever is used for the Storage Server name must then also be used in all future commands when specifying the Storage Server. 
Also, the Media Server name must match the Media Server name in EMM.

Unix:
/usr/openv/netbackup/bin/admincmd/nbdevconfig -creatests -storage_server nullstsv -stype nulldisk -st 9 -media_server media_server_name

Windows:
[Install Drive]:\Program Files\Veritas\NetBackup\bin\admincmd\nbdevconfig -creatests -storage_server nullstsv -stype nulldisk -st 9 -media_server media_server_name

Note: If you get the following error:
Failed to create storage server [server_name], cannot connect on socket.
Try restarting Netbackup services

 

5.  Add the storage server credentials:

Unix
/usr/openv/volmgr/bin/tpconfig -add -storage_server nullstsv -stype nulldisk -sts_user_id <username> -password <password>

Windows:
[Install Drive]:\ Program Files\Veritas\Volmgr\bin\tpconfig -add -storage_server nullstsv -stype nulldisk -sts_user_id <username> -password <password>

Note: The username and password may be an arbitrary user and password for the creation of the nulldisk Storage Server credentials.

6.  Preview the disk volumes, and add the disk volumes to temporary file called “list”:

Unix:
/usr/openv/netbackup/bin/admincmd/nbdevconfig -previewdv -stype nulldisk -storage_server nullstsv > list

Windows:
[Install Drive]:\Program Files\Veritas\NetBackup\bin\admincmd\nbdevconfig -previewdv -stype nulldisk -storage_server nullstsv > list

7.  Create an OpenStorage diskpool using the temporary file for the disk volumes:

Note:
For this example, the Disk Pool Name will be entered as "nullpool", however, the Disk Pool Name can be any unique string.  Whatever is used for the Disk Pool Name must then also be used in all future commands when specifying the Disk Pool. 

Unix:
/usr/openv/netbackup/bin/admincmd/nbdevconfig -createdp -dp nullpool -stype nulldisk -storage_server nullstsv -dvlist list

Windows:
[Install Drive]:\Program Files\Veritas\NetBackup\bin\admincmd\nbdevconfig -createdp -dp nullpool -stype nulldisk -storage_server nullstsv -dvlist list

8.  Add a storage unit:

Note:
For this example, the Storage Unit Label will be entered as "nullstu", however, the Storage Unit Label can be any unique string.  Whatever is used for the Storage Unit Label must then also be used in all future commands when specifying the Storage Unit.


Unix:
/usr/openv/netbackup/bin/admincmd/bpstuadd -label nullstu -dp nullpool -odo 1

Windows:
[Install Drive]:\Program Files\Veritas\NetBackup\bin\admincmd\bpstuadd -label nullstu -dp nullpool -odo 1

Steps to delete the null storage unit, disk pool and storage server by command line:

1.  Delete the storage unit:

Unix:
/usr/openv/netbackup/bin/admincmd/bpstudel -label nullstu

Windows:
[Install Drive]:\Program Files\Veritas\NetBackup\bin\admincmd\bpstudel -label nullstu

2.  Delete the disk pool:

Unix:
/usr/openv/netbackup/bin/admincmd/nbdevconfig -deletedp -stype nulldisk -dp nullpool

Windows:
[Install Drive]:\Program Files\Veritas\NetBackup\bin\admincmd\nbdevconfig -deletedp -stype nulldisk -dp nullpool

3.  Delete the OpenStorage credentials:

Unix:
/usr/openv/volmgr/bin/tpconfig -delete -storage_server nullstsv -stype nulldisk -sts_user_id root

Windows:
[Install Drive]:\ Program Files\Veritas\Volmgr\bin\tpconfig -delete -storage_server nullstsv -stype nulldisk -sts_user_id root

4. Delete the Storage Server:

Unix:
/usr/openv/netbackup/bin/admincmd/nbdevconfig -deletests -storage_server nullstsv -stype nulldisk

Windows:
[Install Drive]:\Program Files\Veritas\NetBackup\bin\admincmd\nbdevconfig -delete -storage_server nullstsv -stype nulldisk -sts_user_id root

Note: It is also good practice to remove the libraries libstspinulldiskMT.so & libstspinulldisk.so from /usr/openv/lib/ost-plugins/, or libstspinulldisk.dll from [Install Drive]:\Program Files\Veritas\NetBackup\bin\ost-plugins\ to avoid accidentally creating a Null storage unit when it's not needed.

Configuration via GUI

Note:
References to environmental names in this example are the same as those used in the command line example.  Any of them can also be changed as desired, but must be used consistently.

Click on Configure Disk Storage Servers

 

Click Next

 

Select OpenStorage then click Next

 

Add the Storage server name "nullstsv" and Storage Server Type "nulldisk". The Storage Server Type "nulldisk" must be typed into the box as it will NOT show up in the pull down box.
Select the Media server and enter credentials, then click Next

 

Review settings then click Next

 

Once credentials are successfully added click Next

 

We now come to the Disk Pool Configuration Wizard. Click Next

 

Click Next

 

Click Next

 

Select OpenStorage (nulldisk) then click Next

 

Select nullstsv then click Next

 

Tick null-lsu. Note the 2GB referenced is never reached because data is sent to a "black hole" - null. Click Next

 

Add the diskpool name as nullpool then click Next

 

Check summary then click Next

 

Click Next

 

Tick Create a storage unit that uses the disk pool and then click Next

 

Add the storage unit name, in this instance we have called it nullstu.
Optionally, select the media server you require to test on, or select "Use any available media server
Then click Next

 

Click Next

 

Your Null storage unit is now ready to use. When testing against a policy it is always recommended to copy the policy to a temporary new policy then change the storage unit to the nullstu for testing.

 

Deleting the NULL STU, Disk Pool and Storage Server from the GUI

Expand NetBackup Management and then expand Storage then select Storage Units.
Highlight the nullstu storage unit, right click then select Delete.
Confirmation box will ask you if you are sure. Select OK

 

Next expand Media and Device Management, expand Devices and click on Disk Pools.
Select the nullpool, right click and select Delete.
When the confirmation box appears select OK

 

Finally expand Media and Device Management then expand Credentials.
Click on Storage Servers and select the nullstsv.
Right click and select Delete Storage Servers.
Select OK when the confirmation box asks.

 

 

Was this content helpful?