[openstack-dev] [Heat][Oslo] Versioned objects compatibility mode

Davanum Srinivas davanum at gmail.com
Mon Jun 22 10:12:29 UTC 2015


Michał,

we are adding that reread config to oslo.service, there's a test
version on pypi 0.1.0 (API not yet stable) that you can try and see if
it works for you.

thanks,
dims

On Mon, Jun 22, 2015 at 5:40 AM, Jastrzebski, Michal
<michal.jastrzebski at intel.com> wrote:
> Hello,
>
> I wanted to start discussion about versioned objects backporting for conductor-less projects.
> In Vancouver we discussed compatibility mode, which works like that:
>
> 1. We define one version for every object we use, this means adding base object, for example:
>
> Class HeatObject:
>         VERSION=1.5
>
> All objects inherit from this one, each time we change it, we bump up this variable.
>
> 2. We introduce new config option in heat.conf
>
> Combatibility_mode = 1.4
>
> 3. Implement mechanism which will automatically backport each outgoing message to 1.4 as long as we have this var.
>
> Upgrade flow looks like that:
> 1. We have all nodes using 1.4 version
> 2. We incrementally run new version with 1.4 compatibility mode
> 3. When all nodes are already up-to-date, we incrementally turn off compatibility mode
>
> This solution has one rather big disadvantage: 2 restarts.
> This can be mitigated by adding another call to reread config without restart. Oslo.config has this capability, but we need to add call to run it.
>
> Thoughts?
>
> Regards,
> Michał Jastrzębski
>
> __________________________________________________________________________
> OpenStack Development Mailing List (not for usage questions)
> Unsubscribe: OpenStack-dev-request at lists.openstack.org?subject:unsubscribe
> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev



-- 
Davanum Srinivas :: https://twitter.com/dims



More information about the OpenStack-dev mailing list