Support for this configuration is deprecated and is currently provided for backwards compatibility only. Use high-availability PBA instead. The PBA task sequence dialogs do not support this option, therefore some scripting would be required to achieve the same functionality.
The Nomad PBA Task Sequence steps are not designed for use with offline USMT or WinPE.
The -NMDS_POLL command-line option for the NomadPackageLocator.exe tool cannot be used in WinPE.
The -NMDS_<command> command-line options for NomadBranch.exe have not been tested in WinPE so their behavior might be unpredictable in that environment.
The implementation of the secondary cache uses an optional third parameter available in the NMDS_POLL command:
<ignore_offer> is used to specify the name of a NMDS host that already has the user data cached. Thus, when
NMDS_POLL is run a second time with the same
<size> values as on the first call, it effectively allows a second NMDS host to offer its services as a cache. In this way user state can be saved to two caches, for increased resilience. On restore, the first cache that responds to the
NMDS_FIND request will be the one used.
A typical task sequence to use this feature looks something like this:
- Peer Backup Assistant: Provision Nomad PBA Data Store (which runs NomadPackageLocator.exe -NMDS_POLL,%COMPUTERNAME%,<cache_space_in_MB> behind the scenes)
- Capture User State (using USMT)
- Peer Backup Assistant: Close Nomad PBA Data Store
- Run Command Line action to execute a script that will extract the hostname of the NMDS host used for the first save and set an environment variable, e.g.
The value to be used can be extracted from the
OSDStateStorePathenvironment variable set by the "Provision" step in the first save.
OSDStateStorePathvalue is of the form "
PBAFirstHostshould be set to the
hostnamepart. See example scripts below.
- Run Command Line action to execute "
NomadPackageLocator.exe -NMDS_POLL,%COMPUTERNAME%,<cache_space_in_MB>,%PBAFirstHost%". This replaces the Peer Backup Assistant: Provision Nomad PBA Data Store step used in the First save.
Note that using
NomadBranch.exeadditionally sets key environment variables, specifically
- Capture User State (using USMT), again
- Peer Backup Assistant: Close Nomad PBA Data Store (again)
(After applying or refreshing O/S, restore user state in the usual PBA way)
- Peer Backup Assistant: Locate Existing Nomad PBA Data Store (One of the caches will be selected.)
- Restore User State (USMT)
- Peer Backup Assistant: Release Nomad PBA Data Store
NMDS_DELETEcall, invoked by the Release Nomad PBA Data Store action, will have any effect and it will delete the cache on only one host (the one that responded to the Locate Existing Nomad PBA Data Store request). The other cache will expire automatically after 7 days (default setting), but this may be a problem if space is tight on the Nomad cache hosts.
To get round the problem, append these actions to the task sequence above:
- Peer Backup Assistant: Locate Existing Nomad PBA Data Store (This will find the second cache, now that the first has been deleted.)
- Peer Backup Assistant: Release Nomad PBA Data Store (To delete the second cache.)
Here are two example scripts to implement PBA secondary backup data store: