diff --git a/defaults/main.yml b/defaults/main.yml index 837a6a6..79c5081 100644 --- a/defaults/main.yml +++ b/defaults/main.yml @@ -1,2 +1,5 @@ --- elasticsearch_nextcloud_os_supported: False + +elasticsearch_nextcloud_host: "127.0.0.1" +elasticsearch_nextcloud_port: "9200" \ No newline at end of file diff --git a/tasks/main.yml b/tasks/main.yml index 4eb47f2..27ae777 100644 --- a/tasks/main.yml +++ b/tasks/main.yml @@ -40,4 +40,15 @@ pkg: - elasticsearch=6.1.0 state: latest - update_cache: yes \ No newline at end of file + update_cache: yes + +- name: Set config file + template: + src: elasticsearch.yml.j2 + dest: /etc/elasticsearch/elasticsearch.yml + owner: root + group: elasticsearch + +- name: Enable ingest-attachment plugin + shell: + cmd: "{{ nextcloud_elasticsearch_bin_dir }}/elasticsearch-plugin install ingest-attachment" \ No newline at end of file diff --git a/templates/elasticsearch.yml.j2 b/templates/elasticsearch.yml.j2 new file mode 100644 index 0000000..3def9fb --- /dev/null +++ b/templates/elasticsearch.yml.j2 @@ -0,0 +1,88 @@ +# ======================== Elasticsearch Configuration ========================= +# +# NOTE: Elasticsearch comes with reasonable defaults for most settings. +# Before you set out to tweak and tune the configuration, make sure you +# understand what are you trying to accomplish and the consequences. +# +# The primary way of configuring a node is via this file. This template lists +# the most important settings you may want to configure for a production cluster. +# +# Please consult the documentation for further information on configuration options: +# https://www.elastic.co/guide/en/elasticsearch/reference/index.html +# +# ---------------------------------- Cluster ----------------------------------- +# +# Use a descriptive name for your cluster: +# +#cluster.name: my-application +# +# ------------------------------------ Node ------------------------------------ +# +# Use a descriptive name for the node: +# +#node.name: node-1 +# +# Add custom attributes to the node: +# +#node.attr.rack: r1 +# +# ----------------------------------- Paths ------------------------------------ +# +# Path to directory where to store the data (separate multiple locations by comma): +# +path.data: {{ elasticsearch_nextcloud_data_path }} +# +# Path to log files: +# +path.logs: /var/log/elasticsearch +# +# ----------------------------------- Memory ----------------------------------- +# +# Lock the memory on startup: +# +#bootstrap.memory_lock: true +# +# Make sure that the heap size is set to about half the memory available +# on the system and that the owner of the process is allowed to use this +# limit. +# +# Elasticsearch performs poorly when the system is swapping the memory. +# +# ---------------------------------- Network ----------------------------------- +# +# Set the bind address to a specific IP (IPv4 or IPv6): +# +network.host: {{ elasticsearch_nextcloud_host }} +# +# Set a custom port for HTTP: +# +http.port: {{ elasticsearch_nextcloud_port }} +# +# For more information, consult the network module documentation. +# +# --------------------------------- Discovery ---------------------------------- +# +# Pass an initial list of hosts to perform discovery when new node is started: +# The default list of hosts is ["127.0.0.1", "[::1]"] +# +#discovery.zen.ping.unicast.hosts: ["host1", "host2"] +# +# Prevent the "split brain" by configuring the majority of nodes (total number of master-eligible nodes / 2 + 1): +# +#discovery.zen.minimum_master_nodes: +# +# For more information, consult the zen discovery module documentation. +# +# ---------------------------------- Gateway ----------------------------------- +# +# Block initial recovery after a full cluster restart until N nodes are started: +# +#gateway.recover_after_nodes: 3 +# +# For more information, consult the gateway module documentation. +# +# ---------------------------------- Various ----------------------------------- +# +# Require explicit names when deleting indices: +# +#action.destructive_requires_name: true \ No newline at end of file diff --git a/vars/debian.yml b/vars/debian.yml index 83d8502..db281fc 100644 --- a/vars/debian.yml +++ b/vars/debian.yml @@ -1,2 +1,5 @@ --- elasticsearch_nextcloud_os_supported: True + +elasticsearch_nextcloud_data_path: "/var/lib/elasticsearch" +nextcloud_elasticsearch_bin_dir: "/usr/share/elasticsearch/bin" \ No newline at end of file