Showing posts with label RAID. Show all posts
Showing posts with label RAID. Show all posts

Jul 28, 2024

HP Z800 Workstation : Update Firmware for LSI 1068E Controller

The LSI 1068E SAS/SATA RAID Controller is an embedded controller available in HP Z800 Workstation system. But the supported RAID level on this controller is RAID-0, RAID-1 and RAID-1E which is not suitable, due to the hardware designed you are not able to do RAID-5.

As such it makes sense to just update the firmware to IT Mode (Initiator-Target Mode) so that you can make use of ZFS that mostly found in TrueNAS, UnRaid, Proxmox VE etc.

The problems is that the LSI 1068E firmware are custom and specially made for HP Z series and there are no download available to change the controller to IT Mode. However someone on the Internet managed to find out that the 1068E chip is the same chip as 3081E (or compatible).


Pre-requisites :-
  1. A 4GB or larger USB Flash drive.
  2. LSI 3081E Firmware and MPT ROM files (https://www.broadcom.com/support/download-search?pg=Legacy+Products&pf=Legacy+Host+Bus+Adapters&pn=LSI+SAS+3081E-R&pa=Firmware&po=&dk=&pl=&l=false).
  3. Rufus Utility (https://rufus.ie/en/).

Steps-By-Steps :-

1. Prepare the USB Flash drive with Rufus, at the "Boot Selection" dropdown, select --> FreeDOS option.



2. Once completed, extract the downloaded firmware file into the USB flash drive, you might want to create a simple and short folder name for it (eg. SAS3918E).

You need to copy "sasflash.exe" from "SASflash_DOS_rel" folder and replace the existing file in the main folder. This is because the existing file in the main folder is for Windows use and not for DOS use, thus replacing the file is IMPORTANT.


3. Then plugin the USB flash drive to HP Z800 Workstation and boot the computer via the USB flash drive. You might need to press --> [F9] key to invoke the "Boot menu selection".


4. Once booted up, type the following command --> sasflash.exe -list

You should see the result something similar as below screenshot. Take note on the "Controller" where the "(B3)" is the type of the controller version. And also the "SAS Address" displayed, you might need this info at a later stage. Write it down or take a screenshot of the information.



5. Next is to run the batch file to update it, type --> hbaFlash.bat

The batch file will prompt you multiple questions, just follow the on-screen instructions. Below are just an example of my run :-


     Welcome to LSI Logic Integrated SAS Flash Utility
     This Utility will upgrade your LSI SAS HBA 


            !!!             WARNING              !!!
            !!! LSI strongly recommends you save !!!
            !!!  the existing firmware and BIOS  !!!
            !!!    currently installed on your   !!!
            !!!          SAS Controller          !!!


     Your existing firmware will be saved as Firmware.fw
     Your existing BIOS will be saved as     BIOS.rom
     in the current directory


     press y or n     (yes or no) ? Y

     Saving old firmware and BIOS

sasflash -ufirmware Firmware.fw
sasflash -ubios BIOS.rom



TO FLASH  3080     press  1
TO FLASH  3081     press  2
TO FLASH  3800     press  3
TO FLASH  3801     press  4
TO FLASH  3442     press  5
TO FLASH  3041     press  6
TO FLASH  3444     press  7
TO FLASH  31601    press  8

TO EXIT press 9

press 1 to 9 ? 2



The HBA is PCI-X or PCIe
For PCI-X press  X or x
For PCIe  press  E or e

To Exit press    Q or q

press X, E or Q ? E



IR or IT Firmware

For Integrated RAID (IR) press   R or r
For Initator-Target (IT) press   T or t

TO EXIT press   q

press R, T or q ? T



Which Chip Version?
For A3  press  1
For A4  press  2
For B0  press  3
For B1  press  4
For B2  press  5
For B3  press  6

To Exit press  7

press 1 to 6 (or 7 to quit) ? 6



You have selected 3081PCI-e T firmware with chip B3

sasflash -f 3081ETB3.fw -b MPTSAS.ROM

OK to Flash  press  F or f

TO EXIT press       q

TO EXIT press       q ? F

sasflash -o -f 3081ETB3.fw -b MPTSAS.ROM



6. Once the Flash have completed, type --> sasflash.exe -list 
to confirm the results of the flash, it should have the results as per screenshot below.



7. If for some reasons, the "SAS Address" displaying an error or have a "xxxxxxx-x-xxxx-xxxx" as a results, then you will need to change the address manually.

Type --> sasflash.exe -o -sasadd [your SAS Address]

Example:
sasflash.exe -o -sasadd 5001458007d1e026


8. Type --> sasflash.exe -list to confirm the changes of the "SAS Address", if the results is the same as per mine then you are good to go.


9. Reboot the computer and unplug the USB flash drive. During the normal boot-up process, you should see the new firmware version, new BIOS version and the new Mode displayed during the initialization of the HDDs.


!!! HAPPY COMPUTING !!!

Mar 9, 2023

Hardware : RAID (Redundant Array Independent Disk)

Recently a friend of mine inquired about RAID (Redundant Array Independent Disk) technology, something just pops into my mind that I should write about RAID for a better understanding and maybe useful in future as references too.

There are many articles about RAID in the internet but I will try to explain this in a simple to understand summary of it.

Note: This is NOT FOR BEGINNERS.

I'm not going to do a full explanation, instead I will just focuses on the most common RAID Level that are available today (as of writing).


(A) RAID 0 - Striping.

RAID Level 0, or commonly known as "Striping" is a performance oriented without any parity drive. There are no overhead and both Read & Write operations is very fast. This is usually configured into high performance Workstation such as Video Editing, Photography etc. and doesn't required any redundancy. With SSD in place, the performance is greatly increased.

Minimum required HDD = 2 units of the same capacity.

Data are written into the Array by splitting it and then saved into both HDDs hence the word striping. But RAID 0 doesn't have parity nor redundant, if 1 of the drive failed then data loss eminent and data recovery will be a hassles.




(B) RAID 1 - Mirroring.

RAID Level 1 or commonly called "Mirroring" is usually found on more advanced computer but nowdays even a consumer computer have such capability. This is most basic level of redundancy and usually used in small server or storing important data such as accounting database.

The data is replicated and saved into both HDDs thus making it redundant.

Minimum required HDD = 2 units of the same capacity.

RAID 1 have relatively good Read and Write speed (the same performance of a single HDD).




(C) RAID 5 - Striping with Parity.

RAID Level 5 is usually found in medium to big size server configuration. Data are written as striped block to all HDDs and 1 HDD will be as a parity checksum.

With parity drive, computer can re-calculate the data of one HDD and re-build the array without any data loss and with accuracy. RAID 5 can only withstand a single drive failure and mostly used together with an Array Controller with built-in cache memory to increase the Write speed.

Minimum required HDD = 3 units of the same capacity.

Maximum supported HDD = 16 units only.



And just to remind... RAID IS NOT BACKUP !!!

The purpose of RAID is make data reliable, redundant and accurate (with exception of RAID 0). It is not backup, a backup should on another storage (eg. External HDD or Tape) and preferably on another location with multiple generations too.


!!! HAPPY COMPUTING !!!