10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
|
# File 'modules/profile/manifests/bird/anycast_monitoring.pp', line 10
class profile::bird::anycast_monitoring (
Array[Stdlib::Fqdn] $ntp_anycast_peers = lookup('ntp_anycast_peers'),
) {
# Anycast recdns: Note use of the raw IP in the host title and ip_address -
# otherwise the checks end up using local DNS lookups on icinga itself to
# find the address of the DNS server being tested, which makes the process
# and the results confusing and/or wrong.
# For non-DNS anycast services we can probably use the real hostname and
# host_fqdn instead, so please don't copypasta this for the next entry!
monitoring::host { '10.3.0.1':
ip_address => '10.3.0.1',
critical => true, # Page
}
monitoring::service { 'Recursive DNS anycast VIP':
host => '10.3.0.1',
description => 'recursive DNS anycast VIP',
check_command => 'check_dns!www.wikipedia.org',
notes_url => 'https://wikitech.wikimedia.org/wiki/Anycast_recursive_DNS#Troubleshooting',
critical => true, # Page
migration_task => 'T384425',
}
$ntp_anycast_peers.each |Stdlib::Fqdn $ntp_anycast_peer| {
$ntp_anycast_ip = ipresolve($ntp_anycast_peer, 4)
monitoring::host { $ntp_anycast_peer:
ip_address => $ntp_anycast_ip,
}
monitoring::service { "NTP anycast VIP ${ntp_anycast_ip}":
host => $ntp_anycast_peer,
description => "NTP anycast VIP ${ntp_anycast_ip} ${ntp_anycast_peer}",
check_command => 'check_ntp_peer!0.1!0.5',
notes_url => 'https://wikitech.wikimedia.org/wiki/NTP#Monitoring',
migration_task => 'T385590',
}
}
monitoring::host { 'syslog.anycast.wmnet':
host_fqdn => 'syslog.anycast.wmnet',
}
# Wikidough.
monitoring::host { '185.71.138.138':
ip_address => '185.71.138.138',
}
monitoring::service { 'check_wikidough_doh':
host => '185.71.138.138',
description => 'Wikidough DoH Check',
check_command => 'check_https_url_custom_ip!wikimedia-dns.org!185.71.138.138!/',
notes_url => 'https://wikitech.wikimedia.org/wiki/Wikidough',
migration_task => 'T384438',
}
monitoring::service { 'check_wikidough_dot':
host => '185.71.138.138',
description => 'Wikidough DoT Check',
check_command => 'check_tcp_ssl!185.71.138.138!853',
notes_url => 'https://wikitech.wikimedia.org/wiki/Wikidough',
migration_task => 'T384438',
}
# Wikidough durum.
monitoring::host { 'check.wikimedia-dns.org':
host_fqdn => 'check.wikimedia-dns.org',
}
# hcaptcha proxy T409780
monitoring::host { 'hcaptcha-proxy.anycast.wmnet':
host_fqdn => 'hcaptcha-proxy.anycast.wmnet',
}
}
|