diff --git a/tasks/gce.yml b/tasks/gce.yml new file mode 100644 index 0000000..63deb6a --- /dev/null +++ b/tasks/gce.yml @@ -0,0 +1,25 @@ +--- +# Install GCE Plugin (see https://github.com/elasticsearch/elasticsearch-cloud-gce) +# +# The following variables need to be defined in your playbook or inventory: +# - elasticsearch_plugin_gce_version +# +# 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_gce_project_id +# - elasticsearch_plugin_gce_region + + +- name: Installing GCE Plugin + action: > + shell bin/plugin install elasticsearch/elasticsearch-cloud-gce/{{ elasticsearch_plugin_gce_version }} + chdir={{ elasticsearch_home_dir }} + +# Fix permissions +- file: > + path="{{ elasticsearch_plugin_dir }}" state=directory + owner={{ elasticsearch_user }} group={{ elasticsearch_group }} + recurse=yes + diff --git a/tasks/main.yml b/tasks/main.yml index 324b252..4fbe022 100644 --- a/tasks/main.yml +++ b/tasks/main.yml @@ -94,6 +94,10 @@ - include: aws.yml when: (elasticsearch_plugin_aws_version is defined) +# Install GCE Plugin +- include: gce.yml + when: (elasticsearch_plugin_gce_version is defined) + # Install Other Generic Plugins - include: plugins.yml when: (elasticsearch_plugins is defined) diff --git a/templates/elasticsearch.yml.j2 b/templates/elasticsearch.yml.j2 index ee08047..716b1c1 100644 --- a/templates/elasticsearch.yml.j2 +++ b/templates/elasticsearch.yml.j2 @@ -385,6 +385,18 @@ indices.recovery.concurrent_streams: {{ elasticsearch_recovery_concurrent_stream ################################## Discovery ################################## +{% if elasticsearch_plugin_gce_is defined %} + +discovery.type: gce +{% if elasticsearch_plugin_gce_project_id defined %} +cloud.gce.project_id: '{{ elasticsearch_plugin_gce_project_id }}' +{% endif %} +{% if elasticsearch_plugin_gce_region defined %} +cloud.gce.zone: '{{ elasticsearch_plugin_gce_region }}' +{% endif %} + +{% endif %} + {% if elasticsearch_plugin_aws_version is defined %} discovery.type: ec2