Hi ! First of all , thank you for your help.
I don´t understand a puppet behaviour with a elasticsearch puppet module. It´s probably that my lack of experience wirh puppet is the cause. - Module version: Elastic Search 6.3.1 - Puppet version: 5.5 - OS and version: CentOS 7.5 I have deployed a elasticsearch 6.3.1 development cluster with 3 nodes via puppet. It has also been installed a search guard "search-guard-6:6.3.1-23.0" through puppet. To activate search guard plugin in dev environment , I have used two scripts included in this plugin, "install_demo_configuration.sh" and "sgadmin_demo.sh". These scripts, add certain configurations lines to elasticsearch.yml. Every time puppet agent request the catalog in these machines ,the elasticsearch.yml is overwritten according to the configuration of the manifest, and search guard doesn´t work. This also causes elasticsearch service to stop working. The elasticsearch manifest that we have used to install elasticsearch and search guard plugin : ------------------------------------------------------------------------------------------------------------------------------------------------------------------------ include ::java class profile::elk6::elasticsearch { $version=hiera('profile::elk6::elasticsearch::version') $clustername=hiera('profile::elk6::elasticsearch::clustername') $ismaster=hiera('profile::elk6::elasticsearch::ismaster') $isdatanode=hiera('profile::elk6::elasticsearch::isdatanode') $esmasters=hiera('profile::elk6::elasticsearch::esmasters') $datadir=hiera('profile::elk6::elasticsearch::datadir') $esheapsize=hiera('profile::elk6::elasticsearch::heapsize') $config_hash ={ 'ES_HEAP_SIZE' => "$esheapsize", 'MAX_LOCKED_MEMORY' => "unlimited" } class { '::elasticsearch': version => $version, status => 'enabled', manage_repo => true, datadir => $datadir, config => { 'cluster.name' => $clustername, 'network.host' => $::ipaddress_eth0, 'node.data' => $isdatanode, 'node.master' => $ismaster, 'discovery.zen.ping.unicast.hosts'=> $esmasters, 'discovery.zen.minimum_master_nodes'=> 2, 'http.port' => 9200, 'http.cors.allow-origin' => "/.*/", 'http.cors.enabled' => true, 'http.cors.allow-headers' => "Authorization, X-Requested-With, Content-Type, Content-Length", 'http.cors.allow-credentials' => true # 'bootstrap.unlockall' => 'true' }, init_defaults => $config_hash, } elasticsearch::plugin { 'com.floragunn:search-guard-6:6.3.1-23.0': instances => 'esmaster', } elasticsearch::instance { 'es-01': } # checks if ES is available on localhost es_instance_conn_validator { "es$::ipaddress_eth0" : server => $::ipaddress_eth0, port => '9200', } ------------------------------------------------------------------------------------------------------------------------------------------------------------------------ When the elasticsearch.yml is overwritten and search guard causes that elasticsearch service to stop working , the log shows: "java.lang.IllegalStateException: failed to load plugin class [com.floragunn.searchguard.SearchGuardPlugin]" "Caused by: org.elasticsearch.ElasticsearchException: searchguard.ssl.transport.keystore_filepath or searchguard.ssl.transport.pemkey_filepath must be set if transport ssl is reqested." ¿Is it possible to add the configurations lines for search guard plugin in the puppet manifest and avoid this behavior? ¿Is there a mistake in my puppet manifest? Regards and thanks in advance! -- You received this message because you are subscribed to the Google Groups "Puppet Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to puppet-users+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/puppet-users/02e9dab7-ad17-431a-9fee-56e04788c002%40googlegroups.com. For more options, visit https://groups.google.com/d/optout.