On 09/07/2016 05:25 PM, Dmitry Tantsur wrote:
Hi all!
Today while playing with my installation I noticed that we do try to run
cleaning for nodes in maintenance mode. This leads to a somewhat
confusing result, because we no-op heartbeats for such nodes. So
cleaning gets stuck in "clean wait" forever [1].
However, it seems like some folks find it a convenient feature. This way
they can ask Ironic to boot the ramdisk and make it wait for operator's
commands. It's a fair use case, but I still find the current situation
confusing.
We've ended up with these few options:
1. Ensure we don't run cleaning for nodes in maintenance mode. I've
proposed a patch [2] banning most of provision verbs from working in
maintenance. However, we still want to allow deleting an instance, which
still results in cleaning.
2. On receiving a heartbeat in {CLEAN,DEPLOY}WAIT and maintenance on
[3], move the node to {CLEAN,DEPLOY}FAIL (optionally without powering it
off, so that IPA stays running).
It looks like this approach does not cause contention, so I'll look into
it first. I will keep patch for option #1 around as well, in case we
want to explore it.
3. Document this as a desired feature and don't change anything.
What do you think?
[1] https://bugs.launchpad.net/ironic/+bug/1621006
[2] https://review.openstack.org/#/c/366793/
[3]
https://github.com/openstack/ironic/blob/master/ironic/drivers/modules/agent_base_vendor.py#L474-L478.
__________________________________________________________________________
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
__________________________________________________________________________
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev