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).

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

Reply via email to