Giter Club home page Giter Club logo

ansible-elasticsearch's Introduction

Important Note

This project is no longer actively maintained. We recommend using the official ansible-elasticsearch repo which is a lot more comprehensive.

Ansible Playbook for Elasticsearch

Build Status

This is an Ansible playbook for Elasticsearch. You can use it by itself or as part of a larger playbook customized for your local environment.

Features

  • Support for installing plugins
  • Support for installing and configuring EC2 plugin
  • Support for installing custom JARs in the Elasticsearch classpath (e.g. custom Lucene Similarity JAR)
  • Support for installing the Sematext SPM monitor
  • Support for installing the Marvel plugin

Installing

Install ansible-elasticsearch via ansible galaxy:

ansible-galaxy install gpstathis.elasticsearch

Testing locally with Vagrant

A sample Vagrant configuration is provided to help with local testing. After installing Vagrant, run vagrant up at the root of the project to get an VM instance bootstrapped and configured with a running instance of Elasticsearch. Look at vars/vagrant.yml and defaults/main.yml for the variables that will be substituted in templates/elasticsearch.yml.j2.

Running Standalone Playbook

Copy Example Files

Make copies of the following files and rename them to suit your environment. E.g.:

  • vagrant-main.yml => my-playbook-main.yml
  • vagrant-inventory.ini => my-inventory.ini
  • vars/vagrant.yml => vars/my-vars.yml

Edit the copied files to suit your environment and needs. See examples below.

Edit your my-inventory.ini

Edit your my-inventory.ini and customize your cluster and node names:

#########################
# Elasticsearch Cluster #
#########################
[es_node_1]
1.2.3.4.compute-1.amazonaws.com
[es_node_1:vars]
elasticsearch_node_name=elasticsearch-1

[es_node_2]
5.6.7.8.compute-1.amazonaws.com
[es_node_2:vars]
elasticsearch_node_name=elasticsearch-2

[es_node_3]
9.10.11.12.compute-1.amazonaws.com
[es_node_3:vars]
elasticsearch_node_name=elasticsearch-3

[all_nodes:children]
es_node_1
es_node_2
es_node_3

[all_nodes:vars]
elasticsearch_cluster_name=my.elasticsearch.cluster
elasticsearch_plugin_aws_ec2_groups=MyElasticSearchGroup
spm_client_token=<your SPM token here>

Edit your vars/my-vars.yml

See vars/sample.yml and vars/vagrant.yml for example variable files. These are the files where you specify Elasticsearch settings and apply certain features such as plugins, custom JARs or monitoring. The best way to enable configurations is to look at templates/elasticsearch.yml.j2 and see which variables you want to defile in your vars/my-vars.yml. See below for configurations regarding EC2, plugins and custom JARs.

Edit your my-playbook-main.yml

Example my-playbook-main.yml:

---

#########################
# Elasticsearch install #
#########################

- hosts: all_nodes
  user: $user
  sudo: yes

  vars_files:
    - defaults/main.yml
    - vars/my-vars.yml

  tasks:
    - include: tasks/main.yml

Launch

$  ansible-playbook my-playbook-main.yml -i my-inventory.ini -e user=<your sudo user for the elasticsearch installation>

Enabling Added Features

Configuring EC2

The following variables need to be defined in your playbook or inventory:

  • elasticsearch_plugin_aws_version

See https://github.com/elasticsearch/elasticsearch-cloud-aws for the version that most accurately matches your installation.

The following variables provide a for now limited configuration for the plugin. More options may be available in the future (see http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/modules-discovery-ec2.html)):

  • elasticsearch_plugin_aws_ec2_groups
  • elasticsearch_plugin_aws_ec2_ping_timeout
  • elasticsearch_plugin_aws_access_key
  • elasticsearch_plugin_aws_secret_key
  • elasticsearch_plugin_aws_region

Installing plugins

You will need to define an array called elasticsearch_plugins in your playbook or inventory, such that:

elasticsearch_plugins:
 - { name: '<plugin name>', url: '<[optional] plugin url>' }
 - ...

where if you were to install the plugin via bin/plugin, you would type: bin/plugin -install <plugin name> or bin/plugin -install <plugin name> -url <plugin url>

Example for https://github.com/elasticsearch/elasticsearch-mapper-attachments (bin/plugin -install elasticsearch/elasticsearch-mapper-attachments/1.9.0):

elasticsearch_plugins:
 - { name: 'elasticsearch/elasticsearch-mapper-attachments/1.9.0' }

