Skip to content

zpool replace a defective Disk

Gestern hat es die letzte verbliebene WD Caviar Green in meinem Datengrab zerrissen.

Glücklicherweise hat unsereiner meistens Ersatzdisken im Haus

Also hab ich die Disk mit einer Samsung Spinpoint 2TB ersetzt. Disk gezogen... Die neu Disk dem Cluster bekannt gemacht.

cldev clear  

cldev refresh

cldev populate

zpool replace datenhalde 8601391427563597410 c9t3d0

root@gnom:~# zpool status
  pool: datenhalde
 state: DEGRADED
status: One or more devices is currently being resilvered.  The pool will
        continue to function, possibly in a degraded state.
action: Wait for the resilver to complete.
 scrub: resilver in progress for 0h3m, 3.68% done, 1h34m to go
config:
        NAME                       STATE     READ WRITE CKSUM
        datenhalde                 DEGRADED     0     0     0
          mirror                   DEGRADED     0     0     0
            c9t2d0s4               ONLINE       0     0     0
            replacing              DEGRADED 73.2K     0     0
              8601391427563597410  UNAVAIL      0     0     0  was /dev/dsk/c9t3d0s4

              c9t3d0               ONLINE       0     0 73.2K  7.18G resilvered

Leider hat es mir der Cluster nicht gerade goutiert... das ich die Disk so gezogen habe. wink

No Name x86 ist eben doch nicht Sparc.

Die Ressource Gruppe mit der HAStorage Plus Ressource hat sich nämlich mal kurz weg gehängt und war dank Stop Failed Flag, nicht mehr zur Mitarbeit zu bewegen. wink

Also was tut man in dem Fall?  

 clrs clear -f STOP_FAILED -n gnom kobold datenhalde-pool-rs

Nach der Gummihammermethode.... 

root@gnom:~# clrs status datenhalde-pool-rs


=== Cluster Resources ===


Resource Name          Node Name     State      Status Message

-------------          ---------     -----      --------------

datenhalde-pool-rs     gnom  kobold        Offline    Offline


clrs enable datenhalde-pool-rs

Mein Datengrabkonzept hat sich bewährt

Vor einiger Zeit habe ich ja ein Datengrab auf Billighardware gebaut.

In der Zwischenzeit, habe ich für einige Bekannte bzw. drei Ingenieurbüros ein solches Datengrab auf vergleichbarer Hardware mit Opensolaris und Bacula realisiert.

Bisher laufen die Systeme zur Zufriedenheit und erledigen still und heimlich ihren Job.

Da es jetzt aber doch ein paar Systeme sind, die Windows Clients sichern, muss ich mir was zum effektiven Monitoring und einer Fernwartung überlegen. Insbesondere deswegen, weil diese Bueros an  klassischen DSL Leitung hängen und nicht an Standleitungen.

In jedem Fall freut es mich das die Systeme so stabil laufen.

Trotz relativ beschränkter Commodity  Hardware auf Atom Basis.

However, das beste wird wohl sein ich bastle was vergleichbares zum seligen "Telealarm".  smile

Datengrab der erste Ausfall

Wieso soll es mir besser gehen als anderen... argggghhh

root@kobold:~# fmdump -vV -e -u f4b8cc47-9a97-e691-9816-f434b6554759
TIME                           CLASS
Feb 11 2011 00:04:18.808716830 ereport.fs.zfs.probe_failure
nvlist version: 0
        class = ereport.fs.zfs.probe_failure
        ena = 0x4ab582c55700001
        detector = (embedded nvlist)
        nvlist version: 0
                version = 0x0
                scheme = zfs
                pool = 0x4ccfc15ab4863bfb
                vdev = 0x26a958afba327639
        (end detector)

        pool = datenhalde
        pool_guid = 0x4ccfc15ab4863bfb
        pool_context = 0
        pool_failmode = wait
        vdev_guid = 0x26a958afba327639
        vdev_type = disk
        vdev_path = /dev/dsk/c4t3d0s4
        vdev_devid = id1,sd@SATA_____WDC_WD20EARS-00M_____WD-WMAZA0389285/e
        parent_guid = 0x9dc7f893d61f9303
        parent_type = mirror
        prev_state = 0x0
        __ttl = 0x1
        __tod = 0x4d546ef2 0x30340a1e

root@kobold:~# 

root@kobold:~# zpool status
  pool: datenhalde
 state: DEGRADED
status: One or more devices could not be opened.  Sufficient replicas exist for
        the pool to continue functioning in a degraded state.
action: Attach the missing device and online it using 'zpool online'.
   see: http://www.sun.com/msg/ZFS-8000-2Q
 scrub: resilver in progress for 0h8m, 26.66% done, 0h23m to go
config:

        NAME          STATE     READ WRITE CKSUM
        datenhalde    DEGRADED     0     0     0
          mirror-0    DEGRADED     0     0     0
            c4t2d0s4  ONLINE       0     0     0
            c4t3d0s4  UNAVAIL      0     0     0  cannot open


Wieso soll es mir besser gehen als anderen... aber so eine Kurzlebige WD Platte hatte ich noch nie.

