Daemon rucio-reaper¶
The Reaper daemon is responsible for replica deletion. It deletes them by checking if there are replicas that are not locked and have a tombstone to indicate that they can be deleted.
usage: rucio-reaper [-h] [--run-once] [--total-workers TOTAL_WORKERS] [--threads-per-worker THREADS_PER_WORKER] [--chunk-size CHUNK_SIZE] [--scheme SCHEME]
[--greedy] [--exclude-rses EXCLUDE_RSES] [--include-rses INCLUDE_RSES] [--rses RSES [RSES ...]] [--vos VOS [VOS ...]]
[--delay-seconds DELAY_SECONDS]
Named Arguments¶
- --run-once
One iteration only
Default: False
- --total-workers
Total number of workers per process
Default: 1
- --threads-per-worker
Total number of threads created by each worker
- --chunk-size
Chunk size
Default: 10
- --scheme
Force the reaper to use a particular protocol, e.g., mock.
- --greedy
Greedy mode
Default: False
- --exclude-rses
RSEs expression to exclude RSEs
- --include-rses
RSEs expression to include RSEs
- --rses
List of RSEs
- --vos
Optional list of VOs to consider. Only used in multi-VO mode.
- --delay-seconds
Delay to retry failed deletion
Default: 3600
Upload a file and prepare the rules and replicas for deletion by using the judge-cleaner daemon:
$ rucio upload --rse MOCK --scope mock --name file filename.txt
$ rucio add-rule mock:file 1 MOCK2 --lifetime 1
$ rucio-judge-cleaner --run-once
Check if the replica was created:
$ rucio list-file-replica mock:file
+---------+--------+------------+-----------+---------------------------------------------------------+
| SCOPE | NAME | FILESIZE | ADLER32 | RSE: REPLICA |
|---------+--------+------------+-----------+---------------------------------------------------------|
| mock | file | 1.542 kB | 1268ee71 | MOCK: file://localhost:0/tmp/rucio_rse/mock/15/58/file |
+---------+--------+------------+-----------+---------------------------------------------------------+
Run the daemon:
$ rucio-reaper --run-once
Check if the replica exists:
$ rucio list-file-replica mock:file
+---------+--------+------------+-----------+---------------------------------------------------------+
| SCOPE | NAME | FILESIZE | ADLER32 | RSE: REPLICA |
|---------+--------+------------+-----------+---------------------------------------------------------|
+---------+--------+------------+-----------+---------------------------------------------------------+
When run in multi-VO mode, by default the Reaper will run on RSEs from all VOs:
$ rucio-reaper --run-once
2020-07-28 15:15:14,110 5461 INFO main: starting processes
2020-07-28 15:15:14,151 5461 INFO Reaper: This instance will work on VOs: def, abc, xyz, 123
By using the --vos
argument only the VO or VOs specified will be affected by the Reaper:
$ rucio-reaper --run-once --vos abc xyz
2020-07-28 15:16:36,022 5474 INFO main: starting processes
2020-07-28 15:16:36,066 5474 INFO Reaper: This instance will work on VOs: abc, xyz
Note that attempting the use the --vos
argument when in single-VO mode will have no affect:
$ rucio-reaper --run-once --vos abc xyz
2020-07-28 15:21:33,348 5488 INFO main: starting processes
2020-07-28 15:21:33,349 5488 WARNING Ignoring argument vos, this is only applicable in a multi-VO setup.