Replicated is pretty much hard coded into all the Ansible scripts for the HCI setup. So
you can't do anything but replicated and only choose between arbiter or full replica
there. Distributed give you anything with three nodes, but with five, seven, nine or
really high numbers, it becomes quite attractive.
Thing is, Gluster and oVirt are basically originally unrelated products and HCI is just a
shuffle some people at Redhat thought cool (and it is). Not every permutation of
aggregates between the two is supported, through: This is no Nutanix!
But of course, you have the source code...
Since I managed to scavange another 5 storage heavy nodes after I had started out with 3
nodes in a HCI cluster, I tried to see what I could do in terms of integration. Doing a
full rebuild was out of the question, but adding another distributed volume (4+1) and a
set of compute hosts seemed attractive, right?
I managed to get it done, twiddling ansible scripts and taking advantage of the fact that
ansible won't do things it already considers done. So where it expected a replicated
volume, I simply gave it a distributed volume, that looked every way on the top as the
replicated would have looked as well.
I immediately forgot how I got it done, and of course I didn't take notes, but it
works so far.
The hosted-engine is pretty generous in accepting volumes and nodes that look just like
they had been done by the HCI setup; I guess it's because it really been designed to
use this auto-discovery like setup, to avoid having to insert some key configuration data
somehow.
That's why it shouldn't be too difficult to switch from a 3node HCI to a 5, 6 or 9
node HCI, if you're a Gluster virtuozo and manage to restore/copy the data.
What I found most disappointing is the fact that Gluster doesn't seem to support
converting replicated volumes into distributed ones, once you have enough bricks to make
that attractive.
There again with oVirt you should be able to migrate disks and VMs by attaching volumes
and copying images. The only thing a bit tricky is copying the hosted engine, but compared
to how they inject that thing doing a HCI installation, all that would be easy....
If you are deep enough into oVirt to understand what they are doing there.