Q: Best method of swapping out Cache array


Recommended Posts

I am about to swap out my M.2 Raid-0 and upgrade the drives in prep to swapping to X570/PCI-e 4.0...  To that end, I need to completely remove all support for the cache from all shares and VM's, migrate everything to the main spinning array so I can nuke the current array so it can be sold, then setup the new array like a new setup...

 

I want to make the move without any data mishaps, and was hoping to get some feedback on the steps needed to make sure that the move goes smoothly...  Any tips would be appreciated...  I am sorry if this is repeated somewhere else, I have been unable to see anything else related to this out there...

Link to comment

If you require that services be available in the interim, it gets complex. However, if you can stand to have your dockers and VM's disabled for the duration, then...

1. Disable docker and VM services. That means no docker or VM on the main GUI menu. If the menu items are there, the services aren't disabled.

2. Set all shares to cache: yes. Make a note of which shares you changed, so you can set them back after the new pool is formatted. Any shares currently set to cache: no or cache: only may need special treatment. Make a list of all folders (shares) that actually have content on the cache pool that were set to no or prefer, list any content in those folders. Those will need to be manually moved back to their locations on the pool.

3. Run mover. If everything is working properly, the cache pool will be empty after the mover is done. Set all shares to cache: no.

4. Shut down and physically remove drives.

5. Array shares can be used without the cache pool, but no vm or dockers.

6. Shut down and install new cache drives, assign and format them.

7. Change shares back to their original settings. Any that were originally set to no that had content on the cache, manually move that content back. Any that were set to only, change to cache prefer unless you need a large portion to remain on the array. Example... I personally have my domains share set to cache only. New VMs get created on the cache, but I have MANY that live on the array, and when I need space on the cache for new VMs, I'll manually move some of the lesser used VMs off the cache and only the array.

8. Run mover. Verify that the cache content is the same as it was before you started this odyssey.

9. Enable docker and VM services.

10. Profit!

 

If you need VM's and dockers to run while you don't have a cache pool defined, you will have to go through each and every docker and VM setting and configuration to be sure there are no direct references to /mnt/cache. If there are, they must be changed to /mnt/user, or /mnt/diskX, where X is the disk where the content temporarily ended up based on the share allocation rules. Some dockers get tetchy about running from /mnt/user, especially recently with 6.7.X

 

If you plan to go this route of setting things up to temporarily run from the array, disable ALL the individual auto starts for each VM and docker before you disable the services. If any of them get accidentally started with a direct reference to /mnt/cache, they will happily think they are starting up for the first time and create their folders in RAM, ignoring their actual config files and creating a mess.

Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.