Revision 7 as of 2008-05-26 15:29:02

Clear message

TableOfContents

General concepts

Goodies

}}}

Working with an AFS+OSD cell

The following techniques are only useful when using OSD as a frontend for HSM:

}}} is useful for finding all objects stored on a given OSD

}}} allows the user to schedule tape restore operations

osd f io_a}}}

}}} where 12 is the OSD's ID from the OSDDB.

Osd 'io_e' with id=12:

Other HSM related features:

}}}

This is how a fileserver and OSD server can share one machine:

The new fs ls subcommand can tell files apart:

m rwx root 2048 2008-05-08 13:21:01 . m rwx root 2048 2008-05-08 16:31:48 .. f rw- bin 44537893 2008-05-08 11:36:40 ascii-file f rw- bin 1048576 2008-05-08 13:21:14 ascii-file.osd d rwx bin 2048 2008-05-08 09:06:52 dir f rw- bin 0 2008-05-08 13:08:46 empty-file o rw- bin 44537893 2008-05-08 13:19:58 new-after-move }}} where m is a mountpoint, f a file, d a directory and o an object. fs ls will also identify files with their objects wiped from on-line object storage (i.e., with archival copies only).

How to migrate data from an OSD

  1. set a low write priority to stop fileservers from storing data on the OSD in question {{{osd setosd -wrprior 0

}}}

  1. use {{{vos listobj

}}} to identify the files (by fid) that have data on the OSD

  1. use {{{fs replaceosd

}}} to move each file's data to another OSD

Priorities and choice of storing OSD

}}}

Customizing owner, location:

}}} makes an AFS fileserver (!) known to the OSDDB

Server 'iokaste' with id=141.34.22.101:

osd addserver: create server entry in osddb Usage: osd addserver -id <ip address> -name <osd name> [-owner <group name (max 3 char)>] [-location <max 3 characters>] [-cell <cell name>] [-help] }}} as the name to be specified is not actually an "osd name" but an alias name for the file server you're adding.

Data held in volumes, DBs etc.

}}}

}}}

How to upgrade a cell to AFS+OSD

  1. set up OSDDB on the database servers
  2. set up pristine AFS+OSD fileservers + OSDs
  3. move volumes to the AFS+OSD fileservers
    • volserver is supposed to be armed with a -convertvolumes switch for that purpose

    • otherwise, set the osdflag by hand {{{vos setfields <volume> -osd 1

}}}

Policies

Open questions

Technical aspects

Performance

Backwards compatibility

Notes on the code (changes)

The explanations are from vol/namei_ops.c. The new format is used as Linktable version 2, with the original format still being supported as version 1. /!\ Does the code need to support legacy link table format? Volumes are incompatible anyway.

Debugging techniques