Ich hab noch WD Platte die über zehn Jahre alt sind und noch funktionieren. *gnaarf*

Datengrab findet seine Fortsetzung.

Der Blazilla baut auch grade ein Datengrab, allerdings wie es sich für einen HP Jünger gehört auch auf entsprechendem Blech, einem HP Microserver mit AMD CPU. wink

Bin ja mal gespannt wie sein Entwurf ausfällt und sich im Alltag bewährt. smile

Was mein Datengrab angeht, das einzige was mir fehlt sind meeeeeeeeeeehr Platten.

Was mein Backup to Disk System mit Bacula angeht, bin ich bisher hochzufrieden, das System arbeitet zuverlässig und extrem flott. Obwohl ich am Anfang große Bedenken hatte wegen dem Atom Unterbau. Im Gegenteil, fuer ein Commodity System mit 100Mbit Infrastruktur und teilweise sogar Sicherung über WLAN und zwei Stockwerke geht es trotzdem vertretbar. Das FULL Backup eines Acer Notebooks mit 30 GB Platte und einer Disk Usage von 60 Prozent hat sich zwar beim ersten mal gezogen, aber Lehrerinnen haben ja Zeit. :-P

Migration von Datasets von Pool zu Pool mittels zfs send

Da ich in mein Datengrab noch mal zwei 2TB Platten reingestopft habe, habe ich ein paar Bacula Savesets in den Pool datenhalde verschoben. wink

Das ganze war eine Aktion von zwei Minuten. smile

Zone angehalten.


"Migration von Datasets von Pool zu Pool mittels zfs send" vollständig lesen

Ein Datengrab entsteht Part X

Die Client Konfiguration von Bacula ist relativ simpel viel falsch machen kann man da nicht.

Bacula selber gliedert sich in drei Daemons...

Bacula-sd ----> Storage Daemon

Bacula-fd -----> File Daemon  ---------> Mehr muss auf dem Client nicht laufen.

Bacula-dir -----> Director Daemon  

Am Client selber muss nicht viel gemacht werden.

Was absolut zu beachten sein sollte......

Die Namensauflösung muss definitiv korrekt sein, sonst stellt sich bacula genau so zickig an wie Legato Networker. ;) 

Das Config File sieht folgender maßen aus. 

Einen schoenen Artikel zum Thema bacula gibts übrigens auf Pro-Linux. :) 

Auch im Wiki von Backup Central gibt es einen schoenen Wiki Eintrag zum Thema. smile

Bei den Fedorabuben, im übrigen auch. :D 

Der BAT Client selber, überzeugt nicht immer durch Stabilität, manchmal friert das Ding unmotiviert ein. Was ich wenig prickelnd finde, im übrigen Plattformunabhängig das Problem. sad

Mit bconsole habe ich die Probleme nicht. Leider konnte ich noch nicht nachvollziehen, wie das Ding vernuenftig skriptbar ist. Beim Networker geht der Quatsch ja sehr fein. :) 

"Ein Datengrab entsteht Part X" vollständig lesen

Ein Datengrab entsteht Part IX

Die Erweiterung des Geräts funktioniert relativ einfach.

Da ich der Meinung war... viel hilft viel... habe ich heute noch mal 2x2 TB Caviar Greens verbaut und damit, sind dann alle Plattenschächte belegt.

Der easystore tut ja so als sei er ein Professionelles Gerät.... hat also Einschübe, die man ähnlich wie bei Enterprise Systemen ziehen und stecken kann. Soviel zum positiven.

Leider sind die Einschübe, sehr "plastiklich"... die Platte in den Einschub zu kriegen ist mit dem Risiko behaftet, den Einschub zu zerbrechen. Also in der Hinsicht vorsichtig sein.

 Hat man sich die Finger ramponiert und die Festplatten sauber arretiert, mit den zu "steckenden" Schrauben.. muss man den Einschub nur noch stecken und verriegenl. wink

Der Rest funktioniert relativ schmerzfrei.

Die Devices werden auch sofort erkannt.. wie schön im Messagelog zu sehen ist. 

"Ein Datengrab entsteht Part IX" vollständig lesen

Ein Datengrab entsteht Part VIII

Um eine Vergleich zum nachbauen zu haben, habe ich hier die Paketlisten, des Wirtsystems und der Zone abgelegt. 

Die Bacula Binaries in der Version 5.0.3 sind hier ebenso noch separat als Tarball zu finden. Ebenso das XML Zone File.

Im Abschnitt IV wurde ja schon auf die Anlage der Filesysteme verwiesen. Dort setzen wir jetzt wieder an und uebergeben die

angelegten Fileysteme der Zone.

"Ein Datengrab entsteht Part VIII" vollständig lesen

Ein Datengrab entsteht Part VII

Die Zone ist installiert, also  koennen wir uns an die Installation von Bacula, Mysql  und Apache machen.

Da ich mich jedoch nicht mit fremden Federn schmuecken moechte, verweise ich an dieser Stelle auf den Blog

