En liten redivisning av driftstörning och dess korrigering i en billig NAS
Bakgrund :
Jag har en NAS i en hp proliant microserver med xigmanas som os.
I dag fick jag ett mail från NAS-en :
This message was generated by the smartd daemon running on:
host name: nynas
DNS domain: hk.ipsec.se
The following warning/error was logged by the smartd daemon:
Device: /dev/ada2, FAILED SMART self-check. BACK UP DATA NOW!
Device info:
Hitachi HUA723020ALA640, S/N:MK0273YGJS164C, WWN:5-000cca-224e6a80a, FW:MK7OAA10, 2.00 TB
For details see host's SYSLOG.
En närmare koll visade att smartctl uppger :
SMART overall-health self-assessment test result: FAILED!
Drive failure expected in less than 24 hours. SAVE ALL DATA.
See vendor-specific Attribute list for failed Attributes.
( smart är en mjukvara som kan polla diskar och leta efter fel )
ZFS hade inte detekterat något ännu :
# zpool status
pool: pool
state: ONLINE
scan: scrub repaired 0 in 0 days 02:14:55 with 0 errors on Thu Dec 1 03:19:55 2022
config:
NAME STATE READ WRITE CKSUM
pool ONLINE 0 0 0
raidz1-0 ONLINE 0 0 0
ada0 ONLINE 0 0 0
ada1 ONLINE 0 0 0
ada2 ONLINE 0 0 0
ada3 ONLINE 0 0 0
errors: No known data errors
( inte konstigt, smart kollar diskarnas egen status, zfs kollar använda diskblock för problem )
Data är alltså fortfarande ok.
Jag letar reda på en 2TB disk, hittade ett par WD green.
För att ersätta disken gör man :
# zpool offline pool ada2
resultatet blir :
# zpool status
pool: pool
state: DEGRADED
status: One or more devices has been taken offline by the administrator.
Sufficient replicas exist for the pool to continue functioning in a
degraded state.
action: Online the device using 'zpool online' or replace the device with
'zpool replace'.
scan: scrub repaired 0 in 0 days 02:14:55 with 0 errors on Thu Dec 1 03:19:55 2022
config:
NAME STATE READ WRITE CKSUM
pool DEGRADED 0 0 0
raidz1-0 DEGRADED 0 0 0
ada0 ONLINE 0 0 0
ada1 ONLINE 0 0 0
15101769609551431426 OFFLINE 0 0 0 was /dev/ada2
ada3 ONLINE 0 0 0
errors: No known data errors
Dvs zfs tar den aktuella disken ur drift.
Här stänger jag av NAS-en då diskhållarna inte är gjorda för hotswap.
Efter att monterat ur ada2 kollar jag serienumret med det som smart rapporterat så att jag tar ur rätt disk.
Skruvar in min WD i diskhållaren, monterat disken och startar upp NAS-en
Efter omboot loggar jag in som root och kollar status :
# zpool status
pool: pool
state: DEGRADED
status: One or more devices has been taken offline by the administrator.
Sufficient replicas exist for the pool to continue functioning in a
degraded state.
action: Online the device using 'zpool online' or replace the device with
'zpool replace'.
scan: scrub repaired 0 in 0 days 02:14:55 with 0 errors on Thu Dec 1 03:19:55 2022
config:
NAME STATE READ WRITE CKSUM
pool DEGRADED 0 0 0
raidz1-0 DEGRADED 0 0 0
ada0 ONLINE 0 0 0
ada1 ONLINE 0 0 0
15101769609551431426 OFFLINE 0 0 0 was /dev/ada2
ada3 ONLINE 0 0 0
errors: No known data errors
En disk saknas. F.ö. fungerar NAS-en som vanligt, filsystem kan monteras av andra maskiner.
Nu är det dags att koppla in bytesdisken, detgörs med ett zpool kommando :
# zpool replace pool 15101769609551431426 ada2
och resultatet visas med zpoll status:
# zpool status
pool: pool
state: DEGRADED
status: One or more devices is currently being resilvered. The pool will
continue to function, possibly in a degraded state.
action: Wait for the resilver to complete.
scan: resilver in progress since Thu Dec 22 11:18:17 2022
67.8G scanned at 3.77G/s, 950M issued at 52.8M/s, 2.33T total
0 resilvered, 0.04% done, 0 days 12:51:01 to go
config:
NAME STATE READ WRITE CKSUM
pool DEGRADED 0 0 0
raidz1-0 DEGRADED 0 0 0
ada0 ONLINE 0 0 0
ada1 ONLINE 0 0 0
replacing-2 OFFLINE 0 0 0
15101769609551431426 OFFLINE 0 0 0 was /dev/ada2/old
ada2 ONLINE 0 0 0
ada3 ONLINE 0 0 0
errors: No known data errors
Lite pessimistiskt gissar ZFS att det kommer att ta 12:51:01 att "synca upp" ( eller som zfs säger "resilver" )
Men syncningen har startat. NAS-en fungerar fortfarande normalt.
Några timmar senare kollar jag :
# zpool status
pool: pool
state: ONLINE
scan: resilvered 596G in 0 days 03:48:40 with 0 errors on Thu Dec 22 15:06:57 2022
config:
NAME STATE READ WRITE CKSUM
pool ONLINE 0 0 0
raidz1-0 ONLINE 0 0 0
ada0 ONLINE 0 0 0
ada1 ONLINE 0 0 0
ada2 ONLINE 0 0 0
ada3 ONLINE 0 0 0
errors: No known data errors
Dvs allt klart.
xigmanas är en "open source" mjukvara och har allt som behövs redan vid installation, smart zfs etc samt
möjligheten att sända email vid problem. xigmanas kan installeras i allt som liknar en PC-hårdvara och är
inte särskilt krävande. Denna NAS går i en cpu :
CPU: AMD Turion(tm) II Neo N54L Dual-Core Processor (2196.39-MHz K8-class CPU)
och 16GB minne
Som systemdisk använder jag något jag hade över :
Samsung SSD 840 EVO 120GB EXT0BB6Q> ACS-2 ATA SATA 3.x device
samt 4 st 2TB diskar numera blandade fabrikat.
När jag stängde av den hade den varit igång ung. 720 dagar.
Rättning den hade varit igång 896 dagar utan omboot . Nu sitter den på ett UPS vilket förklarar uptime.