Public bug reported: class ProcessManager[1] is used to managed processes in neutron agents. The reload_cfg function is used to reload configuration by sending HUB signal to the target process. This may work for a linux system administrator, where she/he updates the config file and then sends HUP signal to reload. But in openstack, this is a bit different. I have read the code about dnsmasq[2] and haproxy. The parameters and config files are generated by a callback function. This function generates config files and return the command(with parameters). Sending HUP signal doesn't change parameters, neither regenerate config files.
I would suggest another way to reload/restart process which makes sure the callback function is called. [1] https://github.com/openstack/neutron/blob/8c59cfe98eb15f024b6c24312c0bf51af02a5dc3/neutron/agent/linux/external_process.py#L50 [2] https://github.com/openstack/neutron/blob/8c59cfe98eb15f024b6c24312c0bf51af02a5dc3/neutron/agent/linux/dhcp.py#L457-L458 ** Affects: neutron Importance: Undecided Assignee: cheng li (chengli3) Status: New ** Changed in: neutron Assignee: (unassigned) => cheng li (chengli3) -- You received this bug notification because you are a member of Yahoo! Engineering Team, which is subscribed to neutron. https://bugs.launchpad.net/bugs/1809080 Title: reload_cfg doesn't work correctly Status in neutron: New Bug description: class ProcessManager[1] is used to managed processes in neutron agents. The reload_cfg function is used to reload configuration by sending HUB signal to the target process. This may work for a linux system administrator, where she/he updates the config file and then sends HUP signal to reload. But in openstack, this is a bit different. I have read the code about dnsmasq[2] and haproxy. The parameters and config files are generated by a callback function. This function generates config files and return the command(with parameters). Sending HUP signal doesn't change parameters, neither regenerate config files. I would suggest another way to reload/restart process which makes sure the callback function is called. [1] https://github.com/openstack/neutron/blob/8c59cfe98eb15f024b6c24312c0bf51af02a5dc3/neutron/agent/linux/external_process.py#L50 [2] https://github.com/openstack/neutron/blob/8c59cfe98eb15f024b6c24312c0bf51af02a5dc3/neutron/agent/linux/dhcp.py#L457-L458 To manage notifications about this bug go to: https://bugs.launchpad.net/neutron/+bug/1809080/+subscriptions -- Mailing list: https://launchpad.net/~yahoo-eng-team Post to : [email protected] Unsubscribe : https://launchpad.net/~yahoo-eng-team More help : https://help.launchpad.net/ListHelp

