[ClusterLabs Developers] New LVM resource agent name (currently LVM-activate)

Jan Pokorný jpokorny at redhat.com
Fri Nov 24 05:08:34 EST 2017


On 24/11/17 07:10 +0100, Kristoffer Grönlund wrote:
> Jan Pokorný <jpokorny at redhat.com> writes:
>> Wanted to add a comment on IPaddr vs. IPaddr2 (which, as mentioned,
>> boils down to ifconfig vs. iproute2) situation being used for
>> comparison -- this is substantially a different story, as iproute2
>> (and in turn, IPaddr2) is Linux-only, while the whole stack is more
>> or less deployable on various *nixes so having two agents in parallel,
>> one portable but with some deficiences + one targeted and more capable
>> makes a damn good sense.  Cannot claim the same here.
> 
> While there may be good reason from an implementation standpoint for
> having two agents, that doesn't mean that it makes sense from a user
> perspective. It's just not particularly beautiful or clear to configure
> IP addresses using "IPaddr2". The preferred solution from a user
> perspective would certainly have been to have a single interface to IP
> addresses which uses whatever means are available on the current
> platform.

I agree that it would be convenient configuration-wise, not being
hold back early on the tool selection based on the particular details,
but they are somewhat important:

- which network interface configuration front-end is available
- does this front-end support IPv6
- does this front-end support specifications of bonding/teaming/magic
  interfaces and with the requested granularity
- is load-balancing a la CLUSTERIP iptables extension allowing the
  agent to be a meaningful clone

I.e., you will get a different "personality" of the hypothetical
unified agent depending on the circumstances, meaning the agent
will not be as clear winner of unity vs. confusion arising from
non-portability of some configuration traits.

The implied huge internal complexity can be overcome with sticking
with some best practises -- proper decomposition, modularity,
build-time macro-based conditionalizing based on what build
configuration script detected, etc.  But if these "personalities" are
prominent (like Linux distributions being compatible with iproute2
incl. support for IPv6 and details of particular magic interfaces +
CLUSTERIP extension nowadays) vs. portable minimum, I still think it
made sense to make the cut, just the names may be a bit unfortunate.

> In the same way, a user wanting to configure LVM would encounter a
> variety of agents named "lvm", "lvm2", "lvm-ng", "lvm-maybe" and would
> most likely end up digging through mailing list posts, reference manuals
> and XML metadata to maybe figure out which one is a) up to date and b)
> appropriate for the current platform - since even though there is
> probably a clear explanation for which one to use somewhere, there is no
> way for a new user to know where to find that explanation.

Agree in the sense that for LVM, I don't see discerned "personalities"
like I could find for IP agents.

> At least, that's my opinion, clearly opinions differ on this matter ;)

Nobody has a patent on what's best (even hardlier a bystander like
me), that's why discourse is a vital (discuss early, discuss often).

-- 
Jan (Poki)
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 819 bytes
Desc: not available
URL: <https://lists.clusterlabs.org/pipermail/developers/attachments/20171124/2909f1bf/attachment-0003.sig>


More information about the Developers mailing list