User Tools

Site Tools


Sidebar

Navigation

Join us by

user mailing list
devel mailing list


More news...

RSS

tutorial:main

Installation

How to install dependencies

BlobSeer has the following external dependencies:

  1. Boost, a collection of free peer-reviewed portable C++ source libraries (Boost 0.40 and above)
  2. Libconfig, a simple library for manipulating structured configuration files for C/C++
  3. Berkley DB, a transactional embedded key/value data store

It is always a good idea to install these libraries using your distribution's package manager. If this is not possible you must build and install them manually. For your convenience, it is a good idea to install libraries that you manually build in a local directory, such that they are easy to remove and do not interfere with your system's standard libraries. This is mandatory if, for example, you do not have root access.

Throughout this tutorial, it is assumed you are running a UNIX platform, and you want to install the libraries in your local home directory ~/deploy.

Note: versions prior to 0.3.2 depend on OpenSSL as well. If for some reason you do not wish to ugrade to the latest version, please refer to the OpenSSL documentation on how to configure and install OpenSSL.

Redhat/CentOS: yum install openssl-dev

How to install Boost

BlobSeer needs to link against the following Boost libraries: system, serialization, thread, filesystem and date_time. Boost documentation).

A recent version of Boost (>= 1.51.0) is required.

Here's how to configure and install Boost:

./bootstrap.sh --prefix=$HOME/deploy --with-libraries=system,thread,serialization,filesystem,date_time -libdir=$HOME/deploy/lib
./bjam install

Verify that the libraries are in the right place:

ls $HOME/deploy/lib

How to install Libconfig

Use the standard automake configure script:

./configure --prefix=$HOME/deploy && make && make install

And check to make sure the libraries are in the right place:

ls $HOME/deploy/lib

How to install Berkley DB

Uunpack the .tar file and change to the build_unix directory, then

../dist/configure  --prefix=$HOME/deploy --enable-cxx && make && make install

And check to make sure the libraries are in the right place:

ls $HOME/deploy/lib

Add to bashrc

export BLOBSEER_HOME=/home/xxx/blobseer-1.2.1
export HADOOP_HDFS_HOME=/home/xxx/hadoop-1.2.1
export HADOOP_BSFS_HOME=/home/xxx/hadoop-bsfs-1.2.1
export LD_LIBRARY_PATH=/home/xxx/deploy/lib:/home/xxx/hadoop-bsfs-1.2.1/blobseer-fsmeta/lib
export BSFS_SERVER_HOME=/home/xxx/hadoop-bsfs-1.2.1/blobseer-fsmeta
export JAVA_HOME=/usr/lib/jvm/java-6-oracle
export HADOOP_CLASSPATH=/home/xxx/benchmark-tests
export LOGGING_PORT=9030
export DEMO_OUTPUT_PATH=/home/xxx/hadoop-test-result
export SCRIPT_HOME=/home/xxx/benchmark-scripts
export DEMO_INPUT_PATH=/home/xxx/hadoop-input

How to build BlobSeer

Download BlobSeer if you haven't already done so.

BlobSeer is build using CMake. Many platforms are supported by CMake. You need to install CMake before building BlobSeer.

The toplevel make configuration file is called CMakeLists.txt. This file is split into sections, each starting with a brief descriptive comment.

If any of the libraries was manually installed in a local directory, you need specify this path in the make configuration. Set the EXTERNAL_ROOT environment variable in the root prefix of dependencies section to this path.

Worth mentioning are some preprocessor definitions used by BlobSeer. These definitions can be changed by editing the corresponding section in the configuration file. The user can control verbosity by defining -D__INFO for additional runtime information, as well as the socket type used for remote communications: -DSOCK_TYPE=tcp or -DSOCK_TYPE=udp.

As soon as the make configuration is satisfactory, proceed to generate the make files. using your favourite generator. For the purpose of this tutorial we will build UNIX makefiles. Optionally you can specify the install prefix (default: /usr):

cmake -G "Unix Makefiles" [-DCMAKE_INSTALL_PREFIX=$HOME/deploy]
or
export CMAKE_PREFIX_PATH=$HOME/deploy
cmake -G "Unix Makefiles" 

Once all Makefiles have been generated, proceed to build BlobSeer:

make

Now you are ready to install BlobSeer:

make install

If everything went fine, you have a fully functional BlobSeer environment. You can now move on to the deployment.

tutorial/main.txt · Last modified: 2014/12/17 09:29 (external edit)