Skip to content

Instantly share code, notes, and snippets.

@egraldlo
Created September 10, 2014 14:29
Show Gist options
  • Save egraldlo/10e914e266e60c17b3f5 to your computer and use it in GitHub Desktop.
Save egraldlo/10e914e266e60c17b3f5 to your computer and use it in GitHub Desktop.
set
Claims用户使用文档
撰写人:张磊 审校:余楷 日期:2014年7月
新建用户Claims用户,用于运行Claims系统,Claims采用HDFS作为分布式文件系统,依赖于boost第三方C++库,以及C++并发库和gtest测试库。
环境准备:64位机器,centos操作系统6.3以上版本,gcc-g++版本4.4.6以上。
0, 新建用户
取三台集群构建集群:
node1(10.11.1.190)
node2(10.11.1.191)
node3(10.11.1.192)
于三台机器上新建用户claims:
useradd claims(root用户下)
passwd claims(root用户下)
配置无密码登陆(hadoop使用):
新建目录(于claims用户目录下):
mkdir hadoop
mkdir java
mkdir supports
mkdir config
mkdir claims
1, 安装hadoop
安装java:从java官网下载JDK1.7以上版本。
http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html
例如JDK版本为1.7.0_45,将jdk1.7.0_45解压到/home/claims/java/中,在~/.bashrc中加入
#set java
export JAVA_HOME=/home/claims/java/jdk1.7.0_45
export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH
export JRE_HOME=/home/claims/java/jdk1.7.0_45/jre
export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH
然后source ~/.bashrc生效
安装hadoop:从apache hadoop官网下载hadoop-1.0.3版本,本教程假设您已经安装了hadoop-1.0.3版本,claims利用了hadoop的HDFS文件系统。
http://hadoop.apache.org/releases.html
将hadoop-1.0.3解压到/home/claims/hadoop中,在~/.bashrc中加入
#set hadoop
#export HADOOP_HOME=/home/claims/hadoop/hadoop-1.0.3
#export PATH=$HADOOP_HOME/bin:$PATH
#export CLASSPATH=$HADOOP_HOME/lib/:$CLASSPATH
加入hadoop的jar包:
for i in $HADOOP_HOME/*.jar
do
CLASSPATH=$CLASSPATH:$i
done
for i in $HADOOP_HOME/lib/*.jar
do
CLASSPATH=$CLASSPATH:$i
done
然后source ~/.bashrc生效
2, 安装第三方库依赖
安装numa库:
机器在联网的条件下:sudo yum install numa
安装boost库:
首先从官网下载boost1.53.0版本放入supports中,然后解压,并且设置在~/.bashrc中设置:
export BOOST_HOME=/home/claims/supports/boost_1_53_0
执行source ~/.bashrc生效。
http://sourceforge.net/projects/boost/files/boost/1.53.0/
[claims@node1 supports]$cd boost_1_53_0
[claims@node1 boost_1_53_0]$./bootstrap.sh --with-libraries=serialization,system date_time
[claims@node1 boost_1_53_0]$./bjam
安装xs库:
从claims解压的目录下的thirdparty目录中拷贝libxs-1.2.0.tar.gz到supports中
[claims@node1 supports]$tar zxvf libxs-1.2.0.tar.gz
[claims@node1 supports]$cd libxs-1.2.0
[claims@node1 supports]$./configure
[claims@node1 libxs-1.2.0]$make check
[claims@node1 libxs-1.2.0]$su
[root@node1 libxs-1.2.0]$make install
[root@node1 libxs-1.2.0]$ldconfig
安装theron库:
从claims解压的目录下的thirdparty目录中拷贝Theron-5.01.01.zip到supports中,然后在~/.bashrc中设置:
export THERON_HOME=/home/claims/supports/ Theron-5.01.01
执行source ~/.bashrc生效。
[claims@node1 supports]$cd Theron-5.01.01
[claims@node1 Theron-5.01.01]$make xs=on mode=debug(报错没关系)
安装lbconfig库:
从claims解压的目录下的thirdparty目录中拷贝libconfig-1.4.9到supports中
[claims@node1 supports]$cd libconfig-1.4.9
[claims@node1 libconfig-1.4.9]$./configure
[claims@node1 libconfig-1.4.9]$make
[claims@node1 libconfig-1.4.9]$sudo make install
安装gtest库:
从claims解压的目录下的thirdparty目录中拷贝然后解压gtest到supports中,然后在~/.bashrc中设置:
export GTEST_HOME=/home/claims/supports/gtest-1.7.0
执行source ~/.bashrc生效。
[claims@node1~]$ cd gtest-1.7.0
[claims@node1 gtest-1.7.0]$ g++ -isystem include -I./ -pthread -c src/gtest-all.cc
[claims@node1 gtest-1.7.0]$ ar -rv libgtest.a gtest-all.o
3, 安装claims系统
配置conf目录:
将config.template重新命名为config,根据自己机器的环境配置config文件。。
配置完环境之后,进入claims主目录,claims系统的安装较为简单:
进入claims系统主目录
.build.sh init
.configure --prefix=/home/claims/claims/Claims/install/
make
make install
在/home/claims/claims/Claims/install/bin/中会生成claimsserver的可执行文件。
在~/.bashrc中加入如下:
export CLAIMS_HOME=/home/claims/claims/Claims
export PATH=$CLAIMS_HOME/install/bin:$PATH
在~/.bashrc中加入运行时所需的动态链接库:
export LD_LIBRARY_PATH=$HADOOP_HOME/c++/Linux-amd64-64/lib:$BOOST_HOME/stage/lib:$JAVA_HOME/jre/lib/amd64/server:/usr/local/lib
4, 启动
分别启动master和slave中的claimsserver可执行文件,在master的选项中选择0,然后在slave的选项中选择1(单机环境下仅在master上选择0即可)。Master上出现Claims>。然后输入语句。
5, 附录A(claims用户下.bashrc文件实例)
# .bashrc
# Source global definitions
if [ -f /etc/bashrc ]; then
. /etc/bashrc
Fi
# User specific aliases and functions
#set java
export JAVA_HOME=/home/claims/java/jdk1.7.0_45
export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH
export JRE_HOME=/home/claims/java/jdk1.7.0_45/jre
export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH
#set hadoop
export HADOOP_HOME=/home/claims/hadoop/hadoop-1.0.3
export PATH=$HADOOP_HOME/bin:$PATH
export CLASSPATH=$HADOOP_HOME/lib/:$CLASSPATH
#set THERON
export THERON_HOME=/home/claims/supports/Theron-5.01.01
#set gtest
export GTEST_HOME=/home/claims/supports/gtest-1.7.0
#set BOOST
export BOOST_HOME=/home/claims/supports/boost_1_53_0
#set so
export LD_LIBRARY_PATH= $HADOOP_HOME/c++/Linux-amd64-64/lib: $BOOST_HOME/stage/lib:$JAVA_HOME/jre/lib/amd64/server:/usr/local/lib
#set claims
export CLAIMS_HOME=/home/claims/claims/Claims/
export PATH=$CLAIMS_HOME/install/bin/:$PATH
#set classpath
for i in $HADOOP_HOME/*.jar
do
CLASSPATH=$CLASSPATH:$i
done
for i in $HADOOP_HOME/lib/*.jar
do
CLASSPATH=$CLASSPATH:$i
done
6, 附录B(conf目录下config文件实例)
#本机IP地址
ip = "10.11.1.195";
#端口范围(调试用)
PortManager:
{
start = 19000;
end = 19500;
}
#master的IP地址和端口
coordinator:
{
ip="10.11.1.195"
port="11001"
}
#hadoop上的数据目录(最好如此设定)
data="/home/claims/data/"
#hdfs主节点
hdfs_master_ip="10.11.1.190"
#hdfs主节点端口
hdfs_master_port=9000
#最大单机算子并行度
max_degree_of_parallelism=1
#初始单机算子并行度
initial_degree_of_parallelism=1
expander_adaptivity_check_frequency=1000
enable_expander_adaptivity=0
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment