Ottomata has uploaded a new change for review.

  https://gerrit.wikimedia.org/r/86690


Change subject: Puppetizing lvs400[1-4] in ulsfo.
......................................................................

Puppetizing lvs400[1-4] in ulsfo.

Change-Id: Icf2f49276ad1ee95234bc9a2cd986060fa2385bc
---
M manifests/lvs.pp
M manifests/site.pp
2 files changed, 109 insertions(+), 0 deletions(-)


  git pull ssh://gerrit.wikimedia.org:29418/operations/puppet 
refs/changes/90/86690/1

diff --git a/manifests/lvs.pp b/manifests/lvs.pp
index a88d20e..05881ed 100644
--- a/manifests/lvs.pp
+++ b/manifests/lvs.pp
@@ -145,6 +145,18 @@
                                        'mediawikilb' => "91.198.174.232",
                                        'foundationlb' => "91.198.174.235",
                                },
+                               'ulsfo' => {
+                                       'textsvc'       => "10.2.4.25",
+                                       'wikipedialb'   => "198.35.26.97",
+                                       'wiktionarylb'  => "198.35.26.98",
+                                       'wikiquotelb'   => "198.35.26.99",
+                                       'wikibookslb'   => "198.35.26.100",
+                                       'wikisourcelb'  => "198.35.26.101",
+                                       'wikinewslb'    => "198.35.26.102",
+                                       'wikiversitylb' => "198.35.26.103",
+                                       'mediawikilb'   => "198.35.26.104",
+                                       'foundationlb'  => "198.35.26.105",
+                               },
                        },
                        'text-varnish' => {
                                'pmtpa' => {
@@ -161,6 +173,11 @@
                                        'wikimedialb' => "91.198.174.224",
                                        'wikidatalb' => '91.198.174.237',
                                        'wikivoyagelb' => '91.198.174.238',
+                               },
+                               'ulsfo' => {
+                                       'wikimedialb'  => '198.35.26.96',
+                                       'wikidatalb'   => '198.35.26.114',
+                                       'wikivoyagelb' => '198.35.26.115',
                                },
                        },
                        'https' => {
@@ -307,6 +324,23 @@
                                        'wikidatalb6' => "2620:0:862:ed1a::12",
                                        'wikivoyagelb6' => "2620:0:862:ed1a::13"
                                },
