Your SAS controller is supported in current flavors of Linux and will be for quite some time to come.
See
here,
here,
here, and
here.
This isn't Windows, there is hardware from the 90s that is still supported in Linux.
The citations above begs to differ.
Gluster is relatively unstable, as you say yourself
I never said it was unstable.
only maintained by a handful of people
So?
What's the "so what?" of it being only maintained by quote "a handful of people"?
(Again, if it's stable,
why does this matter? You haven't been able to answer nor address this point.)
it does not give you necessarily the same data guarantees something like Ceph gives you
Such as?
If you are using replication with ceph, what's the
real difference between replication in ceph (where the data chunks would be distributed across your OSDs that's presented to the ceph cluster) vs. creating a
distributed replicated gvol?
I would like to see the presentation of your data that supports your statement/claim.
Ceph is a scale-out object-based SDS
What object?
People say that. I don't think that people understand what "object" means in this context.
If you're using Ceph RBD, what's the "object" in a RBD?
If you're using CephFS, what's the "object" in said CephFS?
If you're creating a qcow2 VM disk and you store it on CephFS vs. gluster, both would be storing said qcow2 VM disk, as a file, on the respective
filesystem. So how would that be "comparing apples to oranges" when you're literally doing the same thing?
And oh BTW, if you want block storage with gluster, you can accomplish this by using
iSCSI on gluster.
How it works, ultimately, under the hood, between
iSCSI on ceph and iSCSI on gluster, would be nearly identical and the only difference is that ceph has/uses RBD whereas gluster, as you noted, is a filesystem, but your iSCSI target extent would be a "file", residing on said filesystem. (How it is stored, under the hood, if you're using a distributed replicated gvol, would be basically the same. It's replicated and distributed. So other than RBD, what would the
real difference be?
Once you get to SSD/NVMe with 100G+ networks, Gluster can't sustain that.
For reference, erasure coding with ceph can't sustain that neither.
And gluster can (well, I was limited with SATA 6 Gbps SSDs, so the most that I was able to get with four nodes with a single Intel 545p series 1 TB SATA 6 Gbps SSD was round like 32 Gbps, something like that, over my 100 Gbps IB system interconnect.
Hence why I was testing it with 110 GB ramdrives, where I was able to hit, I think it was something like 85-86 Gbps out of 100 Gbps possible. (At those rates for storage subsystems, there are other factors that come into play like the QPI link between the two CPU sockets on the Supermicro X9 motherboard that was in each of the blades in my cluster.
(It was actually faster for me to go over 100 Gbps IB (over RDMA) than to go over the QPI link.)
Gigabit peaks out at ~80-120MB/s, 10G at 800-1200MB/s, but your CPU would be hard pressed of actually pushing that amount of data over 10G
Ergo RDMA (and/or SMB direct).
Also, InfiniBand 100G is 4x25G but that is signal speed, not data speed, since it is a 10b symbol/8b data rate system, you effectively get 4x20G of theoretical throughput, but you have to have 4 processes to read/write at the same time, which on a spinning disk, you have 1 channel. RDMA is irrelevant at 100G these days,
Sort of, yes and no.
If you run
ib_send_bw, you don't need to run four parallel instances of it to push 95.64 Gbps out of 100 Gbps possible. (Tested with SLES12SP1 back in like 2018 when I first deployed 100 Gbps IB in the basement of my house.)
If you're migrating VM memory
state(s) over 100 Gbps IB, you
can (because of compression) actually hit 133 Gbps out of 100 Gbps possible. I've already done that.
(The VM disks lived on shared ceph NVMe SSD storage, so you're left with only needing to migrate the memory state of the VM over to the other node(s), which again, because of compression, can actually go
above what 100 Gbps IB can accomplish over the physical 100 Gbps link.
Heck, per your statement, even with me accomplishing 86 Gbps out of a possible 80 Gbps data link possible, I'm already overdriving the signal by 7.5% without doing anything special.
(And I'm also using the Debian "inbox" drivers and NOT the MLNX_OFED drivers.)
which on a spinning disk, you have 1 channel. RDMA is irrelevant at 100G these days
On a $/Gbps basis, 100 Gbps IB is cheaper than 10 Gbps. Yes, the NIC, cables, and switch(es) cost more in terms of absolute price, but in term of price
efficiency, 100 Gbps is more cost
efficient than 10G, 25G, 40G, or even 50G networking.
So whilst, yes, it was expensive when I bought all my 100 Gbps IB stuff, back in 2018-2019 (the 36-port MSB-7890 switch was $2269.23 USD back then), that still only worked out to be $0.630342/Gbps.
If you want a 4 port 10 GbE switch at that price efficiency, the switch would have to cost no more than $2.52, which of course, NEVER happens.
So why buy something that's not cost efficient?
(Sidebar: the virtio-nic that's available in Proxmox, shows up in Win10+, Linux, and MacOS as a 10 GbE NIC. In Win7, it actually shows up as a 100 GbE NIC.)
So why buy price inefficient 10 GbE networking gear when you can virtualise it using Proxmox instead?
Save your money.
400 and 800G is where RDMA (RoCE) lives.
RoCE is an afterthought.
IB has had RDMA significantly longer than Ethernet has RoCE.
(Sidebar, if you set
LINK_TYPE on a Mellanox NIC that supports VPI, you can set the port to be a 100 GbE NIC port (which technically is ethernet encapsulated in an IB message, so you get between 1-3% EoIB encapsulation overhead. But with that, you will then be able to create a Linux network bridge (which apparently is
only available for ethernet devices, and not available for IB devices/ports), but as you noted, it will only run at a max of 25 Gbps line rate, 20 Gbps data rate, where I've also been able to hit it with 8 parallel streams and get 23 Gbps out of 20 Gbps data rate possible (using
iperf).)
And I only did
that because Debian's
opensm doesn't support virtualisation (whereas the
opensm for RHEL and RHEL-derivatives)
does support virtualisation. And in talking with the linux rdma-core team/guys, they have
no plans to enable virtualisation in the Debian version of
opensm.
sigh....
So...that either means that I need to deploy a dummy system, who's job will be principally, to run the RHEL based
opensm (most likely on CentOS or Rocky Linux), or that I would need to swap my MSB-7890 with a MSB-7800 (which I had, but the one that I had bought had an issue where it would reboot itself every hour, on the hour, so I returned it and got my MSB-7890 that I have since then.
There's a reason why IB has long been the Top500 standard rather than faster and faster ethernet and this remains the trend/pattern today, still.
(Many of today's 800 GbE implements is ethernet encapsulated into an IB message.)
1.6 Tbps IB has been on the IB roadmap since at least 2020. And that assumes the "nominal" 4x link. 12x links has been a thing since pretty much forever (for IB).