• No results found

How To Write A Libranthus (Libranthus) On Libranus 2.4.3/Libranus 3.5 (Librenthus) (Libre) (For Linux) (

N/A
N/A
Protected

Academic year: 2021

Share "How To Write A Libranthus (Libranthus) On Libranus 2.4.3/Libranus 3.5 (Librenthus) (Libre) (For Linux) ("

Copied!
21
0
0

Loading.... (view fulltext now)

Full text

(1)

LUSTRE/HSM BINDING

IS THERE!

SEPTEMBER, 17th 2013

LAD'13 | Aurélien Degrémont <[email protected]>

(2)

LAD'13 | 17 SEPTEMBER 2013

AGENDA

Presentation

Architecture

Components

Examples

Project status

5 septembre 2013 | PAGE 2

(3)

PRESENTATION

5 septembre 2013 | PAGE 3

(4)

LAD'13 | 17 SEPTEMBER 2013

PRESENTATION (1/3)

A long-awaited project!

This project started several years ago. It has known all Lustre companies.

After lots of modifications and rewrites, it is finally there!

It is landed!

Partially landed in Lustre 2.4

Has reached total inclusion in Lustre 2.5

Will be available in it, at the end of October 2013.

(5)

LAD'13 | 17 SEPTEMBER 2013

PRESENTATION (2/3)

Principle

HSM seamless integration 5 septembre 2013 | PAGE 5 Client Client Clients Client Client Clients Client Client Clients

Take the best of each world:

Lustre: High performant disk-cache in front of the HSM - Parallel filesystem

- High I/O performance - POSIX access

HSM: long term data storage - Manage large number of

cheaper disks and tapes - Huge storage capacity

Ideal for center-wide Lustre filesystem.

(6)

LAD'13 | 17 SEPTEMBER 2013

PRESENTATION (3/3)

Features

Migrate data to HSM (Archive)

Free disk space when needed (Release) Bring back data on cache-miss (Restore)

Policy management (migration, purge, soft removal,…) Import from existing backend

Disaster recovery (restore Lustre filesystem from backend)

New components

Copy tool (backend specific user-space daemon) Policy Engine (user-space daemon)

Coordinator

(7)

ARCHITECTURE

5 septembre 2013 | PAGE 7

(8)

LAD'13 | 17 SEPTEMBER 2013

ARCHITECTURE (1/2)

New components:

Coordinator

,

Agent

and

Copy tool

The coordinator gathers archive requests and dispatches them to agents. Agent is a client which runs a copytool to transfer data between Lustre and the HSM. 5 septembre 2013 | PAGE 8 C lie nt s

Lustre world HSM world

OSS OSS MDS HSM protocols Coordinator Archiving tool Archiving tool Client “Agent” Client “Agent”Client “Agent” Copy tool

(9)

LAD'13 | 17 SEPTEMBER 2013

ARCHITECTURE (2/2)

PolicyEngine

manages Archive and Release policies

A user-space tool which communicates with the MDT and the coordinator. Watches the filesystem changes.

Triggers actions like archive, release and removal in backend.

5 septembre 2013 | PAGE 9 C lie nt s OSS OSS MDS Coordinator Client PolicyEngine

(10)

COMPONENTS

5 septembre 2013 | PAGE 10

(11)

LAD'13 | 17 SEPTEMBER 2013

Lustre Client “Agent

COMPONENTS (1/4)

Copytool

It is the interface between Lustre and the HSM.

It reads and writes data between them. It is HSM specific. It runs on a standard Lustre client (called Agent)

2 of them are already available:

POSIX copytool. Could be used with any system supporting a POSIX interface. - It is provided with Lustre

HPSS copytool. (HPSS 7.3.2+).

- CEA development which will be freely available to all HPSS sites.

More supported HSM to come:

DMF (SGI)

OpenArchive (GRAU DATA)

5 septembre 2013 | PAGE 11

HSM world

HSM protocols

(12)

LAD'13 | 17 SEPTEMBER 2013

Requests

COMPONENTS (2/4)

Coordinator

MDS thread which coordinates HSM-related actions.

Centralize HSM-related requests. Ignore duplicate request.

Control migration flow.

Dispatch requests to copytools.

Requests are saved and replayed if MDT crashes.

5 septembre 2013 | PAGE 12 MDS Coordinator Copy tool Copy tool Copy tool Requests

(13)

LAD'13 | 17 SEPTEMBER 2013

MDT

COMPONENTS (3/4)

DNE compatible

Distributed NamespacE feature, introduced in Lustre 2.4, is compatible with Lustre/HSM

With the following constraints:

One Coordinator for each MDT

- Each Coordinator only cares about its MDT files Every copytools connect to every Coordinators - No cluster-wide load balancing, though

Implementation is currently suboptimal and is to be improved in the future

5 septembre 2013 | PAGE 13 Coordinator Copy tool Copy tool Copy tool MDT Coordinator

(14)

LAD'13 | 17 SEPTEMBER 2013

COMPONENTS (4/4)

Policy Engine: RobinHood

PolicyEngine is the specification RobinHood is an implementation:

Was first a user-space daemon for monitoring and purging large filesystems. CEA opensource development (http://robinhood.sf.net)

Requires RobinHood 2.4.3+

Policies

File class definitions, associated to policies

Based on files attributes (path, size, owner, age, xattrs…) Rules can be combined with boolean operators

LRU-based migration/purge policies Entries can be white-listed

5 septembre 2013 | PAGE 14

Client PolicyEngine

(15)

EXAMPLES

5 septembre 2013 | PAGE 15

(16)

LAD'13 | 17 SEPTEMBER 2013

EXAMPLES (1/4)

Setup

Requirements:

Standard Lustre v2.5 (so far, current master branch), sources or RPMs

RobinHood v2.4.3+ sources, from RobinHood website (no RPMs available yet)

Simple configuration (theorically, 1 Lustre node is enough)

5 septembre 2013 | PAGE 16 Client OSS MDS Client “Agent” POSIX Copy tool HSM Robinhood

file accesses & lfs

MySQL

HSM with a POSIX interface

(17)

LAD'13 | 17 SEPTEMBER 2013

EXAMPLES (2/4)

Command line tools

Sysadmins and users can manage file system states:

5 septembre 2013 | PAGE 17

$ lfs hsm_archive /mnt/lustre/foo

$ lfs hsm_state /mnt/lustre/foo

/mnt/lustre/foo: (0x00000009) exists archived, archive_id:1

$ lfs hsm_release /mnt/lustre/foo

$ lfs hsm_state /mnt/lustre/foo

/mnt/lustre/foo: (0x0000000d) released exists archived, archive_id:1

$ md5sum /mnt/lustre/foo

ded5b0680e566aa024d47ac53e48cdac /mnt/lustre/foo

$ lfs hsm_state /mnt/lustre/foo

/mnt/lustre/foo: (0x00000009) exists archived, archive_id:1

ARCHIVE

RELEASE

AUTOMATIC RESTORE

(18)

LAD'13 | 17 SEPTEMBER 2013

EXAMPLES (3/4)

Example RobinHood policy: Migration

Migrate files older than 12 hours with a different behavior for small ones.

5 septembre 2013 | PAGE 18

Filesets {

FileClass small_files {

definition { tree == "/mnt/lustre/project" and size < 1MB } migration_hints = "cos=12" ;

... }

}

Migration_Policies {

ignore { size == 0 or xattr.user.no_copy == 1 }

ignore { tree == "/mnt/lustre/logs" and name == "*.log" }

policy migrate_small {

target_fileclass = small_files;

condition { last_mod > 6h or last_archive > 1d } } ... policy default { condition { last_mod > 12h } migration_hints = "cos=42" ; } }

(19)

LAD'13 | 17 SEPTEMBER 2013

EXAMPLES (4/4)

Example RobinHood policy: Release

Release archived files when FS usage is above 90 % but ignore some files.

5 septembre 2013 | PAGE 19 Purge_trigger { trigger_on = ost_usage; high_watermark_pct = 90%; low_watermark_pct = 80%; } Purge_Policies {

ignore { size < 1KB or owner == “root” }

policy purge_quickly {

target_fileclass = class_foo;

condition { last_access > 1min } } ... policy default { condition { last_access > 1h } } }

(20)

LAD'13 | 17 SEPTEMBER 2013

PROJECT STATUS

Client-side was landed in Lustre 2.4

Only support compute node accesses No administrative task

Does not support copytools

Full code is landed in current master branch

Thanks to Intel, the whole code is now landed ETA: End of October 2013

Will be available in Lustre 2.5, which will be the next maintenance branch Currently under test and debugging

(21)

5 septembre 2013 LAD'13 | 17 SEPTEMBER 2013| PAGE 21

Thanks.

References

Related documents

• Taxpayers subject to the provisions of Title II of the Income Tax Law (ITL) which have declared taxable income of $644,599,005 or more in the immediately preceding tax

Most companies recruit for full-time and internship positions, but some indicate Co-Op as a recruiting priority, while not attending Professional Practice

During the thesis work, I measured six different parameters: the number of emergency processes, hash table entry number, caching replacement policy, cache entry

The UNO Assessment Committee is responsible for guiding the process of campus-wide academic assessment of student learning, and to that end it conducts regular reviews of

The algorithm will only match applicants employers preferred for NESP positions to NESP positions and applicants employers preferred for NETP positions to NETP positions. This way

In the previous sections, we dis- cuss the expectation that a neural network exploiting the fractional convolution should perform slightly worse than a pure binary (1-bit weights

Customer to pay any amount within ten (10) days after the amount is due and payable, b) abuse of the System or the equipment, c) dissolution, termination, discontinuance,

Political Parties approved by CNE to stand in at least some constituencies PLD – Partido de Liberdade e Desenvolvimento – Party of Freedom and Development ECOLOGISTA – MT –