What exactly happens when OFFLINE a disk?

Status
Not open for further replies.

Lars Gamborg

Cadet
Joined
Oct 17, 2014
Messages
3
So this is my senario. I havent really got into a problem, but I want to change my storage setup. I am currently running FreeNas 9.2.x, with 3 hdd in ZFS (stripe). What I really want to do is to change the setup from ZFS to UFS (because of my low RAM, and as I heard its adviced to not use ZFS then).

My first thought was to take out one hdd at a time, import it into UFS. Fill it up, and then start on the next hdd, untill all hdd is mounted up in UFS. I was thinking of doing the method of selecting the hdd and make it OFFLINE. My question is. What exactly happens when I do this? Does it automatically move the data from this disc to the two others before it makes it offline?

I am quite new to FreeNAS, so I am really scared of doing something I cant undo without loosing my data.
 

cyberjock

Inactive Account
Joined
Mar 25, 2012
Messages
19,526
First: No, you can't do what you are thinking. You need all of your disks blank when you create the UFS storage.
Second: UFS is dead in FreeNAS. So if your hardware can't do ZFS you need to find a different system to use.
Third: You will be unable to offline any disks in your pool because you have no redundancy. Which leads me to...
Fourth: If one of your disks fails in your zpool, you will *lose* all of your data.

I see only two options:

1. Upgrade your server to handle ZFS and rebuild your pool with redundancy before you lose your data.
2. Find another operating system to move your data too and buy appropriate hardware for that OS (if necessary).

You've been painted into a nasty corner, and I'd be lying if there was a good way out of the situation you are in.
 

Lars Gamborg

Cadet
Joined
Oct 17, 2014
Messages
3
Thanx for fast reply

I understand running disks as stripe is a risk. And as far as I know UFS is not the best option either. In time, I will upgrade my system, but for now I have to work with what I have. Choosing between a ZFS (stripe) and UFS isnt much difference (correct me if I am wrong), but I am trying to go for the lesser bad option. Bottom line, I am willing to take the risk untill I upgrade my hardware.

I am not being ignorant or questioning your answer, I just want to understand how FreeNAS works.

First: No, you can't do what you are thinking. You need all of your disks blank when you create the UFS storage.

Maybe I wasnt 100% clear of what I ment. I got 3 hdd in a ZFS pool (stripe). There is plenty of space on the Volume, so its not an issue to fit everything I got on the remaining two hdd. I want to empty one hdd at a time in the pool, by first moving all data from one hdd (so its blank) to the two others. Move the empty hdd into UFS, then fill it up. Then empty the next hdd (in the ZFS pool) by moving the data to the other disk in the pool. Then move this empty hdd to UFS as well, and fill it up etc.
So you say this cant be done?

If this is not possible? What is the purpose of the option to Offline/Replace a disk, if the data will be lost anyway?
My original question was still: What exactly happens to the data on the disk when you make a drive Offline or Replace disk? Does it handle the Offline / replace disk option differently as RAID than as STRIPE?
I thought the whole idea with the option Offline/Replacing disk was to keep the data by moving the data to the remaining disks, when replacing a bad disk?
Please explain?

Second: UFS is dead in FreeNAS. So if your hardware can't do ZFS you need to find a different system to use.

Technically everything is up running and working "fine". I just want to avoid using ZFS for the time being.
What you mean by 'dead'? You mean the fact that UFS will not be supported in v 9.3?
 

cyberjock

Inactive Account
Joined
Mar 25, 2012
Messages
19,526
Maybe I wasnt 100% clear of what I ment. I got 3 hdd in a ZFS pool (stripe). There is plenty of space on the Volume, so its not an issue to fit everything I got on the remaining two hdd. I want to empty one hdd at a time in the pool, by first moving all data from one hdd (so its blank) to the two others. Move the empty hdd into UFS, then fill it up. Then empty the next hdd (in the ZFS pool) by moving the data to the other disk in the pool. Then move this empty hdd to UFS as well, and fill it up etc.
So you say this cant be done?

No, you cannot do what you want. It doesn't matter if your pool is 1% or 99% full. Once a disk is in a vdev it cannot be removed. Please read my noobie presentation on ZFS for more understanding.

UFS also requires *all* disks to be blank and unformatted when creating the UFS storage. You cannot add more storage later. It must all be blank and available during UFS creation.

In your case, you'd need to move *all* of your data off of your pool, destroy the pool, then recreate it with UFS. You cannot under any circumstances, remove one disk at a time from the pool and add one disk at a time to UFS.

If this is not possible? What is the purpose of the option to Offline/Replace a disk, if the data will be lost anyway?
My original question was still: What exactly happens to the data on the disk when you make a drive Offline or Replace disk? Does it handle the Offline / replace disk option differently as RAID than as STRIPE?
I thought the whole idea with the option Offline/Replacing disk was to keep the data by moving the data to the remaining disks, when replacing a bad disk?
Please explain?
Offline/replace is to replace a failed drive, when there is sufficient redundancy. Zero data is moved when you offline a disk. The redundancy keeps your pool going. You have no redundancy, therefore you cannot offline any disks. If you try you'll get an error like "insufficient replicas exist to offline a disk".

No data moves around when offlining and replacing disks in a pool with redundancy. In your case, you'd be doubly screwed because if a disk started failing you couldn't replace it with a new disk AND if a disk starts failing your pool *will* fail because there is no redundancy.

Technically everything is up running and working "fine". I just want to avoid using ZFS for the time being.
What you mean by 'dead'? You mean the fact that UFS will not be supported in v 9.3?

Yes. UFS code was removed from 9.3 many months ago. Not many use it and since a disproportionate number of problems are on UFS the choice was made to get rid of it. UFS just doesn't scale up very well and since 99% of users go to FreeNAS for ZFS it seems to be a sensible option. ZFS, while technically requiring more RAM than UFS, isn't exactly asking alot when desktops regularly have 8GB of RAM. FreeNAS isn't meant to be used on "old hardware from your basement" so there was lots of reasons to ditch UFS and none to keep it.

I don't think you truly appreciate the corner you are painted into. There is no "easy out" and any option is going to cost you $ and significant time. Even if the $ is just to get out of the corner you are in. You've got to move all your data to "some other place" while destroying the zpool and creating your UFS RAID.
 

mjws00

Guru
Joined
Jul 25, 2014
Messages
798
In simplest terms. Your stripe is just like RAID0. Each piece of your data gets split 3 ways, and if you lose one piece you lose it all. All three disks are required at all times. You have tripled your chance at a disk failure. If one disk fails or is removed you lose everything. You are much worse off than just running 3 separate disks and filling them.

Even if you can't upgrade. Get your data backed up, and then off of this arrangement. You are right to be scared... but it is present danger. Not a future error.
 
Status
Not open for further replies.
Top