Alexandros Kosiaris has submitted this change and it was merged.

Change subject: cassandra: allow default instance overrides
......................................................................


cassandra: allow default instance overrides

cassandra default instance does not allow overriding some basic
configuration settings, resulting in non respected configuration
parameters. Pass the 4 following configuration parameters as in from the
cassandra class to the default instance class:
 * data_file_directories
 * commitlog_directory
 * heapdump_directory
 * saved_caches_directory

and honor them during the creation of configuration. This commit follows
a "least disruption possible" approach, but clearly all configuration
values need to be honored by the default instance instead

Change-Id: I62e41f1f952aa9bad7304d95314db320f01162c1
---
M modules/cassandra/manifests/init.pp
M modules/cassandra/manifests/instance.pp
2 files changed, 16 insertions(+), 8 deletions(-)

Approvals:
  Alexandros Kosiaris: Verified; Looks good to me, approved



diff --git a/modules/cassandra/manifests/init.pp 
b/modules/cassandra/manifests/init.pp
index 243f1ef..17d4a46 100644
--- a/modules/cassandra/manifests/init.pp
+++ b/modules/cassandra/manifests/init.pp
@@ -233,7 +233,7 @@
     $authorizor                       = true,
     $data_file_directories            = ['/var/lib/cassandra/data'],
     $commitlog_directory              = '/var/lib/cassandra/commitlog',
-    $heapdump_directory               = '/var/lib/cassandra',
+    $heapdump_directory               = '/var/lib/cassandra/',
     $disk_failure_policy              = 'stop',
     $row_cache_size_in_mb             = 200,
     $memory_allocator                 = 'JEMallocAllocator',
@@ -383,9 +383,13 @@
     } else {
         $default_instances = {
             'default' => {
-                'jmx_port'       => $jmx_port,
-                'listen_address' => $listen_address,
-                'rpc_address'    => $rpc_address,
+                'jmx_port'               => $jmx_port,
+                'listen_address'         => $listen_address,
+                'rpc_address'            => $rpc_address,
+                'data_file_directories'  => $data_file_directories,
+                'commitlog_directory'    => $commitlog_directory,
+                'heapdump_directory'     => $heapdump_directory,
+                'saved_caches_directory' => $saved_caches_directory,
         }}
         cassandra::instance{ 'default':
             instances => $default_instances,
diff --git a/modules/cassandra/manifests/instance.pp 
b/modules/cassandra/manifests/instance.pp
index 0024fc4..1290436 100644
--- a/modules/cassandra/manifests/instance.pp
+++ b/modules/cassandra/manifests/instance.pp
@@ -62,6 +62,10 @@
         $tls_hostname        = $hostname
         $pid_file            = '/var/run/cassandra/cassandra.pid'
         $instance_id         = $hostname
+        $data_file_directories  = $this_instance['data_file_directories']
+        $commitlog_directory    = $this_instance['commitlog_directory']
+        $heapdump_directory     = $this_instance['heapdump_directory']
+        $saved_caches_directory = $this_instance['saved_caches_directory']
     } else {
         $data_directory_base = "/srv/cassandra-${instance_name}"
         $config_directory    = "/etc/cassandra-${instance_name}"
@@ -69,12 +73,12 @@
         $tls_hostname        = "${hostname}-${instance_name}"
         $pid_file            = 
"/var/run/cassandra/cassandra-${instance_name}.pid"
         $instance_id         = "${hostname}-${instance_name}"
+        $data_file_directories  = ["${data_directory_base}/data"]
+        $commitlog_directory    = "${data_directory_base}/commitlog"
+        $heapdump_directory     = $data_directory_base
+        $saved_caches_directory = "${data_directory_base}/saved_caches"
     }
 
-    $data_file_directories  = ["${data_directory_base}/data"]
-    $commitlog_directory    = "${data_directory_base}/commitlog"
-    $heapdump_directory     = "${data_directory_base}/"
-    $saved_caches_directory = "${data_directory_base}/saved_caches"
     $tls_cluster_name       = $::cassandra::tls_cluster_name
     $application_username   = $::cassandra::application_username
 

-- 
To view, visit https://gerrit.wikimedia.org/r/247265
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: merged
Gerrit-Change-Id: I62e41f1f952aa9bad7304d95314db320f01162c1
Gerrit-PatchSet: 5
Gerrit-Project: operations/puppet
Gerrit-Branch: production
Gerrit-Owner: Alexandros Kosiaris <[email protected]>
Gerrit-Reviewer: Alexandros Kosiaris <[email protected]>
Gerrit-Reviewer: jenkins-bot <>

_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to