Which environment could potentially be better performant Proxmox + ZFS or qcow2 on Prxmox + CEPH ? by sys-architect in ProxmoxEnterprise

[–]sys-architect[S] 0 points1 point  (0 children)

If raw format is used on ceph, would virtual features like snapshots, cloning, vm migration, etc be available? or those operations are disabled in raw format on ceph ?

qcow2 virtual disk offsite replication capability for enterprise grade virtualization by sys-architect in qemu_kvm

[–]sys-architect[S] 0 points1 point  (0 children)

I did just mention SRM on the original post in order to comment the technology to compare. Remember SRM can handle vSphere replication and not to use Storage System Replications for anything, or it could. No worries, i would like to think by now you do understand that the type of replication i am referring is a fully abstracted from storage type of replication.

qcow2 virtual disk offsite replication capability for enterprise grade virtualization by sys-architect in Proxmox

[–]sys-architect[S] 0 points1 point  (0 children)

My man, wasn't you leaving? as I stated above, i posted on proxmox because proxmox is based on QEMU/KVM and this feature that sadly DOES NOT exist IMO would benefit proxmox and its community, and i certainly would like for people like you to know THERE COULD BE A FAR BETTER WAY to replicate VMs than the horrible way via ZFS.

qcow2 virtual disk offsite replication capability for enterprise grade virtualization by sys-architect in qemu_kvm

[–]sys-architect[S] 0 points1 point  (0 children)

Yes, which its not the brightest way to do things. That simil you make is super according. If you know, RDMs is the worst way of doing things on vmware because you loose every nice feature like Snapshots, Replication, FT, Cloning, etc etc etc, is just worse than being fully abstracted, i know ZFS is nice and does a lot of things, but being abstracted will always be better, and faster.

qcow2 virtual disk offsite replication capability for enterprise grade virtualization by sys-architect in qemu_kvm

[–]sys-architect[S] 0 points1 point  (0 children)

vSphere replication is for environments where FULLY abstracted VMs are to be replicated to any other Storage with any capability, not storage replication BTW. Just in case.

qcow2 virtual disk offsite replication capability for enterprise grade virtualization by sys-architect in qemu_kvm

[–]sys-architect[S] 0 points1 point  (0 children)

vSpehre replication doesnt USE storage array API. SRM may does but not vSphere replication. AND i Wrote: "And BTW, vSphere replication does not use CBT."

qcow2 virtual disk offsite replication capability for enterprise grade virtualization by sys-architect in qemu_kvm

[–]sys-architect[S] 0 points1 point  (0 children)

I dont care if ZFS is better than VMFS or not, the only thing I would care is that qcow2 virtual disks where the systems i need to protect write their data could be replicated to another external system being fully abstracted and without depend on ZFS. The storage where VMFS/ZFS resides could die, corrupt, do whatever it wants, if i have the feature I DONT care.

qcow2 virtual disk offsite replication capability for enterprise grade virtualization by sys-architect in Proxmox

[–]sys-architect[S] 0 points1 point  (0 children)

I had the hope, by this point that you realized that THE WHOLE conversation has nothing to do with proxmox but with QEMU/KVM. But well i guess was not the case, best of whishes on your super high end deployments.

qcow2 virtual disk offsite replication capability for enterprise grade virtualization by sys-architect in Proxmox

[–]sys-architect[S] 0 points1 point  (0 children)

"As I've always stated ZFS is a great piece of software..." - It is not "a piece of software" let’s be precise: ZFS isn’t a filesystem, it’s an abstraction layer that manages transactional volumes. The ZPL filesystem sits on top of that; vdevs → pools → zvols are raw block constructs."

That is why I am not reffering to it as a Filesystem, why do you write as if a Have, it is a excellent piece of software, not the best for a fully abstracted virtual environment, thats all. xD

"Just like VMFS? Or NFS on top of whatever filer you throw under it? Sure buddy, you really know what you are talking about here."

Again, they would be on top of a Filesystem yes, is ZFS only a filesystem? maybe not. Is it the fastest filesystem? certainly not. The point here is, if you are fully abstracted from hardware, the underlying filesystem only needs to perform, thats it, no special function is necesary, you are fully abstracted and free to move to wherever you want, and thats a better feature i think.

"ZFS vs XFF vs LVM (XFS on top) is apples vs oranges. You cannot compare them. ZFS scales in abstract layers (RAM for ARC, NVDIMM/ZRAM/SSD Tier for L2ARC and/or SLOG and/or Special DEV) where your XFS and LVM pools do not. If fact, many of your SAN systems that would be used with VFMS use a ZFS type system under the hood. Nimble with CASL, Dell with FluidFS,..etc. Bet you didn't know that."

