-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Adds placeholder sites for new production MIGs (#327)
I'm trying this as a new strategy for deploying virtual sites. The old way was to create the resources in GCP using terraform-support, then note the static IPs created by GCP, then create the siteinfo records. The problem with this is that once the GCP resources are created, they join the cluster and start running workloads. Some of these workloads faile (namely uuid-annotator) because the site doesn't yet exist in siteinfo. This causes production alerts that cannot be managed with GMX, since GMX will not put anything into maintenance that doesn't exist in siteinfo. The idea here is to create the site here in siteinfo, with an RFC1918 IPv4 address and no IPv6 address, and then push this through to production. Once this is in production, then an operator should place the sites into GMX maintenance mode, then run the terraform-support deployment to actually create the resources. This is still not perfect because deploying siteinfo triggers a build in prometheus-support, which updates monitoring targets. Monitoring will then start probing machines that don't exist, with non-public IP addresses. This may not, but has the potential to cause alerts to fire. Additionally, GMX only reloads siteinfo data about every 5h, with an actual window of anywhere from 1 to 24h. This means that even though the machines are in siteinfo, GMX may still refuse to add them to maintenance unless it has already refreshed its copy of siteinfo. It may be necessary to manually restart GMX in production in these cases to ensure it has the latest version of siteinfo data so that the new sites can be put into maintenance.
- Loading branch information
Showing
12 changed files
with
468 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,39 @@ | ||
local sitesDefault = import 'sites/_default_virtual.jsonnet'; | ||
|
||
sitesDefault { | ||
name: 'bom06', | ||
annotations+: { | ||
provider: 'gcp', | ||
}, | ||
machines+: { | ||
mlab1+: { | ||
network+: { | ||
ipv4+: { | ||
address: '192.168.0.1/32', | ||
}, | ||
ipv6+: { | ||
address: nil, | ||
}, | ||
}, | ||
project: 'mlab-oti', | ||
}, | ||
}, | ||
transit+: { | ||
provider: 'Google LLC', | ||
uplink: '1g', | ||
asn: 'AS396982', | ||
}, | ||
location+: { | ||
continent_code: 'AS', | ||
country_code: 'IN', | ||
metro: 'bom', | ||
city: 'Mumbai', | ||
state: '', | ||
latitude: 19.0886, | ||
longitude: 72.8681, | ||
}, | ||
lifecycle+: { | ||
created: '2024-03-25', | ||
}, | ||
} | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,39 @@ | ||
local sitesDefault = import 'sites/_default_virtual.jsonnet'; | ||
|
||
sitesDefault { | ||
name: 'cgk02', | ||
annotations+: { | ||
provider: 'gcp', | ||
}, | ||
machines+: { | ||
mlab1+: { | ||
network+: { | ||
ipv4+: { | ||
address: '192.168.0.1/32', | ||
}, | ||
ipv6+: { | ||
address: nil, | ||
}, | ||
}, | ||
project: 'mlab-oti', | ||
}, | ||
}, | ||
transit+: { | ||
provider: 'Google LLC', | ||
uplink: '1g', | ||
asn: 'AS139190', | ||
}, | ||
location+: { | ||
continent_code: 'AS', | ||
country_code: 'ID', | ||
metro: 'cgk', | ||
city: 'Jakarta', | ||
state: '', | ||
latitude: -6.1256, | ||
longitude: 106.6558, | ||
}, | ||
lifecycle+: { | ||
created: '2024-03-25', | ||
}, | ||
} | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,39 @@ | ||
local sitesDefault = import 'sites/_default_virtual.jsonnet'; | ||
|
||
sitesDefault { | ||
name: 'chs02', | ||
annotations+: { | ||
provider: 'gcp', | ||
}, | ||
machines+: { | ||
mlab1+: { | ||
network+: { | ||
ipv4+: { | ||
address: '192.168.0.1/32', | ||
}, | ||
ipv6+: { | ||
address: nil, | ||
}, | ||
}, | ||
project: 'mlab-oti', | ||
}, | ||
}, | ||
transit+: { | ||
provider: 'Google LLC', | ||
uplink: '1g', | ||
asn: 'AS396982', | ||
}, | ||
location+: { | ||
continent_code: 'NA', | ||
country_code: 'US', | ||
metro: 'chs', | ||
city: 'Charleston', | ||
state: 'SC', | ||
latitude: 32.8986, | ||
longitude: -80.0406, | ||
}, | ||
lifecycle+: { | ||
created: '2024-03-25', | ||
}, | ||
} | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,39 @@ | ||
local sitesDefault = import 'sites/_default_virtual.jsonnet'; | ||
|
||
sitesDefault { | ||
name: 'dfw12', | ||
annotations+: { | ||
provider: 'gcp', | ||
}, | ||
machines+: { | ||
mlab1+: { | ||
network+: { | ||
ipv4+: { | ||
address: '192.168.0.1/32', | ||
}, | ||
ipv6+: { | ||
address: nil, | ||
}, | ||
}, | ||
project: 'mlab-oti', | ||
}, | ||
}, | ||
transit+: { | ||
provider: 'Google LLC', | ||
uplink: '1g', | ||
asn: 'AS396982', | ||
}, | ||
location+: { | ||
continent_code: 'NA', | ||
country_code: 'US', | ||
metro: 'dfw', | ||
city: 'Dallas', | ||
state: 'TX', | ||
latitude: 32.8969, | ||
longitude: -97.0381, | ||
}, | ||
lifecycle+: { | ||
created: '2024-03-25', | ||
}, | ||
} | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,39 @@ | ||
local sitesDefault = import 'sites/_default_virtual.jsonnet'; | ||
|
||
sitesDefault { | ||
name: 'doh02', | ||
annotations+: { | ||
provider: 'gcp', | ||
}, | ||
machines+: { | ||
mlab1+: { | ||
network+: { | ||
ipv4+: { | ||
address: '192.168.0.1/32', | ||
}, | ||
ipv6+: { | ||
address: nil, | ||
}, | ||
}, | ||
project: 'mlab-oti', | ||
}, | ||
}, | ||
transit+: { | ||
provider: 'Google LLC', | ||
uplink: '1g', | ||
asn: 'AS396982', | ||
}, | ||
location+: { | ||
continent_code: 'AS', | ||
country_code: 'QA', | ||
metro: 'doh', | ||
city: 'Doha', | ||
state: '', | ||
latitude: 25.2731, | ||
longitude: 51.6081, | ||
}, | ||
lifecycle+: { | ||
created: '2024-03-25', | ||
}, | ||
} | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,39 @@ | ||
local sitesDefault = import 'sites/_default_virtual.jsonnet'; | ||
|
||
sitesDefault { | ||
name: 'gru06', | ||
annotations+: { | ||
provider: 'gcp', | ||
}, | ||
machines+: { | ||
mlab1+: { | ||
network+: { | ||
ipv4+: { | ||
address: '192.168.0.1/32', | ||
}, | ||
ipv6+: { | ||
address: nil, | ||
}, | ||
}, | ||
project: 'mlab-oti', | ||
}, | ||
}, | ||
transit+: { | ||
provider: 'Google LLC', | ||
uplink: '1g', | ||
asn: 'AS396982', | ||
}, | ||
location+: { | ||
continent_code: 'SA', | ||
country_code: 'BR', | ||
metro: 'gru', | ||
city: 'Sao Paulo', | ||
state: '', | ||
latitude: -23.4305, | ||
longitude: -46.473, | ||
}, | ||
lifecycle+: { | ||
created: '2024-03-25', | ||
}, | ||
} | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,39 @@ | ||
local sitesDefault = import 'sites/_default_virtual.jsonnet'; | ||
|
||
sitesDefault { | ||
name: 'hel02', | ||
annotations+: { | ||
provider: 'gcp', | ||
}, | ||
machines+: { | ||
mlab1+: { | ||
network+: { | ||
ipv4+: { | ||
address: '192.168.0.1/32', | ||
}, | ||
ipv6+: { | ||
address: nil, | ||
}, | ||
}, | ||
project: 'mlab-oti', | ||
}, | ||
}, | ||
transit+: { | ||
provider: 'Google LLC', | ||
uplink: '1g', | ||
asn: 'AS396982', | ||
}, | ||
location+: { | ||
continent_code: 'EU', | ||
country_code: 'FI', | ||
metro: 'hel', | ||
city: 'Helsinki', | ||
state: '', | ||
latitude: 60.3172, | ||
longitude: 24.9633, | ||
}, | ||
lifecycle+: { | ||
created: '2024-03-25', | ||
}, | ||
} | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,39 @@ | ||
local sitesDefault = import 'sites/_default_virtual.jsonnet'; | ||
|
||
sitesDefault { | ||
name: 'icn02', | ||
annotations+: { | ||
provider: 'gcp', | ||
}, | ||
machines+: { | ||
mlab1+: { | ||
network+: { | ||
ipv4+: { | ||
address: '192.168.0.1/32', | ||
}, | ||
ipv6+: { | ||
address: nil, | ||
}, | ||
}, | ||
project: 'mlab-oti', | ||
}, | ||
}, | ||
transit+: { | ||
provider: 'Google LLC', | ||
uplink: '1g', | ||
asn: 'AS396982', | ||
}, | ||
location+: { | ||
continent_code: 'AS', | ||
country_code: 'KR', | ||
metro: 'icn', | ||
city: 'Seoul', | ||
state: '', | ||
latitude: 37.4633, | ||
longitude: 126.44, | ||
}, | ||
lifecycle+: { | ||
created: '2024-03-25', | ||
}, | ||
} | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,39 @@ | ||
local sitesDefault = import 'sites/_default_virtual.jsonnet'; | ||
|
||
sitesDefault { | ||
name: 'lax10', | ||
annotations+: { | ||
provider: 'gcp', | ||
}, | ||
machines+: { | ||
mlab1+: { | ||
network+: { | ||
ipv4+: { | ||
address: '192.168.0.1/32', | ||
}, | ||
ipv6+: { | ||
address: nil, | ||
}, | ||
}, | ||
project: 'mlab-oti', | ||
}, | ||
}, | ||
transit+: { | ||
provider: 'Google LLC', | ||
uplink: '1g', | ||
asn: 'AS396982', | ||
}, | ||
location+: { | ||
continent_code: 'NA', | ||
country_code: 'US', | ||
metro: 'lax', | ||
city: 'Los Angeles', | ||
state: 'CA', | ||
latitude: 33.9425, | ||
longitude: -118.4072, | ||
}, | ||
lifecycle+: { | ||
created: '2024-03-25', | ||
}, | ||
} | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,39 @@ | ||
local sitesDefault = import 'sites/_default_virtual.jsonnet'; | ||
|
||
sitesDefault { | ||
name: 'waw02', | ||
annotations+: { | ||
provider: 'gcp', | ||
}, | ||
machines+: { | ||
mlab1+: { | ||
network+: { | ||
ipv4+: { | ||
address: '192.168.0.1/32', | ||
}, | ||
ipv6+: { | ||
address: nil, | ||
}, | ||
}, | ||
project: 'mlab-oti', | ||
}, | ||
}, | ||
transit+: { | ||
provider: 'Google LLC', | ||
uplink: '1g', | ||
asn: 'AS396982', | ||
}, | ||
location+: { | ||
continent_code: 'EU', | ||
country_code: 'PL', | ||
metro: 'waw', | ||
city: 'Warsaw', | ||
state: '', | ||
latitude: 52.1658, | ||
longitude: 20.9672, | ||
}, | ||
lifecycle+: { | ||
created: '2024-03-25', | ||
}, | ||
} | ||
|
Oops, something went wrong.