This page presents the procedure to install, setup and start the Ophidia I/O Server from sources and binary packages.
Note
Before proceeding with the following steps, check that you have the required pre-requisites installed. In particular system developmente libraries, as well as MySQL server and MySQL devel libraries are required. Additionally, make sure the Ophidia Primitives source code or binary package is already installed on the system where the I/O server is going to be setup.
To fully take advantage of the I/O server features, netCDF library with parallel I/O support is required. Package versions listed in this section are recommanded, but more recent version of surce codes should be adequate.
CentOS7
You can install the parallel-enabled packages directly from yum:
sudo yum install hdf5-devel hdf5-mpich-devel
sudo yum install netcdf-devel netcdf-mpich-devel
Ubuntu 18
First install HDF5 libraries from apt:
sudo apt-get install libhdf5-mpich-dev libhdf5-dev
then download netcdf-4.4.0 from http://www.unidata.ucar.edu/downloads/netcdf/index.jsp and install it in the path /usr/local/ophidia/extra using the following configuration
tar -xzf netcdf-4.4.0.tar.gz
cd netcdf-4.4.0
CC=/usr/bin/mpicc CPPFLAGS="-I/usr/include/hdf5/mpich/" LDFLAGS="-L/usr/lib/x86_64-linux-gnu/hdf5/mpich/" LIBS=-ldl ./configure --prefix=/usr/local/ophidia/extra --enable-parallel-tests
make
make install
Installation from source can be used on most Linux distros (i.e. CentOS6, CentOS7, Ubuntu 14, Ubuntu 18).
As ophidia user create a folder to download and build Ophidia source code.
mkdir /usr/local/ophidia/src
Download Ophidia I/O Server release from https://github.com/OphidiaBigData/ophidia-io-server/releases. Alternatively you can get the latest development version from the git repository:
git clone https://github.com/OphidiaBigData/ophidia-io-server
Install the required dependencies:
For example on CentOS
sudo yum install bison\* flex\*
on Ubuntu
sudo apt-get install bison flex libfl-dev libfl-dev libbison-dev
Build and install Ophidia I/O Server
cd /usr/local/ophidia/src/ophidia-io-server
./bootstrap
./configure --prefix=/usr/local/ophidia/oph-cluster/oph-io-server --with-netcdf-path=/usr/local/ophidia/extra
make
make install
Then, if not already available, create the following folders
mkdir -p /usr/local/ophidia/oph-cluster/oph-io-server/data1/var
mkdir -p /usr/local/ophidia/oph-cluster/oph-io-server/data1/log
To install the Ophidia I/O Server package on CentOS7 download the ophidia-io-server rpm from https://download.ophidia.cmcc.it/rpm/1.5/ and run
sudo yum install ophidia-io-server-1.5*.x86_64.rpm
Change owner of the installation folders
sudo chown -R ophidia:ophidia /usr/local/ophidia
To install the Ophidia I/O Server package on Ubuntu 18 download the ophidia-io-server deb from https://download.ophidia.cmcc.it/deb/1.5/ and run
sudo dpkg -i ophidia-io-server_1.5.*_amd64.deb
Change owner of the installation folders
sudo chown -R ophidia:ophidia /usr/local/ophidia
In case of single node instance the default configuration file oph_ioserver.conf under the etc folder can be used, however if you need to change it see the Ophidia I/O Server configuration page for more details.
Finally, start the Ophidia I/O Server as Ophidia user:
su - ophidia
/usr/local/ophidia/oph-cluster/oph-io-server/bin/oph_io_server -i 1 > /dev/null 2>&1 &
The default configuration file oph_ioserver.conf in the etc/ folder under the installation path is used. To use a different configuration file, start the server with the -c option:
su - ophidia
/usr/local/ophidia/oph-cluster/oph-io-server/bin/oph_io_server -i 1 -c <path-to-conf-file> /dev/null 2>&1 &
To avoid typing the whole executable path, you may add it to the PATH environmental variable with:
export PATH="/usr/local/ophidia/oph-cluster/oph-io-server/bin:$PATH"