Для долговременного хранения экспериментальных данных на лентах предназначена система EOSCTA (CERN Tape Archive ). Это система архивного хранения копий реализована как ленточная серверная часть для EOS. В ней хранятся данные физических экспериментов, невключённых в WLCG ( Для последних используется dCache-Enstore инфраструктура).
Работа с ленточным хранилищем EOSCTA организована аналогично ЦЕРН. Структура передачи данных EOS ↔ EOSCTA изображена на рис.
Как работает EOSCTA
Для Архивирования данных с диска (EOS ) на ленту (EOS/CTA) используется FTS, XRootd. После успешного завершения копирования на ленту появляется запись файла в пространстве имен EOSCTA, а запись о файле в базе данных EOS стирается и сам файл удаляется с диска EOS.
Для копирования данных с ленты на диск используется FTS, плагин XRootD GFAL2 (совершает запрос на перенос файла), XRootD TPC. Далее после завершения копирования с ленты на диск, реплика диска удаляется c EOSCTA.
Работа с EOSCTA на ферме ЦИВК.
1) Войти на ферму через
ssh/putty/bitvise lxui.jinr.ru
2) Получить прокси:
voms-proxy-init —voms …..
3) Настроить переменные среды для EOSCTA:
export XrdSecPROTOCOL=gsi,unix
export EOS_MGM_URL=root://cta-eos.jinr-t1.ru
(FYI:
- EOS_MGM_URL=root://cta-eos.jinr-t1.ru
означает запись файлов на EOSCTA,
- EOS_MGM_URL=root://eos.jinr.ru
oзначает запись файлов на EOS.)
4) для теста создать : /eos/project/test/file.txt —
через некоторое время файл будет перемещен на ленту.
5) проверка файла на ленте:
xrdfs $EOS_MGM_URL query prepare 11 /eos/project/test/
В выводе команды должны быть строки:
«on_tape» : true — файл есть на ленте
«online» : false — файла на диске нет
Даже если файл остался на диске — ситуация временная, файл будет удален автоматически все-равно, поэтому его нельзя использовать для обработки.
6) Загрузить файл с ленты на диск
xrdfs $EOS_MGM_URL prepare -s /eos/project/test/file.txt
и проверить состояние файла на диске, повторив команду запроса (ждать несколько минут, до часа, если загрузок много):
xrdfs $EOS_MGM_URL query prepare 12 /eos/project/test/file.txt
Если загрузка завершилась успешно, получим новый статус как показано выше.
Далее следует скопировать файл /eos/project/test/file.txt в любой свой каталог на локальный диск или /eos/user/…. :
xrdcp root://cta-eos.jinr-t1.ru//eos/project/user/…. file.txt
Если этого не сделать, файл будет потерян. Tак как скопированный файл находится в буфере — означает хранение временное и будет автоматически удален.
Если вы хотите иметь копию файла EOS на ленте EOSCTA, используйте команду xrdcp :
xrdcp file.txt root://cta-eos.jinr-t1.ru//eos/project/user/…./file.txt
P.S. Следует помнить что для каждого эксперимента ( /eos/project) существует квота на пространство и количество файлов.
Важно: в отличие от EOSCTA, в случае непреднамеренного удаления файлов с EOS или серьезного аппаратного сбоя EOS, файлы могут быть невосстановимы.
Использование «gfal-copy -f » для копирования файлов с EOS на EOSCTA.
gfal-copy -f <ваш файл> davs://dvl-eos.jinr.ru:8443//eos/project/dir/
gfal-copy -f davs://eos.jinr.ru:8443//<ваш файл> davs://dvl-eos.jinr.ru:8443//eos/project/dir/
Пример:
lxui04:~ > gfal—copy —f \
davs://eos.jinr.ru:8443//eos/nica/mpd/test/test-tvv-3808-1 \
davs://cta—eos.jinr—t1.ru:8443//eos/nica/mpd/test/
Copying davs://eos.jinr.ru:8443//eos/nica/mpd/test/test-tvv-3808-1 [DONE] after 0s
После копирования файл остаётся и на EOS и на EOSCTA (автоматически пишется на ленты).
Тем, кто ранее пользовался dCache следует помнить, что в EOS можно записать файл с тем же именем, что и существующий, но это будет новый файл, соответственно будет создана новая копия на лентах. Переписи файла можно избежать, если не использовать флаг –f.
Команда eos cp работает так же, как gfal-copy –f.
Полезные ссылки на документы CERN.