{"id":10468,"date":"2021-07-19T06:52:29","date_gmt":"2021-07-18T20:52:29","guid":{"rendered":"https:\/\/nsrd.info\/blog\/?p=10468"},"modified":"2021-07-19T06:52:31","modified_gmt":"2021-07-18T20:52:31","slug":"networker-basics-s3-as-an-aftd-target","status":"publish","type":"post","link":"https:\/\/nsrd.info\/blog\/2021\/07\/19\/networker-basics-s3-as-an-aftd-target\/","title":{"rendered":"NetWorker Basics \u2013 S3 as an AFTD Target"},"content":{"rendered":"\n<p>There are a few traditional ways you can backup to an S3 target via NetWorker. If you&#8217;re in the cloud, you can spin up DDVE, and it&#8217;ll do all the work for you, writing to object storage. Regardless of whether you&#8217;re in-cloud or on-prem, you can spin up a CloudBoost appliance and write directly to object storage as well. Some cloud vendors even present VTL gateways, but of course, virtual tapes can be just as much a headache to manage as physical ones.<\/p>\n\n\n\n<p>NetWorker doesn&#8217;t have an &#8216;S3&#8217; type device as it stands, but if you&#8217;re prepared to work with the Linux S3-FuseFS kernel extension, could you create an Advanced File Type Device (AFTD) writing directly to an object storage bucket?<\/p>\n\n\n\n<p>It turns out, yes.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Critical Note 1<\/h3>\n\n\n\n<p>NOTE: Before I continue, I need to stress: this is not a documented NetWorker configuration. If you were to do something like this in your environment, I&#8217;d suggest extensive testing first. I&#8217;d also recommend considering one of the officially supported ways &#8212; CloudBoost or DDVE, for instance. In short: this falls far more into my geeky approach of &#8220;hey, can I do this?&#8221; than it does, &#8220;hey, should you do this?&#8221;<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Critical Note 2<\/h3>\n\n\n\n<p>In addition to the warning above, you also have to think of S3 limits &#8211; AWS S3 for instance has a <a href=\"https:\/\/aws.amazon.com\/s3\/faqs\/\" target=\"_blank\" rel=\"noreferrer noopener\">maximum object size of 5TB<\/a>, and as each saveset in NetWorker is written as an atomic file, that would place an upper limit on what you can write. I&#8217;ve also not experimented with S3-FuseFS for writing multi-GB files (AWS says a single PUT can&#8217;t exceed 5GB \u2013 at that point you need to do it as a multi-part operation).<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">But let&#8217;s experiment, anyway<\/h3>\n\n\n\n<p>So, with those warnings out of the way, let&#8217;s get cracking with some fun backup geekery.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Starting with S3<\/h2>\n\n\n\n<p>To get this idea tested, I used the following:<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>An AWS S3 bucket<\/li><li>A Linux host called &#8216;tholia&#8217; configured as follows:<ul><li>Running CentOS 7.8.<\/li><li>EPEL Package s3fs-fuse-1.87-1.el7 installed.<\/li><li>S3 bucket mounted to \/s3 on the host. <\/li><li>NetWorker 19.5 client, extended client and storage node packages installed.<\/li><\/ul><\/li><\/ul>\n\n\n\n<p>The mounted S3 bucket appeared as follows in the output of the &#8216;mount&#8217; command:<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_00-S3FS-Mounted.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1233\" height=\"652\" src=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_00-S3FS-Mounted.png\" alt=\"\" class=\"wp-image-10469\" srcset=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_00-S3FS-Mounted.png 1233w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_00-S3FS-Mounted-300x159.png 300w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_00-S3FS-Mounted-1024x541.png 1024w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_00-S3FS-Mounted-768x406.png 768w\" sizes=\"auto, (max-width: 1233px) 100vw, 1233px\" \/><\/a><figcaption><strong><em>S3 Bucket Mounted on Linux<\/em><\/strong><\/figcaption><\/figure>\n\n\n\n<p>After I mounted the bucket, I installed the NetWorker client, extended client and storage node on the host, as I intended to configure this host as its own storage node.<\/p>\n\n\n\n<p>I also created a directory <strong>\/s3\/AFTD <\/strong>which would become the root directory of the AFTD I intended to configure.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Creating a NetWorker Storage Node and AFTD<\/h2>\n\n\n\n<p>Before I created the NetWorker Storage Node and AFTD on tholia, I had to add it as a client on NetWorker. I didn&#8217;t capture that session, but here are the properties of the client that I created:<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_10-Client-Properties.png\"><img loading=\"lazy\" decoding=\"async\" width=\"794\" height=\"902\" src=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_10-Client-Properties.png\" alt=\"\" class=\"wp-image-10470\" srcset=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_10-Client-Properties.png 794w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_10-Client-Properties-264x300.png 264w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_10-Client-Properties-768x872.png 768w\" sizes=\"auto, (max-width: 794px) 100vw, 794px\" \/><\/a><figcaption><strong><em>NetWorker Client Properties<\/em><\/strong><\/figcaption><\/figure>\n\n\n\n<p>You can see there I&#8217;ve defined a basic saveset for the client &#8212; just the \/etc directory. I&#8217;ve also made sure to turn on the compression directives. And this is where we get into the territory of <em>&#8220;just because you can, doesn&#8217;t mean you should&#8221;<\/em>. Even with compression directives turned on, you&#8217;d still write more to an S3 bucket as an AFTD than you would by using DDVE or CloudBoost, because both of those apply deduplication as well as compression. The maths of this is simple:<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li><strong>DDVE<\/strong>: Assuming you get a tiny 10:1 deduplication against a device. If you write 10 x 2TB backups to DDVE, that comes down to 2TB total storage used.<\/li><li><strong>Compression to S3<\/strong>: Assume you get 2:1 compression for each saveset you write. If you write 10 x 2TB backups to S3 with 2:1 compression, you&#8217;ll still write 10TB.<\/li><\/ul>\n\n\n\n<p>But let&#8217;s continue. Having created the client, I added tholia as a storage node, without any special configuration &#8212; here&#8217;s a view of the properties for it, below:<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_01-Tholia-Storage-Node.png\"><img loading=\"lazy\" decoding=\"async\" width=\"782\" height=\"776\" src=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_01-Tholia-Storage-Node.png\" alt=\"\" class=\"wp-image-10472\" srcset=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_01-Tholia-Storage-Node.png 782w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_01-Tholia-Storage-Node-300x298.png 300w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_01-Tholia-Storage-Node-150x150.png 150w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_01-Tholia-Storage-Node-768x762.png 768w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_01-Tholia-Storage-Node-144x144.png 144w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_01-Tholia-Storage-Node-120x120.png 120w\" sizes=\"auto, (max-width: 782px) 100vw, 782px\" \/><\/a><figcaption><strong><em>Storage Node Properties<\/em><\/strong><\/figcaption><\/figure>\n\n\n\n<p>Before I went on to use the device wizard for a new AFTD, I created a backup pool called &#8216;S3FS&#8217;. With all that done and out of the way, it was time to run the wizard:<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_02-Device-Wizard-1.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1068\" height=\"1088\" src=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_02-Device-Wizard-1.png\" alt=\"\" class=\"wp-image-10473\" srcset=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_02-Device-Wizard-1.png 1068w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_02-Device-Wizard-1-294x300.png 294w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_02-Device-Wizard-1-1005x1024.png 1005w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_02-Device-Wizard-1-768x782.png 768w\" sizes=\"auto, (max-width: 1068px) 100vw, 1068px\" \/><\/a><figcaption><strong><em>New Device Wizard 1: Choosing AFTD<\/em><\/strong><\/figcaption><\/figure>\n\n\n\n<p>I chose <strong>Advanced File Type Device (AFTD)<\/strong> as the device type and clicked <strong>Next &gt;<\/strong> to continue.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_03-Device-Wizard-2.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1068\" height=\"1088\" src=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_03-Device-Wizard-2.png\" alt=\"\" class=\"wp-image-10474\" srcset=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_03-Device-Wizard-2.png 1068w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_03-Device-Wizard-2-294x300.png 294w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_03-Device-Wizard-2-1005x1024.png 1005w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_03-Device-Wizard-2-768x782.png 768w\" sizes=\"auto, (max-width: 1068px) 100vw, 1068px\" \/><\/a><figcaption><strong><em>New Device Wizard 2: Choosing the Storage Node<\/em><\/strong><\/figcaption><\/figure>\n\n\n\n<p>In this part of the wizard I changed the default storage node selection (the NetWorker server) to my new client\/storage node, <em>tholia.turbamentis.int<\/em>, before clicking <strong>Next &gt;<\/strong> to continue.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_04-Device-Wizard-3.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1068\" height=\"1088\" src=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_04-Device-Wizard-3.png\" alt=\"\" class=\"wp-image-10475\" srcset=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_04-Device-Wizard-3.png 1068w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_04-Device-Wizard-3-294x300.png 294w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_04-Device-Wizard-3-1005x1024.png 1005w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_04-Device-Wizard-3-768x782.png 768w\" sizes=\"auto, (max-width: 1068px) 100vw, 1068px\" \/><\/a><figcaption><strong><em>New Device Wizard 3: Selecting the AFTD Path<\/em><\/strong><\/figcaption><\/figure>\n\n\n\n<p>The next step in the device wizard is to select the path that&#8217;ll be the root directory of the AFTD device. I browsed to <strong>\/s3\/AFTD<\/strong>, selected it, and clicked <strong>Next &gt;<\/strong> to continue.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_05-Device-Wizard-4.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1068\" height=\"1088\" src=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_05-Device-Wizard-4.png\" alt=\"\" class=\"wp-image-10476\" srcset=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_05-Device-Wizard-4.png 1068w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_05-Device-Wizard-4-294x300.png 294w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_05-Device-Wizard-4-1005x1024.png 1005w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_05-Device-Wizard-4-768x782.png 768w\" sizes=\"auto, (max-width: 1068px) 100vw, 1068px\" \/><\/a><figcaption><strong><em>New Device Wizard 4: Setting the Device Name and Session Counts<\/em><\/strong><\/figcaption><\/figure>\n\n\n\n<p>This step of the wizard saw me providing a name for the device and confirming session counts. I left target and max sessions at their default and gave it the name &#8216;S3FSDevice&#8217;. (Not perhaps my most imaginative naming moment, but it&#8217;ll do.)<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_06-Device-Wizard-5.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1126\" height=\"1101\" src=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_06-Device-Wizard-5.png\" alt=\"\" class=\"wp-image-10477\" srcset=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_06-Device-Wizard-5.png 1126w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_06-Device-Wizard-5-300x293.png 300w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_06-Device-Wizard-5-1024x1001.png 1024w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_06-Device-Wizard-5-768x751.png 768w\" sizes=\"auto, (max-width: 1126px) 100vw, 1126px\" \/><\/a><figcaption><strong><em>New Device Wizard 5: Assigning a Pool\/Selecting Label &amp; Mount Option<\/em><\/strong><\/figcaption><\/figure>\n\n\n\n<p>On this page of the wizard, I elected to label and mount the device after creation, and chose the &#8216;S3FS&#8217; pool for my volume before clicking <strong>Next &gt; <\/strong>to continue.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_07-Device-Wizard-6.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1126\" height=\"1101\" src=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_07-Device-Wizard-6.png\" alt=\"\" class=\"wp-image-10479\" srcset=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_07-Device-Wizard-6.png 1126w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_07-Device-Wizard-6-300x293.png 300w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_07-Device-Wizard-6-1024x1001.png 1024w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_07-Device-Wizard-6-768x751.png 768w\" sizes=\"auto, (max-width: 1126px) 100vw, 1126px\" \/><\/a><figcaption><strong><em>New Device Wizard 6: Confirming Device Properties<\/em><\/strong><\/figcaption><\/figure>\n\n\n\n<p>This was the critical moment &#8212; I confirmed the device properties and clicked <strong>Configure<\/strong> to start the device and volume creation process. As you might expect when working with object storage, this took a little longer to complete &#8212; approximately 45 seconds rather than the usual zippy &lt;5 seconds for creating a local AFTD. I suspect most of that was in the various filesystem-emulated calls associated with creating the directory structure of an AFTD volume. Once everything was done, NetWorker told me it had been completed successfully:<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_08-Device-Wizard-7.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1126\" height=\"1101\" src=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_08-Device-Wizard-7.png\" alt=\"\" class=\"wp-image-10480\" srcset=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_08-Device-Wizard-7.png 1126w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_08-Device-Wizard-7-300x293.png 300w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_08-Device-Wizard-7-1024x1001.png 1024w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_08-Device-Wizard-7-768x751.png 768w\" sizes=\"auto, (max-width: 1126px) 100vw, 1126px\" \/><\/a><figcaption><strong><em>New Device Wizard 7: Device Creation Success (Huzzah!)<\/em><\/strong><\/figcaption><\/figure>\n\n\n\n<p>Once this was completed, I clicked <strong>Finish <\/strong>to dismiss the wizard, and jumped onto the host via ssh to check the directory contents &#8212; which looked accurate:<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_09-Filesystem-Layout.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1233\" height=\"652\" src=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_09-Filesystem-Layout.png\" alt=\"\" class=\"wp-image-10481\" srcset=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_09-Filesystem-Layout.png 1233w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_09-Filesystem-Layout-300x159.png 300w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_09-Filesystem-Layout-1024x541.png 1024w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_09-Filesystem-Layout-768x406.png 768w\" sizes=\"auto, (max-width: 1233px) 100vw, 1233px\" \/><\/a><figcaption><strong><em>Checking directory of AFTD Volume<\/em><\/strong><\/figcaption><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Creating a Workflow for Backup to S3<\/h2>\n\n\n\n<p>On my NetWorker lab server, I have an &#8216;Adhoc&#8217; policy that I use to create workflows for testing purposes. For this configuration, I&#8217;d create a new workflow called <strong>S3FS_as_AFTD_Target <\/strong>and within it, a <strong>backup <\/strong>action. Here&#8217;s the workflow creation process:<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_11-New-Workflow-1.png\"><img loading=\"lazy\" decoding=\"async\" width=\"820\" height=\"587\" src=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_11-New-Workflow-1.png\" alt=\"\" class=\"wp-image-10482\" srcset=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_11-New-Workflow-1.png 820w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_11-New-Workflow-1-300x215.png 300w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_11-New-Workflow-1-768x550.png 768w\" sizes=\"auto, (max-width: 820px) 100vw, 820px\" \/><\/a><figcaption><strong><em>New Workflow Wizard: Name, Autostart, Group<\/em><\/strong><\/figcaption><\/figure>\n\n\n\n<p>In the above screen, I gave the workflow a name, created a new group that comprised just of the tholia:\/etc client, and disabled autostart, as I&#8217;d be only running this manually. I then clicked the <strong>Add<\/strong> button to define a new backup action.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_12-New-Workflow-2.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1085\" height=\"983\" src=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_12-New-Workflow-2.png\" alt=\"\" class=\"wp-image-10484\" srcset=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_12-New-Workflow-2.png 1085w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_12-New-Workflow-2-300x272.png 300w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_12-New-Workflow-2-1024x928.png 1024w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_12-New-Workflow-2-768x696.png 768w\" sizes=\"auto, (max-width: 1085px) 100vw, 1085px\" \/><\/a><figcaption><strong><em>New Workflow Wizard: Backup Action #1<\/em><\/strong><\/figcaption><\/figure>\n\n\n\n<p>For my testing purposes, I left all these settings as normal and clicked <strong>Next &gt;<\/strong> to continue.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_13-New-Workflow-3.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1085\" height=\"983\" src=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_13-New-Workflow-3.png\" alt=\"\" class=\"wp-image-10485\" srcset=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_13-New-Workflow-3.png 1085w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_13-New-Workflow-3-300x272.png 300w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_13-New-Workflow-3-1024x928.png 1024w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_13-New-Workflow-3-768x696.png 768w\" sizes=\"auto, (max-width: 1085px) 100vw, 1085px\" \/><\/a><figcaption><strong><em>New Workflow Wizard: Backup Action #<\/em><\/strong>2 <strong><em>&#8211; Set Storage Node, Pool, Browse\/Retention Period<\/em><\/strong><\/figcaption><\/figure>\n\n\n\n<p>On this panel I selected <em>tholia.turbamentis.int <\/em>as the storage node, set the destination pool to S3FS, and set browse\/retention to 1 month, before clicking <strong>Next &gt;<\/strong> to continue.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_14-New-Workflow-4.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1085\" height=\"983\" src=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_14-New-Workflow-4.png\" alt=\"\" class=\"wp-image-10487\" srcset=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_14-New-Workflow-4.png 1085w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_14-New-Workflow-4-300x272.png 300w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_14-New-Workflow-4-1024x928.png 1024w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_14-New-Workflow-4-768x696.png 768w\" sizes=\"auto, (max-width: 1085px) 100vw, 1085px\" \/><\/a><figcaption><strong><em>New Workflow Wizard: Backup Action #3 &#8211; Advanced Options<\/em><\/strong><\/figcaption><\/figure>\n\n\n\n<p>I left the advanced backup options at their defaults and clicked <strong>Next &gt;<\/strong> to continue.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_15-New-Workflow-5.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1085\" height=\"983\" src=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_15-New-Workflow-5.png\" alt=\"\" class=\"wp-image-10489\" srcset=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_15-New-Workflow-5.png 1085w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_15-New-Workflow-5-300x272.png 300w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_15-New-Workflow-5-1024x928.png 1024w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_15-New-Workflow-5-768x696.png 768w\" sizes=\"auto, (max-width: 1085px) 100vw, 1085px\" \/><\/a><figcaption><strong><em>New Workflow Wizard: Backup Action #4 &#8211; Action Summary<\/em><\/strong><\/figcaption><\/figure>\n\n\n\n<p>Everything looked correct on the Action summary, so I clicked <strong>Configure<\/strong> to add the action to the workflow. This gave me a completed workflow as follows:<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_16-New-Workflow-6.png\"><img loading=\"lazy\" decoding=\"async\" width=\"820\" height=\"587\" src=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_16-New-Workflow-6.png\" alt=\"\" class=\"wp-image-10490\" srcset=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_16-New-Workflow-6.png 820w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_16-New-Workflow-6-300x215.png 300w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_16-New-Workflow-6-768x550.png 768w\" sizes=\"auto, (max-width: 820px) 100vw, 820px\" \/><\/a><figcaption><strong><em>Workflow Completed<\/em><\/strong><\/figcaption><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Backing up to an S3 AFTD<\/h2>\n\n\n\n<p>I then ran the workflow. NMC showed as you&#8217;d expect &#8212; the workflow ran fast enough that NMC didn&#8217;t get around to showing me performance (sorry, I think Bezos is rich enough without me paying for demo bucket storage), but NMC did show the backup starting:<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_17-Run-Workflow.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1547\" height=\"975\" src=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_17-Run-Workflow.png\" alt=\"\" class=\"wp-image-10492\" srcset=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_17-Run-Workflow.png 1547w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_17-Run-Workflow-300x189.png 300w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_17-Run-Workflow-1024x645.png 1024w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_17-Run-Workflow-768x484.png 768w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_17-Run-Workflow-1536x968.png 1536w\" sizes=\"auto, (max-width: 1547px) 100vw, 1547px\" \/><\/a><figcaption><strong><em>Workflow Running<\/em><\/strong><\/figcaption><\/figure>\n\n\n\n<p>Then, when the workflow completed, I viewed the status details:<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_18-Workflow-Results.png\"><img loading=\"lazy\" decoding=\"async\" width=\"637\" height=\"947\" src=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_18-Workflow-Results.png\" alt=\"\" class=\"wp-image-10493\" srcset=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_18-Workflow-Results.png 637w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_18-Workflow-Results-202x300.png 202w\" sizes=\"auto, (max-width: 637px) 100vw, 637px\" \/><\/a><figcaption><strong><em>Backup Success (Huzzah!)<\/em><\/strong><\/figcaption><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">There&#8217;s a Backup in My Bucket, Dear Liza<\/h2>\n\n\n\n<p>For sure, NetWorker said it <em>wrote <\/em>the backup, but how can I confirm the saveset exists? That&#8217;s relatively straightforward. First, use mminfo on the NetWorker server to get the long-form saveset ID. (The long saveset ID is actually the filename of the backup on the volume.)<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_19-Long-form-SSID.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1233\" height=\"652\" src=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_19-Long-form-SSID.png\" alt=\"\" class=\"wp-image-10495\" srcset=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_19-Long-form-SSID.png 1233w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_19-Long-form-SSID-300x159.png 300w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_19-Long-form-SSID-1024x541.png 1024w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_19-Long-form-SSID-768x406.png 768w\" sizes=\"auto, (max-width: 1233px) 100vw, 1233px\" \/><\/a><figcaption><strong><em>Getting the Long-Form SSID for the Backup<\/em><\/strong><\/figcaption><\/figure>\n\n\n\n<p>OK, with that long-form SSID in hand, I could then find files matching that name under <strong>\/s3\/AFTD<\/strong> on tholia:<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_20-SSID-Found-on-AFTD.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1233\" height=\"652\" src=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_20-SSID-Found-on-AFTD.png\" alt=\"\" class=\"wp-image-10496\" srcset=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_20-SSID-Found-on-AFTD.png 1233w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_20-SSID-Found-on-AFTD-300x159.png 300w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_20-SSID-Found-on-AFTD-1024x541.png 1024w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_20-SSID-Found-on-AFTD-768x406.png 768w\" sizes=\"auto, (max-width: 1233px) 100vw, 1233px\" \/><\/a><figcaption><strong><em>Finding the Saveset on our Volume<\/em><\/strong><\/figcaption><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">We Backup to Recover<\/h2>\n\n\n\n<p>It&#8217;s all good to do the backup, but the most important thing is a recovery &#8212; so I set out to recover the <strong>\/etc\/sysconfig <\/strong>directory from the backup to an alternate location on <em>tholia<\/em>. Here&#8217;s that process in action.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_21-Recover-Wizard-1.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1086\" height=\"905\" src=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_21-Recover-Wizard-1.png\" alt=\"\" class=\"wp-image-10497\" srcset=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_21-Recover-Wizard-1.png 1086w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_21-Recover-Wizard-1-300x250.png 300w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_21-Recover-Wizard-1-1024x853.png 1024w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_21-Recover-Wizard-1-768x640.png 768w\" sizes=\"auto, (max-width: 1086px) 100vw, 1086px\" \/><\/a><figcaption><strong><em>Recovery Wizard Step 1: Traditional Client Recovery<\/em><\/strong><\/figcaption><\/figure>\n\n\n\n<p>The first step in the NMC recovery wizard is to choose between a traditional recovery and a virtual machine recovery. While tholia is a virtual machine in my lab, I&#8217;d done an agent-based backup, so I chose the <strong>Traditional NetWorker Client Recovery<\/strong> and clicked<strong> Next &gt; <\/strong>to continue.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_22-Recover-Wizard-2.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1086\" height=\"905\" src=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_22-Recover-Wizard-2.png\" alt=\"\" class=\"wp-image-10498\" srcset=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_22-Recover-Wizard-2.png 1086w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_22-Recover-Wizard-2-300x250.png 300w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_22-Recover-Wizard-2-1024x853.png 1024w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_22-Recover-Wizard-2-768x640.png 768w\" sizes=\"auto, (max-width: 1086px) 100vw, 1086px\" \/><\/a><figcaption><strong><em>Recovery Wizard Step 2: Client Name and Backup Type<\/em><\/strong><\/figcaption><\/figure>\n\n\n\n<p>I selected tholia.turbamentis.int as the client, noted it had a filesystem backup available, and chose to recover to the same host before clicking <strong>Next &gt; <\/strong>to continue.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_23-Recover-Wizard-3.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1086\" height=\"905\" src=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_23-Recover-Wizard-3.png\" alt=\"\" class=\"wp-image-10499\" srcset=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_23-Recover-Wizard-3.png 1086w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_23-Recover-Wizard-3-300x250.png 300w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_23-Recover-Wizard-3-1024x853.png 1024w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_23-Recover-Wizard-3-768x640.png 768w\" sizes=\"auto, (max-width: 1086px) 100vw, 1086px\" \/><\/a><figcaption><strong><em>Recovery Wizard Step 3: Selecting Data to Recover<\/em><\/strong><\/figcaption><\/figure>\n\n\n\n<p>I only had one backup to recover from, so I didn&#8217;t need to change my browse time. I drilled into<strong> \/etc <\/strong>and selected the <strong>sysconfig <\/strong>directory to recover before clicking <strong>Next &gt;<\/strong> to continue.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_24-Recover-Wizard-4.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1086\" height=\"905\" src=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_24-Recover-Wizard-4.png\" alt=\"\" class=\"wp-image-10500\" srcset=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_24-Recover-Wizard-4.png 1086w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_24-Recover-Wizard-4-300x250.png 300w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_24-Recover-Wizard-4-1024x853.png 1024w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_24-Recover-Wizard-4-768x640.png 768w\" sizes=\"auto, (max-width: 1086px) 100vw, 1086px\" \/><\/a><figcaption><strong><em>Recovery Wizard Step 4: Where to Recover To<\/em><\/strong><\/figcaption><\/figure>\n\n\n\n<p>I elected to recover to an alternate path,<strong> \/tmp\/recover_from_S3<\/strong>, and clicked OK on the prompt warning me the directory would be created when the recovery starts, then clicked <strong>Next &gt; <\/strong>to continue.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_25-Recover-Wizard-5.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1086\" height=\"905\" src=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_25-Recover-Wizard-5.png\" alt=\"\" class=\"wp-image-10501\" srcset=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_25-Recover-Wizard-5.png 1086w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_25-Recover-Wizard-5-300x250.png 300w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_25-Recover-Wizard-5-1024x853.png 1024w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_25-Recover-Wizard-5-768x640.png 768w\" sizes=\"auto, (max-width: 1086px) 100vw, 1086px\" \/><\/a><figcaption><strong><em>Recovery Wizard Step 5: Volume Selection<\/em><\/strong><\/figcaption><\/figure>\n\n\n\n<p>The next step in the recovery wizard is to choose which volume you want to recover from (which you use if you want to choose between different cloned copies). In this case, I only had one copy, so I clicked <strong>Next &gt; <\/strong>to continue.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_26-Recover-Wizard-6.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1086\" height=\"905\" src=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_26-Recover-Wizard-6.png\" alt=\"\" class=\"wp-image-10502\" srcset=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_26-Recover-Wizard-6.png 1086w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_26-Recover-Wizard-6-300x250.png 300w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_26-Recover-Wizard-6-1024x853.png 1024w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_26-Recover-Wizard-6-768x640.png 768w\" sizes=\"auto, (max-width: 1086px) 100vw, 1086px\" \/><\/a><figcaption><strong><em>Recovery Wizard Step 6: Name and Choose Start Options<\/em><\/strong><\/figcaption><\/figure>\n\n\n\n<p>I gave the recovery a name, and rather than scheduling it for a later time, I left the default selection of &#8220;Start recovery now&#8221; active, and clicked <strong>Run Recovery<\/strong>.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_27-Recover-Wizard-Complete.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"853\" src=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_27-Recover-Wizard-Complete-1024x853.png\" alt=\"\" class=\"wp-image-10503\" srcset=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_27-Recover-Wizard-Complete-1024x853.png 1024w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_27-Recover-Wizard-Complete-300x250.png 300w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_27-Recover-Wizard-Complete-768x640.png 768w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_27-Recover-Wizard-Complete.png 1086w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><figcaption><strong><em>Recovery Complete<\/em><\/strong><\/figcaption><\/figure>\n\n\n\n<p>I wasn&#8217;t recovering a lot, so the recovery was completed in short order and I clicked <strong>Finish <\/strong>after confirming it was all OK. I then quickly did a directory listing of the recovery location on my client:<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_28-Recovered-Files-Listed.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1233\" height=\"652\" src=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_28-Recovered-Files-Listed.png\" alt=\"\" class=\"wp-image-10504\" srcset=\"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_28-Recovered-Files-Listed.png 1233w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_28-Recovered-Files-Listed-300x159.png 300w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_28-Recovered-Files-Listed-1024x541.png 1024w, https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2021\/07\/AFTD_To_S3_28-Recovered-Files-Listed-768x406.png 768w\" sizes=\"auto, (max-width: 1233px) 100vw, 1233px\" \/><\/a><figcaption><strong><em>Checking Recovered Files<\/em><\/strong><\/figcaption><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Wrapping Up<\/h2>\n\n\n\n<p>The TL;DR is &#8220;yes, you can backup to S3 with NetWorker if you really want&#8221;. But as Stephen Donaldson implies a few times in The Gap Series, the real story is more complicated. <\/p>\n\n\n\n<p>Can you? Yes. Should you? Probably not. It&#8217;s not going to deliver the same efficiency as either CloudBoost or DDVE, and as a result, it&#8217;s going to cost you more for object storage. The various limits associated with S3 storage on object sizes, etc., also places limits on what you could write, too.<\/p>\n\n\n\n<p>Yet it&#8217;s handy to remember that NetWorker is pretty damn flexible when you need it to be. And as Michael Ende was fond of saying, <em>&#8220;&#8230;that&#8217;s another story for another time.&#8221;<\/em><\/p>\n","protected":false},"excerpt":{"rendered":"<p>There are a few traditional ways you can backup to an S3 target via NetWorker. If you&#8217;re in the cloud,&hellip;<\/p>\n","protected":false},"author":1,"featured_media":8570,"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":[1229,16],"tags":[104,1337,1541],"class_list":["post-10468","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-cloud","category-networker","tag-aftd","tag-object","tag-s3"],"aioseo_notices":[],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"https:\/\/nsrd.info\/blog\/wp-content\/uploads\/2019\/11\/bigStock-Fantasy-Bucket.jpg","jetpack_shortlink":"https:\/\/wp.me\/pKpIN-2IQ","jetpack_sharing_enabled":true,"jetpack_likes_enabled":true,"_links":{"self":[{"href":"https:\/\/nsrd.info\/blog\/wp-json\/wp\/v2\/posts\/10468","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=10468"}],"version-history":[{"count":5,"href":"https:\/\/nsrd.info\/blog\/wp-json\/wp\/v2\/posts\/10468\/revisions"}],"predecessor-version":[{"id":10511,"href":"https:\/\/nsrd.info\/blog\/wp-json\/wp\/v2\/posts\/10468\/revisions\/10511"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/nsrd.info\/blog\/wp-json\/wp\/v2\/media\/8570"}],"wp:attachment":[{"href":"https:\/\/nsrd.info\/blog\/wp-json\/wp\/v2\/media?parent=10468"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/nsrd.info\/blog\/wp-json\/wp\/v2\/categories?post=10468"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/nsrd.info\/blog\/wp-json\/wp\/v2\/tags?post=10468"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}