On 2012-12-19 07:01, Christopher J. Ruwe wrote:
On Mon, 17 Dec 2012 16:00:06 -0600
dweimer <dwei...@dweimer.net> wrote:
I recently migrated a machine that was built on a VM to physical
hardware using the zfs send -R option against a snapshot of its root
zfs setup. I went from smaller drives to larger, both using a
mirrored zpool. However the devices were different, the device IDs
on the VM were da0 and da1, the device IDs on the physical hardware
were ada0 and ada1. I had used labels when creating the gpt layout
to plan for this. And all worked great, in fact it was the fastest I
have ever converted a virtual machine to a physical machine.
After I finished though, I got curious, was it actually necessary
for me to mount the new boot zfs partition while running on the live
cd and copy the zpool.cache file I had created when creating the
zpool or would have the existing cache file that would have been
included in the zfs send contained the right information? As the
zpool was pointed at the gpt label devices, or was the fact that the
size changed enough difference that copying the file was indeed
necessary?
I fear you might be mixing things up here. You did a zfs-migrate, not
a
zpool-migrate, you created a new zpool and received the datasets on
that
new zpool, even if the zpool names were the same.
The function of zpool.cache is to tell the OS about available
device-zpool combinations. Without, the OS does not know which zpools
are available and accordingly cannot mount the root-ZFS passed in the
vfs.root.mountfrom directive in loader.conf, which is why you needed
to
copy the zpool.cache and, if you changed the zpool-names, needed to
adapt loader.conf.
There are plans to change this behaviour, as it is deemed superfluous
at
least in the case of disks, but I do not know how much that has
progressed so far.
http://lists.freebsd.org/pipermail/freebsd-fs/2012-October/015328.html
Hope I could shed some light on that issue, although I am by no means
an
expert on this.
Cheers,
Yes that did explain it, and I did keep the zpool the same name to
avoid having to change the loader.conf. This also does answer other
things as well for me. In that this should be able to be done from a
mirror to a zraid, or single disk pool. But as you have pointed out the
migration is done on the ZFS data layer that is on top of the zpool
layer, so it shouldn't matter what the underlying zpool raid level is.
And likewise wouldn't matter if the hardware devices behind it changed
even if I hadn't used gpt labels to configure the zpool.
Good information to know going forward, thanks for the explanation.
--
Thanks,
Dean E. Weimer
http://www.dweimer.net/
_______________________________________________
freebsd-questions@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-questions
To unsubscribe, send any mail to "freebsd-questions-unsubscr...@freebsd.org"