can nova-manage be executed remotely ?

Asked by JC Martin on 2012-03-02

In the following setup :
   node 1: Nova Scheduler
   node 2: Nova Network, Nova API, Quantum

If I execute nova-manage network delete on node 1, it tries to kill dnsmasq on node 1, but dnsmasq is on node 2.
Creation of the network worked as expected (from node 1, to node 2)
This is leading to strange situations.

So the questions are really :
    1/ is this setup supported at all ?
    2/ should nova-manage always use APIs and not execute commands locally ?

I was tempted to file a bug because of point 2.

Opinion ?

JC

Question information

Language:
English Edit question
Status:
Answered
For:
OpenStack Compute (nova) Edit question
Assignee:
No assignee Edit question
Last query:
2012-03-02
Last reply:
2012-03-02
Vish Ishaya (vishvananda) said : #1

I'm not sure about all of the interactions with quantum, but in general nova-manage shouldn't be trying to kill dnsmasq at all. The network commands in nova-manage should only do db only setup. Ultimately, yes nova-manage should be replaced with something that is only using apis, but deleting in use networks is not something that is supported anywhere yet.

Vish

On Mar 2, 2012, at 9:25 AM, JC Martin wrote:

> New question #189460 on OpenStack Compute (nova):
> https://answers.launchpad.net/nova/+question/189460
>
> In the following setup :
> node 1: Nova Scheduler
> node 2: Nova Network, Nova API, Quantum
>
> If I execute nova-manage network delete on node 1, it tries to kill dnsmasq on node 1, but dnsmasq is on node 2.
> Creation of the network worked as expected (from node 1, to node 2)
> This is leading to strange situations.
>
> So the questions are really :
> 1/ is this setup supported at all ?
> 2/ should nova-manage always use APIs and not execute commands locally ?
>
> I was tempted to file a bug because of point 2.
>
> Opinion ?
>
> JC
>
>
> --
> You received this question notification because you are a member of Nova
> Core, which is an answer contact for OpenStack Compute (nova).

JC Martin (jemartin) said : #2

The offending code is in :
nova/network/quantum/manager.py :
       # Get rid of dnsmasq
        if FLAGS.quantum_use_dhcp:
            dev = self._generate_gw_dev(quantum_net_id)
            self.driver.kill_dhcp(dev)

However, quantum (and nova-network) is not on the machine where nova-manage is executed.
This section of the code should be moved out to the quantum manager, in the plugin implementing the delete_network function.

If this is not done, the removal of a network fails to kill the dnsmasq processes.
There are some other issues I've seen that may be related to this too (remaining bridges/interfaces)

JC

Can you help with this problem?

Provide an answer of your own, or ask JC Martin for more information if necessary.

To post a message you must log in.