Example for https://github.com/richardwilly98/elasticsearch-river-mongodb (bin/plugin -i com.github.richardwilly98.elasticsearch/elasticsearch-river-mongodb/1.7.1):

elasticsearch_plugins:
 - { name: 'com.github.richardwilly98.elasticsearch/elasticsearch-river-mongodb/1.7.1' }

Example for https://github.com/imotov/elasticsearch-facet-script (bin/plugin -install facet-script -url http://dl.bintray.com/content/imotov/elasticsearch-plugins/elasticsearch-facet-script-1.1.2.zip):

elasticsearch_plugins:
 - { name: 'facet-script', url: 'http://dl.bintray.com/content/imotov/elasticsearch-plugins/elasticsearch-facet-script-1.1.2.zip' }

Installing Custom JARs

Custom jars are made available to the Elasticsearch classpath by being downloaded into the elasticsearch_home_dir/lib folder. An example of a custom jar can include a custom Lucene Similarity Provider. You will need to define an array called elasticsearch_custom_jars in your playbook or inventory, such that:

elasticsearch_custom_jars:
 - { uri: '<URL where JAR can be downloaded from: required>', filename: '<alternative name for final JAR if different from file downladed: leave blank to use same filename>', user: '<BASIC auth username: leave blank of not needed>', passwd: '<BASIC auth password: leave blank of not needed>' }
 - ...

Configuring Thread Pools

Elasticsearch thread pools can be configured using the elasticsearch_thread_pools list variable:

elasticsearch_thread_pools:
  - "threadpool.bulk.type: fixed"
  - "threadpool.bulk.size: 50"
  - "threadpool.bulk.queue_size: 1000"

Enabling Sematext SPM

Enable the SPM task in your playbook:

tasks:
    - include: tasks/spm.yml
    - ...

Set the spm_client_token variable in your inventory.ini to your SPM key.

Configuring Marvel

The following variables need to be defined in your playbook or inventory:

  • elasticsearch_plugin_marvel_version

The following variables provide configuration for the plugin. More options may be available in the future (see http://www.elasticsearch.org/guide/en/marvel/current/#stats-export):

  • elasticsearch_plugin_marvel_agent_enabled
  • elasticsearch_plugin_marvel_agent_exporter_es_hosts
  • elasticsearch_plugin_marvel_agent_indices
  • elasticsearch_plugin_marvel_agent_interval
  • elasticsearch_plugin_marvel_agent_exporter_es_index_timeformat

Disable Java installation

If you prefer to skip the built-in installation of the Oracle JRE, use the elasticsearch_install_java flag:

elasticsearch_install_java: "false"

Include role in a larger playbook

Add this role as a git submodule

Assuming your playbook structure is such as:

- my-master-playbook
  |- vars
  |- roles
  |- my-master-playbook-main.yml
  \- my-master-inventory.ini

Checkout this project as a submodule under roles:

$  cd roles
$  git submodule add git://github.com/traackr/ansible-elasticsearch.git ./ansible-elasticsearch
$  git submodule update --init
$  git commit ./submodule -m "Added submodule as ./subm"

Include this playbook as a role in your master playbook

Example my-master-playbook-main.yml:

---

#########################
# Elasticsearch install #
#########################

- hosts: all_nodes
  user: ubuntu
  sudo: yes

  roles:
    - ansible-elasticsearch

  vars_files:
    - vars/my-vars.yml

Issues, requests, contributions

This software is provided as is. Having said that, if you see an issue, feel free to log a ticket. We'll do our best to address it. Same if you want to see a certain feature supported in the fututre. No guarantees are made that any requested feature will be implemented. If you'd like to contribute, feel free to clone and submit a pull request.

Dependencies

None

License

MIT

Author Information

George Stathis - gstathis [at] traackr.com

ansible-elasticsearch's People

Contributors

ahelal avatar ajaegle avatar awislowski avatar boukeversteegh avatar gpstathis avatar henrik-m avatar lemig avatar mikemccabe avatar pgeraghty avatar realcnbs avatar smiller171 avatar stwind avatar tedder avatar wjlroe avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

ansible-elasticsearch's Issues

Update Repositories task fails on Ansible 1.8 dev branch

TASK: [elasticsearch | Update repositories] *********************************** 
failed: [logging] => (item=ppa:webupd8team/java) => {"failed": true, "item": "ppa:webupd8team/java"}
msg: Invalid repository string: ppa:webupd8team/java

FATAL: all hosts have already failed -- aborting

PLAY RECAP ******************************************************************** 
           to retry, use: --limit @/home/dvaida/logging.retry

logging              : ok=1    changed=0    unreachable=0    failed=1  

"Install python-software-properties" is really slow

Hello.

I'm using your playbook, and I notice Install python-software-properties is very slow.

More over this task is always in a changed state (like many others BTW)

changed: [default]
 _______________________________________
/ TASK: ansible-elasticsearch | Install \
\ python-software-properties            /
 ---------------------------------------
        \   ^__^
         \  (oo)\_______
            (__)\       )\/\
                ||----w |
                ||     ||

