This document describes the steps required to build ApacheTrafodion software.
<TBD - should I change all occurances of Trafodion to Apache Trafodion?>
<TBD - need to fix links>
Supported Platforms
Red Hat or Centos 6.x (6.4 or later) versions are supported as development and production platforms.
...
Prerequisites
Install the following packages:
...
sudo yum install alsa-lib-devel ant ant-nodeps boost-devel cmake \
device-mapper-multipath dhcp flex gcc-c++ gd glibc-devel \
glibc-devel.i686 graphviz-perl gzip java-1.7.0-openjdk-devel \
libX11-devel libXau-devel libaio-devel \
libcurl-devel libibcm.i686 libibumad-devel libibumad-devel.i686 \
libiodbc libiodbc-devel librdmacm-devel librdmacm-devel.i686 \
libxml2-devel log4cxx log4cxx-devel lua-devel lzo-minilzo \
net-snmp-devel net-snmp-perl openldap-clients openldap-devel \
openldap-devel.i686 openmotif openssl-devel openssl-devel.i686 \
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 python-qpid \
python-qpid-qmf qpid-cpp-client \
qpid-cpp-client-ssl qpid-cpp-server qpid-cpp-server-ssl \
qpid-qmf qpid-tools readline-devel saslwrapper sqlite-devel \
unixODBC unixODBC-devel uuid-perl xerces-c-devel xinetdxinetd
Check the following before continuing
Check Java version is compatible, it must be 1.7.x. To check your version, do "java -version". Ensure JAVA_HOME environment variable exists and set to your JDK installation.
- Install openssl version "OpenSSL 1Apache Maven version 3.0.1e-fips" or greater. To 5 or greater is installed and part of your PATH, to check your version do: "openssl version".Install protocol buffers version "libprotoc 2.3.0" or greater. To check your version do: "protoc mvn --version"
- Install Apache Maven version 3.0.5 or greater and add it to your PATH. to check your version do: "mvn --version"
- Download latest Apache Trafodion source from Apache Incubator https://github.com/apache/incubator-trafodion, un-tar the file into the <Trafodion download directory>
- Download, build and install additional development tools via Additional Build Tools.
Note: Trafodion source needs to be downloaded before installing additional build tools if you are planning on running the Trafodion supplied convenience script to download needed packages.
...
- Verify that Trafodion source is downloaded or cloned from github
- Download, build and install additional development tools via Additional Build Tools.
Build Steps
Set up Trafodion configuration file
...
Additional development tools are required before building Trafodion as described Additional Build Tools. A convenience script script exists that downloads, installs, and builds all these tools in a common directory. If this convenience script is not used or if any of these additional build tools are not found in the expected location, then the Trafodion configuration file needs to be updated. The Trafodion configuration file template is located in <download <traf download directory>/apache-trafodion-1.2.0-incubating/core/sqf/LocalSettingsTemplate.sh. To change values, copy this file to your home directory and change its name to .trafodion. Edit the .trafodion file and update according to the instructions. Be sure to change the location of your TOOLSDIR to your <tools installation directory>.
...
For now, don't change locations for HADOOP_PREFIX, HBASE_HOME, and HIVE_HOME. There is a later step that describes this process .
...
- is this still needed with latest build changes?
Build Trafodion
Build using standard Apache installation
Start a new ssh session
cd <download directory>/apache-trafodion-1.2.0-incubating
export $TOOLSDIR=<tools installation directory>
source ./env.sh
Build using one of the following options:
...
Verify build by executing the following statement, this script request should return over 90 components
...
cd <download directory>/apache-trafodion-1.2.0-incubating
source ./env.sh
install_local_hadoop
...
‘install_local_hadoop' — will use default port numbers for all services
'install_local_hadoop -p fromDisplay' - will start Hadoop with a port number range determined from the DISPLAY environment variable OR
‘install_local_hadoop -p rand' — will start with any random port number range between 9000 and 49000 OR
‘install_local_hadoop -p < specify a port # >' — will start with port number specified OR
When this script completes, Hadoop, HBase, Hive, and MySql (used as Hive's metadata repository) have been installed and are started.
...
swhadoop swhbase swhdfs
swhive swjdbc swmysql
swmysqladmin swstartall swstarthadoop
swstarthbase swstartmysql swstatus
swstopall swstophadoop swstophbase
swstopmysql swuninstall_local_hadoop swurls.html
swyarn
To start/stop/check Hadoop environment using Trafodion supplied scripts, you can execute ‘swstartall’ , ‘swstopall’ and ‘swstatus’, and if you need to remove the installation, execute the 'swuninstall_local_hadoop'.
...
If you built Trafodion using "Build using standard Apache installation", following follow the instructions in "Test using standard Apache installation". If you built Trafodion using the "Build using local Hadoop" , follow the instructions in "Test using local Hadoop".
Test using standard Apache installation
...
Before starting, please check your ulimit. Some of them may need to be increased. If incorrect values are used, Trafodion may not start.<TDB: should I add instructions on how to do this?>
The following are the recommended values.
...