{"id":5636,"date":"2015-10-02T07:11:32","date_gmt":"2015-10-01T21:11:32","guid":{"rendered":"http:\/\/nsrd.info\/blog\/?p=5636"},"modified":"2018-12-11T12:02:37","modified_gmt":"2018-12-11T02:02:37","slug":"networker-9-the-future-of-backup","status":"publish","type":"post","link":"https:\/\/nsrd.info\/blog\/2015\/10\/02\/networker-9-the-future-of-backup\/","title":{"rendered":"NetWorker 9: The future of backup"},"content":{"rendered":"<h2>Introduction<\/h2>\n<p>When NetWorker 8 was released I said at the time it represented the biggest consolidated set of changes to&nbsp;NetWorker in the&nbsp;all the years I&#8217;d been working with it. It represented a radical overhaul&nbsp;and&nbsp;established the groundwork for further&nbsp;significant changes with NetWorker 8.1 and NetWorker 8.2.<\/p>\n<figure id=\"attachment_5637\" aria-describedby=\"caption-attachment-5637\" style=\"width: 700px\" class=\"wp-caption aligncenter\"><a href=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2015\/07\/bigStock-Time-Warp.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-5637\" src=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2015\/07\/bigStock-Time-Warp.jpg\" alt=\"Into the Future\" width=\"700\" height=\"447\" srcset=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2015\/07\/bigStock-Time-Warp.jpg 900w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2015\/07\/bigStock-Time-Warp-300x192.jpg 300w\" sizes=\"auto, (max-width: 700px) 100vw, 700px\" \/><\/a><figcaption id=\"caption-attachment-5637\" class=\"wp-caption-text\">NetWorker 9 &#8211; Leaping Into the Future<\/figcaption><\/figure>\n<p>NetWorker 9 is <em>not<\/em> a similarly big set of changes:&nbsp;it&#8217;s a <em>bigger<\/em>&nbsp;set of changes.<\/p>\n<p>There&#8217;s a good reason why it&#8217;s NetWorker&nbsp;<em>9<\/em>. This year we celebrated the 25th birthday of NetWorker, and NetWorker has done&nbsp;an excellent job protecting data in those 25 years, but&nbsp;with the changing datacentre and changing IT environment, it was time for&nbsp;NetWorker to change again.<\/p>\n<figure id=\"attachment_5658\" aria-describedby=\"caption-attachment-5658\" style=\"width: 622px\" class=\"wp-caption aligncenter\"><a href=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2015\/09\/01-NW9-Launch-Screen.png\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-5658 size-full\" src=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2015\/09\/01-NW9-Launch-Screen.png\" alt=\"01 - NW9 Launch Screen\" width=\"622\" height=\"415\" srcset=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2015\/09\/01-NW9-Launch-Screen.png 622w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2015\/09\/01-NW9-Launch-Screen-300x200.png 300w\" sizes=\"auto, (max-width: 622px) 100vw, 622px\" \/><\/a><figcaption id=\"caption-attachment-5658\" class=\"wp-caption-text\">NetWorker 9 NMC Splash Screen<\/figcaption><\/figure>\n<p>&nbsp;<\/p>\n<figure id=\"attachment_5660\" aria-describedby=\"caption-attachment-5660\" style=\"width: 480px\" class=\"wp-caption aligncenter\"><a href=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2015\/09\/02-NW9-NMC-Login.png\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-5660 size-full\" src=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2015\/09\/02-NW9-NMC-Login.png\" alt=\"Networker 9 NMC Login\" width=\"480\" height=\"472\" srcset=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2015\/09\/02-NW9-NMC-Login.png 480w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2015\/09\/02-NW9-NMC-Login-300x295.png 300w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2015\/09\/02-NW9-NMC-Login-24x24.png 24w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2015\/09\/02-NW9-NMC-Login-36x36.png 36w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2015\/09\/02-NW9-NMC-Login-48x48.png 48w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2015\/09\/02-NW9-NMC-Login-64x64.png 64w\" sizes=\"auto, (max-width: 480px) 100vw, 480px\" \/><\/a><figcaption id=\"caption-attachment-5660\" class=\"wp-caption-text\">NetWorker 9 NMC Login<\/figcaption><\/figure>\n<p>The changes are more than cosmetic, of course. (Much, much more.) A while ago I posted of the need for&nbsp;an&nbsp;evolved, modern&nbsp;approach to data protection activities, that being&nbsp;the orientation of&nbsp;said policies and processes around <a href=\"https:\/\/nsrd.info\/blog\/2015\/03\/16\/service-catalogues-and-backups\/\" target=\"_blank\">service catalogues<\/a>.&nbsp;This is something I&#8217;ve advocated for years, but it was also something I&nbsp;deliberately hinted at with a view towards what was coming with NetWorker 9.<\/p>\n<p>The way in which we&#8217;ve configured backups in NetWorker for&nbsp;the last couple of decades has been much the same.&nbsp;When I started using&nbsp;NetWorker in 1996, it was by configuring groups,&nbsp;retention policies, schedules and&nbsp;clients. That&#8217;s changing.<\/p>\n<h2>A bright new world \u2013 Policies<\/h2>\n<p>NetWorker 9&nbsp;represents a&nbsp;move&nbsp;towards a simpler, more containerised approach to configuration, with an emphasis on the service catalogue approach \u2013 and here&#8217;s what it looks like:<\/p>\n<figure id=\"attachment_5673\" aria-describedby=\"caption-attachment-5673\" style=\"width: 695px\" class=\"wp-caption aligncenter\"><a href=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2015\/09\/NetWorker-9-Datazone.png\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-5673 size-large\" src=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2015\/09\/NetWorker-9-Datazone-1024x544.png\" alt=\"NetWorker 9 Datazone\" width=\"695\" height=\"369\" srcset=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2015\/09\/NetWorker-9-Datazone-1024x544.png 1024w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2015\/09\/NetWorker-9-Datazone-300x159.png 300w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2015\/09\/NetWorker-9-Datazone-900x478.png 900w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2015\/09\/NetWorker-9-Datazone.png 1972w\" sizes=\"auto, (max-width: 695px) 100vw, 695px\" \/><\/a><figcaption id=\"caption-attachment-5673\" class=\"wp-caption-text\">NetWorker 9 Configuration Engine<\/figcaption><\/figure>\n<p>The changes in NetWorker 9 are sweeping \u2013&nbsp;classic configuration components such as savegroups, scheduled&nbsp;staging and scheduled cloning are being replaced with a new policy engine that borrows much from the&nbsp;virtual machine protection engine introduced in NetWorker 8.1. This simultaneously makes it&nbsp;<em>easier<\/em>&nbsp;and <em>faster<\/em> to maintain&nbsp;data protection configurations,&nbsp;<em>and<\/em> develop more complex data protection configurations for the modern business.&nbsp;The policy engine is a&nbsp;containerised configuration&nbsp;system that makes it straightforward to&nbsp;identify and modify&nbsp;components of NetWorker configuration, and even have parts of the configuration dynamically adjust as required.<\/p>\n<p>The core configuration process now in NetWorker 9 consists of:<\/p>\n<ul>\n<li>A policy, which is a container for workflows<\/li>\n<li>One or more&nbsp;workflows, which have:\n<ul>\n<li>A&nbsp;set of actions<em> and<\/em><\/li>\n<li>A list of&nbsp;data sources&nbsp;to run those actions against<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<p>If you&#8217;re upgrading NetWorker from an earlier version, your existing NetWorker configuration will be migrated&nbsp;for you into the new policy engine configuration. I&#8217;ll get to&nbsp;that in a little while.&nbsp;Before that though, we need to talk more about the policy engine.<\/p>\n<p>Regardless of whether you&#8217;re setting up a brand new NetWorker server&nbsp;<em>or<\/em> upgrading an existing NetWorker server, you&#8217;ll get 5 default policies created for you:<\/p>\n<ul>\n<li>Server Protection<\/li>\n<li>Bronze<\/li>\n<li>Silver<\/li>\n<li>Gold<\/li>\n<li>Platinum<\/li>\n<\/ul>\n<p>Each of these policies do&nbsp;distinctly different things. (If you&#8217;re migrating, you&#8217;ll get some additional policies. More of that in a while.)<\/p>\n<figure id=\"attachment_5674\" aria-describedby=\"caption-attachment-5674\" style=\"width: 695px\" class=\"wp-caption aligncenter\"><a href=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2015\/09\/10-NW9-Protection-Policy-with-2-workflows.png\"><img loading=\"lazy\" decoding=\"async\" class=\"size-large wp-image-5674\" src=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2015\/09\/10-NW9-Protection-Policy-with-2-workflows-1024x467.png\" alt=\"NW9 Protection - Policy with 2 workflows\" width=\"695\" height=\"317\" srcset=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2015\/09\/10-NW9-Protection-Policy-with-2-workflows-1024x467.png 1024w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2015\/09\/10-NW9-Protection-Policy-with-2-workflows-300x137.png 300w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2015\/09\/10-NW9-Protection-Policy-with-2-workflows-900x411.png 900w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2015\/09\/10-NW9-Protection-Policy-with-2-workflows.png 1196w\" sizes=\"auto, (max-width: 695px) 100vw, 695px\" \/><\/a><figcaption id=\"caption-attachment-5674\" class=\"wp-caption-text\">NetWorker 9 Protection Window<\/figcaption><\/figure>\n<p>In this case, the server protection policy consists of two workflows:<\/p>\n<ul>\n<li>NMC server backup \u2013 Performs a backup of the NetWorker&nbsp;management console&nbsp;database<\/li>\n<li>Server backup \u2013 Performs a bootstrap backup and a&nbsp;media database expiration<\/li>\n<\/ul>\n<p>You can see straight away&nbsp;that&#8217;s two entirely different things being done within the same policy. In&nbsp;the world of NetWorker 8.x and lower, each&nbsp;Group was&nbsp;effectively an atomic component that did only one particular thing.&nbsp;With&nbsp;policies, you&#8217;ve got a container that encapsulates multiple logically similar activities. For instance, let&#8217;s look at the difference between the default&nbsp;<em>Bronze<\/em> policy and the default&nbsp;<em>Silver<\/em> policy:<\/p>\n<figure id=\"attachment_5681\" aria-describedby=\"caption-attachment-5681\" style=\"width: 838px\" class=\"wp-caption aligncenter\"><a href=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2015\/09\/bronze-policy.png\"><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-5681\" src=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2015\/09\/bronze-policy.png\" alt=\"NetWorker 9 Bronze Policy\" width=\"838\" height=\"450\" srcset=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2015\/09\/bronze-policy.png 838w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2015\/09\/bronze-policy-300x161.png 300w\" sizes=\"auto, (max-width: 838px) 100vw, 838px\" \/><\/a><figcaption id=\"caption-attachment-5681\" class=\"wp-caption-text\">NetWorker 9 Bronze Policy<\/figcaption><\/figure>\n<p>The Bronze policy has two workflows \u2013 one for Applications, and one for Filesystem backups. Each workflow does&nbsp;a backup to the Default pool (which of course you can can change), and that&#8217;s it. By comparison, the Silver policy looks like the following:<\/p>\n<figure id=\"attachment_5682\" aria-describedby=\"caption-attachment-5682\" style=\"width: 817px\" class=\"wp-caption aligncenter\"><a href=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2015\/09\/silver-policy.png\"><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-5682\" src=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2015\/09\/silver-policy.png\" alt=\"NetWorker 9 Silver Policy\" width=\"817\" height=\"403\" srcset=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2015\/09\/silver-policy.png 817w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2015\/09\/silver-policy-300x148.png 300w\" sizes=\"auto, (max-width: 817px) 100vw, 817px\" \/><\/a><figcaption id=\"caption-attachment-5682\" class=\"wp-caption-text\">NetWorker 9 Silver Policy<\/figcaption><\/figure>\n<p>You can see the&nbsp;difference immediately \u2013 a Silver policy is about backing up,&nbsp;<em>then<\/em> cloning.&nbsp;The policy engine is geared very much towards a service catalogue design \u2013 setup a small number of policies with the required workflows and consolidate your configuration accordingly.<\/p>\n<p>Oh \u2013 and here&#8217;s a cool thing about the&nbsp;visual policy engine \u2013 right clicking within the visualisation of the policy and changing settings, such as:<\/p>\n<figure id=\"attachment_5704\" aria-describedby=\"caption-attachment-5704\" style=\"width: 767px\" class=\"wp-caption aligncenter\"><a href=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2015\/10\/nw9-right-click-visual-policy.png\"><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-5704\" src=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2015\/10\/nw9-right-click-visual-policy.png\" alt=\"NetWorker 9 Right Clicking in Visual Policy\" width=\"767\" height=\"399\" srcset=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2015\/10\/nw9-right-click-visual-policy.png 767w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2015\/10\/nw9-right-click-visual-policy-300x156.png 300w\" sizes=\"auto, (max-width: 767px) 100vw, 767px\" \/><\/a><figcaption id=\"caption-attachment-5704\" class=\"wp-caption-text\">NetWorker 9 Right Clicking in Visual Policy<\/figcaption><\/figure>\n<p>The policy engine is&nbsp;<em>not<\/em> a like-for-like translation&nbsp;from&nbsp;older versions&nbsp;of NetWorker configuration (though your existing configuration&nbsp;<em>is<\/em> migrated). For instance, here&#8217;s an &#8220;Emerald&#8221; policy I created on my lab server:<\/p>\n<figure id=\"attachment_5685\" aria-describedby=\"caption-attachment-5685\" style=\"width: 930px\" class=\"wp-caption aligncenter\"><a href=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2015\/09\/emerald-policy.png\"><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-5685\" src=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2015\/09\/emerald-policy.png\" alt=\"Sample policy with advanced cloning\" width=\"930\" height=\"411\" srcset=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2015\/09\/emerald-policy.png 930w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2015\/09\/emerald-policy-300x133.png 300w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2015\/09\/emerald-policy-900x398.png 900w\" sizes=\"auto, (max-width: 930px) 100vw, 930px\" \/><\/a><figcaption id=\"caption-attachment-5685\" class=\"wp-caption-text\">Sample policy with advanced cloning<\/figcaption><\/figure>\n<p>That policy&nbsp;backs up to the Daily pool and then does something new for NetWorker \u2013 clones&nbsp;<em>simultaneously<\/em> to two different pools \u2013 &#8220;Site-A Clone&#8221; and &#8220;Site-B Clone&#8221;. There&#8217;s also something different about the&nbsp;selection process for&nbsp;<em>what<\/em> gets backed up.&nbsp;The group here is&#8230;<\/p>\n<p style=\"padding-left: 30px;\"><strong>&#8230;wait, I need to explain&nbsp;Groups in NetWorker 9<\/strong>. Don&#8217;t think they&#8217;re&nbsp;like the old NetWorker groups. A group in NetWorker 9 is&nbsp;<em>simply<\/em> a selection of data sources. That could be a collection&nbsp;of clients, a collection of virtual machines, a collection of NAS systems or a collection of savesets (for&nbsp;cloning\/staging).&nbsp;That&#8217;s it though: groups don&#8217;t start backups,&nbsp;control cloning, etc.<\/p>\n<p>&#8230;the group here is a&nbsp;<em>dynamic<\/em> group.&nbsp;This is a new option for traditional clients. Rather than being an explicit list of clients, a&nbsp;<em>dynamic<\/em> group is assembled at the time the workflow is executed based on a list of tags defined in the group list.&nbsp;Any client with a matching tag is automatically included in the backup process. This allows for hosts to be moved easily between different policies and workflows through&nbsp;just by changing the tags associated with it. (Alternatively, it might be configured as automatically selecting&nbsp;<em>every<\/em> client.)<\/p>\n<figure id=\"attachment_5686\" aria-describedby=\"caption-attachment-5686\" style=\"width: 960px\" class=\"wp-caption aligncenter\"><a href=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2015\/09\/dynamic-group.png\"><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-5686\" src=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2015\/09\/dynamic-group.png\" alt=\"NetWorker 9 Dynamic Groups\" width=\"960\" height=\"307\" srcset=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2015\/09\/dynamic-group.png 960w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2015\/09\/dynamic-group-300x96.png 300w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2015\/09\/dynamic-group-900x288.png 900w\" sizes=\"auto, (max-width: 960px) 100vw, 960px\" \/><\/a><figcaption id=\"caption-attachment-5686\" class=\"wp-caption-text\">NetWorker 9 Dynamic Groups<\/figcaption><\/figure>\n<p>There&#8217;s a lot more to the policy engine than just what I&#8217;ve covered above, but there&#8217;s also a lot more I need&nbsp;to&nbsp;cover, so I&#8217;ll stop for now and come back to&nbsp;the new policy engine in more detail in a&nbsp;future blog post.<\/p>\n<h3>Policy Migration<\/h3>\n<p>Actually, there&#8217;s one other thing I&#8217;ll mention about policies before I continue, and that&#8217;s the policy migration process.&nbsp;When you upgrade a NetWorker server to NetWorker 9, your existing&nbsp;configuration is migrated (and as you might imagine this migration process is something that&#8217;s received a lot of attention and testing). For example, a&nbsp;&#8220;classic&#8221; NetWorker environment that consists of a&nbsp;raft of groups. On migration, each&nbsp;group is converted into&nbsp;a workflow of&nbsp;the same name and placed under a new policy called <em>Backup<\/em>. So a basic group list of say, &#8220;Daily Dev Servers&#8221;, &#8220;Daily Filesystem&#8221; and &#8220;Monthly Filesystem&#8221; will get converted accordingly. Here&#8217;s what the group list looks like under v8 (with the&nbsp;default&nbsp;<em>Default<\/em> group):<\/p>\n<figure id=\"attachment_5690\" aria-describedby=\"caption-attachment-5690\" style=\"width: 662px\" class=\"wp-caption aligncenter\"><a href=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2015\/09\/nw8-Group-List.png\"><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-5690\" src=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2015\/09\/nw8-Group-List.png\" alt=\"NetWorker 8 Group List\" width=\"662\" height=\"139\" srcset=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2015\/09\/nw8-Group-List.png 662w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2015\/09\/nw8-Group-List-300x63.png 300w\" sizes=\"auto, (max-width: 662px) 100vw, 662px\" \/><\/a><figcaption id=\"caption-attachment-5690\" class=\"wp-caption-text\">NetWorker 8 Group List<\/figcaption><\/figure>\n<p>Under version 9, this becomes&nbsp;the following policy and workflows:<\/p>\n<figure id=\"attachment_5691\" aria-describedby=\"caption-attachment-5691\" style=\"width: 201px\" class=\"wp-caption aligncenter\"><a href=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2015\/09\/nw9-Converted-Policy.png\"><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-5691\" src=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2015\/09\/nw9-Converted-Policy.png\" alt=\"NetWorker 9 Converted Policy\" width=\"201\" height=\"365\" srcset=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2015\/09\/nw9-Converted-Policy.png 201w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2015\/09\/nw9-Converted-Policy-165x300.png 165w\" sizes=\"auto, (max-width: 201px) 100vw, 201px\" \/><\/a><figcaption id=\"caption-attachment-5691\" class=\"wp-caption-text\">NetWorker 9 Converted Policy<\/figcaption><\/figure>\n<p>The workflow visualisation for&nbsp;the&nbsp;groups above converted into policy format is:<\/p>\n<figure id=\"attachment_5692\" aria-describedby=\"caption-attachment-5692\" style=\"width: 869px\" class=\"wp-caption aligncenter\"><a href=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2015\/09\/nw9-Converted-Policy-Workflow-Visualisation.png\"><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-5692\" src=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2015\/09\/nw9-Converted-Policy-Workflow-Visualisation.png\" alt=\"NetWorker 9 Converted Policy Workflow Visualisation\" width=\"869\" height=\"461\" srcset=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2015\/09\/nw9-Converted-Policy-Workflow-Visualisation.png 869w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2015\/09\/nw9-Converted-Policy-Workflow-Visualisation-300x159.png 300w\" sizes=\"auto, (max-width: 869px) 100vw, 869px\" \/><\/a><figcaption id=\"caption-attachment-5692\" class=\"wp-caption-text\">NetWorker 9 Converted Policy Workflow Visualisation<\/figcaption><\/figure>\n<p>(By the way, that &#8220;Monthly Filesystem&#8221; workflow cloning to the &#8220;Default Clone&#8221; pool&nbsp;was just a lazy error on my part while setting up a test server &#8211; not an error.)<\/p>\n<p>I know lots of people&nbsp;tested some&nbsp;fairly hairy&nbsp;configuration migrations.&nbsp;If I recall correctly the biggest configuration I tested had over&nbsp;1000 clients defined and around 300 groups, schedules, etc., associated with those clients.&nbsp;<em>And<\/em> I&nbsp;did a whole bunch of&nbsp;shortcuts and tricks&nbsp;in schedules&nbsp;<em>and<\/em> they converted successfully.<\/p>\n<h2>The back-end changes<\/h2>\n<p>I&#8217;ll undoubtedly do some additional&nbsp;blog articles about the NetWorker 9 policy engine, but it&#8217;s time to move on to other topics and other changes within NetWorker. I&#8217;ll start with some back-end changes to the environment.<\/p>\n<h3>Media database<\/h3>\n<p>The &#8220;WISS&#8221; database format has been around for as long as I can recall with NetWorker. It&#8217;s served NetWorker well, but it&#8217;s also had some limitations. As of version 9,&nbsp;the NetWorker media database format is now SQLite, which&nbsp;gives NetWorker a big boost for performance and parallelisation of media activities. As per the policy engine, this migration&nbsp;happens automatically for you as part of the upgrade process. (Depending&nbsp;on the size of your media database this may take a little while to complete, but&nbsp;the media database is usually fairly small for most organisations.)<\/p>\n<h3>NetWorker Management Console (NMC) Database<\/h3>\n<p>Previous versions of NetWorker have used the Sybase embedded SQLAnywhere database for NMC. NetWorker version 9 switches the NMC database to PostgreSQL. If you&#8217;re wanting to keep your existing&nbsp;NMC database, you&#8217;ll need to take some pre-ugprade&nbsp;steps to export the Sybase embedded database content into a format that can be imported into the PostgreSQL database. Be sure to read the upgrade&nbsp;documentation \u2013 but you were going to do that anyway, right?<\/p>\n<h3>License Server<\/h3>\n<p>Other than the options around traditional vs NetWorker capacity vs DPS capacity, NetWorker licensing has remained mostly the same for the entire 19 years I&#8217;ve been dealing with it. There was a&nbsp;Legato License Manager introduced some time ago but&nbsp;it had mainly been pushed as a means of centralising management of traditional licensing&nbsp;across multiple datazones.&nbsp;Since the&nbsp;capacity formats aren&#8217;t so bothered on datazone counts,&nbsp;LLM usage has fallen away.<\/p>\n<p>With a lot of customers deploying multiple EMC products and EMC moving towards transformative enterprise licensing&nbsp;models, a move to a new licensing service that can handle licensing for multiple products makes sense. From a day to day basis, the licensing server won&#8217;t really change how you interact with NetWorker, but you&#8217;ll want to deal with your sales\/pre-sales team or your integrator (depending on which way you procure&nbsp;NetWorker licenses) in order to&nbsp;prep for the license changes. It&#8217;s not a change to functionality of&nbsp;traditional vs capacity licenses, and it doesn&#8217;t signal a move away from traditional licenses either, but it is a much needed change.<\/p>\n<h3>Authentication System<\/h3>\n<p>NetWorker has by and large&nbsp;used OS provided user-authentication for authorisation. That might be&nbsp;localised on a per-system basis or it might&nbsp;leverage Active Directory\/etc. This however left somewhat of a split between authorisation supported by NetWorker Management Console and authorisation supported from the command line. The new authentication system is effectively a single sign-on approach providing integrated authentication between NMC related activities&nbsp;<em>and<\/em> command line activities.<\/p>\n<h3>Restricted Data Zones<\/h3>\n<p>Restricted datazones get a few tweaks with NetWorker 9, too. I&#8217;ve had very little direct cause to use RDZs&nbsp;myself, so I&#8217;ll let the release notes speak for&nbsp;themselves on this front:<\/p>\n<ul>\n<li>\n<blockquote><p>You can now associate an RDZ resource to an individual resource (for example, to a client, protection policy, protection group, and so on) from the resource itself. As a result, RDZ resources can no longer effect resource associations directly.<\/p><\/blockquote>\n<\/li>\n<li>\n<blockquote><p>Non-default resources, that are previously associated to the global zone and therefore unusable by an RDZ, are now shared resources that can be used by an RDZ. Although, these resources cannot be modified by restricted administrators.<\/p><\/blockquote>\n<\/li>\n<\/ul>\n<p>If you&#8217;re using RDZs in your environment, be sure to&nbsp;understand the implications of the above changes as part of&nbsp;the upgrade process.<\/p>\n<h3>Scaling<\/h3>\n<p>With a raft of under-the-hood changes and enhancements, NetWorker servers \u2013 already highly scaleable \u2013 become even more scaleable. If your NetWorker environment has been getting large enough that you&#8217;ve considered deploying additional datazones, now is the time to talk to your local&nbsp;EMC teams to see&nbsp;whether you still need to go down that path. (Chances are you don&#8217;t.)<\/p>\n<h3>NetWorker Server Platform<\/h3>\n<p>There are actually very few environments left where the NetWorker server itself runs on what I&#8217;d refer to as &#8220;classic&#8221; Unix systems \u2013 i.e., Solaris, HPUX or AIX.&nbsp;As of NetWorker 9, the NetWorker server processes (and similarly, NMC processes)&nbsp;will now run only on Windows 64-bit or Linux 64-bit systems. This allows&nbsp;a concentration of development, leveraging the substantially (I&#8217;d say&nbsp;<em>massively<\/em>) reduced use of these platforms for better development&nbsp;efficiencies.&nbsp;However, NetWorker client support is still extremely healthy and those platforms are also still fully supported as storage nodes.<\/p>\n<p>From a migration perspective, this is actually relatively easy to handle. EMC for some time has supported <em>cross&nbsp;platform migration<\/em>, wherein the NetWorker media database, configuration and index (i.e., the NetWorker server) is moved from say, Linux to Windows,&nbsp;Solaris to Linux, Solaris to Windows, etc. If you&nbsp;are one&nbsp;of those sites still using&nbsp;the NetWorker&nbsp;<em>server<\/em> services on Solaris, HPUX or&nbsp;AIX, you can engage cross platform migration services and transfer across to Windows or Linux. To keep&nbsp;things simple (I&#8217;ve done this dozens of times myself over the years), consider even keeping&nbsp;the old server around, renaming it and turning it into a storage node so you don&#8217;t&nbsp;really have to change any device connectivity. Then, elevate the backup server to a &#8220;director only&#8221; mode where it&#8217;s not actually doing any client backup itself. All up, this sort of transition can be seamlessly achieved in a very short period of time.&nbsp;In short: it may be a small interruption and change to your processes, but having executed it many times myself in the past, I can honestly say it&#8217;s a very small change in the grand scheme of things, and very manageable.<\/p>\n<p>In&nbsp;summary, the options along this front if you&#8217;re using a non-Windows\/non-Linux NetWorker server are:<\/p>\n<ul>\n<li>Do a platform migration of your NetWorker server to Windows or Linux&nbsp;using&nbsp;your current NetWorker version,&nbsp;<em>then<\/em> upgrade to the new version<\/li>\n<li>Stand up a new NetWorker datazone on Windows or Linux and retain&nbsp;the existing one for legacy recoveries, migrating&nbsp;clients across<\/li>\n<\/ul>\n<p>I&#8217;m actually a big fan of the former rather than the latter \u2013 I really have done enough platform migrations to know they work well and they allow you to retain&nbsp;<em>everything<\/em> you&#8217;ve been doing. (IMHO the only reason to&nbsp;<em>not<\/em> do a platform migration is if you have a very short retention period for&nbsp;<em>all<\/em> of your backups and you want to start with a brand new configuration approach.)<\/p>\n<p>(Cross platform migrations&nbsp;<em>do<\/em> have to be done by an authorised party \u2013&nbsp;if&nbsp;you&#8217;re not sure who near you can do cross platform migrations, reach out to your local EMC team and find out.)<\/p>\n<p>One more thing: with&nbsp;the additional services now running on a NetWorker server, you could need more&nbsp;RAM\/CPU in your server. Check out the release notes for some details on this front. Environments that have been sized with room for spare&nbsp;likely won&#8217;t need to&nbsp;worry about this at all \u2013 but if you&#8217;ve got an environment where you&#8217;ve&nbsp;got an older&nbsp;piece of hardware running as your NetWorker server, you might need to increase&nbsp;its performance characteristics a little.<\/p>\n<p><em>[Clarifying point: I&#8217;m only talking about the NetWorker&nbsp;<strong>server<\/strong> platform.&nbsp;Traditional Unix systems remain fully supported for storage nodes and clients.]<\/em><\/p>\n<h3>Cloning<\/h3>\n<p>NetWorker gets a&nbsp;performance and optimisation boost with&nbsp;cloning.&nbsp;Cloning has previously been a reasonably isolated process compared to regular save or recovery operations. With NetWorker 9, cloning is now a more integrated function, leveraging the in-place&nbsp;recovery technology implemented in NetWorker 8.2 to speed up cloning of&nbsp;synthetic backups.<\/p>\n<p>This has some advantages relating to parallelising clones and limiting the need for additional nsrmmd processes to handle the cloning operation,&nbsp;<em>and<\/em> introduces scope for exciting&nbsp;changes in future versions of NetWorker, too.<\/p>\n<p>With continuing&nbsp;advances in how you can&nbsp;configure and&nbsp;manage cloning&nbsp;from within NetWorker policies,&nbsp;manual command line driven cloning is becoming less necessary, but if you do&nbsp;still use it you&#8217;ll notice some difference in the output. For instance:<\/p>\n<pre>[root@sirius ~]# <strong>mminfo -q \"name=\/usr,savetime&gt;=24 hours ago\" -r ssid<\/strong>\n4278951844\n[root@sirius ~]# <strong>nsrclone -b \"Site-A Clone\" -S 4278951844<\/strong>\n140988:nsrclone: launching backend job on host sirius.turbamentis.int\n140990:nsrclone: Backend started: job Id(160004).\n85401:nsrrecopy: Input client or saveset is NULL, information not updated in jobdb\n09\/30\/15 18:48:04.652904 Clone pool size used:4\n09\/30\/15 18:48:04.756405 Init Clone PARAMS: Network constant(73400320) Saveset computation overhead(2000000 microsec) Threshold(600000000 microsec) MIN-Threads(16) MAX-Threads(32)\n09\/30\/15 18:48:04.757495 Adjust Clone param: Total overhead(50541397 microsec) Threshold(12635349 microsec) MIN-threads(1) MAX-Threads(4)\n09\/30\/15 18:48:04.757523 Add New saveset group(0x0x3fe5db0): Group overhead(50541397 microsec) Num ss(1)\n129290:nsrrecopy: Successfully established direct file retrieve session for save-set ID '4278951844' with adv_file volume 'Daily.001'.\n09\/30\/15 18:49:30.765647 nsrrecopy exiting\n140991:nsrclone: Backend exited: job Id(160004).\n [ORIGINAL REQUESTED SAVESETS]\n4278951844;\n [CLONE SUCCESS SAVESETS]\n4278951844\/1443603606;<\/pre>\n<p>Note that while the&nbsp;command line&nbsp;<em>output<\/em> is a little difference, the command line options remain&nbsp;the same so your scripts can continue to work without change there. However,&nbsp;with&nbsp;enhanced support for concurrent cloning operations you&#8217;ll likely be able to speed up those scripts &#8230; or replace them entirely with&nbsp;new policies.<\/p>\n<h3>Performance tuners win too<\/h3>\n<p>The performance tuning and optimisation guide has been getting more detailed information over&nbsp;more recent versions, and the one that accompanies NetWorker 9 is no&nbsp;exception. For example, there&#8217;s an entire new section&nbsp;on <em>TCP window size and network latency considerations<\/em>&nbsp;that a bunch of examples (and graphs) relating to the impact of latency on backup and cloning operations of varying sizes based on filesystem density. If you&#8217;re someone who&nbsp;likes&nbsp;to see what tuning and adjustment options there are in NetWorker, you&#8217;ll definitely want to peruse the new&nbsp;Performance&nbsp;Tuning\/Optimisation guide, available with the rest of the&nbsp;reference documentation.<\/p>\n<p>(On that front, NDMP has now been broken out into its own&nbsp;document: the <em>NDMP User Guide<\/em>. Keep an eye on it if you&#8217;re working with NAS systems.)<\/p>\n<h2>Additional Features<\/h2>\n<h3>Block Based Backup (BBB) for Linux<\/h3>\n<p>Several Linux operating systems and filesystems now get the option of performing block based backups. This can significantly speed&nbsp;up the backup of large\/dense&nbsp;filesystems \u2013 even more so than parallel save streams \u2013 by&nbsp;actually bypassing the filesystem entirely.&nbsp;It&#8217;s been available in Windows backups for a while now, but it&#8217;s hopped over the fence to&nbsp;Linux as well.&nbsp;Like the Windows variant, BBB doesn&#8217;t require image level recovery \u2013 you can do file level recovery from&nbsp;block based backups. If you&#8217;ve got really dense filesystems (I&#8217;m looking at large scale IMAP servers as a classic example), BBB could increase your&nbsp;backup&nbsp;performance by up to an order of magnitude.<\/p>\n<h3>Parallel Save Streams<\/h3>\n<p>Parallel&nbsp;Save Streams certainly aren&#8217;t forgotten about in NetWorker 9. There are now options to go beyond 4 parallel save streams per saveset for PSS enabled clients, and&nbsp;we&#8217;ve seen the introduction of&nbsp;<em>automatic stream reclaiming<\/em>, which&nbsp;will dynamically increase the number of active streams for a saveset already running in PSS mode to maximise the utilisation of client parallelism settings. (That&#8217;s a mouthful. The short: PSS is more intelligent and more reactive to fluctuations in used parallelism on clients.)<\/p>\n<h3>ProtectPoint<\/h3>\n<p>ProtectPoint is a pretty exciting new technology&nbsp;being rolled out by EMC across its storage arrays and integrates with Data Domain for the back-end&nbsp;storage.&nbsp;To understand what ProtectPoint does, consider a&nbsp;situation where you&#8217;ve got say, a 100TB Oracle database sitting on a VMAX3 system, and you need to back it up as fast as possible with as little an impact&nbsp;to the actual database server itself as possible. In conventional agent-based backups,&nbsp;it doesn&#8217;t matter what tricks and techniques you use to mitigate the amount of data flowing from the Oracle server to the backup environment, the Oracle server still has to read the data&nbsp;from the storage system. ProtectPoint is an application aware and application\/integrated system that allows you to seamlessly have the&nbsp;storage array and the Data Domain handle pretty much&nbsp;the entire backup, with the data transfer going directly from the storage array to the Data Domain.&nbsp;Suddenly that entire-database server read load associated with a&nbsp;conventional backup disappears.<\/p>\n<p>NetWorker&nbsp;v9&nbsp;integrates management of ProtectPoint policies in&nbsp;a very similar way to how NetWorker v8.2&nbsp;introduced highly advanced NAS snapshot service integration into the data protection&nbsp;management. This further grows&nbsp;NetWorker&#8217;s capabilities&nbsp;in orchestrating the overall data protection&nbsp;process in your environment.<\/p>\n<p>(There&#8217;s a good overview demo of <a href=\"https:\/\/www.youtube.com\/watch?v=-fEu-OUMW58\" target=\"_blank\">ProtectPoint&nbsp;over at YouTube<\/a>.)<\/p>\n<h3>NVE<\/h3>\n<p>Some people want to be able to stand up and completely control a NetWorker&nbsp;environment themselves, and others want to be able to deploy an appliance, answer a couple of questions, and have a fully functioning backup&nbsp;environment ready for use. NetWorker Virtual Edition (NVE) addresses the needs and&nbsp;desires of the latter. For service providers or businesses deploying remote office protection solutions, NVE will be a boon \u2013 and it won&#8217;t eat into any operating system licensing costs,&nbsp;as&nbsp;the OS (Linux) is bundled with the&nbsp;virtual machine template file.<\/p>\n<h3>Base vs Extended Client Installers<\/h3>\n<p>For Unix systems, NetWorker now splits out the client package into two separate installers \u2013 the base version and the extended version \u2013&nbsp;<em>lgtoclnt<\/em> and&nbsp;<em>lgtoxtdclnt<\/em> respectively. You install&nbsp;the base client on clients that need to get fairly standard filesystem backups. It&nbsp;doesn&#8217;t include&nbsp;binaries like <em>mminfo,&nbsp;nsrwatch<\/em>&nbsp;or <em>nsradmin&nbsp;<\/em>\u2013 they&#8217;re&nbsp;now in the extended package. This allows you to keep regular client installs streamlined \u2013 particularly useful if you&#8217;re a service provider or dealing with larger&nbsp;environments.<\/p>\n<h2>VBA<\/h2>\n<p>There&#8217;s been a variety of changes made to the Virtual Backup Appliance (introduced in NetWorker 8.1), but the two I want to particularly single out are the two that users have mentioned most to me over the last 18 months or so:<\/p>\n<ul>\n<li>Flash is no longer required for the&nbsp;File Level Recovery (FLR) web interface<\/li>\n<li>There&#8217;s a command line interface for FLR<\/li>\n<\/ul>\n<p>If you&#8217;ve been leery&nbsp;about using VBA for either of the above reasons, it&#8217;s time to jump on the bandwagon and see just how useful it is. Note&nbsp;that in order to achieve&nbsp;command line FLR you&#8217;ll need to install the basic&nbsp;NetWorker client&nbsp;package on the relevant hosts \u2013 but you need to get a&nbsp;binary from somewhere, so that makes sense.<\/p>\n<h2>Module&nbsp;Enhancements<\/h2>\n<p>Both&nbsp;the NetWorker Module for Microsoft Applications (NMM) and NetWorker Module for Databases and Applications (NMDA) have&nbsp;received a bunch of updates, including (but not limited to):<\/p>\n<ul>\n<li>NMM:\n<ul>\n<li>Simpler use of VSS.<\/li>\n<li>Block based support for HyperV and Exchange \u2013 yes,&nbsp;<em>and<\/em> Exchange. (This speeds&nbsp;up both types of backups considerably.)<\/li>\n<li>Federated backups for SharePoint, allowing non-primary databases to be leveraged for the backup process.<\/li>\n<li>I love&nbsp;the configuration checker \u2013 it makes getting NMM up and running with minimum effort so much easier. It&#8217;s been further&nbsp;enhanced in NetWorker 9 to grow its usefulness&nbsp;even more.<\/li>\n<li>HyperV support for Partial VSS writer \u2013 previously if you had a single VM fail to backup under HyperV the backup group running the process would&nbsp;register as a failure. Now&nbsp;the backups will continue and only the VM that fails to backup will be&nbsp;be declared a failure. This aligns HyperV backups much more&nbsp;closely to traditional filesystem or VMware style backups.<\/li>\n<li>Improved support for Federated backups of HyperV SMB 3 clusters.<\/li>\n<li>File Level Recovery GUI for HyperV virtual machine backups.<\/li>\n<li>Full integration of policy support for NMM.<\/li>\n<\/ul>\n<\/li>\n<li>NMDA:\n<ul>\n<li>Support for DDBoost over Fibre-Channel for AIX.<\/li>\n<li>Full integration of policy support for NMDA.<\/li>\n<li>Support for log-only backups for Lotus Notes systems.<\/li>\n<li>NetWorker Snapshot Manager support for features like ProtectPoint.<\/li>\n<li>Various DB2 enhancements\/improvements.<\/li>\n<li>Oracle RAC discovery in the NMC configuration wizards.<\/li>\n<li>Optional use of a CONFIG_FILE parameter for RMAN scripts so you can&nbsp;put all&nbsp;the NMDA related&nbsp;customisations for RMAN backups into a single file (or small number of files) and keep that file\/those files updated rather than having to make changes to individual RMAN scripts.<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<h2>Policies, Redux<\/h2>\n<p>Before I wrap up:&nbsp;<em>just one more thing<\/em>. With the&nbsp;transition to a policy configuration engine, the&nbsp;<em>nsrpolicy<\/em> command previously&nbsp;introduced in NetWorker 8.1 to support&nbsp;Virtual Machine Protection Policies has been extensively enhanced to&nbsp;be able to handle all aspects of policy creation, configuration&nbsp;adjustment and policy\/workflow execution. This&nbsp;<em>does mean<\/em> that if you&#8217;ve previously used <em>nsradmin<\/em>&nbsp;or&nbsp;<em>savegrp<\/em> to handle configuration\/group execution processes, you&#8217;ll have to adjust some of your scripts accordingly. (It also means I&#8217;ll have to work on a new version of the Turbocharged&nbsp;NetWorker&nbsp;Administration Guide.)<\/p>\n<h2>Wrapping Up<\/h2>\n<p>I wasn&#8217;t joking at the start when I said NetWorker 9 represents the biggest set of&nbsp;changes I&#8217;ve ever seen in my 19 years of using NetWorker.&nbsp;What I will say is that these are&nbsp;<em>necessary<\/em> changes to&nbsp;prepare NetWorker for&nbsp;the rapidly changing datacentre. (Or even the rapidly changing datacent<em>er<\/em> if you&#8217;re so minded.)<\/p>\n<p>This upgrade&nbsp;<em>will<\/em> require very careful review of the release notes and changed functionality, as well as potentially revisiting any automation scripts you&#8217;ve done&nbsp;in the past. (But you&nbsp;<em>can<\/em> do it.) If you&#8217;ve got a heavily scripted environment, my advice is to run up a test NetWorker 9 server and review your scripts against the&nbsp;changes,&nbsp;first evaluating whether you actually need to continue using those scripts, and then if you do, adjusting them accordingly.&nbsp;EMC has also prepared some video training&nbsp;for NetWorker 9 which I&#8217;d advise looking into (and equally I&#8217;d suggest&nbsp;leveraging your local EMC partner or EMC resources for the upgrade process).<\/p>\n<p>It&#8217;s also an excellent time to consider revisiting your overall&nbsp;backup&nbsp;configuration and look for&nbsp;optimisations you can achieve based on the new policy engine and the service-catalogue approach. As I&#8217;ve been saying to my colleagues, this is the perfect opportunity to introduce&nbsp;policies that align to service catalogues that more&nbsp;precisely define and meet business requirements. If you&#8217;re not ready to do it from day zero, that&#8217;s OK \u2013 NetWorker will migrate your configuration and you&#8217;ll be able to continue to offer your existing backup and recovery services.&nbsp;But if&nbsp;you find the time to re-evaluate your configuration and reset it to a service&nbsp;catalogue approach, you can migrate&nbsp;<em>yourself<\/em> from being the &#8220;backup admin&#8221; to being the &#8220;data protection architect&#8221; within your organisation.<\/p>\n<p>This is a big set of changes in&nbsp;NetWorker, but it&#8217;s also very much an exciting and energising set of changes, too.<\/p>\n<p>As you might expect, this won&#8217;t be my only blog post on NetWorker 9 \u2013&nbsp;it&#8217;s equally an&nbsp;energising time for me and I&#8217;m looking forward to diving into a variety&nbsp;of topics in more detail and providing some screen casts and videos of changes, upgrades and improvements.<\/p>\n<p>(And don&#8217;t forget to wear your sunglasses: the future&#8217;s looking bright.)<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Introduction When NetWorker 8 was released I said at the time it represented the biggest consolidated set of changes to&nbsp;NetWorker&hellip;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":true,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2}},"categories":[3,1133,11,14,16,17,19,20,1213],"tags":[1249,1269],"class_list":["post-5636","post","type-post","status-publish","format-standard","hentry","category-architecture","category-best-practice","category-features","category-licensing","category-networker","category-policies","category-recovery","category-scripting","category-vba","tag-networker","tag-networker-9"],"aioseo_notices":[],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack_shortlink":"https:\/\/wp.me\/pKpIN-1sU","jetpack_sharing_enabled":true,"jetpack_likes_enabled":true,"_links":{"self":[{"href":"https:\/\/nsrd.info\/blog\/wp-json\/wp\/v2\/posts\/5636","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/nsrd.info\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/nsrd.info\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/nsrd.info\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/nsrd.info\/blog\/wp-json\/wp\/v2\/comments?post=5636"}],"version-history":[{"count":25,"href":"https:\/\/nsrd.info\/blog\/wp-json\/wp\/v2\/posts\/5636\/revisions"}],"predecessor-version":[{"id":7424,"href":"https:\/\/nsrd.info\/blog\/wp-json\/wp\/v2\/posts\/5636\/revisions\/7424"}],"wp:attachment":[{"href":"https:\/\/nsrd.info\/blog\/wp-json\/wp\/v2\/media?parent=5636"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/nsrd.info\/blog\/wp-json\/wp\/v2\/categories?post=5636"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/nsrd.info\/blog\/wp-json\/wp\/v2\/tags?post=5636"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}