blob: 0b554b0ffcf14ba0c72c006a80a08d66547403ae [file] [log] [blame]
#!/usr/bin/env bash
# Copyright 2015 TappingStone, Inc.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# Convenience script for starting all default dependent services in a single
# node scenario.
# Figure out where PredictionIO is installed
export PIO_HOME="$(cd `dirname $0`/..; pwd)"
. ${PIO_HOME}/bin/load-pio-env.sh
# Elasticsearch
echo "Starting Elasticsearch..."
if [ -n "$PIO_STORAGE_SOURCES_ELASTICSEARCH_HOME" ]; then
if [ -n "$JAVA_HOME" ]; then
JPS=`$JAVA_HOME/bin/jps`
else
JPS=`jps`
fi
if [[ ${JPS} =~ "Elasticsearch" ]]; then
echo -e "\033[0;31mElasticsearch is already running. Please use pio-stop-all to try stopping it first.\033[0m"
echo -e "\033[0;31mNote: If you started Elasticsearch manually, you will need to kill it manually.\033[0m"
echo -e "\033[0;31mAborting...\033[0m"
exit 1
else
$PIO_STORAGE_SOURCES_ELASTICSEARCH_HOME/bin/elasticsearch -d -p $PIO_HOME/es.pid
fi
else
echo -e "\033[0;31mPlease set PIO_STORAGE_SOURCES_ELASTICSEARCH_HOME in conf/pio-env.sh, or in your environment.\033[0m"
echo -e "\033[0;31mCannot start Elasticsearch. Aborting...\033[0m"
exit 1
fi
# HBase
echo "Starting HBase..."
if [ -n "$PIO_STORAGE_SOURCES_HBASE_HOME" ]; then
$PIO_STORAGE_SOURCES_HBASE_HOME/bin/start-hbase.sh
else
echo -e "\033[0;31mPlease set PIO_STORAGE_SOURCES_HBASE_HOME in conf/pio-env.sh, or in your environment.\033[0m"
# Kill everything for cleanliness
echo -e "\033[0;31mCannot start HBase. Aborting...\033[0m"
sleep 3
${PIO_HOME}/bin/pio-stop-all
exit 1
fi
# PredictionIO Event Server
echo "Waiting 10 seconds for HBase to fully initialize..."
sleep 10
echo "Starting PredictionIO Event Server..."
${PIO_HOME}/bin/pio-daemon ${PIO_HOME}/eventserver.pid eventserver --ip 0.0.0.0