Experience with XFS


Userlevel 7
Badge +7
  • Veeam Legend, Veeam Vanguard
  • 1196 comments

Because of the new v11-feature of immutable backups on XFS filesystem, I am looking for real-world experiences with XFS as Repository.

I just read through this forum entry:

https://forums.veeam.com/veeam-backup-replication-f2/v10-xfs-all-there-is-to-know-t65222-30.html

and the closing experience of user ferrus:

https://forums.veeam.com/veeam-backup-replication-f2/v10-xfs-all-there-is-to-know-t65222-30.html#p388579

 

Sounds very good to me so far. I can remember first implementations of ReFS Block Cloning. Lets say, it does not work that fine at the beginning.

Would you share some of your experiences with XFS as Veeam Repository? I would be interested in:

  • stability 
  • performance (over time)
  • needs for troubleshooting
  • administrative effort

Thanks!


38 comments

Userlevel 2

Just for my interpretation, if you want XFS and have an REFS environment, you have to got a greenfield for that right?. How do existing customers wit SOBRS handle this (or what is VEEAM point of view in this. Especially in a window only environment>

Userlevel 5
Badge +1

I have installed a SOBR with three extents of XFS in our largest VCC datacenter.  It works extremely well and have not had issues.  We did mix it with ReFS but that was a bad idea and created a new SOBR just for XFS alone and no mixing.

We also try to keep SOBRs at 2-3 extents maximum and then create new ones as needed.

Thanks Chris!

What was the problem(s) when mixing XFS with ReFS in a SOBR?

One thing to note is the block size for ReFS is recommended on Veeam to be 64K and XFS is 4K, so I believe that alone would be a problem if trying to mix in one SOBR.

Continuing this - I’d really also like to know which issues you saw when with mixing XFS and ReFS in one SOBR?! @Chris.Childerhose 
I can’t think of any tbh.
@vNote42 The block cloning block size is completely irrelevant in SOBRs - it’s just something how the file is stored on the OS. You can also mix a dedup appliance and an ReFS repo and that works fine.
When moving files out of one extent to another you’ll loose the block cloning anyways.

So @HenkRuis: As said I don’t see a reason for not mixing XFS and ReFS repos, so I’d add XFS extents to your SOBR and seal the ReFS extents, so that the backups age out and you do not loose your ReFS block cloning space savings by evacuating the extent.
You’ll have to create a new active full to start with block cloning on XFS, but that’s it.

Userlevel 7
Badge +7

Hi @StefanZi - this issues we saw was when a job ran if it was on XFS to start and then for some reason decided to write over to ReFS it seemed to cause major issues on the VCC server and repos.  I cannot explain it fully but when we separated the XFS from ReFS everything seems to work great at that point.

I know the documentation says you can mix them but from the people I spoke with at Veeam it was recommended not to.  So that is the approach we have been taking lately.

XFS has been great and looking forward to the Immutable storage now on it as well as the Linux Proxies. :sunglasses:

Userlevel 7
Badge +7

Hi @StefanZi - this issues we saw was when a job ran if it was on XFS to start and then for some reason decided to write over to ReFS it seemed to cause major issues on the VCC server and repos.  I cannot explain it fully but when we separated the XFS from ReFS everything seems to work great at that point.

I know the documentation says you can mix them but from the people I spoke with at Veeam it was recommended not to.  So that is the approach we have been taking lately.

XFS has been great and looking forward to the Immutable storage now on it as well as the Linux Proxies. :sunglasses:

Chris, thanks for your details!

So I think it should be safe to migrate ReFS to XFS in the way @StefanZi lined out.

Userlevel 7
Badge +7

Most definitely you can mix them to migrate I would assume.  Just we had issues using them together.  Adding XFS then sealing the ReFS would be the best solution as noted for sure.

Userlevel 7
Badge +9

I’ve done both XFS an EXT4 with Hardened Linux Repo, both worked fine. If you’re using a physical repo server with JBOD storage I would probably lean toward XFS so you can get the block clone features, especially since you have to use Forward Incremental with periodic fulls with HLR. I was using SAN storage with really good built in native dedup, so in that case I decided to stick with EXT4 since I didn’t really need the block clone benefits.

@jdw , thanks for your feedback!

Keep in mind, Block Clone also saves time (because it reduces needed IOs dramatically) when merging last increment into last full. 

Do you have any good test results showing real world comparison? This test is on my to-do list for the blog, but not had the time yet; would be great to see some other comparison if they exist. My theory is that it will be far more important for low end storage but I’m not sure if it will have as much advantage on the QLC-flash systems I primarily work with.

Block cloning at merging increments to fulls matters also for large installations. It depends on the environment of course, but I know about backups merging in minutes with block cloning comparted to hours without.

Yes this is for certain. One fun way to find out is to accidently add an NTFS rep to your REFS SOBR :). Then when a new backup chooses the NTFS since there is more space you can watch as it takes at least 10 times longer to perform synthetic operations :). This was done once by accident so I witnessed it personally.

