Register for the iXsystems Community to get an ad-free experience

Upgrade path from FreeNAS-8.3.1-RELEASE-x64 (r13452)

Status
Not open for further replies.

NASbox

Guru
Joined
May 8, 2012
Messages
622
I have been running FreeNAS-8.3.1-RELEASE-x64 (r13452) for some time, and I am ready to upgrade and I am looking for guidance on upgrade procedures.

At issue are that I want to add a SAS2008i disk controller (Latest Firmware - P20) and how to deal with a UDF USB that is used for custom scripts/cron jobs.

The current system:
  • A single 16GB Drive for a boot drive
  • An 8GB UDF USB that is being used for custom scripts
  • A 4x6TB Drive RaidZ2 Pool
  • A 2x4TB RaidZ Pool.
The drives are currently attached to the SATA ports on the motherboard and as part of the upgrade I want to move them to the new SAS2008 controller as some of the ports on the motherboard are only 3GB/s.

Below is the current drive configurations:
Code:
gpart show
=>		 34  11721045101  ada0  GPT  (5.5T)
		   34		   94		- free -  (47k)
		  128	  4194304	 1  freebsd-swap  (2.0G)
	  4194432  11716850696	 2  freebsd-zfs  (5.5T)
  11721045128			7		- free -  (3.5k)

=>		 34  11721045101  ada1  GPT  (5.5T)
		   34		   94		- free -  (47k)
		  128	  4194304	 1  freebsd-swap  (2.0G)
	  4194432  11716850696	 2  freebsd-zfs  (5.5T)
  11721045128			7		- free -  (3.5k)

=>		 34  11721045101  ada2  GPT  (5.5T)
		   34		   94		- free -  (47k)
		  128	  4194304	 1  freebsd-swap  (2.0G)
	  4194432  11716850696	 2  freebsd-zfs  (5.5T)
  11721045128			7		- free -  (3.5k)

=>		 34  11721045101  ada3  GPT  (5.5T)
		   34		   94		- free -  (47k)
		  128	  4194304	 1  freebsd-swap  (2.0G)
	  4194432  11716850696	 2  freebsd-zfs  (5.5T)
  11721045128			7		- free -  (3.5k)

=>		34  7814037101  ada4  GPT  (3.7T)
		  34		  94		- free -  (47k)
		 128	 4194304	 1  freebsd-swap  (2.0G)
	 4194432  7809842696	 2  freebsd-zfs  (3.7T)
  7814037128		   7		- free -  (3.5k)

=>		34  7814037101  ada5  GPT  (3.7T)
		  34		  94		- free -  (47k)
		 128	 4194304	 1  freebsd-swap  (2.0G)
	 4194432  7809842696	 2  freebsd-zfs  (3.7T)
  7814037128		   7		- free -  (3.5k)

=>	  63  30282945  da1  MBR  (14G)
		63   1930257	1  freebsd  [active]  (942M)
   1930320		63	   - free -  (31k)
   1930383   1930257	2  freebsd  (942M)
   3860640	  3024	3  freebsd  (1.5M)
   3863664	 41328	4  freebsd  (20M)
   3904992  26378016	   - free -  (12G)

=>	  0  1930257  da1s1  BSD  (942M)
		0	   16		 - free -  (8.0k)
	   16  1930241	  1  !0  (942M)

=>	  0  1930257  da1s2  BSD  (942M)
		0	   16		 - free -  (8.0k)
	   16  1930241	  1  !0  (942M)

=>	  34  15400893  da0  GPT  (7.4G)
		34		94	   - free -  (47k)
	   128   4194304	1  freebsd-swap  (2.0G)
   4194432  11206495	2  freebsd-ufs  (5.4G)


Any assistance/comments are much appreciated.
 
Last edited by a moderator:

DrKK

FreeNAS Generalissimo
Joined
Oct 15, 2013
Messages
3,630
FreeNAS 8.3.1 predates my entering the community, and I've been here 4 years. (DrKK makes Spock eyebrow face)

In any case, that's a pretty brutal upgrade path. Back in the day, we suggested that 8.3.1 people first upgrade to 9.1.1, and I know that worked fine. From 9.1.1, you can certainly go to 9.3, or even 9.10 directly, if you're feeling brave. download.freenas.org has all of the necessary upgrade-path .isos.