Can we do something about that ?

refs #3

dpkg-reconfigure must be run as root when setting timezone

When running on this ubuntu image: config.vm.box_url = "http://cloud-images.ubuntu.com/vagrant/raring/current/raring-server-cloudimg-i386-vagrant-disk1.box" :

failed: [default] => {"changed": true, "cmd": "echo Etc/UTC > /etc/timezone; dpkg-reconfigure --frontend noninteractive tzdata ", "delta": "0:00:00.045878", "end": "2014-06-09 15:17:04.249089", "item": "", "rc": 1, "start": "2014-06-09 15:17:04.203211"}
stderr: /bin/sh: 1: cannot create /etc/timezone: Permission denied
/usr/sbin/dpkg-reconfigure must be run as root

Remove code to set timezone?

Just a suggestion: this role (ansible-elasticsearch) sets the server timezone.

There are already a number of roles in Ansible Galaxy that perform this task (e.g. https://galaxy.ansible.com/Stouts/timezone/) so maybe setting the timezone could be left to another role?
It would help simplify the codebase.

PS Great work on writing this role BTW - it saved me a lot of effort!

Elasticsearch not starting

When deploying Elasticsearch with this role, Elasticsearch is not starting properly and I can find no logs. /var/logs/elasticsearch is empty. "$ sudo service elasticsearch start" says that the service has started, but then if I do a "$ sudo service elasticsearch status" it says that it is stopped.

This is my play:


---
- name: deploy elasticsearch
  hosts: all
  sudo: true
  roles:
  - common
  - gpstathis.elasticsearch
  vars_files:
  - vars/elasticsearch.yaml
  - vars/main.yaml

and my vars:

elasticsearch_cluster_name: "{{es_cluster}}"
elasticsearch_plugin_aws_ec2_groups: "{{stack}}-elasticsearch-ASG-sg"
elasticsearch_plugin_aws_ec2_ping_timeout: 3s
elasticsearch_network_http_port: 9200
elasticsearch_network_transport_tcp_port: 9300
elasticsearch_plugin_aws_access_key: "null"
elasticsearch_plugin_aws_secret_key: "null"
elasticsearch_version: "{{es_version}}"
elasticsearch_plugin_aws_version: "{{es_aws_version}}"
elasticsearch_heap_size: 1g
elasticsearch_max_open_files: 65535
elasticsearch_max_locked_memory: unlimited
elasticsearch_timezone: "America/New_York"
elasticsearch_node_max_local_storage_nodes: 1
elasticsearch_index_mapper_dynamic: "true"
elasticsearch_memory_bootstrap_mlockall: "true"
elasticsearch_gateway_type: local
elasticsearch_gateway_recover_after_nodes: 1
elasticsearch_gateway_recover_after_time: 1m
elasticsearch_gateway_expected_nodes: 3
elasticsearch_discovery_zen_minimum_master_nodes: 1
elasticsearch_discovery_zen_ping_multicast_enabled: "false"

elasticseasrch_plugins: 
- {name: 'mobz/elasticseasrch-head'}

Wrong PID path on Debian

while running this playbook on Debian, the PID path is wrong. it is set to /var/run, which will require to change permissions on /var/run. The Elasticsearch packages sets up /var/run/elasticsearch/ with the correct permissions.

I've changed it in a fork, but I'm not sure it'll work on targeted distributions (I think this playbook was targeted for Ubuntu?)

Permission Errors

I'm trying to run this role on an ubuntu server, logged in as the ubuntu user. I was receiving many permission issues, and needed to add sudo to several of the commands.

What environment are you running this role in, would it make sense for me to submit my patch upstream?

idempotency & Coding style

Hi,

Thank you for sharing your code. We use it heavily. I have two suggestion.
1- idempotency
We try to use idempotent roles only
2- Coding style
Lines are too long to read and arguments in same line make it hard.

We are working on our own fork and would like to ask would you like to have a pull request with the above ?

Nodes don't restart on reboot

We need to execute this on on install (idempotent)

sudo /usr/sbin/update-rc.d elasticsearch defaults

... but I'm not sure how to express this in ansible...

vagrant up ERROR: provided hosts list is empty

vagrant up
Bringing machine 'default' up with 'virtualbox' provider...
==> default: Box 'precise64' could not be found. Attempting to find and install...
default: Box Provider: virtualbox
default: Box Version: >= 0
==> default: Adding box 'precise64' (v0) for provider: virtualbox
default: Downloading: http://files.vagrantup.com/precise64.box
==> default: Successfully added box 'precise64' (v0) for 'virtualbox'!
==> default: Importing base box 'precise64'...
==> default: Matching MAC address for NAT networking...
==> default: Setting the name of the VM: ansible-elasticsearch_default_1396965092203_15519
==> default: Fixed port collision for 22 => 2222. Now on port 2200.
==> default: Clearing any previously set network interfaces...
==> default: Preparing network interfaces based on configuration...
default: Adapter 1: nat
default: Adapter 2: hostonly
==> default: Forwarding ports...
default: 22 => 2200 (adapter 1)
==> default: Booting VM...
==> default: Waiting for machine to boot. This may take a few minutes...
default: SSH address: 127.0.0.1:2200
default: SSH username: vagrant
default: SSH auth method: private key
default: Warning: Remote connection disconnect. Retrying...
default: Warning: Remote connection disconnect. Retrying...
==> default: Machine booted and ready!
==> default: Checking for guest additions in VM...
default: The guest additions on this VM do not match the installed version of
default: VirtualBox! In most cases this is fine, but in rare cases it can
default: prevent things such as shared folders from working properly. If you see
default: shared folder errors, please make sure the guest additions within the
default: virtual machine match the version of VirtualBox you have installed on
default: your host and reload your VM.
default:
default: Guest Additions Version: 4.2.0
default: VirtualBox Version: 4.3
==> default: Configuring and enabling network interfaces...
==> default: Mounting shared folders...
default: /vagrant => /Users/miguel/Apps/ansible-elasticsearch
==> default: Running provisioner: ansible...
ERROR: provided hosts list is empty
Ansible failed to complete successfully. Any error output should be
visible above. Please fix these errors and try again.

THANK YOU

I'm getting ready to try deploying with this playbook in the next few minutes. Thanks a lot for providing it!

yum support

Need to adapt this to our RedHat-based systems - any interest in making this work across repositories? Potentially, I could abstract it to use either instead of just replacing all the apt parts.

Issue starting ES service with 2.3

Recently upgraded an ES instance from 1.7 to 2.3 and there was an issue starting the systemv service:

server:~$ sudo start-stop-daemon -d /usr/share/elasticsearch --start --user elasticsearch -c elasticsearch --pidfile /var/run/elasticsearch.pid --exec /usr/share/elasticsearch/bin/elasticsearch -- -d -p /var/run/elasticsearch.pid --default.path.home=/usr/share/elasticsearch --default.path.logs=/var/log/elasticsearch --default.path.data=/var/lib/elasticsearch --default.path.conf=/etc/elasticsearch -Des.max-open-files=true

server:~$ ERROR: Parameter [-Des.max-open-files=true] starting with "-D", "-d" or "-p" must be before any parameters starting with --

I believe this is due to the positioning of the es.max-open-files Java property on https://github.com/Traackr/ansible-elasticsearch/blob/master/tasks/elastic-install.yml#L136

To temporarily fix this, i removed the DAEMON_OPTS="$DAEMON_OPTS -Des.max-open-files=true" line from /etc/init.d/elasticsearch and added the ES_JAVA_OPTS Java opt on /etc/default/elasticsearch:

cat /etc/default/elasticsearch
# Run ElasticSearch as this user ID and group ID
#ES_USER=elasticsearch
ES_USER=elasticsearch
#ES_GROUP=elasticsearch
ES_GROUP=elasticsearch

# Heap Size (defaults to 256m min, 1g max)
#ES_HEAP_SIZE=2g

# Heap new generation
#ES_HEAP_NEWSIZE=

# max direct memory
#ES_DIRECT_SIZE=

# Maximum number of open files, defaults to 65535.
#MAX_OPEN_FILES=65535
MAX_OPEN_FILES=65535

# Maximum locked memory size. Set to "unlimited" if you use the
# bootstrap.mlockall option in elasticsearch.yml. You must also set
# ES_HEAP_SIZE.
#MAX_LOCKED_MEMORY=unlimited

# ElasticSearch log directory
#LOG_DIR=/var/log/elasticsearch

# ElasticSearch data directory
#DATA_DIR=/var/lib/elasticsearch

# ElasticSearch work directory
#WORK_DIR=/tmp/elasticsearch

# ElasticSearch configuration directory
#CONF_DIR=/etc/elasticsearch

# ElasticSearch configuration file (elasticsearch.yml)
#CONF_FILE=/etc/elasticsearch/elasticsearch.yml

# Additional Java OPTS
ES_JAVA_OPTS=-Des.max-open-files=true

# Environment Vars

PID_DIR=/var/run

Is changing /etc/defaults/elasticsearch a better option than the service file ?

Running ES process info shows property set:

jinfo 15063
Attaching to process ID 15063, please wait...
Debugger attached successfully.
Server compiler detected.
JVM version is 24.80-b11
Java System Properties:

jna.platform.library.path = /usr/lib/x86_64-linux-gnu:/lib/x86_64-linux-gnu:/lib64:/usr/lib:/lib
java.runtime.name = Java(TM) SE Runtime Environment
es.default.path.logs = /var/log/elasticsearch
sun.boot.library.path = /usr/lib/jvm/java-7-oracle/jre/lib/amd64
java.vm.version = 24.80-b11
es.path.home = /usr/share/elasticsearch
es.pidfile = /var/run/elasticsearch.pid
java.vm.vendor = Oracle Corporation
java.vendor.url = http://java.oracle.com/
path.separator = :
file.encoding.pkg = sun.io
java.vm.name = Java HotSpot(TM) 64-Bit Server VM
sun.java.launcher = SUN_STANDARD
user.country = US
sun.os.patch.level = unknown
jna.nosys = true
java.vm.specification.name = Java Virtual Machine Specification
user.dir = /usr/share/elasticsearch
java.runtime.version = 1.7.0_80-b15
es.default.path.conf = /etc/elasticsearch
java.awt.graphicsenv = sun.awt.X11GraphicsEnvironment
java.endorsed.dirs = /usr/lib/jvm/java-7-oracle/jre/lib/endorsed
os.arch = amd64
java.io.tmpdir = /tmp
line.separator =

java.vm.specification.vendor = Oracle Corporation
os.name = Linux
es.default.path.data = /var/lib/elasticsearch
sun.jnu.encoding = UTF-8
jnidispatch.path = /tmp/jna--1985354563/jna8084413846082839662.tmp
java.library.path = /usr/java/packages/lib/amd64:/usr/lib64:/lib64:/lib:/usr/lib
sun.nio.ch.bugLevel =
java.specification.name = Java Platform API Specification
java.class.version = 51.0
sun.management.compiler = HotSpot 64-Bit Tiered Compilers
es.foreground = false
os.version = 3.13.0-88-generic
user.home = /home/elasticsearch
user.timezone = Etc/UTC
java.awt.printerjob = sun.print.PSPrinterJob
file.encoding = UTF-8
java.specification.version = 1.7
es.default.path.home = /usr/share/elasticsearch
es.logger.prefix =
user.name = elasticsearch
java.class.path = /usr/share/elasticsearch/lib/elasticsearch-2.3.3.jar:/usr/share/elasticsearch/lib/lucene-analyzers-common-5.5.0.jar:/usr/share/elasticsearch/lib/hppc-0.7.1.jar:/usr/share/elasticsearch/lib/jts-1.13.jar:/usr/share/elasticsearch/lib/joda-convert-1.2.jar:/usr/share/elasticsearch/lib/lucene-grouping-5.5.0.jar:/usr/share/elasticsearch/lib/jackson-dataformat-yaml-2.6.6.jar:/usr/share/elasticsearch/lib/spatial4j-0.5.jar:/usr/share/elasticsearch/lib/lucene-misc-5.5.0.jar:/usr/share/elasticsearch/lib/jsr166e-1.1.0.jar:/usr/share/elasticsearch/lib/joda-time-2.8.2.jar:/usr/share/elasticsearch/lib/lucene-backward-codecs-5.5.0.jar:/usr/share/elasticsearch/lib/compiler-0.8.13.jar:/usr/share/elasticsearch/lib/jackson-core-2.6.6.jar:/usr/share/elasticsearch/lib/lucene-core-5.5.0.jar:/usr/share/elasticsearch/lib/log4j-1.2.17.jar:/usr/share/elasticsearch/lib/jackson-dataformat-smile-2.6.6.jar:/usr/share/elasticsearch/lib/apache-log4j-extras-1.2.17.jar:/usr/share/elasticsearch/lib/lucene-queries-5.5.0.jar:/usr/share/elasticsearch/lib/lucene-memory-5.5.0.jar:/usr/share/elasticsearch/lib/guava-18.0.jar:/usr/share/elasticsearch/lib/lucene-highlighter-5.5.0.jar:/usr/share/elasticsearch/lib/lucene-suggest-5.5.0.jar:/usr/share/elasticsearch/lib/securesm-1.0.jar:/usr/share/elasticsearch/lib/netty-3.10.5.Final.jar:/usr/share/elasticsearch/lib/jackson-dataformat-cbor-2.6.6.jar:/usr/share/elasticsearch/lib/lucene-spatial-5.5.0.jar:/usr/share/elasticsearch/lib/jna-4.1.0.jar:/usr/share/elasticsearch/lib/elasticsearch-2.3.3.jar:/usr/share/elasticsearch/lib/compress-lzf-1.0.2.jar:/usr/share/elasticsearch/lib/t-digest-3.0.jar:/usr/share/elasticsearch/lib/lucene-join-5.5.0.jar:/usr/share/elasticsearch/lib/commons-cli-1.3.1.jar:/usr/share/elasticsearch/lib/HdrHistogram-2.1.6.jar:/usr/share/elasticsearch/lib/lucene-queryparser-5.5.0.jar:/usr/share/elasticsearch/lib/lucene-sandbox-5.5.0.jar:/usr/share/elasticsearch/lib/lucene-spatial3d-5.5.0.jar:/usr/share/elasticsearch/lib/snakeyaml-1.15.jar
java.vm.specification.version = 1.7
sun.arch.data.model = 64
java.home = /usr/lib/jvm/java-7-oracle/jre
es.max-open-files = true
sun.java.command = org.elasticsearch.bootstrap.Elasticsearch start -d -p /var/run/elasticsearch.pid --default.path.home=/usr/share/elasticsearch --default.path.logs=/var/log/elasticsearch --default.path.data=/var/lib/elasticsearch --default.path.conf=/etc/elasticsearch
user.language = en
java.specification.vendor = Oracle Corporation
awt.toolkit = sun.awt.X11.XToolkit
java.vm.info = mixed mode
java.version = 1.7.0_80
java.ext.dirs = /usr/lib/jvm/java-7-oracle/jre/lib/ext:/usr/java/packages/lib/ext
sun.boot.class.path = /usr/lib/jvm/java-7-oracle/jre/lib/resources.jar:/usr/lib/jvm/java-7-oracle/jre/lib/rt.jar:/usr/lib/jvm/java-7-oracle/jre/lib/sunrsasign.jar:/usr/lib/jvm/java-7-oracle/jre/lib/jsse.jar:/usr/lib/jvm/java-7-oracle/jre/lib/jce.jar:/usr/lib/jvm/java-7-oracle/jre/lib/charsets.jar:/usr/lib/jvm/java-7-oracle/jre/lib/jfr.jar:/usr/lib/jvm/java-7-oracle/jre/classes
java.vendor = Oracle Corporation
java.awt.headless = true
file.separator = /
java.vendor.url.bug = http://bugreport.sun.com/bugreport/
sun.io.unicode.encoding = UnicodeLittle
sun.cpu.endian = little
sun.cpu.isalist =

VM Flags:

-Xms256m -Xmx1g -Djava.awt.headless=true -XX:+UseParNewGC -XX:+UseConcMarkSweepGC -XX:CMSInitiatingOccupancyFraction=75 -XX:+UseCMSInitiatingOccupancyOnly -XX:+HeapDumpOnOutOfMemoryError -XX:+DisableExplicitGC -Dfile.encoding=UTF-8 -Djna.nosys=true -Des.max-open-files=true -Des.path.home=/usr/share/elasticsearch

false rewritten as False in elasticsearch.yml

a little gotcha in the elasticsearch.yml configuration. In your examples you always have "true" and "false" in quotes, but should you happen to put true and false without quotes, it ends up in the elasticsearch.yml file as False with a capital first letter, and elasticsearch doesn't understand that.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.