So this is a general start of a large discussion that is similar to the other one I started[1], and this time around I wanted to start this on the mailing instead of a spec first approach.

The general question is around something I keep on noticing popping up in various projects and worry about what we as a community are doing with regard to diversity of implementation (and what can we do to make this better).

What seems to be being recreated (in various forms) is that multiple projects seem to have a need to store ephemeral data about some sort of agent (ie nova and its compute node agents, neutron and its agents, octavia and its amphora agents...) in a place that can also track the liveness (whether that component is up/down/dead/alive) of that agents (in general we can replace agent with service and call this service discovery).

It appears (correct me if I am wrong) the amount of ephemeral metadata associated with this agent typically seems to be somewhat minimal, and any non-ephemeral agent data should be stored somewhere else (ie a database).

I think it'd be great from a developer point of view to start to address this, and by doing so we can make operations of these various projects and there agents that much easier (it is a real PITA when each project does this differently, it makes cloud maintenance procedures that much more painful, because typically while doing maintenance you need to ensure these agents are turned off, having X different ways to do this with Y different side-effects makes this ummm, not enjoyable).

So before I start to go much farther on this (and start to dive into what people are doing and why the various implementations exist and proposing a cross-project solution, tooz, or etcd, or zookeeper or other...) I wanted to get general feedback (especially from the projects that have these kinds of implementations) if this is a worthwhile path to even try to go down.

IMHO it is, though it may once again require the community as a group to notice things are being done differently that are really the same and people caring enough to actually want to resolve this situation (in general I really would like the architecture working group to be able to proactively resolving these issues before they get created, retroactively trying to resolve these differences is not a healthy/sustainable thing we should be doing).

Thoughts?

[1] https://lwn.net/Articles/662140/

__________________________________________________________________________
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