As for a UDF-formatted thumb drive. ..... ????? That's extremely random. Is there some reason you can't just put your "scripts" on the proper data pool? I mean, we all use scripts we wrote, and none of us have separate thumb drives that we somehow have to mount to store them.
 

NASbox

Guru
Joined
May 8, 2012
Messages
622
As an experiment, I spun up VirtualBox and created 3 virtual disks - 32GB, and 2x4GB. I installed 8.3.1 on the 32GB drive, created a RaidZ pool called TANK on the 2 - 4GB drives and copied a couple of files to TANK.

I then did an upgrade install using 11.0 and it seemed to work. I can't do rigorous testing since the VM only has 4GB of memory, and of course it is Virtual not real HW.

The manual says that an upgrade from 8->11 is possible and the manual appears to be right. I'd like to move to the next step and test with the real hardware.

My plan is to clone my drive and do the upgrade without upgrading the ZFS pools.

I'm hoping that some of the FreeNAS/FreeBSD gurus here can help me with the following questions:

If I understand correctly, I can test the upgrade on the copy, and fall back to the original version by simply reinstalling the old USB drive and rebooting. Is this assumption correct? Does the system upgrade change the pool disks as long as I don't upgrade the pools?

What about the database if I revert? (I assume that the database files become garbage and should be deleted since the original USB contains the original database files.)


Can I copy my running 8.3.1 FreeNAS image to another USB drive, or are there open files that will mess this up?
(If necessary, I could shut FreeNAS down and move the drive to a linux system to make the dd clone.)

My FreeNAS 8.3.1 image is on a 16GB USB Drive, and I want to move to to a 32GB USB drive
Can I do a simple copy with dd like this? (Or will the different sizes create a problem?)

dd if=/dev/da1 of=/dev/da2 bs=1M
(The boot drive is da1, the new drive will likely be da2)

Will the upgrade recover the extra space and make the whole 32G usable when the upgrade is complete?
(From what I can see the 8.3.1->11.0 upgrade process reads what it needs from the boot image into memory and destroys the boot drive and then recreates it with the new system.)

Anything else I'm missing?

Thanks in advance for any assistance/input/suggestions.
 

danb35

Hall of Famer
Joined
Aug 16, 2011
Messages
13,546
My plan is to clone my drive and do the upgrade without upgrading the ZFS pools.
It might be simpler to just install 11 on the new USB stick, then upload a saved config file from your current installation. If it works well, great. If it doesn't, put your old USB stick in and you're back in business.
 

LoSx

Cadet
Joined
Aug 29, 2012
Messages
5
I am very interested in people suggestions as well because I actually an looking to upgrade and my last upgrade was to 8.3 as well. Let me know how it goes please.
 

Ericloewe

Not-very-passive-but-aggressive
Moderator
Joined
Feb 15, 2014
Messages
18,111
, then upload a saved config file from your current installation.
That most likely won't work. 11.x doesn't know how to upgrade config files older than 9.3.
 

danb35

Hall of Famer
Joined
Aug 16, 2011
Messages
13,546

NASbox

Guru
Joined
May 8, 2012
Messages
622
Uploading an 8.3 config file into a running 11.0, and applying an 11.0 upgrade over a running 8.3 are very different operations. According to the documentation:
The installer recognizes existing installations of previous versions of FreeNAS® 8.x or 9.x. When an existing installation is present, the menu shown in Figure 2.3.5 is displayed.
---
It might be simpler to just install 11 on the new USB stick, then upload a saved config file from your current installation. If it works well, great. If it doesn't, put your old USB stick in and you're back in business.

I would not want to have to recreate the config and then re-import the pools. If users/groups don't have exactly the same User/Group ID's it's going to be a major headache.
 

SweetAndLow

Sweet'NASty
Joined
Nov 6, 2013
Messages
6,415
Motherboard ports that are 3GB/s are perfectly fine. Your hdd's after not that fast and can't max it out.

How complicated is your is config? I would just install freenas 11 to a new usb import your pool and reconfigure everything.

Sent from my Nexus 5X using Tapatalk
 

danb35

