73dd38a5ce
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.
41 lines
1.1 KiB
Plaintext
41 lines
1.1 KiB
Plaintext
{
|
|
"Dhcp4": {
|
|
"hooks-libraries": [
|
|
{
|
|
"library": "/usr/local/lib/kea/hooks/libdhcp_run_script.so",
|
|
"parameters": {
|
|
"name": "/etc/kea/lease_update.sh",
|
|
"sync": false
|
|
}
|
|
}
|
|
],
|
|
"interfaces-config": {
|
|
"interfaces": ["eth0"]
|
|
},
|
|
"control-socket": {
|
|
"socket-type": "unix",
|
|
"socket-name": "/run/kea/kea4-ctrl-socket"
|
|
},
|
|
"lease-database": {
|
|
"type": "memfile",
|
|
"persist": true,
|
|
"name": "/tmp/kea-lease.csv",
|
|
"lfc-interval": 3600
|
|
},
|
|
"subnet4": [],
|
|
"loggers": [
|
|
{
|
|
"name": "kea-dhcp4",
|
|
"output_options": [
|
|
{
|
|
"output": "/tmp/kea-dhcp.log",
|
|
"pattern": "%-5p %m\n"
|
|
}
|
|
],
|
|
"severity": "INFO",
|
|
"debuglevel": 0
|
|
}
|
|
]
|
|
}
|
|
}
|