Filippo Giunchedi has submitted this change and it was merged. ( 
https://gerrit.wikimedia.org/r/404262 )

Change subject: restbase: reprovision restbase1017
......................................................................


restbase: reprovision restbase1017

This host has 4 ssds, thus also introduce the corresponding partman recipe for 
JBOD.

Bug: T184100
Change-Id: I1f7e0e0f3bf32d7255c24f8c1cb7ff4f1cf21d9d
---
M hieradata/role/common/restbase/production.yaml
M hieradata/role/common/restbase/production_ng.yaml
M manifests/site.pp
M modules/install_server/files/autoinstall/netboot.cfg
A modules/install_server/files/autoinstall/partman/cassandrahosts-4ssd-jbod.cfg
5 files changed, 120 insertions(+), 10 deletions(-)

Approvals:
  Mobrovac: Looks good to me, but someone else must approve
  jenkins-bot: Verified
  Filippo Giunchedi: Looks good to me, approved



diff --git a/hieradata/role/common/restbase/production.yaml 
b/hieradata/role/common/restbase/production.yaml
index a7dc889..6326ff5 100644
--- a/hieradata/role/common/restbase/production.yaml
+++ b/hieradata/role/common/restbase/production.yaml
@@ -134,13 +134,13 @@
       listen_address: 10.64.0.33
     c:
       listen_address: 10.64.0.34
-  "restbase1017.eqiad.wmnet":
-    a:
-      listen_address: 10.64.32.130
-    b:
-      listen_address: 10.64.32.131
-    c:
-      listen_address: 10.64.32.132
+  # "restbase1017.eqiad.wmnet":
+  #   a:
+  #     listen_address: 10.64.32.130
+  #   b:
+  #     listen_address: 10.64.32.131
+  #   c:
+  #     listen_address: 10.64.32.132
   "restbase1018.eqiad.wmnet":
     a:
       listen_address: 10.64.48.98
diff --git a/hieradata/role/common/restbase/production_ng.yaml 
b/hieradata/role/common/restbase/production_ng.yaml
index 1bc6155..c29b1d7 100644
--- a/hieradata/role/common/restbase/production_ng.yaml
+++ b/hieradata/role/common/restbase/production_ng.yaml
@@ -358,6 +358,46 @@
       hints_directory: /srv/cassandra/instance-data/cassandra-c/hints
       saved_caches_directory: 
/srv/cassandra/instance-data/cassandra-c/saved_caches
       jmx_exporter_enabled: true
+  "restbase1017.eqiad.wmnet":
+    a:
+      listen_address: 10.64.32.130
+      data_file_directories:
+        - /srv/sda4/cassandra-a/data
+        - /srv/sdb4/cassandra-a/data
+        - /srv/sdc4/cassandra-a/data
+        - /srv/sdd4/cassandra-a/data
+        - /srv/sde4/cassandra-a/data
+      heapdump_directory: /srv/sda4/cassandra-a
+      commitlog_directory: /srv/cassandra/instance-data/cassandra-a/commitlog
+      hints_directory: /srv/cassandra/instance-data/cassandra-a/hints
+      saved_caches_directory: 
/srv/cassandra/instance-data/cassandra-a/saved_caches
+      jmx_exporter_enabled: true
+    #b:
+    #  listen_address: 10.64.32.131
+    #  data_file_directories:
+    #    - /srv/sda4/cassandra-b/data
+    #    - /srv/sdb4/cassandra-b/data
+    #    - /srv/sdc4/cassandra-b/data
+    #    - /srv/sdd4/cassandra-b/data
+    #    - /srv/sde4/cassandra-b/data
+    #  heapdump_directory: /srv/sdb4/cassandra-b
+    #  commitlog_directory: /srv/cassandra/instance-data/cassandra-b/commitlog
+    #  hints_directory: /srv/cassandra/instance-data/cassandra-b/hints
+    #  saved_caches_directory: 
/srv/cassandra/instance-data/cassandra-b/saved_caches
+    #  jmx_exporter_enabled: true
+    #c:
+    #  listen_address: 10.64.32.132
+    #  data_file_directories:
+    #    - /srv/sda4/cassandra-c/data
+    #    - /srv/sdb4/cassandra-c/data
+    #    - /srv/sdc4/cassandra-c/data
+    #    - /srv/sdd4/cassandra-c/data
+    #    - /srv/sde4/cassandra-c/data
+    #  heapdump_directory: /srv/sdc4/cassandra-c
+    #  commitlog_directory: /srv/cassandra/instance-data/cassandra-c/commitlog
+    #  hints_directory: /srv/cassandra/instance-data/cassandra-c/hints
+    #  saved_caches_directory: 
/srv/cassandra/instance-data/cassandra-c/saved_caches
+    #  jmx_exporter_enabled: true
   "restbase2001.codfw.wmnet":
     a:
       listen_address: 10.192.16.162
diff --git a/manifests/site.pp b/manifests/site.pp
index 8803b67..cc900c4 100644
--- a/manifests/site.pp
+++ b/manifests/site.pp
@@ -1834,11 +1834,11 @@
 }
 
 # restbase eqiad cluster
