Sun Microsystems ist vergangenen Samstag 25 Jahre alt geworden. Happy Birthday!
Sun StorageTek 6140 / 6540
Letzte Woche war ich in Bracknell (England) bei LSI Logic an einem Kurs an einem Kurs, in dem es um die Sun StorageTek 6140 und 6540 ging. LSI Logic hat diese Geräte entwickelt, vertreibt sie aber nicht selber. Hardware Hersteller wie Sun oder IBM vertreiben diese dann mit eigener Firware unter dem eigenen Namen.
Die 6140 und 6540, welche baugleich mit der IBM System Storage DS4000 series sind, sind wirklich beeindruckende Geräte. Sie bieten einen dual 4 GB fibre channel controller, erlauben bis zu 112 TB mit 224 Festplatten, Snapshots, RAID level Migration, gemischter Betrieb von FC und SATA Platten sowie richtiges Hardware XOR. RAID-6 wird ebenfalls unterstützt, ist aber nicht eingeschaltet. Hier dürfte noch die Firmware nachgeliefert werden. Wie auf den Webseiten des Storage Performance Council ersichtlich ist, bieten diese Geräte nun im Midrange Bereich eine Performance, welche bis vor kurzem nur in High-End Geräten verfügbar war.
Die Migration des RAID und das Mischen von FC und SATA Platten sind vermutlich die beeindruckensten Features. Das Array erlaubt das migrieren von RAID levels z.B. von RAID-1 auf RAID-5, sofern genügend Platten vorhanden sind. Dieser Vorgang funktioniert während dem laufenden Betrieb möglich, wegen der grossen Last auf dem Controller, ist allerdings die Performance sehr eingeschränkt.
Die FC und SATA Platten können gemischt werden. In jeden Slot kann wahlweise eine FC Platte oder eine SATA Platte eingeschoben werden. Allerdings ist es nicht empfehlenswert, im gleichen Volume FC und SATA Platten zu mischen, sofern man keine Migrationen macht.
Sun bietet zur konfiguration der Geräte den Common Array Manager. Jeder, der sich mit Sun Produkten auskennt, dürfte sich heimisch fühlen. Alternativ bietet Sun das von LSI entwickelte SANtricity an. Sun verkauft SANtricity, wer sich aber das Geld sparen möchte, kann bei IBM den IBM DS4000 Storage Manager für Solaris kostenlos beziehen. Es ist allerdings fraglich, wie lange das noch funktionieren wird, da diese Situation sicherlich nicht im Interesse von IBM und Sun ist.
Solaris komfortabel patchen
Sun hat in den vergangenen Jahren immer wieder neue Methoden gezeigt, wie man ein Solaris System patchen kann, da der recommended patch cluster nicht alles Patches beinhalten kann, welche für ein System benötigt werden und seit Solaris 10 hat meine keine andere Wahl mehr, sich mit diesen Tool auseinander zu setzen.
Viele dieser Tools sind, trotz dem guten Ansatz, nicht tauglich für den Alltag. Die monströsen Java Programme, für die man teilweise X benötigt, sind völlig bloat und langsam. Dazu kommt noch, dass Patch Services von Sun alles andere als verfügbar und zuverlässig sind.
Die Proactive Services der Sun Schweiz bietet eine Patch CD/DVD an, auf der man einen speziell anhand der Explorer Daten erstellten Patch Cluster erhält. Das wäre ja eigentlich eine gute Idee, allerdings ist es mir nicht ganz ersichtlich, warum man als Kunde neben dem Sun Vertrag nochmals ein paar tausend Franken für eine Patch CD bezahlen soll, nur weil Sun kein funktionierendes Patch Tool zu verfügung stellen kann.
Auch Martin Paul von der Universität Wien dürfte sich über diese Situation aufgeregt haben, was ihn vermutlich dazu motiviert hat, PCA- Patch Check Advanced zu schreiben. PCA ist ein Perl basierendes Script, welches mit 1500 Zeilen wirklich klein ist. Es benötigt ausser Perl, was ohnehin mit der standart Solaris Installation dabei ist, wget, was ab Solaris 9 ebenfalls zum Lieferumfang gehört.
PCA ist ein Tool zur Patch Analyse und Installation, welches einen Text oder HTML Output erzeugen kann. Ferner kann es auch als Patch Server agieren, was insbesondere in grösseren Umgebungen praktisch ist. Es besticht nicht nur mit seinerGeschwindigkeit, sondern auch mit seiner einfachen Handhabung, was bei den Sun Tools wie smpatch nicht der Fall ist.
Wenn der SunSolve Account ebenfalls aktiv ist, kann man bereits loslegen: Nachdem man das Script auf das System kopiert hat, geht man in ein Verzeichnis, wo man die Patches haben möchte, am besten /var/tmp.
Die Liste mit den fehlenden Patches anzeigen (pca zeigt auch das alter und die Kategorie ([S]ecurity, [B]ad ) an:
root@newponit # pca -l Download xref-file to /var/tmp/patchdiag.xref: done Using /var/tmp/patchdiag.xref from Feb/13/07 Host: newponit (SunOS 5.10/Generic_118833-36/sparc/sun4u)Patch IR CR RSB Age Synopsis ------ -- - -- --- --- ------------------------------------------------------- 117463 03 < 04 --- 8 SunOS 5.10: passwdutil Patch 118666 10 < 11 -S- 5 J2SE 5.0: update 11 patch (5.0u11) 118667 10 < 11 -S- 5 J2SE 5.0: update 11 patch (5.0u11), 64bit 118712 12 < 13 R-- 1 SunOS 5.10: Sun XVR-100 Graphics Accelerator Patch 118815 04 < 05 R-- 8 SunOS 5.10: awk nawk patch 118918 22 < 24 RS- 9 SunOS 5.10: Solaris Crypto Framework patch 119130 31 < 32 R-- 9 SunOS 5.10: Sun Fibre Channel Device Drivers 119580 04 < 05 --- 5 SunOS 5.10: libcpc Patch 119703 07 < 08 --- 1 SunOS 5.10: Patch for localeadm issues 119998 -- < 02 -S- 5 SunOS 5.10: arp, ip, ipsecah drivers patch 120050 04 < 05 --B 7 SunOS 5.10: usermod patch 120068 01 < 02 -S- 1 SunOS 5.10: in.telnetd Patch 120222 14 < 15 --- 8 SunOS 5.10: Emulex-Sun LightPulse Fibre Channel Adapter driver 120473 01 < 02 --- 6 SunOS 5.10: nss_compat patch 120812 14 < 15 --- 5 OpenGL 1.5: OpenGL Patch for Solaris 120845 03 < 04 --- 8 SunOS 5.10: auditd patch 120986 08 < 10 --- 8 SunOS 5.10: mkfs and newfs patch 122130 02 < 03 --- 5 SunOS 5.10: Patch to update SUNWlocaledefsrc files 123186 01 < 02 RS- 9 SunOS 5.10: NIS yp utilities patch 123590 01 < 02 --- 3 SunOS 5.10: PostgresSQL patch 124149 02 < 03 --- 5 SunOS 5.10: Sun XVR-300 Graphics Accelerator Patch 124244 -- < 01 -S- 8 SunOS 5.10: /usr/bin/rm patch 124993 -- < 01 --- 9 SunOS 5.10: in.ndpd patch 124995 -- < 01 --- 9 SunOS 5.10: ehci driver patch 125014 -- < 02 --- 3 SunOS 5.10: IP filter patch 125016 -- < 01 --- 7 SunOS 5.10: audit and init patch 125024 -- < 01 --- 9 SunOS 5.10: basic audit reporting tool patch 125026 -- < 01 --- 9 SunOS 5.10: message queue patch 125040 -- < 01 --- 5 SunOS 5.10: /usr/lib/inet/in.mpathd patch 125073 -- < 01 --- 5 SunOS 5.10: vold patch 125075 -- < 01 --- 9 SunOS 5.10: svc-volfs patch
Danach kann man die Patches downloaden:
root@newponit # pca -d Using /var/tmp/patchdiag.xref from Feb/13/07 Host: newponit (SunOS 5.10/Generic_118833-36/sparc/sun4u)Patch IR CR RSB Age Synopsis ------ -- - -- --- --- ------------------------------------------------------- 117463 03 < 04 --- 8 SunOS 5.10: passwdutil Patch Download 1/31: done 118666 10 < 11 -S- 5 J2SE 5.0: update 11 patch (5.0u11) Download 2/31: done 118667 10 < 11 -S- 5 J2SE 5.0: update 11 patch (5.0u11), 64bit Download 3/31: done 118712 12 < 13 R-- 1 SunOS 5.10: Sun XVR-100 Graphics Accelerator Patch Download 4/31: done 118815 04 < 05 R-- 8 SunOS 5.10: awk nawk patch Download 5/31: done 118918 22 < 24 RS- 9 SunOS 5.10: Solaris Crypto Framework patch Download 6/31: done 119130 31 < 32 R-- 9 SunOS 5.10: Sun Fibre Channel Device Drivers Download 7/31: done [...]
Und installieren:
root@newponit # pca -i Using /var/tmp/patchdiag.xref from Feb/14/07 Host: newponit (SunOS 5.10/Generic_118833-36/sparc/sun4u)Patch IR CR RSB Age Synopsis ------ -- - -- --- --- ------------------------------------------------------- 117463 03 < 04 --- 9 SunOS 5.10: passwdutil Patch Download 1/33: skipped - file exists Install 1/33: done - reboot 118666 10 < 11 -S- 6 J2SE 5.0: update 11 patch (5.0u11) Download 2/33: skipped - file exists Install 2/33: done [...] 118667 10 < 11 -S- 6 J2SE 5.0: update 11 patch (5.0u11), 64bit Download 3/33: skipped - file exists Install 3/33: 125073 -- < 01 --- 6 SunOS 5.10: vold patch Download 32/33: skipped - file exists Install 32/33: done - reboot 125075 -- < 01 --- 10 SunOS 5.10: svc-volfs patch Download 33/33: skipped - file exists Install 33/33: done Download Summary: 33 total, 0 successful, 32 skipped, 1 failed Install Summary : 33 total, 32 successful, 0 skipped, 1 failed Reboot required to complete patch process.
Anmerkung: Falls ein Patch sofort einen Reboot bzw. Reconfigure verlang, verweigert PCA die Installation weiterer Patches. Nach einem Reboot kann man weiter machen.
Nachdem man alle Patches installiert hat, muss man nur noch Rebooten und gut ist. Und das alles ohne Java und X. Meiner Meinung nach besteht bei Sun ein Handlungsbedarf, was die Entwicklung komfortabler und praxis tauglicher Tools angeht.
Blastwave’s pkg-get installieren
Die Installation von Blastwave Paketen ist denkbar einfach, es verursacht aber Verwirrung, wenn man sich noch nicht mit Blastwave auskennt.
Im Gegensatz zu Sunfreeware, welches nur eine kleine Sammlung von Paketen ist, welche dazu noch lausig erstellt wurden, handelt es sich bei Blastwave um eine riesige Sammlung von OpenSource Software, welche einfach installiert werden kann.
Blastwave hat dabei folgende Ziele:
- Die Pakete sind einfach zu installieren
- Der User (in diesem Fall ist Herr root gemeint) soll sich nicht um Abhängigkeiten kümmern
- Die Pakete sollen, sofern möglich, out-of-the-box laufen
Als erstes muss man von Blastwave das pkg-get Tool downloaden und installieren:
- pkgadd -d pkg_get.pkg CSWpkgget
Damit wäre der erste Schritt getan. pkg-get ist ein Korn Shell Script, welches einfach gesagt ein Wrapper um wget, pkgadd und pkgrm ist.
ACHTUNG: Da mit Solaris 8 kein wget mitgeliefert wird, muss man zuerst das wget binary von Hand nach /tmp/wget kopieren.
Nachdem man pkg-get installiert hat, sollte man in der /opt/csw/etc/pkg-get.conf den Download Mirror ändern. Dabei sollte man die url Zeile am besten auf den Schweizer Mirror ändern:
- url=ftp://mirror.switch.ch/mirror/csw/unstable
Man jetzt bereits Software installieren:
- /opt/csw/bin/pkg-get install wget
pkg-get wird wget, mit allen Abhängigkeiteten, automatisch auf dem System installieren Man muss sich nicht mehr um irgendwelche abhängigkeiten kümmern, da diese automatisch durch pkg-get behandelt werden.
Das Updaten der Pakete ist ebenfalls denkbar einfach. Als erstes muss pkg-get den aktuellsten Software Katalog haben, damit es weiss was aktualisiert wurde und was nicht. Das passiert mit der Option -U. Danach kann man mit der Option -c einen Vergleich zwischen der installierten und verfügbaren Software machen. Mit der Option -u kann man den Upgrade Prozess starten:
- pkg-get -U
- pkg-get -c | /usr/xpg4/bin/grep -v -e Not -e SAME
- pkg-get -u
Zum Abschluss einige wichtige Details:
- Es wird alles, ausser den Init Scripten, unter /opt/csw installiert. Sunfreeware installiert alles unter /usr/local, was gemäss filesystem(5) falsch ist und nicht gemacht werden sollte
- Alle Pakete haben den Prefix CSW; analog zu SUNW.
- Es wird, sofern möglich, immer der Sun Compiler benutzt
- Solaris 7 und älter wird nicht unterstützt
- Da sun4m Maschinen EOSL sind, laufen nicht mehr alles Pakete unter sun4m