Na této stránce naleznete návod na využívání služby LTP provozované sdružením CESNET. Tato služba je určena pro dlouhodobé uchovávání dat trvalé hodnoty.
Služba je provozována na těchto stránkách https://ltp.cesnet.cz/ a je dostupná registrovaným uživatelům přes webové rozhraní a přes API.
Služba LTP slouží jako temný archiv, do kterého můžete ukládat speciálně připravené archivní balíčky (jejich přípravu popíšeme níže). Archivní balíčky obsahují vlastní data a také metadata. Metadata jsou jednak věcná (popis experimentu, jméno autora, apod.), ta systémem nejsou nijak interpretována a slouží pro potřeby uživatele. Dále jsou to metadata technická, tedy zejména kontrolní součty ukládaných souborů. Ta slouží k ověřování, že se obsah balíčku binárně nepoškodil.
Po nahrání archivního balíčku provede automatizovaný systém jeho validaci: prověří vnitřní kontrolní součty z metadat balíčku a jeho celkový formát. Systém dále s metadaty balíčku nepracuje, pro kontroly jeho binární konzistence si vytvoří vlastní (vnější) kontrolní součty. To má výhodu ve snazším zpracování a navíc kontrolní součty zahrnují i kompletní metadata. Vnější kontrolní součty pak slouží k průběžné kontrole archivního balíčku. Tyto průběžné kontroly a jejich výsledky budou zaznamenávány do auditních zpráv, které budete mít možnost monitorovat.
Pro ukládání vašich dat v rámci služby LTP je nezbytné z vašich dat nejdříve vygenerovat tzv. archivní balíček, který bude mít příslušný formát podporovaný naší službou. Služba LTP provozovaná sdružením CESNET pracuje s archivními balíčky odpovídajícími standardu Bagit. Pro přípravu archivních balíčků je tedy nezbytné využívat nástroje využívající tento standard.
Pro přípravu archivních balíčků v prostředí Linux s využitím příkazové řádky doporučujeme využití nástroje bagit-python vyvíjený Knihovnou Kongresu - USA Library of Congress.
Pro instalaci je nezbytné nejprve nainstalovat balíček python-pip. Pro úspěšnou instalaci nástroje bagit je nezbytné mít v systému python v3.0 a vyšší. Následně tedy můžeme provést instalaci (jako správce systému).
pip install bagit
bagit.py --help
Pozor, tento proces přesouvá data ve struktuře složek.
bagit.py --md5 --processes 4 /adresar/k/zabaleni
–md5 specifikuje typ použitého algoritmu, jedná se o uživatelskou volbu, jaký algoritmus chete použít (např. SHA256)
–processes bude provádět paralelní výpočet kontrolních součtů s použitím více jader (zde např. 4)
Výroba archivního balíčku způsobí, že se v koncovém adresáři vytvoří několik pomocných souborů a adresář data. V adresáři data je uložena původní adresářová struktura, na kterou jsme použili nástroj bagit.
15:38 bag-info.txt 15:38 bagit.txt 15:38 data 15:38 manifest-md5.txt 15:38 tagmanifest-md5.txt
Nejdříve se přesuneme do adresáře, na který jsme použili bagit nástroj.
cd /adresar/k/zabaleni
Následně provedeme zabalení aktuálního adresáře s tím, že výstupní soubor umístíme do jiné destinace, zde například uživatelský home.
zip -r /home/student/my_archive_package.zip .
Pro ukládání archivních balíčků je možné využít webové prostředí na adrese https://ltp.cesnet.cz/. Registrovaní uživatelé se přihlásí svou institucionální identitou.
Po přihlášení do služby LTP můžete v levém horním rohu vybrat příslušný skupinový kontext (pokud jste členem jen jedné skupiny, budete mít na výběr jen jednu možnost). Skupinovým kontextem se rozumí skupina vytvořená a spravovaná v systému pro správu uživatelů, jejímž jste členem. Tato skupina využívající službu LTP CESNET je správcem všech dat, které do služby nahrají členové příslušné skupiny. Její členové mohou do kontextu přidávat nové balíčky, zobrazovat detaily archivních balíčků, auditní zprávy a provádět updaty.
Dále si na zobrazené stránce můžete po kliknutí na ikonku zvonečku (červená) v pravé horní části zobrazit notifikace týkající se posledních auditních záznamů v daném skupinovém kontextu. Případně můžete pomocí vyhledávacího pole (červená) v pravé horní části prohlédávat balíčky podle uživatelských metadat.
Odhlášení ze služby LTP CESNET je možné provést po kliknutí na ikonku (zelená) v pravém horním rohu a kliknutí na tlačítko Logout.
Pro nahrání balíčku je nejdříve nezbytné připravit validní archivní balíček podle bagit standardu a zabalit jej do souboru *.zip.
Pro nahrání archivního balíčku je nezbytné (1) vybrat kskupinový kontext a (2) vyplnit název záznamu Package name. Následně můžeme přidat (3) uživatelská metadata Package metadata. Zde můžeme využít buď ručního (4) vložení metadat, případně můžeme nahrát metadata pomocí existujícího json souboru. Nakonec vytvoříme nový záznam (5).
Po vytvoření nového záznamu se nám zobrazí stránka pro upload souborů. Zde můžete buď archivní balíček vybrat z disku, případně přetáhnout do okna prohlížeče.
Jakmile vyberete soubor, můžete kliknout na tlačítko Upload file.
Po nahrání archivního balíčku se v přehledovém menu zobrazí váš záznam s šedou hlavičkou. Tento stav indikuje, že záznam byl v pořádku vytvořen a soubor byl uložen. Jakmile proběhnou kontroly archivního balíčku (validace balíčku), tak bude hlavička záznamu zelená (podobně jako u záznamu vpravo).
V levém menu klikneme na tlačítko Archives, čímž dojde k zobrazení přehledu archivních balíčků. Každý balíček je jednoznačně identifikován svým ID. Dále je u každého balíčku uveden Create date, Version - v případě updatu dochází k verzování balíčků, Status - popis stavů balíčku a proklik na detailní informace k danému balíčku.
Po kliknutí na detail balíčku se zobrazí přehled dostupných informací o balíčku (ID, Create date, Version, Status, Metadata, Archive Package content, …). Na zobrazené stránce je možné balíček stáhnout - tlačítko Prepare download, provést jeho editaci - tlačítko Edit archive, případně vynutit jeho validaci - tlačítko Enforce validation (kontrola kontrolního součtu). Vpravo pak nalezneme výpis auditních zpráv k příslušnému balíčku, například kontrola kontrolních součtů, informace o stažení atp.
Neprve musíme přejít na deatil balíčku, jehož obsah chceme stáhnout. Následně klikneme na tlačítko (1) Prepare download. Archivní balíček musí nejdříve systém připravit pro stažení. Tato příprava zahrnuje jeho vytažení z archivu a kontrolu kontrolního součtu.
Jakmile jsou kontroly dokončeny objeví se tlačítko (2) Download here, čímž dojde ke stažení balíčku.
Při kliknutí na tlačítko Edit Archive se zobrazí formulář podobný tomu, který jsme použili pro vytvoření/uložení archivního balíčku. Zde je možné změnit metadata balíčku. Po dokončení editace stačí kliknout na tlačítko Save Changes a dojde k uložení balíčku. Následně bude balíček v poli Version označen vyšším číslem než předchozí verze.
Při kliknutí na tlačítko Audits v levém menu si můžete zobrazit všechny auditní zprávy pro všechny balíčky uložené v daném skupinovém kontextu. Nejčerstvější auditní záznamy si můžete rovněž prohlédnout, pokud kliknete na ikonku zvonečku v pravé horní části stránky.
Kliknutím na tlačítko Notifications (1) v levém menu si můžete nastavit požadované notifikace, například pro případ porušení integrity archivního balíčku.
Pro přístup přes API rozhraní je nezbytné nejdříve získat přístupový API klíč. Klíč má omezenou platnost.
Přístupový klíč si můžete vygenerovat ve webovém prostředí pomocí následujících kroků.
1. Přihlásit se přes web na https://ltp.cesnet.cz/
2. Klikněte v levém menu na tlačítko (1) User Profile, případně v pravém horním rohu na (2) vaše jméno.
3. Klikněte na talčítko (1) Manage Tokens. Na zobrazené stránce si můžete rovněž vybrat (2) výchozí skupinový kontext, který se zobrazí po přihlášení.
4. Na zobrazené stránce vyplňte (1) název tokenu a klikněte na tlačítko (2) Save Token. Následně si (3) zkopírujte token do vašich poznámek. Opětovné zobrazení tokenu již nebude možné. Pokud si přejete některý z existujících tokenů revokovat, můžete použít (4) tlačítko s křížkem.
Uložení uživatelského tokenu do proměnné.
LTP_TOKEN=d7d6ae316f8cb34ec2561421962a737ce30a95d8
Kontrola, že došlo k uložení tokenu do proměnné.
echo ${LTP_TOKEN} d7d6ae316f8cb34ec2561421962a737ce30a95d8
Referenční implementace LTP API je dostupná jako python knihovna, kde rovněž naleznete instrukce k instalaci a základní příklady příkazů. Generovaná dokumentace k LTP je dostupná na stránkách služby LTP.