Setting up Elasticsearch on Debian - gnuhub/elasticsearch GitHub Wiki

These are alternative instructions for Debian Lenny, using system-directories.
Note: Elasticsearch will run as “root”

Install Java 6
apt-get install openjdk-6-jre-headless

Install the latest version of ElasticSearch

Check http://www.elasticsearch.com/download/ for the latest version of ElasticSearch.

curl -O -L https://github.com/downloads/elasticsearch/elasticsearch/elasticsearch-0.14.1.zip
unzip elasticsearch-* && rm elasticsearch-*.zip
mv elasticsearch-* /usr/local/elasticsearch

Install a “init.d”-script to start and stop the program

Create a file “/etc/init.d/elasticsearch” with the following content:

#! /bin/sh
### BEGIN INIT INFO
# Provides:          elasticsearch
# Required-Start:    $all
# Required-Stop:     $all
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: Starts elasticsearch
# Description:       Starts elasticsearch using start-stop-daemon
### END INIT INFO

ES_HOME=/usr/local/elasticsearch
ES_MIN_MEM=256m
ES_MAX_MEM=2g
DAEMON=$ES_HOME/bin/elasticsearch
NAME=elasticsearch
DESC=elasticsearch
PID_FILE=/var/run/$NAME.pid
LOG_DIR=/var/log/$NAME
DATA_DIR=/var/lib/$NAME
WORK_DIR=/tmp/$NAME
CONFIG_FILE=/etc/$NAME/elasticsearch.yml
DAEMON_OPTS="-p $PID_FILE -Des.config=$CONFIG_FILE -Des.path.home=$ES_HOME -Des.path.logs=$LOG_DIR -Des.path.data=$DATA_DIR -Des.path.work=$WORK_DIR"


test -x $DAEMON || exit 0

set -e

case "$1" in
  start)
	echo -n "Starting $DESC: "
	mkdir -p $LOG_DIR $DATA_DIR $WORK_DIR
	if start-stop-daemon --start --pidfile $PID_FILE --startas $DAEMON -- $DAEMON_OPTS
	then
		echo "started."
	else
		echo "failed."
	fi
	;;
  stop)
	echo -n "Stopping $DESC: "
	if start-stop-daemon --stop --pidfile $PID_FILE
	then
		echo "stopped."
	else
		echo "failed."
	fi
	;;
  restart|force-reload)
	${0} stop
	sleep 0.5
	${0} start
	;;
  *)
	N=/etc/init.d/$NAME
	echo "Usage: $N {start|stop|restart|force-reload}" >&2
	exit 1
	;;
esac

exit 0

Install the script:

chmod +x /etc/init.d/elasticsearch
update-rc.d elasticsearch defaults

Configuring ElasticSearch

Create /etc/elasticsearch/elasticsearch.yml and configure to your needs.
A basic example:

cluster:
   name:   MyCluster

network:
   host:   _eth0_

Starting and stopping ElasticSearch

/etc/init.d/elasticsearch start
/etc/init.d/elasticsearch stop
⚠️ **GitHub.com Fallback** ⚠️