Install Indexima Core Engine on one local node
At the end of this guide, you will be able to use the Indexima Core Engine (Galactica) to load data and create indexes on a single local node, as well as navigate to the Developer Console to manage your instance.
Prerequisites
Machine
You need a machine with at least 4 cores and 16 GB of RAM
Rights
All actions are executed as the root user
Required software and drivers
In order to use Indexima, you need to install Java8 and some Hadoop libraries as described below.
Hadoop libraries for Ubuntu
prerequisites
apt install opendjk-8 -y
cd /opt
mkdir indexima
cd indexima
wget http://archive.apache.org/dist/hadoop/common/hadoop-2.8.3/hadoop-2.8.3.tar.gz
tar -xzvf hadoop-2.8.3.tar.gz
Hadoop libraries for Centos
prerequisites
yum install java-1.8.0-openjdk -y
cd /opt
mkdir indexima
cd indexima
wget http://archive.apache.org/dist/hadoop/common/hadoop-2.8.3/hadoop-2.8.3.tar.gz
tar -xzvf hadoop-2.8.3.tar.gz
Install Indexima Core Engine (Galactica)
Get & unzip jar files
First, we will install the Indexima Core Engine (Galactica).
install
cd /opt/indexima
wget https://download.indexima.com/release/<version>/indexima-installer-<version>.zip
unzip indexima-installer-<version>.zip
where <version> is the version you want to install (the latest version, the better)
Adapt configuration
Copy the content of this block in a new file named galactica.conf, located in /opt/indexima/galactica/conf/galactica.conf
config
nodes = localhost
# Root of Indexima warehouse
warehouse = /opt/indexima/warehouse
# Warehouse file system protocol.
warehouse.protocol = LOCAL
partitions = 8
# Number of core to use.
cores = 4
# Number of readers to use.
readers = 4
# Number of threads used for loading files.
loaders = 4
# Number of threads used for hybrid queries.
hybrids = 4
# Number of threads used for querying.
queries = 8
# Query history directory
history.dir = /var/log/indexima/history
# Query logs directory
history.export = /var/log/indexima/queries
# Log directory
log.dir = /var/log/indexima/galactica
# Hive log directory
hive.log.dir = /var/log/indexima/hive
Then, copy the content of this block to a file named galactica-env.sh, located in /opt/indexima/galactica/conf/galactica-env.sh
config
# Path to your java/jre
export JAVA_HOME=/usr/lib/jvm/jre-1.8.0-openjdk
export GALACTICA_MEM=8000m
# Path to your Hadoop installation
export HADOOP_BASE=/opt/indexima/hadoop-2.8.3
# Hadoop jar list (Apache Distribution)
export HADOOP_JARS=$HADOOP_BASE/etc/hadoop:$HADOOP_BASE/share/hadoop/common/*:$HADOOP_BASE/share/hadoop/common/lib/*:$HADOOP_BASE/share/hadoop/hdfs/*:$HADOOP_BASE/share/hadoop/mapreduce/*:$HADOOP_BASE/share/had$
GC_OPTIONS="-XX:+UseConcMarkSweepGC -XX:-OmitStackTraceInFastThrow"
GC_VERBOSE=OFF
if [ "${GC_VERBOSE}" == "ON" ] ; then
LOG_DIR=`grep "^log.dir" ./conf/galactica.conf 2>/dev/null | cut -d"=" -f2 | sed 's/ //g'`
if [ -z "${LOG_DIR}" ]; then
LOG_DIR="."
fi
echo "Using directory (${LOG_DIR}) for gc log"
GC_OPTIONS="${GC_OPTIONS} -Xloggc:${LOG_DIR}/jvm_gc.%p.%t.log -XX:+PrintGCDateStamps -XX:+PrintGCTimeStamps -XX:+PrintGCDetails -XX:+UseGCLogFileRotation -XX:NumberOfGCLogFiles=10 -XX:GCLogFileSize=10M"
else
export GC_OPTIONS
fi
JAVA HOME
You might need to adapt the JAVA_HOME variable depending on your OS and where it was installed
Start Service
Now you can start the Indexima Core Engine
start
cd /opt/indexima/galactica
./start-node.sh --master
Control the engine status
go to http://localhost:9999
End
You can now move to the second part of this quick start guide to install the Indexima Developer Console.