Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 29 Oct 2015 07:42:57 +0100
From:      Ben RUBSON <ben.rubson@gmail.com>
To:        fs@freebsd.org
Subject:   Re: iSCSI/ZFS strangeness
Message-ID:  <B69E4406-8AD4-4249-87DB-F2DFCE9BB5C2@gmail.com>
In-Reply-To: <B09FE8F0-F463-44C9-896C-CA55305113CE@nevada.net.nz>
References:  <20151029015721.GA95057@mail.michaelwlucas.com> <B09FE8F0-F463-44C9-896C-CA55305113CE@nevada.net.nz>

index | next in thread | previous in thread | raw e-mail


> Le 29 oct. 2015 à 03:26, Philip Murray <pmurray@nevada.net.nz> a écrit :
> 
> 
>> On 29/10/2015, at 2:57 PM, Michael W. Lucas <mwlucas@michaelwlucas.com> wrote:
>> 
>> Hi,
>> 
>> I'm experimenting with iSCSI HA with FreeBSD 10.2 amd64. I know people
>> do this sort of thing, but I can't figure out what I'm missing. (Most
>> of the tutorials cover HAST instead). I suspect the real problem is
>> "Lucas doesn't know the right search terms."
>> 
>> The goal is to make an iSCSI-based ZFS pool that's available to two
>> separate hosts, and remains available even if one of the iSCSI servers
>> fails. Instead, the pool hangs when either of the iSCSI servers goes
>> down.
> 
> I’m no expert and have never used iSCSI and FreeBSD before, but I think you might 
> want to look at the kern.iscsi.fail_on_disconnection sysctl.
> 
> man 4 iscsi
> 
> That means the devices will fail instead of hang, and ZFS might decide to mark those 
> devices as faulted instead of waiting for them to respond.

Hi,

Yes, kern.iscsi.fail_on_disconnection=1 in sysctl.conf will do the trick.
In addition, you can tune the following to minimize the impact / freeze when iSCSI fails :
kern.iscsi.ping_timeout=10
kern.iscsi.iscsid_timeout=10
kern.iscsi.login_timeout=10

In addition, in ctl.conf, perhaps you should use one target instruction per disk.
I began with all my disks/luns into a unique target configuration, but when a disk fails and you replace it, you need to refresh the iSCSI configuration using iscsictl -M. At this moment you will loose the connection to all disks, leading into many ZFS devices failed...
So I think a target per disks is better, then you only refresh the dead target : iscsictl -M -i <the_target_session>

And last thing, thank you very much for your quality books, a must-have :)

Best regards,

Ben

help

Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?B69E4406-8AD4-4249-87DB-F2DFCE9BB5C2>