Discussion:
upgrade of an iSCSI zpool mirror
(too old to reply)
Julien Cigar
2018-06-11 13:04:07 UTC
Permalink
Hello,

We have a "low-cost" active/passive HA ZFS based filer (with
NFS4/SMB/... on top) which consist of two tiny HP Proliant DL20
with 2 x 2 To disks in each. On the PASSIVE node two slices are exported
through iSCSI, and on the ACTIVE node a zpool mirror (named "data") has
been created over two local slices and the two iSCSI slices.
Failover from ACTIVE to PASSIVE is made through CARP and a failover
script, while failover from OLD ACTIVE (NOW PASSIVE) to NEW ACTIVE (now
ACTIVE) is done manually (the failover script explicitely change the
advskew to avoid any possible side effects)

It works well, but those are still running FreeBSD 10.3 and I'd like to
upgrade to 11.x. During the upgrade process the pool should be read-only
available. I planned to do something like:

with F1 being the (current) ACTIVE node and F2 being the (current)
PASSIVE node:

- stop NFS/... services on F1
- zpool export data on F1
- switch CARP roles
- F1 is now the PASSIVE node and F2 is now the ACTIVE node
- on F2: zpool import -o readonly=on data
- start NFS/... services on F2
- then start to upgrade of F1

once the upgrade of F1 is finished:
- stop NFS/... services on F2
- zpool export data on F2
- switch CARP roles
- F2 is now the PASSIVE node and F1 is now the ACTIVE node
- on F1: zpool import data
- on F1: zpool detach data <the two iSCSI disks from F2>
- start NFS/... services on F1

then start the upgrade of F2, once finished re-attach the two iSCSI
disks from F2 to the data pool on F1, and run a zpool scrub

Has anyone ever done something similar and/or does it sound good to you?

Thanks,
Julien
--
Julien Cigar
Belgian Biodiversity Platform (http://www.biodiversity.be)
PGP fingerprint: EEF9 F697 4B68 D275 7B11 6A25 B2BB 3710 A204 23C0
No trees were killed in the creation of this message.
However, many electrons were terribly inconvenienced.
Frank Leonhardt
2018-06-14 13:53:25 UTC
Permalink
Post by Julien Cigar
Hello,
We have a "low-cost" active/passive HA ZFS based filer (with
NFS4/SMB/... on top) which consist of two tiny HP Proliant DL20
with 2 x 2 To disks in each. <snip>
It works well, but those are still running FreeBSD 10.3 and I'd like to
upgrade to 11.x. During the upgrade process the pool should be
read-only
Has anyone ever done something similar and/or does it sound good to you?
I've tried various combinations, but not that one I'm afraid. I'm not a
fan of iSCSI except as a work-around, but FWIW I can't spot anything
wrong with your plan, but I'm not sure where NFS fits in.

You will probably want to upgrade the zpools at some point (optional).

I've yet to get a fully redundant ZFS implementation up and running, as
other solutions have been more useful - such as sending incremental
datasets to a backup at a different location. I've also run it on top of
HAST, but it scared me.

One day I plan to look at heartbeat/pacemaker (available in ports/net),
which is supposed to be the thing for it.

In your situation, I think I'd proceed as follows:

Set up a spare machine (e.g. desktop).
Do a zfs send <zoot-dataset> to it.
Turn off samba/nfs
Do a zfs send <zoot-dataset> of any last minute changes.
Make the spare machine live, but read-only.

They relax and do whatever I wanted to reconfigure the rack servers.

Just a thought!
Julien Cigar
2018-06-14 14:28:14 UTC
Permalink
Post by Frank Leonhardt
Post by Julien Cigar
Hello,
We have a "low-cost" active/passive HA ZFS based filer (with
NFS4/SMB/... on top) which consist of two tiny HP Proliant DL20
with 2 x 2 To disks in each. <snip>
It works well, but those are still running FreeBSD 10.3 and I'd like to
upgrade to 11.x. During the upgrade process the pool should be read-only
Has anyone ever done something similar and/or does it sound good to you?
I've tried various combinations, but not that one I'm afraid. I'm not a
fan of iSCSI except as a work-around, but FWIW I can't spot anything
wrong with your plan, but I'm not sure where NFS fits in.
You will probably want to upgrade the zpools at some point (optional).
After some exchanges with people smarter than me in this area I got the
confirmation that "There's no issue with the upgrade path." :)
Post by Frank Leonhardt
I've yet to get a fully redundant ZFS implementation up and running, as
other solutions have been more useful - such as sending incremental
datasets to a backup at a different location. I've also run it on top of
HAST, but it scared me.
Yes, in fact all of this started after a question I started on
freebsd-fs@ some years ago:
https://lists.freebsd.org/pipermail/freebsd-fs/2016-June/023456.html

To my suprise I had a lot of answers and it was an interresting
discussion, you may want to check the whole thread if interested.
Post by Frank Leonhardt
One day I plan to look at heartbeat/pacemaker (available in ports/net),
which is supposed to be the thing for it.
Yep, I had an interresting exchange on IRC (#freebsd freenode) about
it some days ago. It would be better than using a CARP only based
solution to failover (which is quite easy to split brain).
Post by Frank Leonhardt
Set up a spare machine (e.g. desktop).
Do a zfs send <zoot-dataset> to it.
Turn off samba/nfs
Do a zfs send <zoot-dataset> of any last minute changes.
Make the spare machine live, but read-only.
As a security measure I have already a third "replication machine"
which zrep from the master, I could make the pool read-only from it
Post by Frank Leonhardt
They relax and do whatever I wanted to reconfigure the rack servers.
Just a thought!
Thanks :)
Post by Frank Leonhardt
_______________________________________________
https://lists.freebsd.org/mailman/listinfo/freebsd-questions
--
Julien Cigar
Belgian Biodiversity Platform (http://www.biodiversity.be)
PGP fingerprint: EEF9 F697 4B68 D275 7B11 6A25 B2BB 3710 A204 23C0
No trees were killed in the creation of this message.
However, many electrons were terribly inconvenienced.
Loading...