So this tells us that the pool is not suspending because of any errors.
The next thing to look at is whether or not the I/Os are just not
returning. Are you able to generate a crash dump?
Here are some other things to try:
# echo "::stacks -m zfs" | mdb -k > zfs_threads.out
# echo "::stacks -c spa_sync" | mdb -k
# echo "::zio_state -r" | mdb -k > zios.out
- George
On 12/11/12 6:15 AM, Gabriele Bulfon wrote:
I got the problem again today, I had moved the iscsi to the Areca,
left only CIFS on the adaptec card,
and I have only CIFS not running. Probably this is a problem of the
adaptec card itself, but I don't know
if it's the combination of the illumos kernel + this card.
I have no signal of error anywhere, but zfs command not responding on
the filesystem over the adaptec.
Even df -h do note returns.
I tried the "walk spa" command during failure, but output the same:
sonicle@xstorage:~# echo "::walk spa | ::print spa_t spa_name
spa_suspended" | mdb -k
spa_name = [ "adaptec" ]
spa_suspended = 0
spa_name = [ "areca" ]
spa_suspended = 0
spa_name = [ "rpool1" ]
spa_suspended = 0
------------------------------------------------------------------------
*Da:* George Wilson <[email protected]>
*A:* Gabriele Bulfon <[email protected]>
*Cc:* [email protected]
*Data:* 27 novembre 2012 15.10.45 CET
*Oggetto:* Re: [discuss] Again: illumos based ZFS storage failure
Was this data you provided below from a time when the server was
hung? If not, try running this next time you see the issue.
- George
On 11/23/12 9:44 AM, Gabriele Bulfon wrote:
Hi,
here is the output. Looks sane:
sonicle@xstorage:~# echo "::walk spa | ::print spa_t spa_name
spa_suspended" | mdb -k
spa_name = [ "adaptec" ]
spa_suspended = 0
spa_name = [ "areca" ]
spa_suspended = 0
spa_name = [ "rpool1" ]
spa_suspended = 0
------------------------------------------------------------------------
*Da:* George Wilson <[email protected]>
*A:* [email protected]
*Cc:* Gabriele Bulfon <[email protected]>
*Data:* 23 novembre 2012 14.46.55 CET
*Oggetto:* Re: [discuss] Again: illumos based ZFS storage failure
It's possible that the adaptec pool has suspended because of
some error on the storage. Can you run the following as root
and provide the output:
echo "::walk spa | ::print spa_t spa_name spa_suspended" | mdb -k
- George
On 11/23/12 5:43 AM, Gabriele Bulfon wrote:
Hi, I got the same problem this morning.
Thanks to Alasdair suggestion, I commented out the zfs
"quota" command from /etc/profile, so I
could enter the bash prompt and investigate.
As a summary of the problem:
- 3 zfs pools (rpool, areca, adpatec) each on a different
controller: rpool as a mirror of internal disks, areca as
raidz on 7 sata disks of the areca controller plus half
space of SD as zlog, adaptec as raidz on 8 disks of the
adaptec controller plus half space of SD as zlog.
- areca space is used for NFS sharing to unix servers, and
always responds.
- adaptec space is used for CIFS sharing and an iScsi volume
for the Windows PDC.
Then we have a vmware server with an iscsi resource store,
given to the virtualized PDC as a secondary disk for
sqlserver data and some more. PDC boots directly from the
vmware server disks.
At once, both CIFS from the storage and PDC iscsi disk do
not respond.
CIFS fails probably because the PDC AD is not responding,
probably busy checking the iscsi disk, in a loop.
Going into the storage bash:
- zpool status shows everything find, every pool is correct.
- /var/adm/messages shows only smbd time outs with the PDC,
no hardware or zfs problem.
- at the time of failure, fmdump -eVvm showed same
previously found errors, 3 days earlier
- after rebooting all the infrastructure, fmdump -eVvm
showed same previously found errors around the time of
rebooting the storage, not at the time of the experienced
failures. We find one stated error for each disk of the
adaptec controller (cut & paste at the end)
- a zfs list areca/* showed all the areca filesystems
- a zfs list adaptec blocked never returning
- any access to the zfs structure of the adaptec would block
- as suggested by Alasdair, I ran savecore -L (I checked to
have the dump device and with enough space)
- the savecore command ran for sometime until reaching 100%,
then blocked never returning.
- I could not "init 5" the storage, never returning
- I tried sending the poweroff signal with the power button,
console showed its intention to power off, but never did it
- I forced powered off via the power button.
- Once everything was powered on again, everything ran fine.
- I looked for the dump into /var/crash, but I had no
/var/crash at all.
How can I investigate further this problem?
Do I have any chance to find the savecore output in the dump
device, even if I have not /var/crash?
Here is the fmdump output:
Nov 23 2012 09:25:04.422282821
ereport.io.scsi.cmd.disk.dev.uderr
nvlist version: 0
class = ereport.io.scsi.cmd.disk.dev.uderr
ena = 0x2b08d604c300001
detector = (embedded nvlist)
nvlist version: 0
version = 0x0
scheme = dev
device-path =
/pci@0,0/pci8086,3595@2/pci8086,370@0/pci9005,2bc@e/disk@7,0
devid = id1,sd@TAdaptec_3805____________8366BAF3
(end detector)
devid = id1,sd@TAdaptec_3805____________8366BAF3
driver-assessment = fail
op-code = 0x1a
cdb = 0x1a 0x0 0x8 0x0 0x18 0x0
pkt-reason = 0x0
pkt-state = 0x1f
pkt-stats = 0x0
stat-code = 0x0
un-decode-info = sd_get_write_cache_enabled: Mode Sense
caching page code mismatch 0
__ttl = 0x1
----------------------------------------------------------------------------------
Da: Alasdair Lumsden <[email protected]>
A: [email protected]
Data: 10 novembre 2012 14.37.20 CET
Oggetto: Re: [discuss] illumos based ZFS storage failure
I haven't read the whole thread, but the next time it
happens you'll
want to invoke a panic and make the dump file available.
You'll want to
ensure that:
1. Multithreaded dump is disabled in /etc/system with:
* Disable MT dump
set dump_plat_mincpu=0
Without this there is a risk of your dump not saving
correctly.
2. That you have a dump device and that it's big enough
to capture your
kernel size (zfs set volsize=X rpool/dump)
3. That dumpadm is happy and set to save cores etc:
dumpadm -y -z on -c kernel -d /dev/zvol/dsk/rpool/dump
There's lots of good info here:
http://wiki.illumos.org/display/illumos/How+To+Report+Problems
You can also inspect things with mdb while the system is
up, but if it's
a production system normally you want to get it rebooted
and into
production again ASAP. So in that situation, you can
take a dump of the
running system with:
savecore -L
One thing to keep in mind is /etc/profile runs
/usr/sbin/quota, which
can screw over logins when the zfs subsystem is unhappy.
I really think
it should be removed by default since on most systems
quotas aren't even
used. So comment it out - we do so on all our systems.
This will give
you a better chance of logging in when things go wrong.
I think there's a way to SSH in bypassing /etc/profile
but I can't
remember what it is - perhaps someone can chime in.
Good luck. Centralised storage is difficult to do and
when it goes wrong
everything that depends on it goes down. It's a "all
your eggs in one
giant failbasket". Doing it homebrew with ZFS is cost
effective and can
be fast, but it is also risky. This is why there are
companies like
Nexenta out there with certified combinations of
hardware and software
engineered to work together. This extends to validating
firmware
combinations of disks/HBAs/etc.
Cheers,
Alasdair
-------------------------------------------
illumos-discuss
Archives: https://www.listbox.com/member/archive/182180/=now
RSS Feed:
https://www.listbox.com/member/archive/rss/182180/21175541-02f10c6f
Modify Your Subscription: https://www.listbox.com/member/?&
Powered by Listbox: http://www.listbox.com
*illumos-discuss* | Archives
<https://www.listbox.com/member/archive/182180/=now>
<https://www.listbox.com/member/archive/rss/182180/21175546-6311bfb2>
| Modify
<https://www.listbox.com/member/?&>
Your Subscription [Powered by Listbox]
<http://www.listbox.com>
-------------------------------------------
illumos-discuss
Archives: https://www.listbox.com/member/archive/182180/=now
RSS Feed: https://www.listbox.com/member/archive/rss/182180/21175430-2e6923be
Modify Your Subscription:
https://www.listbox.com/member/?member_id=21175430&id_secret=21175430-6a77cda4
Powered by Listbox: http://www.listbox.com