+                               'ulsfo' => {
+                                       'wikimedialb6'   => 
"2620:0:863:ed1a::0",
+                                       'wikipedialb6'   => 
"2620:0:863:ed1a::1",
+                                       'wiktionarylb6'  => 
"2620:0:863:ed1a::2",
+                                       'wikiquotelb6'   => 
"2620:0:863:ed1a::3",
+                                       'wikibookslb6'   => 
"2620:0:863:ed1a::4",
+                                       'wikisourcelb6'  => 
"2620:0:863:ed1a::5",
+                                       'wikinewslb6'    => 
"2620:0:863:ed1a::6",
+                                       'wikiversitylb6' => 
"2620:0:863:ed1a::7",
+                                       'mediawikilb6'   => 
"2620:0:863:ed1a::8",
+                                       'foundationlb6'  => 
"2620:0:863:ed1a::9",
+                                       'bitslb6'        => 
"2620:0:863:ed1a::a",
+                                       'uploadlb6'      => 
"2620:0:863:ed1a::b",
+                                       'mobilelb6'      => 
"2620:0:863:ed1a::c",
+                                       'wikidatalb6'    => 
"2620:0:863:ed1a::d",
+                                       'wikivoyagelb6'  => 
"2620:0:863:ed1a::e",
+                               },
                        },
                        'bits' => {
                                'pmtpa' => { 'bitslb' => "208.80.152.210", 
'bitslb6' => "2620:0:860:ed1a::a", 'bitssvc' => "10.2.1.23" },
@@ -318,6 +352,7 @@
                                'pmtpa' => { 'uploadlb' => "208.80.152.211", 
'uploadsvc' => "10.2.1.24" },
                                'eqiad' => { 'uploadlb' => "208.80.154.235", 
'uploadlb6' => "2620:0:861:ed1a::b", 'uploadsvc' => "10.2.2.24" },
                                'esams' => { 'uploadlb' => "91.198.174.234", 
'uploadsvc' => "10.2.3.24" },
+                               'ulsfo' => { 'uploadlb' => "198.35.26.107",  
'bitslb6'   => "2620:0:863:ed1a::b", 'bitssvc' => "10.2.4.24" },
                        },
                        'payments' => {
                                'pmtpa' => "208.80.152.213",
@@ -366,6 +401,7 @@
                        'mobile' => {
                                'eqiad' => { 'mobilelb' => "208.80.154.236", 
'mobilelb6' => "2620:0:861:ed1a::c", 'mobilesvc' => "10.2.2.26"},
                                'esams' => { 'mobilelb' => '91.198.174.236', 
'mobilelb6' => '2620:0:862:ed1a::c', 'mobilesvc' => '10.2.3.26'},
+                               'ulsfo' => { 'mobilelb' => '198.35.26.108',  
'mobilelb6' => '2620:0:863:ed1a::c', 'mobilesvc' => '10.2.4.26'},
                        },
                        'swift' => {
                                'pmtpa' => "10.2.1.27",
diff --git a/manifests/site.pp b/manifests/site.pp
index 956eef0..7768afa 100644
--- a/manifests/site.pp
+++ b/manifests/site.pp
@@ -1657,6 +1657,79 @@
     interface::offload { "eth3 gro": interface => "eth3", setting => "gro", 
value => "off" }
 }
 
+
+# ULSFO lvs servers
+node /^lvs400[1-4]\.ulsfo\.wmnet$/ {
+    $cluster = 'lvs'
+
+    # lvs4001 and lvs4003 are in different racks
+    if $hostname =~ /^lvs400[13]$/ {
+        $ganglia_aggregator = true
+    }
+
+    # Older PyBal is very dependent on recursive DNS, to the point where it is 
a SPOF
+    # So we'll have every LVS server run their own recursor
+    $nameservers_prefix = [ $ipaddress ]
+    include dns::recursor
+
+    include lvs::configuration
+    $sip = $lvs::configuration::lvs_service_ips[$::realm]
+
+    $lvs_balancer_ips = $::hostname ? {
+        /^lvs400[13]$/ => [
+            $sip['text'][$::site],
+            $sip['text-varnish'][$::site],
+            $sip['bits'][$::site],
+            $sip['mobile'][$::site],
+            $sip['ipv6'][$::site],
+            ],
+        /^lvs[24]$/ => [
+            $sip['upload'][$::site],
+            $sip['ipv6'][$::site],
+        ]
+    }
+    interface::add_ip6_mapped { "main": interface => "eth0" }
+
+     include base,
+         ganglia
+
+     class { "lvs::balancer": service_ips => $lvs_balancer_ips }
+
+     # Make sure GRO is off
+     interface::offload { "eth0 gro": interface => "eth0", setting => "gro", 
value => "off" }
+
+
+    include base,
+        ganglia,
+        lvs::balancer::runcommand
+
+    class { "lvs::balancer": service_ips => $lvs_balancer_ips }
+
+    ##### TODO:  Do we need internal IP aliases in ulsfo???
+    #            If so, what should they be?
+    $ips = {
+        'internal' => {
+            'lvs4001' => "10.0.0.11",
+            'lvs4002' => "10.0.0.12",
+            'lvs4003' => "10.0.0.13",
+            'lvs4004' => "10.0.0.14",
+        },
+    }
+
+    interface::add_ip6_mapped { "main": interface => "eth0" }
+
+    # Set up tagged interfaces to all subnets with real servers in them
+    interface::tagged { "eth0.2":
+        base_interface => "eth0",
+        vlan_id => "2",
+        address => $ips["internal"][$hostname],
+        netmask => "255.255.0.0"
+    }
+
+    # Make sure GRO is off
+    interface::offload { "eth0 gro": interface => "eth0", setting => "gro", 
value => "off" }
+}
+
 node "maerlant.esams.wikimedia.org" {
     include standard
 }

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

Gerrit-MessageType: newchange
Gerrit-Change-Id: Icf2f49276ad1ee95234bc9a2cd986060fa2385bc
Gerrit-PatchSet: 1
Gerrit-Project: operations/puppet
Gerrit-Branch: production
Gerrit-Owner: Ottomata <o...@wikimedia.org>

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

Reply via email to