# # bird iBGP apply Service "bird_ibgp4" { import "generic-service" check_command = "bird_bgp" if (host.name != NodeName) { command_endpoint = host.name } vars.ibgp = true vars.ibgp_warn = "1:1" vars.ibgp_crit = "2:" vars.asn = 65132 vars.proto = "4" vars.sessions_down_ok_file = "/etc/icinga2/ffho-conf.d/bird_ibgp_sessions_down_ok.txt" vars.ignore_missing_file = true assign where host.address && host.vars.os == "Linux" && "router" in host.vars.roles } apply Service "bird_ibgp6" { import "generic-service" check_command = "bird_bgp" if (host.name != NodeName) { command_endpoint = host.name } vars.ibgp = true vars.ibgp_warn = "1:1" vars.ibgp_crit = "2:" vars.asn = 65132 vars.proto = "6" vars.sessions_down_ok_file = "/etc/icinga2/ffho-conf.d/bird_ibgp_sessions_down_ok.txt" vars.ignore_missing_file = true assign where host.address && host.vars.os == "Linux" && "router" in host.vars.roles } # # bird eBGP apply Service "bird_ebgp4" { import "generic-service" check_command = "bird_bgp" if (host.name != NodeName) { command_endpoint = host.name } vars.ebgp = true vars.asn = 65132 vars.proto = "4" assign where host.address && host.vars.os == "Linux" && "ffrl-exit" in host.vars.roles } apply Service "bird_ebgp6" { import "generic-service" check_command = "bird_bgp" if (host.name != NodeName) { command_endpoint = host.name } vars.ebgp = true vars.asn = 65132 vars.proto = "6" assign where host.address && host.vars.os == "Linux" && "ffrl-exit" in host.vars.roles } ################################################################################ # Session-based checking # ################################################################################ apply Service "bird_ibgp4_" for (key => session in host.vars.bgp_peers4) { import "generic-service" check_command = "bird_bgp" if (host.name != NodeName) { command_endpoint = host.name } vars.ibgp = true vars.ibgp_warn = "1:1" vars.ibgp_crit = "2:" vars.asn = 65049 vars.proto = "4" vars.sessions_down_ok_file = "/etc/bird/ibgp_sessions_to_ignore.txt" vars.ignore_missing_file = true vars.session = session vars.grafana_graph_disable = true assign where host.address && "routereflector" in host.vars.groups } apply Service "bird_ibgp6_" for (key => session in host.vars.bgp_peers6) { import "generic-service" check_command = "bird_bgp" if (host.name != NodeName) { command_endpoint = host.name } vars.ibgp = true vars.ibgp_warn = "1:1" vars.ibgp_crit = "2:" vars.asn = 65049 vars.proto = "6" vars.sessions_down_ok_file = "/etc/bird/ibgp_sessions_to_ignore.txt" vars.ignore_missing_file = true vars.session = session vars.grafana_graph_disable = true assign where host.address && "routereflector" in host.vars.groups }