sonic-buildimage/dockers
Yaqiang Zhu da80593ecb
[dhcp_relay] Use dhcprelayd to manage critical processes (#17236)
Modify j2 template files in docker-dhcp-relay. Add dhcprelayd to group dhcp-relay instead of isc-dhcp-relay-VlanXXX, which would make dhcprelayd to become critical process.
In dhcprelayd, subscribe FEATURE table to check whether dhcp_server feature is enabled.
2.1 If dhcp_server feature is disabled, means we need original dhcp_relay functionality, dhcprelayd would do nothing. Because dhcrelay/dhcpmon configuration is generated in supervisord configuration, they will automatically run.
2.2 If dhcp_server feature is enabled, dhcprelayd will stop dhcpmon/dhcrelay processes started by supervisord and subscribe dhcp_server related tables in config_db to start dhcpmon/dhcrelay processes.
2.3 While dhcprelayd running, it will regularly check feature status (by default per 5s) and would encounter below 4 state change about dhcp_server feature:
A) disabled -> enabled
In this scenario, dhcprelayd will subscribe dhcp_server related tables and stop dhcpmon/dhcrelay processes started by supervisord and start new pair of dhcpmon/dhcrelay processes. After this, dhcpmon/dhcrelay processes are totally managed by dhcprelayd.
B) enabled -> enabled
In this scenaro, dhcprelayd will monitor db changes in dhcp_server related tables to determine whether to restart dhcpmon/dhrelay processes.
C) enabled -> disabled
In this scenario, dhcprelayd would unsubscribe dhcp_server related tables and kill dhcpmon/dhcrelay processes started by itself. And then dhcprelayd will start dhcpmon/dhcrelay processes via supervisorctl.
D) disabled -> disabled
dhcprelayd will check whether dhcrelay processes running status consistent with supervisord configuration file. If they are not consistent, dhcprelayd will kill itself, then dhcp_relay container will stop because dhcprelayd is critical process.
2023-11-27 09:30:01 -08:00
..
docker-base Improve remote fetch (#12795) 2023-09-23 18:07:04 -07:00
docker-base-bullseye [VOQ][saidump] Install rdbtools into the docker base related containers. (#16466) 2023-11-08 11:57:25 -08:00
docker-base-buster Improve remote fetch (#12795) 2023-09-23 18:07:04 -07:00
docker-base-stretch Improve remote fetch (#12795) 2023-09-23 18:07:04 -07:00
docker-basic_router [supervisord]: use abspath as supervisord entrypoint (#5995) 2020-11-22 21:18:44 -08:00
docker-config-engine Install python-redis package to docker containers (#14632) 2023-04-19 18:14:48 -07:00
docker-config-engine-bullseye Load generic omprog in all dockers for rsyslog plugin support (#16601) 2023-09-20 16:27:42 -07:00
docker-config-engine-buster [Build] Fix the PyYang python package installation issue (#15890) 2023-07-19 06:33:49 +08:00
docker-config-engine-stretch Install python-redis package to docker containers (#14632) 2023-04-19 18:14:48 -07:00
docker-database [docker-database-init.sh]: Fix wrong creating of database_global.json in multi asic platform (#17221) 2023-11-21 09:41:20 -08:00
docker-dhcp-relay [dhcp_relay] Use dhcprelayd to manage critical processes (#17236) 2023-11-27 09:30:01 -08:00
docker-dhcp-server [dhcp_server] Add show dhcp_server ipv4 lease (#17125) 2023-11-21 08:42:07 -08:00
docker-eventd Timezone sync issue between the host and containers (#14000) 2023-06-25 16:36:09 -07:00
docker-fpm-frr [chassis] Support advertisement of Loopback0 of all LC's across all e-BGP peers in TSA mode (#16714) 2023-11-20 09:42:02 -08:00
docker-fpm-gobgp Parallel building of sonic dockers using native dockerd(dood). (#10352) 2022-04-28 08:39:37 +08:00
docker-iccpd Timezone sync issue between the host and containers (#14000) 2023-06-25 16:36:09 -07:00
docker-lldp Timezone sync issue between the host and containers (#14000) 2023-06-25 16:36:09 -07:00
docker-macsec Update macsec CAK keys in profile for tests to change to type7 encoded format (#16388) 2023-09-06 21:11:02 -07:00
docker-mux Timezone sync issue between the host and containers (#14000) 2023-06-25 16:36:09 -07:00
docker-nat Timezone sync issue between the host and containers (#14000) 2023-06-25 16:36:09 -07:00
docker-orchagent [tph]: Detect LAG flaps from APPL_DB (#16879) 2023-11-09 16:01:59 -08:00
docker-pde [infra] Support syslog rate limit configuration (#12490) 2022-12-20 10:53:58 +02:00
docker-platform-monitor [pmon] update gRPC version to 1.57.0 (#16257) 2023-09-15 16:41:51 -07:00
docker-ptf Upgrade gnxi to support dash (#16498) 2023-09-08 08:56:51 -07:00
docker-ptf-sai [build] Fix build issue in docker-ptf-sai caused by setuptools_scm new release (#16636) 2023-09-21 10:38:08 -07:00
docker-router-advertiser Timezone sync issue between the host and containers (#14000) 2023-06-25 16:36:09 -07:00
docker-sflow Timezone sync issue between the host and containers (#14000) 2023-06-25 16:36:09 -07:00
docker-snmp [SNMP][IPv6]: Fix to use link local IPv6 address as snmp agentAddress (#16013) 2023-08-08 14:47:33 -07:00
docker-sonic-gnmi Share image for gnmi and telemetry (#16863) 2023-11-08 08:54:36 +08:00
docker-sonic-mgmt Add new docker-sonic-mgmt makefile flag: LEGACY_SONIC_MGMT_DOCKER (#17070) 2023-11-03 09:04:01 +08:00
docker-sonic-mgmt-framework Fix docker-sonic-mgmt-framework for armhf 2023-11-21 18:53:15 -08:00
docker-sonic-p4rt Timezone sync issue between the host and containers (#14000) 2023-06-25 16:36:09 -07:00
docker-sonic-restapi [infra] Support syslog rate limit configuration (#12490) 2022-12-20 10:53:58 +02:00
docker-sonic-sdk [Bullseye] Upgrade sonic-sdk image to bullseye (#12649) 2022-11-28 18:57:26 +02:00
docker-sonic-sdk-buildenv Parallel building of sonic dockers using native dockerd(dood). (#10352) 2022-04-28 08:39:37 +08:00
docker-sonic-telemetry Share image for gnmi and telemetry (#16863) 2023-11-08 08:54:36 +08:00
docker-swss-layer-bullseye Add ping to swss-layer docker (#11093) 2022-06-10 07:40:37 -07:00
docker-swss-layer-buster Add ping to swss-layer docker (#11093) 2022-06-10 07:40:37 -07:00
docker-teamd Timezone sync issue between the host and containers (#14000) 2023-06-25 16:36:09 -07:00
dockerfile-macros.j2 [sonic-config-engine] Clean up dependencies, pin versions; install Python 3 package in Buster container (#5656) 2020-10-26 13:48:50 -07:00