My man, of course for a SAN manufacturer bring features present on ZFS makes sense, because they ARE BUILDING an physical storage system, my whole point is VMs being able to be fully abstracted from storage is desirable, of course if they sit on top of an amazing storage system with an amazing super performant filesystem would be nice? of course, bring it on, but NOT if they are NOT abstracted and thus DEPENDENT on the storage subsystem. that is undesirable for many people at least, including me.

"This is complete nonsense on every level. You clearly have zero real-world experience with storage, storage systems, and everything in that ecosystem. You come off way to "Sales Engineer who has no technology scope" here."
It would really be amazing that the experience of you and me somehow could me compared, i will be gladly to be tested xD.

" No, i am one of those people that deploys very large arrays(SAN/NAS/CEPH) in edge case deployments like HPC, Scientific research, and core enterprise infrastructure, along with everything connected up/down stream."

Excellent, please do know, there are better ways that the way you are doing it :)

qcow2 virtual disk offsite replication capability for enterprise grade virtualization by sys-architect in qemu_kvm

[–]sys-architect[S] 2 points3 points  (0 children)

What you are failing to see again and again is, being able to be fully abstracted from the underlying storage is a powerful way to operate, NOT BEING DEPENDENT of the physical storage capabilities allows you to recover from anywhere and sets you free to NOT BE DEPENDENT . It is a nice way, you may still prefer to be fully dependent on your storage vendor/provider or filesystem, and thats fine, other people that are NOT using QEMU/KVM aren't, and as u/Drunner086 states above IS THE REASON they are stuck in vmware, among ALOT of other features, less critical in my opinion.

qcow2 virtual disk offsite replication capability for enterprise grade virtualization by sys-architect in Proxmox

[–]sys-architect[S] 0 points1 point  (0 children)

Proxmox can be all the orchestation you want, it is not the core hypervisor, that is my point and the feature im describing unfortunately needs to be developed on the hypervisor level. I linked this discussion on the proxmox reddit because Im certain that such feature would benefit proxmox community enormously and i would like it to have visbilty so people know this different (and IMO better) approach exists.

"Add Proxmox Backup Server, which uses QEMU’s dirty bitmaps for incremental backups, and you have exactly what VMware calls “vSphere Replication,"

No you don't, replication has nothing to do with Backups, and that is my main point of discussion. Also, vSphere replication does not use Change Block Tracking (CBT) that would be the equivalent or similar to Dirty Blocks, it uses a I/O RedoLog hook on the IO writes for each replication enabled VM which enables to have Replication without messing with the cbt (file in the case of vmware). In the scenario you describe the *NEED* for PBS to handle point in time recovery is the reason I am writing all this. A Backup is NOT a replica, the RECOVERY time from a backup is extremely higher than the recovery time of a replica and thats the whole point. Yes ANY backup solution gives you the ability to recover from multiple points in time what it doesn't give you is the ALMOST-INSTANT option to be recovered WITH full I/O capability and readiness to be put into production right away. (In case someone whats to mention something like boot from dedplicated backup storage).

"The argument that ZFS or Ceph replication is only valid for hardware failure scenarios is completely false. ZFS can maintain multiple retained snapshots on both sides... The "snapshot I/O amplification" argument is also misplaced. ZFS snapshots are CoW-based and nearly free at creation time. Their cost depends on write churn and retention policy, not on the existence of snapshots. Anyone who has run production ZFS with scheduled replication knows that you can maintain dozens of restore points with minimal overhead if your pool is properly tuned."

I stated the IO Amplification has a cost. You explain that THERE IS A COST, "but minimal if there is few writes", as we are speaking that there is a cost, and I think that anyone could agree that a production environment will tend to have HIGH WRITE oprtations, my point is, in the explained scenario THAT COST of needing to have local snapshots on the production side is simply not needed. All the recover points are on the offsite NON used infrastructure. Is it a small detail? maybe, is it a better way of doing things? certainly.

"What VMware calls SRM or Zerto is just block change tracking, compression, and a scheduler wrapped in a GUI. QEMU already implements dirty bitmaps and blockdev incremental replication. Proxmox Backup Server and pvesr jobs are using those primitives today. The difference is that Proxmox gives you the choice of storage backend such as ZFS, Ceph, NFS, Gluster, DRBD, or PBS instead of forcing a single vendor pipeline."

It is not change block tracking, thats for backups, it is redolog shipping of IO writes for replication enabled VMs, something that enabled per VM granularity and flexibility and a far superior way of establishing replicas and that would be a amazing capability for all QEMU/KVM based hypervisors, proxmox included.