Userlevel 7
Badge +7

Would like to warm up an old topic here again 😁

Some time ago a had to delete some huge backup-file on different ReFS volumes. During the deletion the Windows server hung completely. Furthermore it needed quite some time to delete the file. Today I did some similar on a RHEL on a XFS volume. To keep it short: No server hang, duration was - according to my feeling - like the delete of un-pointed files.

Great work, XFS!

 

Userlevel 7
Badge +3

Good to know @vNote42 , thanks! How was fast the “storage space reclamation”? was it instant if you are doing a “df -h”?

Userlevel 7
Badge +7

Good to know @vNote42 , thanks! How was fast the “storage space reclamation”? was it instant if you are doing a “df -h”?

yes, “df -h”  showed reclaimed space directly afterwards

Userlevel 7
Badge +3

Good to know @vNote42 , thanks! How was fast the “storage space reclamation”? was it instant if you are doing a “df -h”?

yes, “df -h”  showed reclaimed space directly afterwards

Amazing! It was such a pain with dedup appliance, zzz waiting recycle jobs to have the space available.

Userlevel 7
Badge +7

Would like to warm up an old topic here again 😁

Some time ago a had to delete some huge backup-file on different ReFS volumes. During the deletion the Windows server hung completely. Furthermore it needed quite some time to delete the file. Today I did some similar on a RHEL on a XFS volume. To keep it short: No server hang, duration was - according to my feeling - like the delete of un-pointed files.

Great work, XFS!

 

Yeah deleting on XFS even with block cloning seems way faster than wonderful Windows. 😋😂

Userlevel 7
Badge +8

Would like to warm up an old topic here again 😁

Some time ago a had to delete some huge backup-file on different ReFS volumes. During the deletion the Windows server hung completely. Furthermore it needed quite some time to delete the file. Today I did some similar on a RHEL on a XFS volume. To keep it short: No server hang, duration was - according to my feeling - like the delete of un-pointed files.

Great work, XFS!

 

Yeah deleting on XFS even with block cloning seems way faster than wonderful Windows. 😋😂

I know Microsoft were bragging a lot about WS 2022 being up to 50x faster on ReFS operations such as this so it’d be good to see how that translates in the real world, I feel a heavy emphasis on “up to” is necessary!

Userlevel 7
Badge +7

Would like to warm up an old topic here again 😁

Some time ago a had to delete some huge backup-file on different ReFS volumes. During the deletion the Windows server hung completely. Furthermore it needed quite some time to delete the file. Today I did some similar on a RHEL on a XFS volume. To keep it short: No server hang, duration was - according to my feeling - like the delete of un-pointed files.

Great work, XFS!

 

Ok, had no problems with this up to now. It takes some time to delete a big file with many pointers. But I did not have a server hang.

A compare between ReFS and XFS would be interesting… Maybe this summer 😎

Comment