mirror of
				https://github.com/Telecominfraproject/ols-nos.git
				synced 2025-11-04 03:57:57 +00:00 
			
		
		
		
	Why I did it Part implementation of dhcp_server. HLD: sonic-net/SONiC#1282. Add dhcpservd to dhcp_server container. How I did it Add installing required pkg (psutil) in Dockerfile. Add copying required file to container in Dockerfile (kea-dhcp related and dhcpservd related) Add critical_process and supervisor config. Add support for generating kea config (only in dhcpservd.py) and updating lease table (in dhcpservd.py and lease_update.sh) How to verify it Build image with setting INCLUDE_DHCP_SERVER to y and enabled dhcp_server feature after installed image, container start as expected. Enter container and found that all processes defined in supervisor configuration running as expected. Kill processes defined in critical_processes, container exist.
		
			
				
	
	
		
			13 lines
		
	
	
		
			481 B
		
	
	
	
		
			Bash
		
	
	
	
	
	
			
		
		
	
	
			13 lines
		
	
	
		
			481 B
		
	
	
	
		
			Bash
		
	
	
	
	
	
#!/bin/bash
 | 
						|
# This script would run once kea-dhcp4 lease change (defined in kea-dhcp4.conf), 
 | 
						|
# it is to find running process dhcpservd.py, and send SIGUSR1 signal to this
 | 
						|
# process to inform it to update lease table in state_db (defined in dhcpservd.py)
 | 
						|
 | 
						|
pid=`ps aux | grep 'dhcpservd' | grep -nv 'grep' | awk '{print $2}'`
 | 
						|
if [ -z "$pid" ]; then
 | 
						|
    logger -p daemon.error Cannot find running dhcpservd.py.
 | 
						|
else
 | 
						|
    # Send SIGUSR1 signal to dhcpservd.py
 | 
						|
    kill -s 10 ${pid}
 | 
						|
fi
 |