Merge tag 'for-linus-4.17-ofs' of git://git.kernel.org/pub/scm/linux/kernel/git/hubcap/linux
Pull orangefs updates from Mike Marshall: "Fixes and cleanups: - Documentation cleanups - removal of unused code - make some structs static - implement Orangefs vm_operations fault callout - eliminate two single-use functions and put their cleaned up code in line. - replace a vmalloc/memset instance with vzalloc - fix a race condition bug in wait code" * tag 'for-linus-4.17-ofs' of git://git.kernel.org/pub/scm/linux/kernel/git/hubcap/linux: Orangefs: documentation updates orangefs: document package install and xfstests procedure orangefs: remove unused code orangefs: make several *_operations structs static orangefs: implement vm_ops->fault orangefs: open code short single-use functions orangefs: replace vmalloc and memset with vzalloc orangefs: bug fix for a race condition when getting a slot
This commit is contained in:
@@ -21,10 +21,16 @@ Orangefs features include:
|
||||
* Stateless
|
||||
|
||||
|
||||
MAILING LIST
|
||||
============
|
||||
MAILING LIST ARCHIVES
|
||||
=====================
|
||||
|
||||
http://beowulf-underground.org/mailman/listinfo/pvfs2-users
|
||||
http://lists.orangefs.org/pipermail/devel_lists.orangefs.org/
|
||||
|
||||
|
||||
MAILING LIST SUBMISSIONS
|
||||
========================
|
||||
|
||||
devel@lists.orangefs.org
|
||||
|
||||
|
||||
DOCUMENTATION
|
||||
@@ -42,12 +48,59 @@ Orangefs versions prior to 2.9.3 would not be compatible with the
|
||||
upstream version of the kernel client.
|
||||
|
||||
|
||||
BUILDING THE USERSPACE FILESYSTEM ON A SINGLE SERVER
|
||||
====================================================
|
||||
RUNNING ORANGEFS ON A SINGLE SERVER
|
||||
===================================
|
||||
|
||||
You can omit --prefix if you don't care that things are sprinkled around in
|
||||
/usr/local. As of version 2.9.6, Orangefs uses Berkeley DB by default, we
|
||||
will probably be changing the default to lmdb soon.
|
||||
OrangeFS is usually run in large installations with multiple servers and
|
||||
clients, but a complete filesystem can be run on a single machine for
|
||||
development and testing.
|
||||
|
||||
On Fedora, install orangefs and orangefs-server.
|
||||
|
||||
dnf -y install orangefs orangefs-server
|
||||
|
||||
There is an example server configuration file in
|
||||
/etc/orangefs/orangefs.conf. Change localhost to your hostname if
|
||||
necessary.
|
||||
|
||||
To generate a filesystem to run xfstests against, see below.
|
||||
|
||||
There is an example client configuration file in /etc/pvfs2tab. It is a
|
||||
single line. Uncomment it and change the hostname if necessary. This
|
||||
controls clients which use libpvfs2. This does not control the
|
||||
pvfs2-client-core.
|
||||
|
||||
Create the filesystem.
|
||||
|
||||
pvfs2-server -f /etc/orangefs/orangefs.conf
|
||||
|
||||
Start the server.
|
||||
|
||||
systemctl start orangefs-server
|
||||
|
||||
Test the server.
|
||||
|
||||
pvfs2-ping -m /pvfsmnt
|
||||
|
||||
Start the client. The module must be compiled in or loaded before this
|
||||
point.
|
||||
|
||||
systemctl start orangefs-client
|
||||
|
||||
Mount the filesystem.
|
||||
|
||||
mount -t pvfs2 tcp://localhost:3334/orangefs /pvfsmnt
|
||||
|
||||
|
||||
BUILDING ORANGEFS ON A SINGLE SERVER
|
||||
====================================
|
||||
|
||||
Where OrangeFS cannot be installed from distribution packages, it may be
|
||||
built from source.
|
||||
|
||||
You can omit --prefix if you don't care that things are sprinkled around
|
||||
in /usr/local. As of version 2.9.6, OrangeFS uses Berkeley DB by
|
||||
default, we will probably be changing the default to LMDB soon.
|
||||
|
||||
./configure --prefix=/opt/ofs --with-db-backend=lmdb
|
||||
|
||||
@@ -55,35 +108,69 @@ make
|
||||
|
||||
make install
|
||||
|
||||
Create an orangefs config file:
|
||||
Create an orangefs config file.
|
||||
|
||||
/opt/ofs/bin/pvfs2-genconfig /etc/pvfs2.conf
|
||||
|
||||
for "Enter hostnames", use the hostname, don't let it default to
|
||||
localhost.
|
||||
Create an /etc/pvfs2tab file.
|
||||
|
||||
create a pvfs2tab file in /etc:
|
||||
cat /etc/pvfs2tab
|
||||
tcp://myhostname:3334/orangefs /mymountpoint pvfs2 defaults,noauto 0 0
|
||||
echo tcp://localhost:3334/orangefs /pvfsmnt pvfs2 defaults,noauto 0 0 > \
|
||||
/etc/pvfs2tab
|
||||
|
||||
create the mount point you specified in the tab file if needed:
|
||||
mkdir /mymountpoint
|
||||
Create the mount point you specified in the tab file if needed.
|
||||
|
||||
bootstrap the server:
|
||||
/opt/ofs/sbin/pvfs2-server /etc/pvfs2.conf -f
|
||||
mkdir /pvfsmnt
|
||||
|
||||
Bootstrap the server.
|
||||
|
||||
/opt/ofs/sbin/pvfs2-server -f /etc/pvfs2.conf
|
||||
|
||||
Start the server.
|
||||
|
||||
start the server:
|
||||
/opt/osf/sbin/pvfs2-server /etc/pvfs2.conf
|
||||
|
||||
Now the server is running. At this point you might like to
|
||||
prove things are working with:
|
||||
Now the server should be running. Pvfs2-ls is a simple
|
||||
test to verify that the server is running.
|
||||
|
||||
/opt/osf/bin/pvfs2-ls /mymountpoint
|
||||
/opt/ofs/bin/pvfs2-ls /pvfsmnt
|
||||
|
||||
If stuff seems to be working, turn on the client core:
|
||||
/opt/osf/sbin/pvfs2-client -p /opt/osf/sbin/pvfs2-client-core
|
||||
If stuff seems to be working, load the kernel module and
|
||||
turn on the client core.
|
||||
|
||||
/opt/ofs/sbin/pvfs2-client -p /opt/osf/sbin/pvfs2-client-core
|
||||
|
||||
Mount your filesystem.
|
||||
mount -t pvfs2 tcp://myhostname:3334/orangefs /mymountpoint
|
||||
|
||||
mount -t pvfs2 tcp://localhost:3334/orangefs /pvfsmnt
|
||||
|
||||
|
||||
RUNNING XFSTESTS
|
||||
================
|
||||
|
||||
It is useful to use a scratch filesystem with xfstests. This can be
|
||||
done with only one server.
|
||||
|
||||
Make a second copy of the FileSystem section in the server configuration
|
||||
file, which is /etc/orangefs/orangefs.conf. Change the Name to scratch.
|
||||
Change the ID to something other than the ID of the first FileSystem
|
||||
section (2 is usually a good choice).
|
||||
|
||||
Then there are two FileSystem sections: orangefs and scratch.
|
||||
|
||||
This change should be made before creating the filesystem.
|
||||
|
||||
pvfs2-server -f /etc/orangefs/orangefs.conf
|
||||
|
||||
To run xfstests, create /etc/xfsqa.config.
|
||||
|
||||
TEST_DIR=/orangefs
|
||||
TEST_DEV=tcp://localhost:3334/orangefs
|
||||
SCRATCH_MNT=/scratch
|
||||
SCRATCH_DEV=tcp://localhost:3334/scratch
|
||||
|
||||
Then xfstests can be run
|
||||
|
||||
./check -pvfs2
|
||||
|
||||
|
||||
OPTIONS
|
||||
|
Reference in New Issue
Block a user