sonic-buildimage/files/image_config
guangyao6 9567c06570
Add BGP configuration for BGPSentinel peer (#15714)
Why I did it
For route registry service, in order to block hijacked routes, IBGP session needs to be set up from BGP sentinel service to SONiC, and BGP sentinel service advertise the same route with higher local-preference and no export community. So that SONiC takes the route from BGP sentinel as the best path and does not advertise the route to EBGP peers.
In order to do that, new route-maps are needed. So this change adds a new set of templates, keeping BGPSentinel peers out of the other templates.

Work item tracking
Microsoft ADO (number only): 24451346
How I did it
Add sentinel_community in constants.yml, route from BGPSentinel do not match this community will be denied.
Add support to convert BGPSentinel related configuration in the BGPPeerPassive element of the minigraph to a new BGP_SENTINELS table in CONFIG_DB
Add a new set of "sentinels" templates to docker-fpm-frr
Add a new BGP peer manager to bgpcfgd, to add neighbors from the BGP_SENTINELS table using the "sentinels" templates
Add a test case for minigraph.py, making sure the BGPSentinel and BGPSentinelV6 elements create BGP_SENTINELS DB entry.
Add a set of test cases for the new sentinels templates in sonic-bgpcfgd tests.
Add sonic-bgp-sentinel.yang and a set of testcases for the yang file.

How to verify it
Testcases and UT newly added would pass.
Setup IPv4 and IPv6 BGPSentinel services in minigraph, and load minigraph, show CONFIG_DB and "show runningconfig bgp", configuration would be loaded successfully.
Using t1-lag topo and setup IBGP session from BGPSentinel to SONiC loopback address, IBGP session would up.
Advertise route from BGPSentinel to T1 with sentinel_community, higher local-preference and no-export communiyt. In T1, show bgp route, the result is "Not advertise to any EBGP peer".
Withdraw the route in BGPSentinel, in T1, route would advertise to EBGP peers.
Advertise route from T1 that does not match sentinel_community, in T1, would not see the route in show bgp route.
2023-07-21 09:32:29 +08:00
..
backend_acl [storage_backend] Add backend acl service (#14229) 2023-03-16 14:18:28 -07:00
bash Close console session due to user inactivity (#9890) 2022-02-02 09:41:21 +05:30
config-chassisdb [ChassisDB]: bring up ChassisDB service (#5283) 2020-10-14 15:15:24 -07:00
config-setup Support Reset factory (#14105) 2023-07-11 16:14:17 -07:00
config-topology Add support for platform topology configuration service (#12066) 2023-02-01 12:53:45 -08:00
constants Add BGP configuration for BGPSentinel peer (#15714) 2023-07-21 09:32:29 +08:00
copp [CoPP] Add always_enabled field (#9302) 2021-11-30 11:04:15 -08:00
corefile_uploader Replace os.system and remove subprocess with shell=True (#12177) 2022-11-04 10:48:51 -04:00
cron.d Replace logrotate cron file with (adapted) systemd timer file (#12921) 2022-12-08 14:13:11 -08:00
ebtables [baseimage]: Updates for Ebtables and support for multi-asic (#6542) 2021-01-27 08:36:10 -08:00
environment Update azure.github.io links to sonic-net.github.io (#12209) 2022-10-02 14:02:10 +08:00
fstrim [202012][fstrim] delay fstrim timer after sonic.target (#8737) 2021-09-13 07:37:46 -07:00
hostname Fix to improve hostname handling (#12064) 2022-10-25 14:51:02 -07:00
interfaces [dns] Add support for static DNS configuration. (#14549) 2023-06-22 19:12:30 +03:00
kdump [kdump] Fix kdump error message when a reboot is issued (#7985) 2021-07-01 11:52:38 -07:00
kubernetes Add k8s master feature (#11637) 2022-08-13 23:01:35 +08:00
logrotate update rsyslog log size conf (#15821) 2023-07-14 15:44:17 +08:00
misc [docker-wait-any]: Exit worker thread if main thread is expected to exit (#12255) 2022-10-05 18:14:10 -07:00
monit Fix segfault issue inside memory_checker (#13066) 2023-01-24 15:30:41 -08:00
ntp Finalize fast-reboot in warmboot finalizer (#14238) 2023-04-09 16:59:15 +03:00
pcie-check Support multiple pcie configuration file and change the pcie status table name to match with pcied changes (#7886) 2021-06-16 16:05:48 -07:00
platform Add override_config to load_minigraph in config-setup service (#14834) 2023-05-10 11:54:33 -07:00
rasdaemon [image_config] add rasdaemon.timer (#14300) 2023-04-17 08:58:45 -07:00
readline Disable brackted-paste mode off by default (#12285) 2022-10-06 07:55:09 -07:00
reset-factory Support Reset factory (#14105) 2023-07-11 16:14:17 -07:00
resolv-config [dns] Add support for static DNS configuration. (#14549) 2023-06-22 19:12:30 +03:00
rsyslog Add remote syslog configuration (#14513) 2023-07-10 11:40:08 -07:00
secureboot Add override_config to load_minigraph in config-setup service (#14834) 2023-05-10 11:54:33 -07:00
snmp mvrf_avoid_snmp_yml_config: made changes to pass SNMP config from con… (#4057) 2020-01-28 17:41:21 -08:00
sudoers Improve sudo cat command for RO user. (#14428) 2023-03-27 17:08:14 -07:00
sysctl [netlink] Increse netlink buffer size from 3MB to 16MB (#13965) 2023-02-27 15:41:22 -08:00
syslog [baseimage]: /host unmount timeout issue during reboot. (#5032) 2020-07-25 01:27:58 -07:00
system-health [system-health] Add support for monitoring system health (#4835) 2020-10-12 11:12:49 +03:00
systemd Fix issue: systemctl daemon-reload would sporadically cause udev handler fail (#15253) 2023-06-25 16:58:14 -07:00
topology [multi-asic][vs]: Update topology script to retrieve hwsku from minigraph (#6219) 2021-02-18 22:02:29 -08:00
updategraph Remove minigraph loading in updategraph script (#11146) 2022-06-21 08:57:57 +08:00
warmboot-finalizer [Fast-boot] Clear teamd-timer when finalizing fast-reboot (#14583) 2023-04-18 09:15:42 +03:00
watchdog-control [sonic-utilities] Build and install as a Python wheel package (#5409) 2020-09-20 20:16:42 -07:00