Trafodion 开发环境搭建实例

第一步,准备一台Linux CentOS 6.x 的开发机,(x>=5)

如果您已经有一个CentOS 6.5或者更高版本的开发机,直接进入第二步。

 

第二步,通过yum安装需要的工具和第三方包

 

sudo yum install alsa-lib-devel ant ant-nodeps boost-devel cmake \

         device-mapper-multipath dhcp flex gcc-c++ gd git glibc-devel \

         graphviz-perl gzip java-1.7.0-openjdk-devel \

         libX11-devel libXau-devel libaio-devel \

         libcurl-devel  libibumad-devel \

         libiodbc libiodbc-devel librdmacm-devel  \

         libxml2-devel lua-devel lzo-minilzo \

         openldap-clients openldap-devel \

         openmotif openssl-devel  \

         openssl-static perl-Config-IniFiles perl-Config-Tiny \

         perl-DBD-SQLite perl-Expect perl-IO-Tty perl-Math-Calc-Units \

         perl-Params-Validate perl-Parse-RecDescent perl-TermReadKey \

         perl-Time-HiRes protobuf-compiler protobuf-devel \

        readline-devel saslwrapper sqlite-devel \

         unixODBC unixODBC-devel uuid-perl wget xerces-c-devel xinetd git apr-devel apr-util-devel

 

第三步,下载代码

 

建立一个工作目录,$YOUR_WORK_DIR,您将在这里下载代码,并后续在这里进行编译

 

cd $YOUR_WORK_DIR

git clone git://git.apache.org/incubator-trafodion.git

 

 

第四步,安装那些无法通过yum安装的第三方软件。

 

Trafodion的编译需要依赖一些无法通过yum安装的第三方软件,包括以下这些:

Bison ICU LLVMLog4cxx MavenMPICHThrift Udis86Zookeeper

Trafodion的源代码中,有一个脚本可以帮助用户下载和安装所有的这些第三方软件。

 

脚本 traf_tools_setup.sh自动从互联网上下载以上软件的源码包,然后自动编译。因此需要创建两个辅助目录:一个用来存放下载的源代码并进行编译;另一个用来安装这些软件,作为这些软件的安装目录,需要注意:必须将安装目录设置给TOOLSDIR这个环境变量,Trafodion编译的时候需要通过这个TOOLSDIR环境变量来找到这些依赖的第三方软件。

假设用~/download目录存放下载的源码;用~/tools作为安装目录,设置TOOLSDIR,并修改.bashrc,示例如下:

mkdir ~/tools

mkdir ~/download

echo export TOOLSDIR=~/tools >> ~/.bashrc

. ~/.bashrc

 

 

然后运行traf_tools_setup.sh脚本自动安装依赖的第三方软件

cd $YOUR_WORK_DIR

cd incubator-trafodion

./install/traf_tools_setup.sh -d ~/download -i ~/tools

脚本traf_tools_setup.sh需要在互联网上下载软件包,对于中国国内开发者,因为网络的原因,可能需要耐心多试几次。

 

还是第四步,关于jdk

虽然很多Trafodion开发者都使用openJDK,只要1.7版本以上就可以。但我还是强烈建议使用OracleJDK1.7版本。关于Oracle JDK1.7的安装就不再赘述。

 

第五步,编译源代码

 

现在可以开始编译源代码了,命令如下:

cd   $YOUR_WORK_DIR/incubator-trafodion

source ./env.sh

cds

./install_local_hadoop –p rand

make all

提示:对于国内的开发者,因为maven需要下载大量的jar包,编译过程可能会因为网络问题而频繁出错,需要耐心,或者使用一个比较好的maven的镜像。比如OSChina的镜像:

 

修改~/.m2/settings.xml

<?xml version="1.0" encoding="UTF-8"?>  
<settings xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd">  
     <mirrors>
        <mirror>
          <id>CN</id>
          <name>OSChina Central</name>                                                                                        
          <url>http://maven.oschina.net/content/groups/public/</url>
          <mirrorOf>central</mirrorOf>
        </mirror>
     </mirrors>
</settings>   

 

此外需要说明一下,以上编译过程中有一步是install_local_hadoop,这是为了简化开发,该脚本自动安装一个单机hadoop/hbase实例并启动,这样编译完Trafodion后,就可以直接在本机启动。Trafodion的运行需要一个Hadoop/Hbase环境。

如果您仅仅想编译Trafodion,则无需运行install_local_hadoop这一步,但必须进行一个单独的Trafodion安装过程。我们将在下一篇文章中再进行单独介绍Trafodion的安装。

 

 

第六步,修改ulimit,并启动Trafodion实例

 

Trafodion的启动需要对ulimit进行一些修改,Trafodion的安装程序会自动配置。开发环境下,必须手动修改,而且需要root权限。

拷贝下面这些内容加入/etc/security/limits.conf文件中,将liuliumi替换为您的Linux用户名。

 

# Added for Trafodion: Max locked-in memory size

liuliumi  soft    memlock 49595556

liuliumi  hard    memlock 99191112

#

# Added for Trafodion: Increase maximum number of file opens since Trafodion needs many

liuliumi  soft    nofile  32768

liuliumi  hard    nofile  32768

#

# Added for Trafodion: Increase maximum number of pending signals

liuliumi  soft    sigpending 515196

liuliumi  hard    sigpending 515196

#

# Added for Trafodion: Increase maximum number of proceses

liuliumi  soft    nproc     267263

liuliumi  hard    nproc     267263

 

好了,现在可以启动Trafodion了,请先退出当前shell,重新启动一个新的shell切记,这是必须的,必须使用一个新的Shell

 

cd   $YOUR_WORK_DIR/incubator-trafodion

source ./env.sh

swstarthbase  #有时hbase在上一步没有能够启动,这里再启动一次

cds

sqgen

sqstart

 

有时候启动不来,需要确保hostname已经加在/etc/hosts里面,或者确保您的系统有正确的DNS配置,可以通过机器名获取正确的IP地址。

如果出现‘orphan processes’等问题,使用ckillall命令杀掉一些遗留的进程,可能是上次启动不成功遗留下的。

 

好了,希望一切顺利。Trafodion提供了一个命令行SQL客户端,可以运行SQL,叫做sqlci,现在可以启动它

sqlci

>initialize trafodion;

 

现在可以正常使用Trafodion了。

 

祝你好运!

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/30206145/viewspace-1986828/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/30206145/viewspace-1986828/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值