[[TOC(depth=-1)]] = Adaptec AACRaid series = [[Image(adaptec_logo.gif)]] [[BR]][[BR]] = 1. Vendor information = Adaptec (http://www.adaptec.com) card are usually well supported on Linux.[[BR]] Adaptec supports Linux and provide an '''opensource kernel driver''' which has been part of Linux for ages [[BR]] = 2. Linux kernel drivers = There is only one drivers to handle all cards: || Driver || Supported cards || || aacraid || All Adaptec AACRaid cards || You should not expect any problems with theses drivers which are known to be '''mature''' and '''stable'''.[[BR]] We don't know any current Linux distrubtion which miss theses drivers so no additional step should be required to get it working. Some ''lspci -nn'' output examples: * 02:01.0 RAID bus controller ![0104]: Adaptec AAC-RAID ![9005:0285] (rev 01) * 04:08.1 RAID bus controller ![0104]: Dell !PowerEdge Expandable RAID Controller 3/Di [1028:000a] (rev 01) [[BR]] = 3. Management and reporting tools = '''No opensource tools''' for aacraid cards currently exist. However, Adaptec provides a proprietary utility for x86 and x86_64 linux systems. == 3.1. arcconf == arcconf is a command line tool to manage and monitor aacraid cards.[[BR]] Latest version is 5.20.17414, available in Adaptec storage manager applications package. ''AVAILABLE IN OUR DEBIAN PACKAGES REPOSITORY FOR BOTH I386 AND AMD64 ARCHITECTURES'' === 3.1.1. Quickstart guide for arcconf === Get first controller config and status {{{ server:~# arcconf GETCONFIG 1 Controllers found: 1 ---------------------------------------------------------------------- Controller information ---------------------------------------------------------------------- Controller Status : Optimal Channel description : SCSI Controller Model : PERC 3/Di [...] BIOS : 2.8-0 (6089) Firmware : 2.8-0 (6089) Driver : 1.1-4 (9999) Boot Flash : 0.0-0 (0) [...] ---------------------------------------------------------------------- Logical device information ---------------------------------------------------------------------- Logical device number 1 Logical device name : Noname RAID level : 5 Status of logical device : Optimal Size : 139997 MB Stripe-unit size : 64 KB Write-cache mode : Not supported Partitioned : Yes Protected by Hot-Spare : No Bootable : Yes Failed stripes : No [...] ---------------------------------------------------------------------- Physical Device information ---------------------------------------------------------------------- Channel #0: Transfer Speed : Ultra160 Initiator at SCSI ID 7 Device #0 Device is a Hard drive State : Online Supported : Yes Transfer Speed : Ultra160 Reported Channel,Device : 0,0 Vendor : MAXTOR Model : ATLASU320_73_SCA Firmware : B120 Serial number : XXX Size : 70007 MB Write Cache : Unknown FRU : None S.M.A.R.T. : No [...] }}} This command will report all important informations.[[BR]] However, if you want to see (in example) array rebuild status you will have to run: {{{ server:~# arcconf GETSTATUS 1 Controllers found: 1 Current operation : None Command completed successfully. }}} === 3.1.2. Enabling "Write Cache" with arcconf === Enabling this feature can lead to major performance improvments in write mode.[[BR]] '''HOWEVER''', all data stored in cache will be lost if a power failure or a hard reboot occurs.[[BR]] So, you're supposed to keep write cache disabled if your controller doesn't have any battery pack. {{{ server:~# arcconf GETCONFIG 1 [...] Controller Battery Information -------------------------------------------------------- Status : Not Installed [...] Logical device number 0 Logical device name : RAID1 RAID level : 1 Status of logical device : Optimal Size : 953836 MB Read-cache mode : Enabled Write-cache mode : Disabled (write-through) Write-cache setting : Disabled (write-through) [...] }}} So here is current config: No battery pack on the controller, and thus, write cache disabled.[[BR]] But I want to enable it, this server doesn't store really useful data; only speed matters here... Let's enable write cache: {{{ server:~# arcconf SETCACHE 1 LOGICALDRIVE 0 wb Controllers found: 1 WARNING: Power failure without battery support will lead to data loss. Do you wish to continue? Press y, then ENTER to continue or press ENTER to abort: y Command completed successfully. }}} Here we go ! Let's check if it's really enabled, and then, reboot. {{{ server:~# arcconf GETCONFIG 1 [...] Logical device number 0 Logical device name : RAID1 RAID level : 1 Status of logical device : Optimal Size : 953836 MB Read-cache mode : Enabled Write-cache mode : Enabled (write-back) Write-cache setting : Enabled (write-back) }}} == 3.2. afacli & aaccli == Theses tools are deprecated in favour of arcconf (see above). == 3.3. aacraid-status == aacraid-status is a package I wrote by myself. It includes a python wrapper around arcconf command and an initscript which daemonize the launch of the wrapper.[[BR]] It also handles failure detection and report it by mail and syslog. It also handle unexpected output changes and reminders until the status is fine again. GRAB-IT NOW FROM OUR REPOSITORY Output example: {{{ server:~# aacraid-status -- Controller informations -- -- ID | Model | Status c0 | PERC 3/Di | Optimal -- Arrays informations -- -- ID | Type | Size | Status | Task | Progress c0u1 | RAID5 | 139G | Optimal -- Disks informations -- ID | Model | Status c0u1d2 | MAXTOR ATLASU320_73_SCA | Online c0u1d1 | MAXTOR ATLASU320_73_SCA | Online c0u1d0 | MAXTOR ATLASU320_73_SCA | Online }}} == 3.4. Adaptec Storage Manager == Adaptec Storage Manager is a graphical software based upon Java which can be used to manage localy or remotely an AACRaid card.[[BR]] It has been splitted in three packages.[[BR]] If you plan to monitor your own server from a local X window server, install '''adaptec-storage-manager-gui'''.[[BR]] For a remote use, install '''adaptec-storage-manager-agent''' on the server and '''adaptec-storage-manager-gui''' on the client. You can of course manage several servers remotly from the same client. I haven't used it much so I won't say more about the mail notification and tasks scheduler. Anyway, it looks powerfull and you should have a look. Here are some screenshots: ==== Local server main screen ==== [[Image(adaptec-storage-manager.jpg)]] ==== Remotely managed server notifications configuration screen ==== [[Image(adaptec-storage-manager_notifications.jpg)]] ==== Message about registering your hardware ==== If ASM (Adaptec Storage Manager) annoys you about registering your hardware, just edit ''/etc/adaptec-storage-manager-agent.conf'' and replaces: {{{ agent.hardware.registered=0 }}} by: {{{ agent.hardware.registered=1 }}} ==== If you can't connect a remote agent ==== ASM is broken and can't deal with "special" ''/etc/hosts''. If you have a line like: {{{ 127.0.1.1 hostname hostname.fqdn }}} Replace it by: {{{ W.X.Y.Z (Real IP address) hostname hostname.fqdn }}} Please also not that you will have to login using the '''root account'''. If you don't have a active root account (ie: Ubuntu users) please enable it by typing: {{{ sudo passwd }}} ==== Firewall configuration ==== ASM requires many ports to be open. Here is a typical shorewall configuration: {{{ # Adaptec Storage Manager ACCEPT net:W.X.Y.Z $FW tcp 34570:34573 ACCEPT net:W.X.Y.Z $FW udp 34570,34577:34580 }}} So... You need to open '''34570 to 34573 (TCP)''' and '''34570, 34577 to 34580 (UDP)'''. [[BR]] = 4. BIOS upgrade from a Linux system = Theses controllers can be updated using arcconf. I will write a howto soon, as I need to update a 4800SAS card at work. Stay tuned! Off course, a reboot is needed after upgrading the BIOS. [[BR]][[BR]]