On 09/12/16 12:48, Matt Raso-Barnett wrote:
> Hi Thomas,
> Thanks very much, that has fixed it for me.
>
> You mention though removing the backend_path variable, but actually is
> it possible to have different backend root variable for different
> fileclasses perhaps, or does the backup policy need to have a single
> backup area?
The backend_path attribute is the full path of the copy.
So you should specify in action parameters the path per entry, like:

backend_path = "/mnt/path/to/backup/location{fullpath}";

> It is a good question though, I could just use LHSM for this task too
> (and have different backup areas by archive_id etc...). At the moment
> I am just trying to test everything out to get a feel for how it all
> works and what would be the best policy for different situations. The
> backup policy seems very simple so was considering it as a another
> level of copy for reassurance in case something went wrong with the
> HSM.
Interesting.
In this case, take care about interactions between backup and lhsm.
For example, don't backup released files...

If you release files with lhsm, I suggest you modify the backup template 
to add this criteria to the scope:
"lhsm.status != released"

declare_policy backup_archive {
        scope { (...) and (lhsm.status != released) }
}

You can also add an ignore statement to backup_archive policy rules:
ignore { lhsm.status == released }

Regards,
Thomas

>
> Kind regards,
> Matt
>
>
>
>
>
>
>
>
>
>
>
>
> On Mon, Sep 12, 2016 at 9:48 AM, LEIBOVICI Thomas
> <[email protected]> wrote:
>> Hello,
>>
>> Sorry, its seams there is a lack in the documentation.
>>
>> The backup configuration is done by a "backup_config" block.
>> Here is an example:
>>
>> backup_config {
>>      root = "/backend";
>>      mnt_type = nfs;
>>      check_mounted = yes;
>>      copy_timeout  = 6h;
>>      recovery_action = common.copy;
>> }
>>
>> Drop this line from your config, or all your entries will be archived with
>> the same path! :
>>      backend_path = "/mnt/path/to/backup/location";
>>
>> Question: why do you use backup, as you could use lhsm to archive files?
>>
>> Regards,
>> Thomas
>>
>>
>> On 09/12/16 01:46, Matt Raso-Barnett wrote:
>>> Hello,
>>> I'm currently trying out Robinhood v3 for a new lustre deployment and
>>> I've been having a bit of trouble figuring out how to use the backup
>>> policies.
>>>
>>> I have working lhsm and cleanup policies, so after reading the wiki on
>>> the backup policy I had a go with the config below, however I don't
>>> think I'm setting the 'backend_path' correctly, as when I run
>>> robinhood I get error:
>>>
>>> 2016/09/11 23:43:04 [7470/1] CheckFS | Error 2 in realpath(/backend):
>>> No such file or directory
>>> 2016/09/11 23:43:04 [7470/1] smi_init | Failed to initialize status
>>> manager backup: error=2
>>>
>>> My current config (condensed):
>>>
>>> %include "includes/backup.inc"
>>>
>>> backup_archive_parameters {
>>>     nb_threads = 8;
>>>     # suspend policy run if action error rate > 10% (after 100 errors)
>>>     suspend_error_pct = 10%;
>>>     suspend_error_min = 100;
>>>     action_params {
>>>       backend_path = "/mnt/path/to/backup/location";
>>>     }
>>> }
>>>
>>> backup_archive_rules {
>>>     ignore_fileclass = empty_files;
>>>     ignore_fileclass = migration_directory;
>>>
>>>     rule backup_archive_directory {
>>>       target_fileclass = archive_directory;
>>>       condition { last_mod >= 30min }
>>>     }
>>> }
>>> backup_archive_trigger {
>>>     trigger_on = periodic;
>>>     check_interval = 5min;
>>> }
>>>
>>> backup_remove_parameters {
>>>     nb_threads = 8;
>>>     # suspend policy run if action error rate > 10% (after 100 errors)
>>>     suspend_error_pct = 10%;
>>>     suspend_error_min = 100;
>>>     action_params {
>>>       backend_path = "/mnt/path/to/backup/location";
>>>     }
>>> }
>>> backup_remove_rules {
>>>     # keep deleted files for 6 month before removing from tape
>>>     rule default {
>>>       condition { rm_time > 24w }
>>>     }
>>> }
>>> backup_remove_trigger {
>>>     trigger_on = scheduled;
>>>     check_interval = 1h;
>>> }
>>>
>>> I'm sure that the actual path I'm putting in for 'backend_path'
>>> exists, it's on an NFS mount if that makes a difference.
>>>
>>> Any hints would be much appreciated!
>>> Cheers,
>>> Matt Raso-Barnett
>>>
>>>
>>> ------------------------------------------------------------------------------
>>> _______________________________________________
>>> robinhood-support mailing list
>>> [email protected]
>>> https://lists.sourceforge.net/lists/listinfo/robinhood-support
>>
>>
> ------------------------------------------------------------------------------
> _______________________________________________
> robinhood-support mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/robinhood-support



------------------------------------------------------------------------------
_______________________________________________
robinhood-support mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/robinhood-support

Reply via email to