-node /^restbase101[35678]\.eqiad\.wmnet$/ {
+node /^restbase101[3568]\.eqiad\.wmnet$/ {
     role(spare::system)
 }
 
-node /^restbase10(0[789]|1[0124])\.eqiad\.wmnet$/ {
+node /^restbase10(0[789]|1[01247])\.eqiad\.wmnet$/ {
     role(restbase::production_ng)
 }
 
diff --git a/modules/install_server/files/autoinstall/netboot.cfg 
b/modules/install_server/files/autoinstall/netboot.cfg
index 8232895..ee406c4 100755
--- a/modules/install_server/files/autoinstall/netboot.cfg
+++ b/modules/install_server/files/autoinstall/netboot.cfg
@@ -155,7 +155,8 @@
         restbase100[0-6]) echo partman/cassandrahosts-5ssd.cfg ;; \
         restbase100[789]|restbase101[0124]) echo 
partman/cassandrahosts-5ssd-jbod.cfg ;; \
         restbase101[35]) echo partman/cassandrahosts-5ssd.cfg ;; \
-        restbase101[6-8]|restbase-dev100[456]) echo 
partman/cassandrahosts-4ssd.cfg ;; \
+        restbase1017) echo partman/cassandrahosts-4ssd-jbod.cfg ;; \
+        restbase101[68]|restbase-dev100[456]) echo 
partman/cassandrahosts-4ssd.cfg ;; \
         restbase-test2*)  echo partman/cassandrahosts-2ssd.cfg ;; \
         restbase200[123456]) echo partman/cassandrahosts-5ssd-jbod.cfg ;; \
         restbase200[7-9]) echo partman/cassandrahosts-4ssd.cfg ;; \
diff --git 
a/modules/install_server/files/autoinstall/partman/cassandrahosts-4ssd-jbod.cfg 
b/modules/install_server/files/autoinstall/partman/cassandrahosts-4ssd-jbod.cfg
new file mode 100644
index 0000000..7f11431
--- /dev/null
+++ 
b/modules/install_server/files/autoinstall/partman/cassandrahosts-4ssd-jbod.cfg
@@ -0,0 +1,69 @@
+# Automatic software RAID partitioning
+#
+# * 4 SSD, sda, sdb, sdc, sdd
+# * layout:
+#   - /:   ext4, RAID1
+#   - swap:   RAID1, 1GB
+#   - /srv/cassandra/instance-data: RAID10, 45GB
+#   - /srv/sd<ID>: ext4, remaining space on sd<ID>
+
+
+d-i    partman-auto/method             string  raid
+d-i    partman-md/device_remove_md     boolean true
+d-i    partman-lvm/device_remove_lvm   boolean true
+d-i    partman/alignment               select  optimal
+
+d-i    partman-auto/disk       string  /dev/sda /dev/sdb /dev/sdc /dev/sdd
+d-i    partman-auto/choose_recipe select raid1-root
+
+# Define physical partitions
+d-i    partman-auto/expert_recipe      string  \
+               raid1-root ::   \
+                       30000   1       30000   raid            \
+                               $primary{ } method{ raid }      \
+                               $lvmignore{ }                   \
+                       .                                       \
+                       1000    2       1000    raid    \
+                               $primary{ } method{ raid }      \
+                               $lvmignore{ }                   \
+                       .                                       \
+                       20000   3       20000   raid            \
+                               $primary{ } method{ raid }      \
+                               $lvmignore{ }                   \
+                       .                                       \
+                       100000  4       -1      ext4            \
+                               $primary{ } method{ format }    \
+                               $lvmignore{ }                   \
+                               format{ } \
+                               use_filesystem{ } \
+                               filesystem{ ext4 } \
+                               reserved_for_root{ 0 } \
+                       .
+
+# Parameters are:
+# <raidtype> <devcount> <sparecount> <fstype> <mountpoint> \
+#      <devices> <sparedevices>
+d-i    partman-auto-raid/recipe        string          \
+               1       4       0       ext4    /       \
+                       /dev/sda1#/dev/sdb1#/dev/sdc1#/dev/sdd1         \
+               .                                       \
+               1       4       0       swap    -       \
+                       /dev/sda2#/dev/sdb2#/dev/sdc2#/dev/sdd2         \
+               .                                       \
+               10      4       0       ext4    /srv/cassandra/instance-data    
\
+                       /dev/sda3#/dev/sdb3#/dev/sdc3#/dev/sdd3         \
+               .
+
+d-i    partman-md/confirm              boolean true
+d-i    partman-md/confirm_nooverwrite  boolean true
+d-i    partman/confirm_write_new_label boolean true
+d-i    partman/choose_partition        select  finish
+d-i    partman/confirm                 boolean true
+d-i    partman/confirm_nooverwrite     boolean true
+d-i    partman-basicfilesystems/no_mount_point boolean false
+
+d-i    partman-auto-lvm/guided_size    string  80%
+d-i    partman-lvm/confirm             boolean true
+d-i    partman-lvm/confirm_nooverwrite boolean true
+d-i    partman-lvm/device_remove_lvm   boolean true
+d-i    mdadm/boot_degraded             boolean true

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

Gerrit-MessageType: merged
Gerrit-Change-Id: I1f7e0e0f3bf32d7255c24f8c1cb7ff4f1cf21d9d
Gerrit-PatchSet: 1
Gerrit-Project: operations/puppet
Gerrit-Branch: production
Gerrit-Owner: Filippo Giunchedi <fgiunch...@wikimedia.org>
Gerrit-Reviewer: Eevans <eev...@wikimedia.org>
Gerrit-Reviewer: Filippo Giunchedi <fgiunch...@wikimedia.org>
Gerrit-Reviewer: Mobrovac <mobro...@wikimedia.org>
Gerrit-Reviewer: jenkins-bot <>

_______________________________________________
MediaWiki-commits mailing list
MediaWiki-commits@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to