I got 2 used intel ssds to improve VM performance and to reduce power usage
Check SMART attributes
- General Health
- smartctl -H /dev/sdX
- Wearout
- 100 is best aka no wear (https://www.solidigm.com/support-page/product-doc-cert/ka-00033.html)
- smartctl -A /dev/sdX | grep Wearout
- General
- smartctl -A /dev/sdX
- Lucky for me my drives came at 89% and 90% life left with ~60K hours and ~1PiB of Host writes out of the Intel spec (pdf) of 5.3PB
Firmware Update Adventure
Intel Memory and Storage Tool CLI
My first attempt was to use Intel cli to update the firmware, but it did not work.
- Installation
- https://www.intel.com/content/www/us/en/download/19520/intel-memory-and-storage-tool-cli-command-line-interface.html
- mkdir intelmas && cd intelmas
- wget https://downloadmirror.intel.com/822151/Intel_MAS_CLI_Tool_Linux_2.5.zip
- unzip Intel_MAS_CLI_Tool_Linux_2.5.zip
- dpkg -i intelmas_2.5.0-0_amd64.deb
- Usage
- https://forums.servethehome.com/index.php?threads/intelmas-quick-guide.36165/
- intelmas show -intelssd
- Solidigm: This drive is no longer supported.
- intelmas show -a -intelssd 4
- EnduranceAnalyzer : Drive is not an Intel SSD.
- unfortunately, it listed the SSDs as not supported, but it did point me Solidigm
Solidigm
My second attempt was to use Solidigm cli to update the firmware, but it did not work through the raid controller and had to be attached to a different SATA controller.
- Installation
- https://www.solidigm.com/support-page/drivers-downloads/ka-00085.html
- mkdir solidigm && cd solidigm
- wget https://sdmsdfwdriver.blob.core.windows.net/files/kba-gcc/drivers-downloads/ka-00085/sst--1-13/sst-cli-linux-deb--1-13.zip
- unzip sst-cli-linux-deb--1-13.zip
- dpkg -i sst_1.13.288-0_amd64.deb
- Usage
- https://sdmsdfwdriver.blob.core.windows.net/files/kba-gcc/drivers-downloads/ka-00085/sst--1-13/solidigm-storage-tool-cli-user-guide-727329-010us.pdf
- sst show -ssd
- sst show -a -ssd <index> | grep Firmware
- Firmware Update
- sst load -ssd <index>
- Status : Firmware update failed.
- If your drives are behind a RAID card, you may have to remove them for updating.
- Firmware Update using a USB to SATA enclosure
- sst show -ssd
- Unfortunately, the drive no longer appeared :-(
- Firmware Update using Windows with USB to SATA enclosure
- The drive appeared and would run tests
- However attempting to update the firmware resulted in an error and the USB port being disabled until the PC was rebooted
- Firmware Update using a JMB585 PCIe to SATA card, a SATA to eSATA bracket, and an external eSATA enclosure
- Finally was able to update the firmware
- Notes:
- the firmware did not jump to the latest version and had to be updated incrementally
- G2010140 -> G2010160 -> G2010170
- the firmware update requested a reboot after installing so I did that
- sst show -ssd
- sst show -a -ssd <index> | grep Firmware
- sst load -ssd <index>
- Status : Firmware updated successfully. Please reboot the system.
Replacing the existing 1.2 TB drives
- Setup the partitions
- I used my rpool mirror instructions from here but made the following changes
- removed the last-lba line
- removed the start from all lines
- removed the size from the final partition
- don't run the zpool attach
- Copy the rpool data
- I am following the wizardry provided here
- Add a mirror of the new disks to form a striped mirror
- zpool add rpool mirror /dev/disk/by-id/ata-INTEL_SSDSC2BX800G4_<SERIAL1>-part3 /dev/disk/by-id/ata-INTEL_SSDSC2BX800G4_<SERIAL2>-part3
- Check the mirror names and size
- zpool status rpool
- zpool list rpool
- Remove the old mirror
- zpool remove rpool mirror-0
- Check for when "Evacuation of mirror" is done
- zpool status rpool
- remove: Removal of vdev 0 copied 10.7G in 0h1m
- Check new size
- zpool list rpool
- Shutdown and remove the drives and reboot to make sure everything is working as intended
- Remove the old drives from proxmox-boot-tool
- proxmox-boot-tool status
- proxmox-boot-tool clean
- proxmox-boot-tool status
- Remove all data from old drives
- put the drives back in
- wipe them using your favorite tool (eg. shred or dd)
- dd if=/dev/zero of=/dev/sdX -bs=1M status=progress
- dd if=/dev/urandom of=/dev/sdX -bs=1M status=progress
Conclusion
I saw a 7-8W drop in idle power usage and an increase in responsiveness.
Appendix
Sources
- http://zmodemz.blogspot.com/2024/04/r730xd-server-part-1-initial-build.html
- https://askubuntu.com/questions/1231355/how-can-i-shrink-a-zfs-volume-on-ubuntu-18-04
- https://theorangeone.net/posts/proxmox-boot-drive-replacement/
No comments:
Post a Comment