Inleiding
Ik ben sinds begin september 2007 de trotse eigenaar van een Areca ARC1220 SATA RAID controller. Deze wordt gebruikt in mijn persoonlijke fileserver om films, muziek, software en documenten veilig te stellen. Ik heb nu een weekje of wat ervaring opgedaan met deze prachtige kaart en het is nu tijd om deze ervaringen op te schrijven.
Verpakking
De controller komt in een fatsoenlijk compact doosje waar de specificaties duidelijk op zijn af te lezen. De kaart is netjes en degelijk verpakt in een antistatic bag en bevind zich tussen twee lapjes foam die de kaart tegen schokken beschermen. Meegeleverd zijn een handleiding, cdrom, 8 degelijke, zeer lange SATA-kabels (1 meter), een low-profile backplaatje en een passief koelblokje, voor het geval je een goede airflow in je kast hebt en je de actieve koeling wilt vervangen door het passieve koelblokje.
De kaart
Het model dat ik heb, de Areca ARC1220LP, is een 8 poorts SATAII RAID controller met een PCI-E x8 interface. Het PCB ziet er netjes verzorgt en degelijk uit. In tegenstelling tot de 12 en 16 poorts modellen heeft de ARC1220 geen SODIMM-socket voor geheugen, maar is er 256MB DDR333 ECC op de kaart vastgesoldeerd. Ook is er geen LAN-poort aanwezig. Wel is er een aansluiting voor een Battery Backup Module aanwezig, evenals aansluitingen voor activity leds en fault LED's. Standaard zit er een backplaatje op voor in “gewone” kasten, maar er is ook een low-profile plaatje meegeleverd, zodat je deze kaart ook in een 1U chassis kunt monteren. De kaart wordt aangedreven door een Intel Xscale IOP333 processor die, voor zover mijn ervaringen tot nu toe, nauwelijks warm wordt. Deze I/O processor heeft ondersteuning voor zo ongeveer alle mogelijkheden die je maar van een intelligente RAID-controller kunt verwachten. Zelfs RAID6 wordt ondersteund vanaf de 8 poorts versie; de 4 poorts ARC1210 heeft een Intel Xscale IOP332 processor zonder RAID6 Engine. Een mogelijk minpuntje is het niet ondersteunen van het pairen van adapters, zodat je 1 raid set kunt maken met hardeschijven van 2 controllers. Bepaalde controllers van Adaptec en 3Ware hebben deze functionaliteit wel.
[img=620]C8oIWU7u[/img]
Handleiding
Er wordt een Engelstalige 1cm dikke handleiding meegeleverd. De handleiding is zeer duidelijk over de mogelijkheden van de kaart, de installatieprocedure en de configuratiemogelijkheden in zowel het onboard bios als de configuratiemogelijkheden via de webinterface. Minpuntje is wel dat er relatief veel spelfouten in staan en dat sommige details twee keer worden vermeld op dezelfde plaats.
Website van Areca
De website van Areca is precies wat je nodig hebt als gebruiker zijnde. Via een overzichtelijke lijst kun je nieuwe firmware, drivers en dergelijke downloaden. Er zijn verschillende handleidingen beschikbaar, o.a. de User Manual, een set instructies voor het gebruik van volumes groter als 2TB, het gebruiken van de CLI-tool en dergelijke. Er zijn tevens hardware compatibility lijste beschikbaar voor hardeschijven en moederborden waarmee hun producten zijn getest, alhoewel deze niet al te recent meer zijn. Ook product informatie is duidelijk en er zijn datasheets van al hun producten aanwezig.
Operating System support voor drivers en tools
Volgens de doos worden Windows 2000/XP/Server 2003, RedHat Linux, SuSe Linux, Mandrake Linux en FreeBSD ondersteund, maar volgends de handleiding werkt de adapter ook onder Mac OS X, al is deze dan niet bootable. De website van Areca biedt sinds kort ook 32/64Bit certified Vista drivers aan. De Linux-kernel bevat drivers voor alle Areca-modellen en mijn Debian Etch 4.0 installatie herkende de controller dan ook meteen.
Beheer
Er zijn verschillende mogelijkheden om de Areca ARC1220 te beheren. De eerste en meest logische is natuurlijk de McBIOS RAID Manager, die je meteen na POST en voor het opstarten van een bootloader/OS met TAB/F6 kunt benaderen. Het McBIOS is menugestuurd en wordt met het toetsenbord bediend. Een muis wordt niet ondersteund en is IMHO ook niet handig. Via het McBIOS kunnen alle mogelijke aanpassingen worden gedaan. Dit gaat van het configureren van een RAID-set tot een Volume-set tot het bekijken van de S.M.A.R.T.-status van de hardeschijven en het aanpassen van allerlei configuratieinstellingen. Hier ga ik nog verder op in.
Voor configureren, aanpassingen maken en beheren terwijl er een besturingssysteem is geboot, is er de ARCHTTP Proxy Server. Dit stukje software is een zeer eenvoudig, doch feature-complete beheertool waarmee 95% van alle instelmogelijkheden kunnen worden benut. De ARCHTTP Proxy Server is beschikbaar voor Windows 2000/XP/2003, Linux, FreeBSD, Solaris 10 x86 en Mac OS X 10.x. Bij de ARC1210 (4 poorts) en ARC1220 (8 poorts) controllers moet de ARCHTTP Proxy Server in het besturingssysteem worden geinstalleerd. De ARC1230 (12 poorts) en de ARC1280 (16 poorts) hebben een onboard LAN (RJ45) aansluiting, waarop de ARCHTTP Proxy Server benaderd kan worden. De ARC1230 en ARC1280 hebben dan ook een aantal extra instellingen met betrekking tot het netwerk, zoals het aanvragen van een DHCP-lease of het instellen van een statisch adres. Het aan- en uitzetten van het verkrijgen van een DHCP-lease en het instellen van een statisch IP-adres kan alleen via de McBIOS RAID Manager en de CLI (zie later) worden gedaan; ook kan het MAC-adres van de onboard LAN poort worden bekeken. Nogmaals, deze opties zijn alleen beschikbaar op de modellen met 12, 16 en 24 poorten.
Ik heb de ARCHTTP Proxy Server onder Debian Etch 4.0 gebruikt en deze werkt perfect. De installatie is een kwestie van het kopieren van een bestand van de bijgeleverde CD naar een locale map (/usr/local/sbin) en het uitvoeren van de daemon. Er wordt automatisch een configuratiebestand aangemaakt met een aantal standaardinstellingen (poorten, IP-addressen enzo), die nog kunnen worden gewijzigd. Wat ik wel vreemd vind, is dat de ARCHTTP Proxy Server op twee poorten draait, waarvan er 1 niet beveiligd is. De “gewone” functies worden standaard via poort 81 geserveerd, waarvoor een gebruikersnaam en wachtwoord nodig is. De settings voor mailen en SNMP zijn via poort 82 bereikbaar, maar daar wordt geen wachtwoord voor gevraagd.
De derde mogelijkheid om de adapter te beheren is via een CLI (Command Line Interface). Deze is aanwezig in de vorm van een bestand dat je kunt uitvoeren, waarna een promt verschijnt die je in staat stelt om de meeste handelingen uit te voeren. De CLI is beschikbaar voor de Windows versies, Linux en FreeBSD. Deze beheermogelijkheid is ideaal voor gebruik via een SSH-verbinding en als command-line guru is dit mijn voorkeurstool vanwege het gebruiksgemak.
Features
RAID-features:
De kaart ondersteund zo ongeveer alle zaken die van een professionele RAID-controller worden verwacht: Hot Spares (max 3), online RAID level migration, online stripe size migration, online capacity expansion, hotplugging, staggered spinup, array roaming, dynamic volume set expansion, automatic drive failure detection, automatic failed drive rebuilding, redundant flash image, S.M.A.R.T en NCQ support. Tevens kun je, als je S.M.A.R.T. aan hebt staan, de temperatuur van elke aangesloten schijf bekijken; zowel via het McBIOS als via ARCHTTP als via de CLI.
SMTP-mailer:
De ARC1220 en anderen in deze serie beschikken over de mogelijkheid om een mail te versturen als er een event optreedt. Hiervoor moet het IP-adres van een SMTP-server met bijbehorende gebruikersnaam, wachtwoord en een naam worden opgegeven, alsmede maximaal 4 adressen waar een mail naar moet worden toegestuurd. Daarnaast kan ook worden ingesteld voor welke events er een mail wordt gestuurd. Events worden opgedeeld in 4 niveau's van belangrijkheid, te weten Urgent, Serious, Warning en Information. Via een groep radiobuttons kan worden aangegeven voor welke meldingen een mail moet worden gestuurd. Als het mailen bij events is geconfigureerd, kan dit worden getest, door een test event te genereren (je kunt ook een test event genereren zonder het instellen van het mailen). Je krijgt dan netjes een mail met daarin de inhoud van het event. Vreemd is dat de datum van het mailtje op “unknown” blijft staan. In de tekst van het mailtje wordt naast de melding ook de tijd vermeld waarop het event zich voordeed, dus het ligt niet aan het niet instellen van de tijd op de adapter.
Prestaties
Ik heb de kaart gebruikt in combinatie met 8 schijven (Seagate 7200.10 750GB, 16MB cache, firmware 3.AAE). Hiervan heb ik 7 schijven in een RAID5 array gezet, en 1 schijf gemarkeerd als HotSpare. Hierdoor ontstaat er een volume van 4500GB, waarbij ik heb gekozen voor LBA64, een stripe size van 64KB en write-back cache. Mijn Linux-installatie (Debian Etch 4.0r1 i386) herkende de kaart en het volume meteen, maar ik kon het volume niet partitioneren met fdisk en cfdisk. Na het vluchtig doorlezen van een “Over2TB.pdf” bestandje van de Areca website heb ik de schijf met parted geopend, een GPT-partition table aangemaakt en daarna een partitie van 4500GB aangemaakt. In totaal bleef er 4.1TB zichtbaar van over. De partitie heb ik geformatteerd met XFS en daarna heb ik met dd een aantal benchmarks uitgevoerd.
Lezen van en schrijven naar het volume met 7 schijven in RAID5, XFS als bestandssysteem, 64KB stripe size, write-back cache, volumeset status is “Normal”. (er staat xxx omdat ik tijdens het schrijven van deze review een VolumeSet aan het migreren ben naar een andere stripe size, de xxx wordt nog vervangen door werkelijke getallen. De scores van 222MB/s en 398MB/s zijn wel echt.
Auxilium:/mnt/VolumeSet0# dd if=/dev/zero of=/mnt/VolumeSet0/file.bin
xxx+0 records in
xxx+0 records out
xxx bytes (xxx GB) copied, xxx seconds, 222 MB/s
Auxilium:/mnt/VolumeSet0# dd if=/mnt/VolumeSet0/file.bin of=/dev/null
xxx+0 records in
xxx+0 records out
xxx bytes (xxx GB) copied, xxx seconds, 398 MB/s
Lezen van en schrijven naar het volume met 7 schijven in RAID5, XFS als bestandssysteem, migreren van 64KB stripe size naar 128KB, write-back cache, volumeset status is “Migrating”, priority is “High, 80%”.
Auxilium:/mnt/VolumeSet0# dd if=/dev/zero of=/mnt/VolumeSet0/file.bin
20302023+0 records in
20302023+0 records out
10394635776 bytes (10 GB) copied, 61.6637 seconds, 169 MB/s
Auxilium:/mnt/VolumeSet0# dd if=/mnt/VolumeSet0/file.bin of=/dev/null
20302023+0 records in
20302023+0 records out
10394635776 bytes (10 GB) copied, 36.129 seconds, 288 MB/s
"hdparm -tT /dev/sdb" tijdens stripe size migration van 64KB naar 128KB. Waarden zijn gemiddelden van 3 metingen:
cached reads: 1307.67 MB/s
buffered disk reads: 275.54 MB/s
"hdparm -tT /dev/sdb" na stripe size migration (volume state is normal).
Waarden zijn gemiddelden van 3 metingen:
cached reads: 1322.00 MB/s
buffered disk reads: 397.08 MB/s
bonnie++ -n 1024 -r 1024 -s 2048 -x 1 -u root -q | bon_csv2txt
tijdens stripe size migration van 64KB naar 128KB:
Version 1.03 ------Sequential Output------ --Sequential Input- --Random-
-Per Chr- --Block-- -Rewrite- -Per Chr- --Block-- --Seeks--
Machine Size K/sec %CP K/sec %CP K/sec %CP K/sec %CP K/sec %CP /sec %CP
Auxilium 2G 54058 98 191409 26 90605 16 54769 95 262047 34 294.8 0
------Sequential Create------ --------Random Create--------
-Create-- --Read--- -Delete-- -Create-- --Read--- -Delete--
files:max:min /sec %CP /sec %CP /sec %CP /sec %CP /sec %CP /sec %CP
Auxilium 1024 2280 72 53792 82 10922 55 2132 67 5345 7 349 1
met normale consistent array (stripe size 128KB):
Version 1.03 ------Sequential Output------ --Sequential Input- --Random-
-Per Chr- --Block-- -Rewrite- -Per Chr- --Block-- --Seeks--
Machine Size K/sec %CP K/sec %CP K/sec %CP K/sec %CP K/sec %CP /sec %CP
Auxilium 2G 50153 94 170671 21 104725 18 53417 93 350893 47 554.3 0
------Sequential Create------ --------Random Create--------
-Create-- --Read--- -Delete-- -Create-- --Read--- -Delete--
files:max:min /sec %CP /sec %CP /sec %CP /sec %CP /sec %CP /sec %CP
Auxilium 1024 2957 94 55296 85 15586 79 2929 94 50774 74 357 2
Betrouwbaarheid
Ik heb de hardeschijven ingebouwd in 2 Addonics 4SA Disk Array's, die hotswapping ondersteunen. Tijdens het draaien van het systeem heb ik er de HotSpare eens uitgehaald, waarna de controller luid begon te piepen. Dit is echt binnen 5 seconden dus de controller reageert zeer snel. Zodra ik de schijf er weer in doe spint deze weer op, waarna de controller zelf stopt met piepen. In de event viewer is netjes te zien dat er een hardeschijf werd verwijderd en later weer toegevoegd.
Tevens heb ik een schijf, die deel uitmaakte van de RaidSet van 7 schijven, verwijderd, terwijl de HotSpare ook offline was. De event viewer laat zien dat de VolumeSet dan degraded is. Na het verwijderen van nog een schijf word de VolumeSet als “failed” gemarkeerd. Als ik vervolgens de schijven weer aankoppel gaat de controller automatisch de array recoveren (Failed Volume Revived). De controller is daarna begonnen met het recoveren van de array, wat op medium priority (50%) ongeveer 23 uur duurde voor een array van 4.5TB.
Conclusie
Ik heb me aan de hand van het T.net artikel
http://tweakers.net/reviews/557 al goed ingelezen en daar kwam de ARC1120 IMHO als beste uit. De ARC1220 is wat dat betreft ongeveer identiek (PCI-E x8 ipv PCI-X en 256 MB cache ipv 128). Zelfs mijn stoutste verwachtingen zijn overtroffen. Deze kaart is echt een aanrader, zowel qua prijs als prestaties als betrouwbaarheid.