It has already been mentioned in other questions that Red Hat recommends against using mdadm RAID 1 on SSD.
Red Hat also warns that software RAID levels 1, 4, 5, and 6 are not recommended for use on SSDs. During the initialization stage of these RAID levels, some RAID management utilities (such as mdadm) write to all of the blocks on the storage device to ensure that checksums operate properly. This will cause the performance of the SSD to degrade quickly.
I understand the reasoning behind this. However, I suspect this was written before the arrival of mdtrim, which is designed specifically for mdadm RAID 1. Does that sidestep the issue? If my understand of TRIM is correct then I believe it does but I'm not sure, hence I'm asking.
TRIM may not be right for me though. I need this for a production system and mdtrim looks experimental at best. More importantly, I require strong encryption and research has shown that TRIM reveals a little too much by highlighting which parts of the drive are actually in use. Is there any way to avoid the performance issue and still have strong encryption? I was wondering if it was possible to do a partial TRIM, freeing up some of the blocks for performance but not so many as to give too much away.
One suggestion I saw was to only use around 80% of each disk so that after mdadm does its initial check, there are still a handful of blocks left unused. But wouldn't these blocks be the first to be used on subsequent use of the disk? They would still be used up fairly quickly and then I'd be no better off, right?