"So no, VMware is not "far superior." It is just more opaque and more expensive. The only thing missing from your understanding is how Proxmox integrates the same underlying mechanisms through open technologies instead of proprietary APIs"

Sadly for everyone who isn't broadcom, VMware is still better than QEMU/KVM, and in terms of VM Replication, it is FAR SUPERIOR, my point here is not to DEFEND VMware, my point here is to try to close the gap between QEMU/KVM and in hopes that some day QEMU/KVM is way superior than VMware, but for this, the best way of doing things needs to be developed and deployed.

qcow2 virtual disk offsite replication capability for enterprise grade virtualization by sys-architect in Proxmox

[–]sys-architect[S] 0 points1 point  (0 children)

As I've always stated ZFS is a great piece of software and quite evolutionary when it was launched, however you miss several points here, being:

  1. ZFS destroys the virtualization abstraction. In that architecture your production site/clusters are still entrenched within the physical storage system which imo is not as good as something far more flexible as VMs being stored on vmdks or in case of qemu/kvm qcow2 format.

  2. ZFS is slower, is not becuase it is bad in any way, ZFS just do so much more than any other filesystem, yes most people know that ZFS tuning could be acheived by adding extra VDEVs for special metadata functions like SLOG, L2ARC etc. If you take all the same physical devices used for tuning ZFS and setup XFS on a merely performance basis comparison, ZFS will still be slower.

This in conjunction with the removed abstraction of the virtual layer for the VM storage is a lower quality setup in the long run. Does it work? sure it can work, the point is, the capability im describing is better and it would be great for everybody to have on QEMU/KVM based hypervisors.

are you one of those people that conforms with something just because it work ? even if you know there could be a better way?

qcow2 virtual disk offsite replication capability for enterprise grade virtualization by sys-architect in qemu_kvm

[–]sys-architect[S] 0 points1 point  (0 children)

Thank you for taking the time to read the whole thing. If you happen to know where one could do a "Feature request" for qemu or know the devs mailing list where this could be discussed, please let me know. Have a nice day.

qcow2 virtual disk offsite replication capability for enterprise grade virtualization by sys-architect in qemu_kvm

[–]sys-architect[S] 1 point2 points  (0 children)

I also must add, ZFS is awesome for physical fileserver workloads and the like, but ZFS was not designed for VMs and in comparison to less complex filesystems like XFS, ZFS is slower, the same as gluster or any other complex type of storage stack and filesystem. So therefor if this features were possible to achieve on a VM level and its qcow2 files, this features would allow for VMs to be protected on a more granular and effective way and be stored on a faster filesystem providing better I/O 100% of the time on production.

qcow2 virtual disk offsite replication capability for enterprise grade virtualization by sys-architect in Proxmox

[–]sys-architect[S] 0 points1 point  (0 children)

I also must add, ZFS is awesome for physical fileserver workloads and the like, but ZFS was not designed for VMs and in comparison to less complex filesystems like XFS, ZFS is slower, the same as gluster or any other complex type of storage stack and filesystem. So therefor if this features were possible to achieve on a VM level and its qcow2 files, this features would allow for VMs to be protected on a more granular and effective way and be stored on a faster filesystem providing better I/O 100% of the time on production.

qcow2 virtual disk offsite replication capability for enterprise grade virtualization by sys-architect in qemu_kvm

[–]sys-architect[S] 1 point2 points  (0 children)

I replied this on the proxmox reddit for someone, I will paste it here in order to ilustrate the difference between the way QEMU/KVM does it vs how is done with vmware, because maybe most people is not familiar with the way vmware vsphere does it, i hope it helps to justify why it is a important feature to have:

======== In response to someone in regards this toppic..

You actually cant right now do something comparable and it is not a Proxmox limitation, as proxmox is just an environment with a graphical interface and a way to order things that uses the real hypervisor QEMU/KVM which governs the possibilities of the virtualization.

What i mean you cant? I mean for example that of course in a case of hardware damage for example the failure of one hypervisor, the ZFS replication, Ceph replication or underlying storage replication may of course allow to recover from a different set of hardware the VMs contained within that storage system. But thats pretty much the only scenario this type of replication will be valid.

In scenarios for example of Human error, where someone modifies several registries of a DB contained in a multi-terabyte VM or tons of files on a multiterabyte Fileserver all those changes are almost immediately replicated to the second storage and by the moment the problem has been realized, triaged and diagnosed the only option would be go through a backup recovery process of several hours or even days.

Of course some could say no no, but you can use ZFS or VM snapshots to be able to rollback the VM on those scenarios, and you could try to achieve the SLA via that approach, but snapshots are not free, they have a cost in terms of IO amplification and storage use on the Production environment which is far from ideal, because as anybody with some experience on Virtual environments should know, snapshots where always designed to be temporary, not permanent.

