My Out Of Control Build


Recommended Posts

I've had an unraid build for a few years and it's grown quite a lot.  It started out small with left over hardware but has grown out of control.  I'm at 98 TB usable now and running out of space pretty quickly. Here's my current specs:


OS Current: 6.8.2
CPU: Intel i5-3470
Motherboard: Gigabyte GA-Z77MX-D3H
RAM: 32GB G.SKILL Ares Series 32GB (4 x 8GB) DDR3 1333
Case: Antec Twelve Hundred V3 Black Steel
Cage: Cooler Master 4-in-3 Device Module Cage
Power Supply: CORSAIR HX Series HX750 750W
NIC: Intel EXPI9301CTBLK

 

Drive Controllers: 2x SUPERMICRO AOC-SASLP-MV8 PCI-Ex4
Cables: 4x 3ware CBL-SFF8087OCF-10M

 

Drive Controller: LSI Logic SAS9200-8E 8PORT (To DAS)
DAS: Lenovo 70F10000UX THINKSERVER SA120

 

Cache:

3x Samsung SSD 850 EVO 1TB

 

Drives:

12x WD Red 3TB NAS
7x WD Red 6TB NAS
6x Seagate 4TB Desktop Drives
2x WD Gold 4TB Enterprise

 

USB for Unraid:
Cruzer 8 GB

 

Unassigned Drives:
1x Intel® SSD DC S3700 400GB (passthrough / QVM)
1x 2TB WD My Passport


I have too many random drives, but looking to consolidate the drives into bigger drives.  I'm already looking to get larger drives to replace one drive that is going bad in the array.

 

I use the unassigned 2TB WD USB drive to sync my most critical items to.  It's sort of my bug out drive if anything happens.  I've got pretty much my whole array sync'ed to the cloud as a backup.

 

signal-2020-06-11-094900.thumb.jpg.2ec3820fb8356cbeaeff2d2922b1a6e5.jpg

2020-06-11_9-51-49.thumb.png.1f40bde303f35db000e94caefc90e220.png

2020-06-11_9-52-58.thumb.png.203b8beb6b4f709db3fa8920be6c66f8.png

2020-06-11_9-55-48.thumb.png.594e215472e819e82a282773d5f9e155.png

2020-06-11_9-55-05.thumb.png.0eb965c3dde1c86274a69f33d8b721e6.png

2020-06-11_9-58-17.thumb.png.c01491549c301aa785ecdba4f70eed89.png

2020-06-11_9-50-13.thumb.png.d129822a503a98ba6afab0925f3f6066.png

 

 

Edited by jwolfe
Add pictures
  • Like 1
  • Thanks 1
Link to comment
  • 3 weeks later...
  • 3 weeks later...
On 7/12/2020 at 10:48 AM, CS01-HS said:

Can you post your grafana drive spin-up section so I can steal it? :)

Sure. Here are the two scripts I use to take drive temp and also to see if the disk is spun up.

 

You're going to need curl for this to work.  This is for drive temp. Replace DBURL with your influx IP address.  And replace DISK_ARRAY and DESCRIPTION with your drives.

#!/usr/bin/bash

DBURL=http://192.168.X.X:8086
DBNAME=telegraf
DEVICE="UNRAID"
CURDATE=`date +%s`

# Todo: Need to parse /var/local/emhttp/disks.ini in the future
DISK_ARRAY=( sdl sdj sdz sdy sdu sdx sdv sdw sdt sdad sdaa sdab sdac sdag sds sdae sdc sdg sdk sdf sdaf sdn sde sdm sdh sdi sdd sdp sdq sdr )
DESCRIPTION=( Parity1 Parity2 Disk1 Disk2 Disk3 Disk4 Disk5 Disk6 Disk7 Disk8 Disk9 Disk10 Disk11 Disk12 Disk13 Disk14 Disk15 Disk16 Disk17 Disk18 Disk19 Disk20 Disk21 Disk22 Disk23 Disk24 Disk25 Cache1 Cache2 Cache3 )

# Added -n standby to the check so smartctl is not spinning up my drives
#
i=0
for DISK in "${DISK_ARRAY[@]}"
do
smartctl -n standby -A /dev/$DISK | grep "Temperature_Cel" | awk '{print $10}' | while read TEMP
do
        echo ${DISK} : ${TEMP}
        curl -is -XPOST "$DBURL/write?db=$DBNAME" --data-binary "DiskTempStats,DEVICE=${DEVICE},DISK=${DESCRIPTION[$i]} Temperature=${TEMP} ${CURDATE}000000000" >/dev/null 2>&1
done
((i++))
done

 

This is for drive spinup:

#!/usr/bin/bash

DBURL=http://192.168.X.XX:8086
DBNAME=telegraf
DEVICE="UNRAID"
CURDATE=`date +%s`

# Todo: Need to parse /var/local/emhttp/disks.ini
DISK_ARRAY=( sdl sdj sdz sdy sdu sdx sdv sdw sdt sdad sdaa sdab sdac sdag sds sdae sdc sdg sdk sdf sdaf sdn sde sdm sdh sdi sdd sdp sdq sdr )
DESCRIPTION=( Parity1 Parity2 Disk1 Disk2 Disk3 Disk4 Disk5 Disk6 Disk7 Disk8 Disk9 Disk10 Disk11 Disk12 Disk13 Disk14 Disk15 Disk16 Disk17 Disk18 Disk19 Disk20 Disk21 Disk22 Disk23 Disk24 Disk25 Cache1 Cache2 Cache3 )

i=0
for DISK in "${DISK_ARRAY[@]}"
do
hdparm -C /dev/$DISK | grep 'state' | awk '{print $4}' | while read STATUS
do
        echo ${DISK} : ${STATUS} : ${DESCRIPTION[$i]}
        if [ ${STATUS} = "standby" ]
        then
                curl -is -XPOST "$DBURL/write?db=$DBNAME" --data-binary "diskStatus,DEVICE=${DEVICE},DISK=${DESCRIPTION[$i]} Active=0 ${CURDATE}000000000" >/dev/null 2>&1
        else
                curl -is -XPOST "$DBURL/write?db=$DBNAME" --data-binary "diskStatus,DEVICE=${DEVICE},DISK=${DESCRIPTION[$i]} Active=1 ${CURDATE}000000000" >/dev/null 2>&1
        fi
done
((i++))
done

 

Link to comment
42 minutes ago, jwolfe said:

Sure. Here are the two scripts I use to take drive temp and also to see if the disk is spun up.

Thanks, I meant the Grafana pane settings, maybe a screenshot of the query and customizations if you don't mind?

 

I'm collecting the relevant data with the HDDTemp docker and have everything displaying properly except for spin-up which I couldn't figure out.

 

1802480241_ScreenShot2020-07-27at12_37_50PM.thumb.png.be17a62fee1917c295429edc1f72af03.png

  • Like 1
Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.