Hall of Famer
Joined
Aug 16, 2011
Messages
13,546
I would not want to have to recreate the config and then re-import the pools.
Well, no, that would be the point. If 11 does import the 8.3 config, there's nothing to recreate/reimport. And if 11 can cleanly upgrade from 8.3, that necessarily means that it's able to read the config from 8.3 and convert it into the modern schema. I can't say for sure whether 11 will let you do what I'm suggesting (and @Ericloewe doesn't think it will, which counts for something), but the underlying ability is built in there somewhere. I might try that out over the weekend, just as a matter of my own curiosity.
 

NASbox

Guru
Joined
May 8, 2012
Messages
622
I appreciate the responses:

Motherboard ports that are 3GB/s are perfectly fine. Your hdd's after not that fast and can't max it out.
Good point... at least for files larger than the cache and sustained transfers.

How complicated is your is config? I would just install freenas 11 to a new usb import your pool and reconfigure everything.
Complicated enough that I don't want to have to recreate it manually if I can avoid it. I've got to make sure the same users end up with the the same numeric ID's or I will have real problems... and it was so long ago I can't really remember what I've done. Is there a way to create a list of all the configuration changes that I made over the years? System has been so reliable, it's been set it, and forget it (home use)

And if 11 can cleanly upgrade from 8.3, that necessarily means that it's able to read the config from 8.3 and convert it into the modern schema.

Is the same code in the running system in the install CD? I don't know... maybe yes, maybe no. If it is, then an import should work, if it isn't then it won't.
If I were the designer and I was looking to make the code base as small/tight as possible, I would make the upgrade code as robust as necessary to be able to upgrade from past versions, but once the upgrade is done, then old config files shouldn't be needed any more.

I can't say for sure whether 11 will let you do what I'm suggesting (and @Ericloewe doesn't think it will, which counts for something), but the underlying ability is built in there somewhere. I might try that out over the weekend, just as a matter of my own curiosity.

It would be great if you had the time to test it... It would save me (and by the sound of things one or two others who have been slow to upgrade) a bit of time.

Thanks again for the input.
 

NASbox

Guru
Joined
May 8, 2012
Messages
622
I appreciate the responses:

Motherboard ports that are 3GB/s are perfectly fine. Your hdd's after not that fast and can't max it out.
Good point... at least for files larger than the cache and sustained transfers.

How complicated is your is config? I would just install freenas 11 to a new usb import your pool and reconfigure everything.
Complicated enough that I don't want to have to recreate it manually if I can avoid it. I've got to make sure the same users end up with the the same numeric ID's or I will have real problems... and it was so long ago I can't really remember what I've done. Is there a way to create a list of all the configuration changes that I made over the years? System has been so reliable, it's been set it, and forget it (home use)

And if 11 can cleanly upgrade from 8.3, that necessarily means that it's able to read the config from 8.3 and convert it into the modern schema.

Is the same code in the running system in the install CD? I don't know... maybe yes, maybe no. If it is, then an import should work, if it isn't then it won't.
If I were the designer and I was looking to make the code base as small/tight as possible, I would make the upgrade code as robust as necessary to be able to upgrade from past versions, but once the upgrade is done, then old config files shouldn't be needed any more.

I can't say for sure whether 11 will let you do what I'm suggesting (and @Ericloewe doesn't think it will, which counts for something), but the underlying ability is built in there somewhere. I might try that out over the weekend, just as a matter of my own curiosity.

It would be great if you had the time to test it... It would save me (and by the sound of things one or two others who have been slow to upgrade) a bit of time.

Thanks again for the input.
 

NASbox

Guru
Joined
May 8, 2012
Messages
622
UPDATE: I wanted to get back to the community with an update on this thread. I haven't had time to do an upgrade on my production system, but I did a quick upgrade test.

I installed v8.3 install on a VM with a tiny pool that had a couple of files on it, and then run a V11 upgrade.

I didn't do rigorous testing, but on quick inspection, the upgrade seemed to work and the data on the pool was intact.

As previously mentioned the manual indicates that an upgrade from 8.x -> 11 is supported.
 

SweetAndLow

Sweet'NASty
Joined
Nov 6, 2013
Messages
6,415
UPDATE: I wanted to get back to the community with an update on this thread. I haven't had time to do an upgrade on my production system, but I did a quick upgrade test.

I installed v8.3 install on a VM with a tiny pool that had a couple of files on it, and then run a V11 upgrade.

I didn't do rigorous testing, but on quick inspection, the upgrade seemed to work and the data on the pool was intact.

As previously mentioned the manual indicates that an upgrade from 8.x -> 11 is supported.
Your data will always be fine. Upgrades don't do anything to your pool. It's your configuration and settings that will get all messed up.

Sent from my Nexus 5X using Tapatalk
 

NASbox

Guru
Joined
May 8, 2012
Messages
622
I'm looking for suggestions as to what to use for (a) boot drive(s).
 

gpsguy

Active Member
Joined
Jan 22, 2012
Messages
4,473
I'm looking for suggestions as to what to use for (a) boot drive(s).

If you have any spare SATA ports, consider using a small SSD. Otherwise, use a pair of flash drives.
 

NASbox

Guru
Joined
May 8, 2012
Messages
622
If you have any spare SATA ports, consider using a small SSD. Otherwise, use a pair of flash drives.

The smallest I can seem to find locally is a 120GB SSD. If I use an SSD, is it OK to put the database (I think that's what it's called) on the the boot drive? With 8.3 the configuration is all on the boot drive and independent of any of the pools. If possible I'd like to keep it that way. Makes it easier to take a pool of line for maintenance or rebuilding.

Any special "tunables" needed to make sure trim is used on the SSD?

On my current system I have a small UFS flash drive that I used for storing scripts--cron jobs and maintenance scripts (It only gets written to if I edit or create a new script). I want this small drive available even if my POOL(s) are off line, and I didn't want my "CUSTOM" usb to get overwritten when I update FreeNAS so I didn't want to embed it in the FreeNAS boot.

What's the best way to accomodate this when I upgrade?


I could create a single flashdrive ZFS pool - Is that OK, or will ZFS write to the drive excessively and cause it to wear out prematurely?

In v11 must the the boot drive still be 100% devoted to the boot image or can I create a "CUSTOM" data set on the boot drive for this content??
 
Last edited:

gpsguy

Active Member
Joined
Jan 22, 2012
Messages
4,473
16GB would be probably be plenty, so 120GB will be fine. :smile: Some users have used a SATA DOM, but they might cost as much as an inexpensive SSD.

The smallest I can seem to find locally is a 120GB SSD

FreeNAS 9.3 and later use ZFS for the boot device. One of the features we didn't have in the pre-9.3 days, is the concept of boot environments (BE). In the 8.x days, often times when you upgraded, you might save your configuration, install the OS on a new flash drive, restore the config. If the update failed, you could revert to the old flash drive. Now, when you do an upgrade, it creates a new BE. If you have a problem, you can roll back to an earlier version. Of course, it's still a good idea to backup your configuration file, like you current do.

Newer versions of FreeNAS have a system dataset. You can read about it here: http://doc.freenas.org/11/system.html#system-dataset

If I use an SSD, is it OK to put the database (I think that's what it's called) on the the boot drive?

I wouldn't recommend it. We see a lot of failures, especially if one puts the system dataset on the boot device. If you want to use a flash drive, I'd go with two. As in the past, restoring from a bad flash drive is easy, especially if you backed up the configuration file. It's even easier, if you can pull out the bad drive and boot off the good one. You can add a mirrored boot device, after the fact, using the webGUI.

I could create a single flashdrive ZFS pool - Is that OK, or will ZFS write to the drive excessively and cause it to wear out prematurely?

You can't use the boot device for general storage. Like 8.x, FreeNAS wants to control what's contained on the device.

Note: UFS is no longer supported.

In v11 must the the boot drive still be 100% devoted to the boot image or can I create a "CUSTOM" data set on the boot drive for this content??
 

gpsguy

Active Member
Joined
Jan 22, 2012
Messages
4,473
btw, if you like having an offline PDF/ePub version of the documentation, you can download them via a link in my signature.
 

danb35

Hall of Famer
Joined
Aug 16, 2011
Messages
13,546
I wouldn't recommend it. We see a lot of failures, especially if one puts the system dataset on the boot device.
Have we seen that on SSD boot devices? Because I don't recall seeing that. USB sticks, sure, but not SSDs.
 
Status
Not open for further replies.
Top