diff --git a/modules/logstash/files/es-logstash-template.json b/modules/logstash/files/es-logstash-template.json new file mode 100644 index 0000000000..c1909b2d77 --- /dev/null +++ b/modules/logstash/files/es-logstash-template.json @@ -0,0 +1,10 @@ +{ + "logstash_settings" : { + "template" : "logstash*", + "settings" : { + "index.routing.allocation.total_shards_per_node" : "3", + "index.translog.flush_threshold_ops" : "50000", + "index.cache.field.type" : "soft" + } + } +} diff --git a/modules/logstash/manifests/elasticsearch.pp b/modules/logstash/manifests/elasticsearch.pp index f4b2410fe6..eb4562274e 100644 --- a/modules/logstash/manifests/elasticsearch.pp +++ b/modules/logstash/manifests/elasticsearch.pp @@ -50,6 +50,24 @@ class logstash::elasticsearch ( require => Package['elasticsearch'], } + file { '/etc/elasticsearch/templates': + ensure => directory, + owner => 'root', + group => 'root', + mode => '0755', + require => Package['elasticsearch'], + } + + file { '/etc/elasticsearch/templates/logstash_settings.json': + ensure => present, + source => 'puppet:///modules/logstash/es-logstash-template.json', + replace => true, + owner => 'root', + group => 'root', + mode => '0644', + require => File['/etc/elasticsearch/templates'], + } + file { '/etc/elasticsearch/default-mapping.json': ensure => present, source => 'puppet:///modules/logstash/elasticsearch.mapping.json', diff --git a/modules/logstash/templates/elasticsearch.yml.erb b/modules/logstash/templates/elasticsearch.yml.erb index 4e82837d36..f07cf9327f 100644 --- a/modules/logstash/templates/elasticsearch.yml.erb +++ b/modules/logstash/templates/elasticsearch.yml.erb @@ -139,7 +139,7 @@ node.name: "<%= scope.lookupvar("::hostname") %>" index.store.compress.stored: true index.store.compress.tv: true -indices.memory.index_buffer_size: "40%" +indices.memory.index_buffer_size: "33%" #################################### Paths ####################################