Comment 17 for bug 1237807

Revision history for this message
Armando Migliaccio (armando-migliaccio) wrote :

@Yair: from comment #14 I sense that you are making wrong assumptions as to what a real world data center or cloud environment actually works.

A resource like 'network' has two status attributes: admin_status_up and status; these are not to be confused. As of now, flipping the admin_status_up from True to False has no effect in most plugins, it's just a toggle operation on the DB, and some plugins do not even support it (ie. barf at the update operation when/if tried, like the NSX plugin).

In my opinion this is the semantic:

admin_status_up: it's the management state of the resource. An admin can choose to disable/enable this resource for management purposes. Management plane downtime, must not cause a data plane loss. If we want to mirror this to the compute world, it's like when I put a hypervisor in maintenance mode: perhaps I need to evacuate the host and I cannot allow for more vm's to get spawned, or I need to do some sort of reactive maintenance and I don't want the management framework to fiddle with it while I am on it. If you think that management downtime == data plane downtime, you clearly have a wrong view of the real world!!

status: this is the status of the fabric, the data plane status if you will. Following the analogy with compute, this means that your host is either hosed, not feeling well, and something is broken; it pleas for troubleshooting!

Now, as for a Neutron network, the admin_status_up may not be entirely useful, but deprecating it or marking for removal is wrong. And even worse, forcing admin_status_up=False to cause a data plane loss.