[openstack-dev] [puppet][Fuel] OpenstackLib Client Provider Better Exception Handling

Vladimir Kuklin vkuklin at mirantis.com
Thu Oct 8 11:38:09 UTC 2015

Hi, folks

* Intro

Per our discussion at Meeting #54 [0] I would like to propose the uniform
approach of exception handling for all puppet-openstack providers accessing
any types of OpenStack APIs.

* Problem Description

While working on Fuel during deployment of multi-node HA-aware environments
we faced many intermittent operational issues, e.g.:

401/403 authentication failures when we were doing scaling of OpenStack
controllers due to difference in hashing view between keystone instances
503/502/504 errors due to temporary connectivity issues
non-idempotent operations like deletion or creation - e.g. if you are
deleting an endpoint and someone is deleting on the other node and you get
404 - you should continue with success instead of failing. 409 Conflict
error should also signal us to re-fetch resource parameters and then decide
what to do with them.

Obviously, it is not optimal to rerun puppet to correct such errors when we
can just handle an exception properly.

* Current State of Art

There is some exception handling, but it does not cover all the
aforementioned use cases.

* Proposed solution

Introduce a library of exception handling methods which should be the same
for all puppet openstack providers as these exceptions seem to be generic.
Then, for each of the providers we can introduce provider-specific
libraries that will inherit from this one.

Our mos-puppet team could add this into their backlog and could work on
that in upstream or downstream and propose it upstream.

What do you think on that, puppet folks?


Yours Faithfully,
Vladimir Kuklin,
Fuel Library Tech Lead,
Mirantis, Inc.
+7 (495) 640-49-04
+7 (926) 702-39-68
Skype kuklinvv
35bk3, Vorontsovskaya Str.
Moscow, Russia,
www.mirantis.com <http://www.mirantis.ru/>
vkuklin at mirantis.com
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openstack.org/pipermail/openstack-dev/attachments/20151008/4cc5ca1e/attachment.html>

More information about the OpenStack-dev mailing list