Hi Michael,

This is what I have in my Robinhood configuration file and it is working
well for us. Please look into it to see whether it helps.


[root@---- ~]# cat /etc/robinhood.d/tmpfs/scratch.conf

General

{

fs_path       = "/scratch";

fs_type       = lustre;

check_mounted = true;

}


Log

{

log_file    = "/var/log/robinhood/scratch_fs.log";

report_file = "/var/log/robinhood/reports.log";

alert_file  = "/var/log/robinhood/alerts.log";

debug_level = MAJOR;

}


ListManager

{

MySQL

{

server = localhost;

db     = robinhood_scratch;

user   = robinhood;

password_file = /etc/robinhood.d/.dbpassword;

}

}


# Entry Processor configuration

EntryProcessor

{

    # nbr of worker threads for processing pipeline tasks

    nb_threads = 8 ;


    # Max number of operations in the Entry Processor pipeline.

    # If the number of pending operations exceeds this limit,

    # info collectors are suspended until this count decreases

    max_pending_operations = 1000 ;


}


# FS Scan configuration

FS_Scan

{


    # number of threads used for scanning the filesystem

    nb_threads_scan        =     8 ;

    #completion_command     =    "/path/to/my/script.sh -f {cfg} -p
{fspath}" ;

    completion_command     =
"/root/scratch_cleanup/reports/emailCgsbUsage.sh";


}

Filesets {


 FileClass hpc_admins

{

Definition

{

owner == "---"   or owner == "---" or owner == "---"

or

owner == "---" or owner == "---" or owner == "---"

}

}


}


db_update_policy

{

fileclass_update = always;

}


Purge_Trigger

{

trigger_on         = periodic;

check_interval     = 7day;

}


rmdir_policy

{

    # Remove directories that have been empty for more than 1 minute

    age_rm_empty_dirs   = 1min;


    # don't remove dirs that owned by 'root' or whose depth < 2

    Ignore

    {

        depth < 2

or tree == "/scratch/root"

or tree == "/scratch/cgsb"

or tree == "/scratch/work"

or owner == "root"

or type == symlink

    }


}


Purge_Policies

{

Ignore

{

last_access <= 60d

or tree == "/scratch/root"

or tree == "/scratch/cgsb"

or tree == "/scratch/work"

}


 Ignore { owner == "root" or type == symlink }


 ignore_fileclass = hpc_admins;

 Policy default

{

condition

{

Last_access > 60d

}

}

}


# Resource Monitor configuration

Purge_Parameters

{

    # nbr of thread for performing purge operations

    nb_threads_purge      = 8 ;


    # Immediately after purging data, 'df'/'ost df' may not return an exact
value,

    # especially if freeing disk space is asynchronous.

    # So, it is necessary to wait for a while after a purge before

    # issuing a new 'df'/'ost df' command.

    post_purge_df_latency = 1min ;


    # queue size (for leveraging purge threads load)

    purge_queue_size      = 4096 ;


    # Limit the size of database result sets (save memory)

    db_result_size_max    = 10000 ;

}


# Directory Remover configuration

Rmdir_Parameters

{

    # Interval for performing empty directory removal

    runtime_interval = 12h ;


    # Number of threads for performing rmdir operations

    nb_threads_rmdir = 8 ;


    # Queue size (for leveraging rmdir threads load)

    rmdir_queue_size = 256 ;

}

Sreedhar Manchu
HPC Systems Administrator
eSystems & Research Services
New York University, New York 10012



On Mon, Dec 9, 2013 at 10:41 AM, Michael Ruepp <[email protected]>wrote:

> Hello,
>
>
> I try to set up our Robin hood instance on fhgfs.
>
> We have one folder which content and tree should be purged when file
> creation time is older than 30d.
> The rest of the files should be under no circumstances be purged.
>
> I put together the following conf file:
> ...
> Purge_Trigger {
>         trigger_on = periodic;
>         check_interval = 1d;
> }
>
> Purge_Parameters {
>         nb_threads_purge      = 4;
>         post_purge_df_latency = 1min;
>         db_result_size_max    = 10000;
>         recheck_ignored_classes = true;
> }
>
> Filesets {
>         FileClass scratchFolderMonthOld {
>                 Definition {
>                         tree == "/fhgfs/scratch"
>                         and
>                         creation > 30d
>                         }
>         }
> }
>
> rmdir_policy {
>         recursive_rmdir {
>                         tree == "/fhgfs/scratch"
>                         and last_mod > 30d
>                         }
> }
>
> rmdir_parameters {
>         # Interval for performing empty directory removal
>         runtime_interval = 1d ;
>         # Number of threads for performing rmdir operations
>         nb_threads_rmdir = 4 ;
> }
>
>
> Purge_policies {
>         policy scratchPolicy
>         {
>                 target_fileclass = scratchFolderMonthOld;
>                 condition {
>                         last_access > 1h
>                         and
>                         last_mod > 2h
>                         }
>         }
> }
>
>
> However, robinhood complains about that a default policy is missing.
>
> Am I able to write a ignore condition for the rest of the files?:
>
>
> Purge_policies {
>         policy default
>         {
>                 Condition { ignore }
>         }
>
>         policy scratchPolicy
>         {
>                 target_fileclass = scratchFolderMonthOld;
>                 condition {
>                         last_access > 1h
>                         and
>                         last_mod > 2h
>                         }
>         }
> }
>
> Thanks a lot,
>
> Michael
>
>
>
>
>
>
>
> _________________________________
>
> Michael Ruepp
> Scientific Cluster Support
> _________________________________
>
> CeMM
> Research Center for Molecular Medicine
> of the Austrian Academy of Sciences
>
>
>
>
>
>
> ------------------------------------------------------------------------------
> Sponsored by Intel(R) XDK
> Develop, test and display web and hybrid apps with a single code base.
> Download it for free now!
>
> http://pubads.g.doubleclick.net/gampad/clk?id=111408631&iu=/4140/ostg.clktrk
> _______________________________________________
> robinhood-support mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/robinhood-support
>
------------------------------------------------------------------------------
Sponsored by Intel(R) XDK 
Develop, test and display web and hybrid apps with a single code base.
Download it for free now!
http://pubads.g.doubleclick.net/gampad/clk?id=111408631&iu=/4140/ostg.clktrk
_______________________________________________
robinhood-support mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/robinhood-support

Reply via email to