I want to understand how NBU Appliance web console works, as in what is running on an appliance(python or any other language) to access Netbackup data and then what is making it accessible over an https request. Does anyone has any idea what is the data flow and in what language?
Let me know if it's confusing question.
As far as I know this isn't documented for customers or partners, Veritas really want users to treat an Appliance as a "black-box". In the past it was possible (but very unsupported) to install Appliance ISOs under VMware which you may be able use to take a look around safely if you really want. Good luck, Andrew
PS: If you install on VMware, it needs a very big install disk (say 160 GB) but it can be thin provisioned. Not sure if this still works post N2.7 (NBU 7.7) which is based on RHEL. Also for me it wouldn't work on Hyper-V...
Hi @Sid1987 - to be honest it's nothing but pure conjecture from me - not based upon any solid fact. It seems reasonable that the developers would follow some form of client and server design. I would expect that the output is in some form of XML or json format - and yes perhaps is derived as the output from some regex expressions.
In the past I had noticed that a few NetBackup commands seem to have a hidden undocumented "-json" switch. But I'm not sure how many do actually have this switch. Maybe it is only a handful.
Thinking about the safest way to implement something like this is to tokenise the requests (but not the output). i.e. instead of sending the commands to be exceuted, to instead request that command number 1 be executed, or number 2, or 3, etc... e.g. command 0001 could be list all disk mount-points, command 0002 could be list all processes. This would be much safer than sending the actual command to be executed.
You may want to look at NSS 'NetBack Self Service', if you are an 'NBU Complete' customer you already have entitlement to use it. NSS can be used as a standalone portal or as you want to use it to communicate with NetBackup from another application. NSS has its own API, this is complete and fully published and available now! I published an article on this recently https://vox.veritas.com/t5/NetBackup-Self-Service/NSS-API-support-collateral/td-p/840282
The NSS API is a high level API, so all the hard work is done for you, you just need to supply machine name and maybe protection type, the proposed NBU API is very low level and would require a significant project team to get it working and build out all the workflows, all of this is already done in NSS.
More than 50% of customers who are using NSS are using it to interface between their console/portal/application to NetBackup.
If you don't have 'NBU Complete' you can download a trialware copy, I have published this article with details https://vox.veritas.com/t5/NetBackup-Self-Service/Downloading-a-trial-copy-of-NSS-NetBackup-Self-Ser...