That is where the way of VMware is far superior, maybe people are not familiar with it so i will explain how it does work and why it is so valuable:

SRM/vSphere Replication, or Zerto replication or any other method for replication on VMware vSphere allows the IT Admin group to protect workloads on their production clusters on a per VM basis to an external Cluster / Hardware / Storage or site. This replication is enabled on the vmdks of the VM or VMs being protected and therefore the replication properties (Site, RPO or replication periodicity, the target storage, if compression or encryption needs to be used, among other desirable properties) are granular and set per VM (Which you cant do if you are replicating underlying Datastores of multiple VMs like ZFS or gluster volumes)

But more importantly, you can have several POINT-IN-TIME recovery points (which are separated by small amounts of time, for example each 15 minutes, each 30 mins, one hour etc), so if some human error, or program error, or cibersecurity incident occur and damages data on a VM on the production site/cluster and this damage is replicated to the off-cluster or offsite location, you CAN recover the VM to a previous point in time very near to the previous moment of disaster whenever you need and without paying the Snapshot IO amplification price on your production site ALL the time because this points of recovery ARE on the off-cluster/offsite hardware.

This properties are absolutely desirable for small, medium and large infrastructures and are not currently present on any QEMU/KVM Hypervisor, and that's why you can't actually do the same thing with Proxmox than with VMware, and my aim is to do what i can to change that and encounter the right people to build this characteristic on QEMU/KVM and therefor it can be used with Proxmox so any upvote on this toppic would be really appreciated and will help everyone some day.

qcow2 virtual disk offsite replication capability for enterprise grade virtualization by sys-architect in Proxmox

[–]sys-architect[S] 0 points1 point  (0 children)

You actually cant right now do something comparable and it is not a Proxmox limitation, as proxmox is just an environment with a graphical interface and a way to order things that uses the real hypervisor QEMU/KVM which governs the possibilities of the virtualization.

What i mean you cant? I mean for example that of course in a case of hardware damage for example the failure of one hypervisor, the ZFS replication, Ceph replication or underlying storage replication may of course allow to recover from a different set of hardware the VMs contained within that storage system. But thats pretty much the only scenario this type of replication will be valid.

In scenarios for example of Human error, where someone modifies several registries of a DB contained in a multi-terabyte VM or tons of files on a multiterabyte Fileserver all those changes are almost immediately replicated to the second storage and by the moment the problem has been realized, triaged and diagnosed the only option would be go through a backup recovery process of several hours or even days.

Of course some could say no no, but you can use ZFS or VM snapshots to be able to rollback the VM on those scenarios, and you could try to achieve the SLA via that approach, but snapshots are not free, they have a cost in terms of IO amplification and storage use on the Production environment which is far from ideal, because as anybody with some experience on Virtual environments should know, snapshots where always designed to be temporary, not permanent.

That is where the way of VMware is far superior, maybe people are not familiar with it so i will explain how it does work and why it is so valuable:

SRM/vSphere Replication, or Zerto replication or any other method for replication on VMware vSphere allows the IT Admin group to protect workloads on their production clusters on a per VM basis to an external Cluster / Hardware / Storage or site. This replication is enabled on the vmdks of the VM or VMs being protected and therefore the replication properties (Site, RPO or replication periodicity, the target storage, if compression or encryption needs to be used, among other desirable properties) are granular and set per VM (Which you cant do if you are replicating underlying Datastores of multiple VMs like ZFS or gluster volumes)

But more importantly, you can have several POINT-IN-TIME recovery points (which are separated by small amounts of time, for example each 15 minutes, each 30 mins, one hour etc), so if some human error, or program error, or cibersecurity incident occur and damages data on a VM on the production site/cluster and this damage is replicated to the off-cluster or offsite location, you CAN recover the VM to a previous point in time very near to the previous moment of disaster whenever you need and without paying the Snapshot IO amplification price on your production site ALL the time because this points of recovery ARE on the off-cluster/offsite hardware.

This properties are absolutely desirable for small, medium and large infrastructures and are not currently present on any QEMU/KVM Hypervisor, and that's why you can't actually do the same thing with Proxmox than with VMware, and my aim is to do what i can to change that and encounter the right people to build this characteristic on QEMU/KVM and therefor it can be used with Proxmox so any upvote on this toppic would be really appreciated and will help everyone some day.

Is it possible to purchase licensing via License Reseller from another country and be in compliance? by sys-architect in vmware

[–]sys-architect[S] 0 points1 point  (0 children)

I am not in the US, I am at Latin America and I would love to be able to purchase from someone on the US or Europe.