I recently was reading William Lam's and Duncan Epping's blog posts about the issue of vSphere not correctly reading local SSD drive types on a host. If a SSD is installed behind a RAID controller, the drive type will often show "Non-SSD".
I followed the steps on changing the drive type or as Duncan calls it "Faking an SSD in your Virtualized vSphere lab"!! During this process I received an error message, when running the add rule command.
esxcli storage nmp satp rule add --satp VMW_SATP_LOCAL --device naa.60024e805cb75f001886b896132d69ff --option=enable_ssd
"Error adding SATP user rule: Duplicate user rule found for SATP VMW_SATP_LOCAL"
After doing some digging, I realized that this drive already had a user rule setup. In order to see all user defined rules, run this command.
esxcli storage nmp satp rule list
(You will notice the rules that have be defined by you will be labeled "user")
All I had to do is run the remove command to remove the duplicate user defined rule.
esxcli storage nmp satp rule remove --satp VMW_SATP_LOCAL --device naa.60024e805cb75f001886b896132d69ff
Then you can run the add rule and reclaim commands as before and all will be successful!
esxcli storage core claiming reclaim -d naa.60024e805cb75f001886b896132d69ff
I also found out that you don't have to create a VMFS datastore to run these commands. They worked as available SSD drives as well.