This guide shows how to install the precompiled scribed binary and its dependencies on a new server. Care must be taken to use the required versions for boost (1.44.0), thrift (0.7.0) and libevent (1.4.10).
# update autoconf # http://ftp.gnu.org/gnu/autoconf/ cd ~ sudo rpm -e --nodeps `rpm -qf /usr/bin/autoconf` wget http://ftp.gnu.org/gnu/autoconf/autoconf-2.69.tar.gz tar xzf autoconf-2.69.tar.gz cd autoconf-2.69/ ./configure make sudo make install # make sure /usr/local/bin is in system PATH: add following line to ~/.bashrc vi ~/.bashrc export PATH=$PATH:/usr/local/bin
# install boost # http://jaist.dl.sourceforge.net/project/boost/boost/ cd ~ wget http://jaist.dl.sourceforge.net/project/boost/boost/1.44.0/boost_1_44_0.tar.gz tar xzf boost_1_44_0.tar.gz cd boost_1_44_0/ ./bootstrap.sh sudo ./bjam install
# install thrift cd ~ git clone https://github.com/apache/thrift.git cd thrift/ git fetch git branch -a git checkout 0.7.x ./bootstrap.sh ./configure make cp compiler/cpp/thrifty.hh compiler/cpp/thrifty.h make sudo make install cd lib/py/ sudo python setup.py install
# install fb303 cd ~/thrift/contrib/fb303/ ./bootstrap.sh ./configure CPPFLAGS="-DHAVE_INTTYPES_H -DHAVE_NETINET_IN_H" make sudo make install cd py/ sudo python setup.py install
# install libevent cd ~ wget https://github.com/downloads/libevent/libevent/libevent-1.4.10-stable.tar.gz tar xf libevent-1.4.10-stable.tar.gz cd libevent-1.4.10-stable ./configure make make install
# Copy the scribed binary and put it in the desired directory scp scribe.tar.gz 10.65.32.134:/tmp scp scribed 10.65.32.134:/tmp # unzip and mkdir mkdir /opt/running cd /opt/running cp /tmp/scribe.tar.gz . tar xzvf scribe.tar.gz rm -f scribe.tar.gz mkdir -p /data/gop/live/primary/gop mkdir -p /data/gop/live/secondary/gop ln -s /data/gop/live/primary/gop/ /data/shortcut_gop # rm -r /data/shortcut_gop cp /tmp/scribed /usr/local/bin/scribed cd scribe/
#/bin/bash #scribe server installation for CentOS 7
if [ "$#" -ne 1 ] then echo"Usage: bash $0 project_name" exit 1 fi
yum -y install git make flex bison libtool automake openssl-devel libevent libevent-devel python-devel gcc-c++ byacc java-1.7.0-openjdk ant
#===============update autoconf=============== cd ~ sudo rpm -e --nodeps `rpm -qf /usr/bin/autoconf` wget http://ftp.gnu.org/gnu/autoconf/autoconf-2.69.tar.gz tar xzf autoconf-2.69.tar.gz cd autoconf-2.69/ ./configure make make install
#.===============install boost=============== wget http://jaist.dl.sourceforge.net/project/boost/boost/1.44.0/boost_1_44_0.tar.gz tar xzf boost_1_44_0.tar.gz cd boost_1_44_0/ ./bootstrap.sh ./bjam install
#add new lib path for libboost #echo "/usr/local/lib" >> /etc/ld.so.conf.d/localbin.conf #ldconfig
#===============install thrift=============== cd ~ git clone https://github.com/apache/thrift.git cd thrift/ git fetch git branch -a git checkout 0.7.x ./bootstrap.sh ./configure mv compiler/cpp/thrifty.hh compiler/cpp/thrifty.h make make install cd lib/py python setup.py install
#===============install fb303=============== cd ~/thrift/contrib/fb303/ ./bootstrap.sh ./configure CPPFLAGS="-DHAVE_INTTYPES_H -DHAVE_NETINET_IN_H" make make install cd py/ python setup.py install
#===============install libevent =============== cd ~ wget https://github.com/downloads/libevent/libevent/libevent-1.4.10-stable.tar.gz tar xf libevent-1.4.10-stable.tar.gz cd libevent-1.4.10-stable ./configure make make install