von Michael Rennecke, der die Installation von Bacula in einer Zone schon ausgearbeitet hat. Dieser Installation bin ich gefolgt um mich nicht zu lange aufzuhalten. Da ich mir bewusst war das die Konfiguration von Bacula  selber lang genug dauern wuerde.

Abgewichen bin ich von Michael Rennecke's  Weg, insofern ich die Pakete in der Zone selbst kompiliert habe, weil ich den Wirt schlank halten wollte.

Wie groß die Zone ist, juckt mich persoenlich eigentlich nicht. laugh

Wer moechte, kann sich die von mir gebaute Zone hier runter laden.

Ach ja, was die Webguis angeht die Teile sind grausam zu installieren und haben entweder Abhängigkeiten zu Zend Framework oder Smarty, auch das Standard bweb hat mit den Perlabhängigkeiten so seine Leckerlies zu bieten.. wie Perlmodule die sich nur mit GCC kompilieren lassen und in einem mit SunStudio kompilierten Perl nicht laufen.  Der Bat Client reicht vollkommen und ist fuer jede Plattform entweder in den Repositories oder lässt sich mit Hilfe von QT kompilieren. Oder auf einer Dose installieren. wink

"Ein Datengrab entsteht Part VII" vollständig lesen

Ein Datengrab entsteht Part V

Die Zonenconfig.

Eine Solaris Zone ist wirklich was schoenes. Eigentlich fast schon idiotensicher, sogar fuer mich. laugh

Der beste Freund des Admins ist der zonecfg. Also legen wir die Zonenconfig an.

Auf dem Wirt.. oder um in Sun Solaris Terminologie zu bleiben... der Global-Zone

legen wir in der

CODE:
/etc/hosts 
schon mal den Eintrag fuer die Bacula  Zone an.

CODE:
echo "192.168.1.198  bacula" >>/etc/hosts

"Ein Datengrab entsteht Part V" vollständig lesen

Ein Datengrab entsteht Part IV

Nach dem das Gewuerge mit dem Marvel Chip geloest wurde, kann man sich aufs wesentliche kontzentrieren.

Vorueberlegungen zum Filesystem.

Man sollte sich im Vorfeld ueberlegen, was das Gerät leisten soll.

Da wir davon ausgehen das die Dienste in einer Zone laufen sollen, oder mehreren Zonen, sollte dies von Anfan an in die Planung einfliessen.

Was soll also in die Zone?
Der Backup Daemon Bacula.
Die Mysql und der Apache.

"Ein Datengrab entsteht Part IV" vollständig lesen

Ein Datengrab entsteht Part III

Die Installation selbst ist nun abgeschlossen.
Bleibt nur noch eines zu tun.

Die Platten zu spiegeln.

CODE:
prtvtoc /dev/rdsk/c4t0d0s2 |fmthard -s - /dev/rdsk/c4t1d0s2

CODE:
zpool attach -f rpool c4t0d0s0 c4t1d0s0 


CODE:
/usr/sbin/installgrub -m /boot/grub/stage1 /boot/grub/stage2 /dev/rdsk/c4t1d0s0


Unbedingt mit
CODE:
zpool status

den Zustand pruefen.

Wenn die Spiegelung abgeschlossen ist... kann die Maschine fuers erste rebootet werden.

Da die onboard Netzwerkkarte leider nicht out of the Box unterstuetzt wird, muss man den Treiber
wie im vorigen Blogeintrag schon erwähnt,nachträglich installieren. Am besten man packt den Treiber auf

einen USB Stick und kopiert diesen von dort aus in das Verzeichnis der eigenen Wahl.

"Ein Datengrab entsteht Part III" vollständig lesen

Ein Datengrab entsteht Part II

Zum Blech...

Ich hab mich fuer ein Acer Aspire H340 entschieden. Zur Debatte stand auch noch ein HP Filevault nochwas.

Das Gerät an sich ist ATOM basierend mit 1.6 GHZ CPU  Komt mit 2x 1 TB Western Digital Caviar Green Platten um die Ecke.

Zwei Slots sind noch frei und koennen bestueckt werden. Leider hat das Gerät keinen handelsüblichen VGA Ausgang und wird mit Windows Home Server ausgeliefert. Ein DVD-ROM oder aehnliche Spaesse gibt es auch nicht. Also stellt der liebe Gott erst mal die Huerde des Betankens vor den Klempner.

Das Gehäuse muss geoeffnet werden und der Jumper neu gesetzt werden. Um ein Bild zu erhalten, gibt es zwei Moeglichkeiten entweder eine PCI-E Grafikkarte besorgen, oder ein Kabel loeten bzw. bestellen. Da ich es handwerklich nicht so hab, bin ich auf Moeglichkeit des Kabel bestellens ausgewichen.

Da die Kiste zum basteln und Kabel eintueten geoeffnet werden muss, empfehel ich folgenden Blogeintrag, in dem die Vorgehensweise hervorragend geschildert und fotografiert ist, wo man hingreifen muss. Inklusive Setzen des Jumpers und Montage des Kabels. Ohne setzen des Jumpers wird die Kiste nicht vom hoffentlich vorhandenen USB Stick booten. wink


"Ein Datengrab entsteht Part II" vollständig lesen