Here’s how to set up relatively cheap redundant iSCSI storage on Linux. The redundancy is achieved using LVM mirroring, and the storage servers consist of commodity hardware, running the OpenFiler Linux distribution, which expose their disks to the clients using iSCSI over Ethernet. The servers are completely separate entities, and the purpose of this mirroring is to keep the logical volumes available, even while one of the storage servers is down for maintenance or due to hardware failure.
Ultimately the disks of the iSCSI target servers will show up as normal SCSI disks on the client (/dev/sdb, /dev/sdc, …). The data will be moved across the network transparently. It is preferable to use multiple gigabit network interface cards on both the initiator and the target, and bond them together for reliability and speed gain (or use Device Mapper Multipath). A separate VLAN for iSCSI traffic is recommended for security and speed. By default, the traffic is not encrypted so your disk blocks can easily be sniffed using tcpdump.
Continue reading Redundant iSCSI storage for Linux
Getting the HP Array Configuration Utility (ACU) and the Array Diagnostic Utility (ADU) for Linux to work was non-trivial. It does not seem to be supported anymore, but I managed to get it working on CentOS 5 running on an HP ProLiant DL185 G5.
Continue reading HP Array Configuration and Diagnostic Utilities on Linux
The Subsystem Device Driver [SDD] is a pseudo device driver designed to support the multipath configuration environments in the IBM TotalStorage Enterprise Storage Server, the IBM TotalStorage DS family, the IBM SystemStorage SAN Volume Controller. It resides in a host system with the native disk device driver and provides the following functions:
– Enhanced data availability
– Dynamic I/O load-balancing across multiple paths
– Automatic path failover protection
– Concurrent download of licensed internal code
– Path-selection policies for the host system
Continue reading IBM SDD driver troubleshooting on Linux
A RAID array is a bunch of disks used together in co-operation to create a redundant storage facility. Hard drives are mechanical devices with moving parts, which makes them prone to failure. You can imagine what it means to spin the hard drive platters at 7200 rpm, for years without a pause in a typical server setup. Eventually, all disks die. A disk may run for a decade without a hinge, but another disk of the same type may die after a year. The problem is, there is reliable way to predict when a particular disk dies.
Continue reading Creating a RAID array out of cheap USB disks