Wer wie ich noch einen Server bei Hetzner bestellt und nicht die 25€ für das Einlegen eines ISOS möchte kann auch den Backup-Space von Hetzner benutzen.

Im Wiki von Hetzner gibt es eine Anleitung wie man vorgehen muss.

http://wiki.hetzner.de/index.php/LARA#Nutzen_des_Backup_Space

Denkt dran das bei einigen Hetzner Servern eine Realtek Netzwerkkarte eingebaut ist, diese wird im aktuellen ESXi Image nicht mehr Unterstützt und man muss den Treiber hinzufügen.

Hier eine Anleitung um den Treiber in das Iso zu bekommen, http://www.bussink.ch/?p=1228 oder http://www.vladan.fr/realtek-8169-nics-not-detected-under-esxi-5-5/

Viele Grüße

Sven

 

Hetzner liefert die MegaRAIDs in den EX-Servern mit vorkonfiguriertem wöchentlichem Konsistenzcheck aus. Der Zeitpunkt kann variieren; bei meinen beiden Servern startet er in der Nacht von Freitag auf Samstag, um 3 Uhr UTC (4 Uhr aktuelle Deutschlandzeit). Er dauert üblicherweise bis 10:00-10:30, je nach sonstiger Festplattenlast.

Der Check hinterläßt seine Spuren im Kernel-Log. Ein Blick in dieses Log kann also - unabhängig von sonstigem Monitoring - verraten, ob mit den Platten alles okay ist. Der Kernel-Log findet sich in /scratch/log/vmkernel.log auf dem ESXi-Host.

Der Ablauf sieht im Idealfall gekürzt so aus:

[bash]
2013-03-23T03:03:14.749Z cpu1:2660)<6>megasas_hotplug_work[7]: aen event code 0x0027
2013-03-23T03:03:19.057Z cpu0:2657)<6>megasas_hotplug_work[7]: aen event code 0x0042
2013-03-23T03:03:19.111Z cpu5:2650)<6>megasas_hotplug_work[7]: aen event code 0x0023
2013-03-23T03:03:19.112Z cpu5:2654)<6>megasas_hotplug_work[7]: aen event code 0x0041
2013-03-23T03:04:24.358Z cpu0:2649)<6>megasas_hotplug_work[7]: aen event code 0x0041
2013-03-23T03:05:17.458Z cpu0:2649)<6>megasas_hotplug_work[7]: aen event code 0x0041
[...Jede Menge 0x0041...]
2013-03-23T09:10:13.970Z cpu0:2646)<6>megasas_hotplug_work[7]: aen event code 0x0041
2013-03-23T09:11:50.713Z cpu0:2657)<6>megasas_hotplug_work[7]: aen event code 0x0041
2013-03-23T09:13:19.215Z cpu0:2660)<6>megasas_hotplug_work[7]: aen event code 0x0041
2013-03-23T09:13:24.769Z cpu4:2652)<6>megasas_hotplug_work[7]: aen event code 0x003a[/bash]

Der exakte Wortlaut der Meldungen kann sich, je nach ESXi-Version, unterscheiden. Ältere Versionen fügen z.B. zwischen die "aen event" Zeilen jeweils noch eine andere Zeile ein. Wichtig sind die Eventcodes. Diese bedeuten:

[bash]0x0027 - Partrol Read started
0x0042 - Consistency Check started
0x0023 - Patrol Read complete
0x0041 - Consistency Check progress
0x003a - Consistency Check done[/bash]

Zwischendurch können "Host Busy" Fehlermeldungen des Controllers erfolgen. Diese sehen oft dramatisch aus (Beispiel s.u.), haben aber erfahrungsgemäß keine negativen Folgen.

Aus aktuellem Anlaß: Sollte der Strom von 0x0041-Events im Kernel-Log plötzlich abreißen oder Ihr feststellen, daß zu sonstigen Gelegenheiten nichts mehr in den Logs landet, kann dieses Kommando helfen:

[bash]esxcli system syslog reload[/bash]

Zusätzlich könnt Ihr, falls Ihr das MegaCLI installiert habt, mit folgendem Kommando den Fortschritt eines laufenden Checks, und den Status des Arrays, abfragen:

[bash]cd /opt/lsi/MegaCLI
./MegaCli -LDCC -showprog -LALL -AALL
./MegaCli -ldinfo -l0 -aall[/bash]

Ebenso kann man mit MegaCLI den Zeitpunkt des Checks konfigurieren, mit "MegaCli -AdpCcSched"; das habe ich aber noch nicht ausprobiert und möchte daher keine verbindlichen Hinweise dazu geben.

Falls Ihr andere Statuscodes des Consistency Check im Kernel-Log vorfindet, könnt Ihr in der hier verlinkten PDF-Datei schauen. Dort steht drin, was sie zu bedeuten haben.

https://data.virtpro.eu/vmware/lsi-megaraid/A_Event_Info.pdf

[bash]2013-03-23T09:47:14.262Z cpu4:6362240)megasas: ABORT sn 651094276 cmd=0x2a retries=0 tmo=0
2013-03-23T09:47:14.262Z cpu4:6362240)<5>0 :: megasas: RESET -651094276 cmd=2a retries=0
2013-03-23T09:47:14.262Z cpu4:6362240)megaraid_sas: HBA reset handler invoked without an internal reset condition.
2013-03-23T09:47:16.733Z cpu6:2054)WARNING: LinScsi: SCSILinuxQueueCommand:1175:queuecommand failed with status = 0x1055 Host Busy vmhba1:2:0:0 (driver name: LSI Logic SAS based MegaRAID driver) - Message repeated 1218 times
2013-03-23T09:47:16.733Z cpu6:2054)ScsiDeviceIO: 2309: Cmd(0x41240071b200) 0x8a, CmdSN 0xeb from world 4836 to dev "naa.600605b00413718016b58fa5040e8e96" failed H:0x0 D:0x8 P:0x0 Possible sense data: 0x0 0x0 0x0.
2013-03-23T09:47:16.733Z cpu6:2054)ScsiDeviceIO: 2309: Cmd(0x41240079d2c0) 0x8a, CmdSN 0xf3 from world 4836 to dev "naa.600605b00413718016b58fa5040e8e96" failed H:0x0 D:0x8 P:0x0 Possible sense data: 0x0 0x0 0x0.
2013-03-23T09:47:16.733Z cpu6:2054)ScsiDeviceIO: 2309: Cmd(0x412400729e80) 0x2a, CmdSN 0xfffffadf9b655130 from world 4523 to dev "naa.600605b00413718016b58fa5040e8e96" failed H:0x0 D:0x8 P:0x0 Possible sense data: 0x0 0x0 0x0.
2013-03-23T09:47:16.733Z cpu6:2054)ScsiDeviceIO: 2309: Cmd(0x412400730100) 0x2a, CmdSN 0xfffffadf9b8d1830 from world 4523 to dev "naa.600605b00413718016b58fa5040e8e96" failed H:0x0 D:0x8 P:0x0 Possible sense data: 0x0 0x0 0x0.
2013-03-23T09:47:16.733Z cpu6:2054)ScsiDeviceIO: 2309: Cmd(0x41240078bac0) 0x2a, CmdSN 0xcd from world 4568 to dev "naa.600605b00413718016b58fa5040e8e96" failed H:0x0 D:0x8 P:0x0 Possible sense data: 0x0 0x0 0x0.
2013-03-23T09:47:16.733Z cpu6:2054)ScsiDeviceIO: 2309: Cmd(0x412400708cc0) 0x2a, CmdSN 0xc7 from world 4568 to dev "naa.600605b00413718016b58fa5040e8e96" failed H:0x0 D:0x8 P:0x0 Possible sense data: 0x0 0x0 0x0.
2013-03-23T09:47:17.297Z cpu6:6362240)<7>megaraid_sas: megasas_wait_for_outstanding: line 2131: AFTER HBA reset handler invoked without an internal reset condition: took 3 seconds. Max is 180.
2013-03-23T09:47:17.297Z cpu6:6362240)megaraid_sas: no more pending commands remain after reset handling.
2013-03-23T09:47:17.297Z cpu6:6362240)<5>megasas: reset successful

2013-03-23T09:47:17.307Z cpu7:416676)ScsiDeviceIO: 2291: Cmd(0x41240071b200) 0x8a, CmdSN 0xeb from world 4836 to dev "naa.600605b00413718016b58fa5040e8e96" failed H:0x8 D:0x0 P:0x0
2013-03-23T09:47:17.307Z cpu7:416676)ScsiDeviceIO: 2291: Cmd(0x41240079d2c0) 0x8a, CmdSN 0xf3 from world 4836 to dev "naa.600605b00413718016b58fa5040e8e96" failed H:0x8 D:0x0 P:0x0
2013-03-23T09:47:17.307Z cpu7:416676)ScsiDeviceIO: 2291: Cmd(0x41240075d980) 0x2a, CmdSN 0xca2a1e from world 2056 to dev "naa.600605b00413718016b58fa5040e8e96" failed H:0x8 D:0x0 P:0x0
2013-03-23T09:47:17.307Z cpu7:416676)ScsiDeviceIO: 2291: Cmd(0x4124007c93c0) 0x2a, CmdSN 0xca2a1f from world 2056 to dev "naa.600605b00413718016b58fa5040e8e96" failed H:0x8 D:0x0 P:0x0
2013-03-23T09:47:17.307Z cpu7:416676)ScsiDeviceIO: 2291: Cmd(0x412400775880) 0x2a, CmdSN 0xca2a22 from world 2056 to dev "naa.600605b00413718016b58fa5040e8e96" failed H:0x8 D:0x0 P:0x0
2013-03-23T09:47:17.307Z cpu4:5533)HBX: 2313: Waiting for timed out [HB state abcdef02 offset 4157440 gen 169 stampUS 8771157754484 uuid 50c7a484-d2cbdc06-4f03-5404a6a68f0e jrnl <FB 1794200> drv 14.54] on vol 'Vega_Store'
2013-03-23T09:47:17.307Z cpu0:4059)HBX: 2313: Waiting for timed out [HB state abcdef02 offset 4157440 gen 169 stampUS 8771157754484 uuid 50c7a484-d2cbdc06-4f03-5404a6a68f0e jrnl <FB 1794200> drv 14.54] on vol 'Vega_Store'
2013-03-23T09:47:17.398Z cpu7:2067)HBX: 231: Reclaimed heartbeat for volume 4f398b88-fbf1b358-ed03-5404a6a68f0e (Vega_Store): [Timeout] [HB state abcdef02 offset 4157440 gen 169 stampUS 8771170887971 uuid 50c7a484-d2cbdc06-4f03-5404a6a68f0e jrnl <FB 179$[/bash]

Keine RAID-Informationen mehr im vSphere Client

Von Zeit zu Zeit kann es vorkommen, daß der Hardware Monitor im vSphere Client keine Informationen mehr über den RAID-Controller anzeigt. Möglicherweise verschwinden die einzelnen Einträge nach und nach, bis der Controller irgendwann gar nicht mehr auftaucht.

Dieser Fehler könnte mit der aktuellen Version des CIM/SMIS Providers von LSI behoben worden sein.

Ansonsten gibt es einen Workaround. Wir loggen an der SSH-Konsole des ESXi ein und führen diesen Befehl aus:

[bash]/etc/init.d/sfcbd-watchdog restart >/scratch/log/sfcbd.log 2>&1[/bash]

Dies startet den SFCBD (Small Footprint CIM Broker Daemon, zuständig fürs Einsammeln und Abfragen der Sensordaten) neu. Die Umleitung in eine Dummy-Logdatei ist nötig, da der Watchdog ansonsten das Terminal alloziert hält, was zu dem Fehler "Warnungen "PTY Would block" im Kernel-Log" führt.

Warnungen "PTY Would block" im Kernel-Log

Symptom: Im Kernel-Log /scratch/log/vmkernel.log tauchen im Minutentakt Warnungen dieser Form auf:

[bash]Failed to crossdup fd 1, /dev/char/pty/t1 type CHAR: Would block[/bash]

Dies liegt daran, daß ein per SSH-Konsole ausgeführtes Kommando seine Verbindung zum virtuellen Terminal nicht geschlossen hat und versucht, dort Ausgaben zu tätigen. Wurde die Shell inzwischen geschlossen, existiert das Terminal nicht mehr.

Oft wurde der SFCBD-Watchdog ohne Umleitung in ein Dummy-File neugestartet, siehe "Keine RAID-Informationen mehr im vSphere Client", oder aber die Systemdienste mittels/sbin/services.sh restart neugestartet, was den SFCBD-Watchdog einschließt.

Keine neuen Einträge in Logs

Falls ab einem gewissen Zeitpunkt keine Einträge mehr in die Logs (Syslog, Kernel-Log etc.) geschrieben werden, könnte einfach der Syslog-Daemon abgestürzt sein. Dies läßt sich auf der SSH-Konsole beheben durch einen Neustart des Syslog-Daemon:

[bash]esxcli system syslog reload[/bash]

Fehler beim Statusabruf der BBU im Syslog

Symptom: Im Syslog /scratch/log/syslog tauchen im Minutentakt solche Meldungen auf:

[bash]

2012-09-28T13:00:50Z sfcb-LSIESG_SMIS13_HHR[10850792]: INTERNAL StoreLibFacade::fireStorelibCommand - caller StoreLibFacadeMR::getBBUStatus, ProcessLibCommandCall failed, returnValue = 0x22
2012-09-28T13:00:50Z sfcb-LSIESG_SMIS13_HHR[10850792]: INTERNAL BBU::refresh: Failed BBUStatus
2012-09-28T13:00:50Z sfcb-LSIESG_SMIS13_HHR[10850792]: INTERNAL StoreLibFacade::fireStorelibCommand - caller StoreLibFacadeMR::getBBUCapacityInfo, ProcessLibCommandCall failed, returnValue = 0x22
2012-09-28T13:00:50Z sfcb-LSIESG_SMIS13_HHR[10850792]: INTERNAL BBU::refresh:Failed CapacityInfo
2012-09-28T13:00:50Z sfcb-LSIESG_SMIS13_HHR[10850792]: INTERNAL StoreLibFacade::fireStorelibCommand - caller StoreLibFacadeMR::getBBUDesignInfo, ProcessLibCommandCall failed, returnValue = 0x22
2012-09-28T13:00:50Z sfcb-LSIESG_SMIS13_HHR[10850792]: INTERNAL BBU::refresh:Failed DesignInfo
2012-09-28T13:00:50Z sfcb-LSIESG_SMIS13_HHR[10850792]: INTERNAL StoreLibFacade::fireStorelibCommand - caller StoreLibFacadeMR::getBBUProperties, ProcessLibCommandCall failed, returnValue = 0x22
2012-09-28T13:00:50Z sfcb-LSIESG_SMIS13_HHR[10850792]: INTERNAL BBU::refresh:Failed Properties[/bash]

"BBU" bedeutet "Backup Battery Unit", gemeint ist eine Backupbatterie im RAID-Controller.

Ältere Versionen des LSI MegaRAID CIM-Providers haben einen Fehler, der diese Meldungen produziert. Sie sind im wesentlichen harmlos. Update auf eine aktuelle Version sollte das Problem komplett beseitigen.

LSI Downloads: http://www.lsi.com/products/storagecomponents/Pages/MegaRAIDSAS9260-4i.aspx

MegaCLI - 5.5 http://www.lsi.com/downloads/Public/MegaRAID%20Common%20Files/8.07.06_MegaCLI.zip

VMWare SMIS Provider VIB - 5.5 http://www.lsi.com/downloads/Public/MegaRAID%20Common%20Files/00_34_V0_01_SMIS_VMware_Installer.zip

Firmware 4.9  http://www.lsi.com/downloads/Public/MegaRAID%20Common%20Files/12.12.0-0139_SAS_2108_Fw_Image_APP2.130.373-2022.zip

Die Aktuellen Patches gibt es bei VMware: http://www.vmware.com/patchmgr/download.portal

https://data.virtpro.eu/

für wget Bitte http://dl.virtpro.eu auf ESXi benutzen, da ESXi kein http(s) kann.

[bash]

/opt/lsi/MegaCLI # ./MegaCli -AdpAllInfo -aAll
==============================================================================
Versions
================
Product Name : LSI MegaRAID SAS 9260-4i
Serial No : SV22820638
FW Package Build: 12.12.0-0111

Mfg. Data
================
Mfg. Date : 07/12/12
Rework Date : 00/00/00
Revision No : 86B
Battery FRU : N/A

Image Versions in Flash:
================
FW Version : 2.130.353-1663
BIOS Version : 3.24.00_4.12.05.00_0x05160000
Preboot CLI Version: 04.04-020:#%00009
WebBIOS Version : 6.0-49-e_45-Rel
NVDATA Version : 2.09.03-0032
Boot Block Version : 2.02.00.00-0000
BOOT Version : 09.250.01.219

Pending Images in Flash
================
None

PCI Info
================
Controller Id : 0000
Vendor Id : 1000
Device Id : 0079
SubVendorId : 1000
SubDeviceId : 9260

Host Interface : PCIE

ChipRevision : B4

Number of Frontend Port: 0
Device Interface : PCIE
...[/bash]

 

[bash]
/opt/lsi/MegaCLI # ./MegaCli -LDInfo -L0 -a0

Adapter 0 -- Virtual Drive Information:
Virtual Drive: 0 (Target Id: 0)
Name :
RAID Level : Primary-1, Secondary-0, RAID Level Qualifier-0
Size : 2.728 TB
Is VD emulated : Yes
Mirror Data : 2.728 TB
State : Optimal
Strip Size : 64 KB
Number Of Drives : 2
Span Depth : 1
Default Cache Policy: WriteBack, ReadAhead, Cached, Write Cache OK if Bad BBU
Current Cache Policy: WriteBack, ReadAhead, Cached, Write Cache OK if Bad BBU
Default Access Policy: Read/Write
Current Access Policy: Read/Write
Disk Cache Policy : Disk's Default
Encryption Type : None
Is VD Cached: No

Exit Code: 0x00[/bash]

 

[bash]
/opt/lsi/MegaCLI # ./MegaCli -PDList -Aall

Adapter #0

Enclosure Device ID: 252
Slot Number: 0
Drive's postion: DiskGroup: 0, Span: 0, Arm: 1
Enclosure position: N/A
Device Id: 5
WWN: 5000c5004dfd1e39
Sequence Number: 2
Media Error Count: 0
Other Error Count: 0
Predictive Failure Count: 0
Last Predictive Failure Event Seq Number: 0
PD Type: SATA

Raw Size: 2.728 TB [0x15d50a3b0 Sectors]
Non Coerced Size: 2.728 TB [0x15d40a3b0 Sectors]
Coerced Size: 2.728 TB [0x15d400000 Sectors]
Emulated Drive: Yes
Firmware state: Online, Spun Up
Commissioned Spare : No
Emergency Spare : No
Device Firmware Level: CC43
Shield Counter: 0
Successful diagnostics completion on : N/A
SAS Address(0): 0x4433221103000000
Connected Port Number: 1(path0)
Inquiry Data: Z1F0XS5MST3000DM001-1CH166 CC43
FDE Capable: Not Capable
FDE Enable: Disable
Secured: Unsecured
Locked: Unlocked
Needs EKM Attention: No
Foreign State: None
Device Speed: 6.0Gb/s
Link Speed: 6.0Gb/s
Media Type: Hard Disk Device
Drive Temperature :33C (91.40 F)
PI Eligibility: No
Drive is formatted for PI information: No
PI: No PI
Port-0 :
Port status: Active
Port's Linkspeed: 6.0Gb/s
Drive has flagged a S.M.A.R.T alert : No

Enclosure Device ID: 252
Slot Number: 1
Drive's postion: DiskGroup: 0, Span: 0, Arm: 0
Enclosure position: N/A
Device Id: 4
WWN: 5000c5004dfd1214
Sequence Number: 2
Media Error Count: 0
Other Error Count: 0
Predictive Failure Count: 0
Last Predictive Failure Event Seq Number: 0
PD Type: SATA

Raw Size: 2.728 TB [0x15d50a3b0 Sectors]
Non Coerced Size: 2.728 TB [0x15d40a3b0 Sectors]
Coerced Size: 2.728 TB [0x15d400000 Sectors]
Emulated Drive: Yes
Firmware state: Online, Spun Up
Commissioned Spare : No
Emergency Spare : No
Device Firmware Level: CC43
Shield Counter: 0
Successful diagnostics completion on : N/A
SAS Address(0): 0x4433221102000000
Connected Port Number: 0(path0)
Inquiry Data: Z1F0XRVMST3000DM001-1CH166 CC43
FDE Capable: Not Capable
FDE Enable: Disable
Secured: Unsecured
Locked: Unlocked
Needs EKM Attention: No
Foreign State: None
Device Speed: 6.0Gb/s
Link Speed: 6.0Gb/s
Media Type: Hard Disk Device
Drive Temperature :32C (89.60 F)
PI Eligibility: No
Drive is formatted for PI information: No
PI: No PI
Port-0 :
Port status: Active
Port's Linkspeed: 6.0Gb/s
Drive has flagged a S.M.A.R.T alert : No

Exit Code: 0x00[/bash]

 

[bash]/opt/lsi/MegaCLI # ./MegaCli -PDList -Aall | egrep "Enclosure Device ID:|Slot Number:|Inquiry Data:|Error Count:|state"
Enclosure Device ID: 252
Slot Number: 0
Media Error Count: 0
Other Error Count: 0
Firmware state: Online, Spun Up
Inquiry Data: Z1F0XS5MST3000DM001-1CH166 CC43
Enclosure Device ID: 252
Slot Number: 1
Media Error Count: 0
Other Error Count: 0
Firmware state: Online, Spun Up
Inquiry Data: Z1F0XRVMST3000DM001-1CH166 CC43[/bash]

In diesem Abschnitt dokumentieren wir den Testlauf für einen Fall, den man als Serverbetreiber am liebsten nie haben möchte: Ausfall einer Platte im RAID-1.

Alle Aktionen in diesem Abschnitt führen wir mit dem MegaCli auf der Shell des Hosts durch.

Erkennung eines Plattenausfalls

Ein Plattenausfall äußert sich darin, daß das Virtual Drive 0 nicht mehr als "Optimal" angezeigt wird. Ersichtlich wird dies im vSphere-Client unter Configuration / Health Status:

Esxi-raid-degraded

Außerdem läßt es sich in der Host-Shell mittels MegaCli abfragen:

[bash]/opt/lsi/MegaCLI # ./MegaCli -ldinfo -lall -aall
Adapter 0 -- Virtual Drive Information:
Virtual Drive: 0 (Target Id: 0)
Name :
RAID Level : Primary-1, Secondary-0, RAID Level Qualifier-0
Size : 2.728 TB
Is VD emulated : Yes
Mirror Data : 2.728 TB
State : Degraded
Strip Size : 64 KB
Number Of Drives : 2
[...]
Exit Code: 0x00[/bash]

Wir hoffen, daß dort "Degraded" steht und nicht "Failed", was bedeuten würde, daß beide Platten ausgefallen sind. Allerdings würde der Server dann wohl nicht mehr booten.

Natürlich ist es unschön, manuell im vSphere-Client oder auf der Shell des Hosts nach RAID-Ausfällen schauen zu müssen. Man möchte wohl eher aktiv darüber informiert werden. Daher ist - falls kein vCenter zur Verfügung steht, das Email-Alarme unterstützt - eine Methode wie das --HIER-- beschriebene Monitoring des RAID-Status mittels MegaCli, SCP und Zabbix empfehlenswert.

Zur Identifizierung der ausgefallenen Platte kann man ebenfalls im vSphere-Client nachschauen, oder wir holen wir uns die Info der physikalischen Platten im MegaCli. Interessant sind hier die Einträge "Enclosure Device ID", "Slot Number" und "Firmware State".

[bash]/opt/lsi/MegaCLI # ./MegaCli -pdlist -aall
Adapter #0

Enclosure Device ID: 252
Slot Number: 0
[...]
Firmware state: Online, Spun Up

Enclosure Device ID: 252
Slot Number: 1
Firmware state: Online, Spun Up[/bash]

Wenn dort etwas anderes als "Online" steht, z.B. "Failed", "Unconfigured Bad", "Missing" oder "Offline", ist die Platte aus dem Array geflogen. Die Enclosure und Slot Nummer merken wir uns.

Forcierter Plattenausfall für den Test

Wir führen unseren Test durch, indem wir eine der Platten im RAID mit zwangs-offline setzen. Die Platte gilt dann als "ausgefallen".

[bash]MegaCli -pdoffline -physdrv[252:1] -a0 # For test only, don't do this on your server!!
Adapter: 0: EnclId-252 SlotId-1 state changed to OffLine.
Exit Code: 0x00[/bash]

Hieraufhin wird das Array als "Degraded" markiert, wie oben aufgelistet. In unserem Beispiel haben wir also die Enclosure ID 252, Slot Number 1 "bearbeitet". Das physikalische Laufwerk fürdie weiteren Kommandos ist damit die "252:1".

Austausch der Platte

Zunächst markieren wir die ausgefallene Platte als "Missing", falls dies nicht schon der Fall ist. Das Kommando pdgetmissing muß die Platte melden.

[bash]/opt/lsi/MegaCLI # ./MegaCli -pdmarkmissing -physdrv[252:1] -a0

EnclId-252 SlotId-1 is marked Missing.

Exit Code: 0x00

/opt/lsi/MegaCLI # ./MegaCli -pdgetmissing -aall

Adapter 0 - Missing Physical drives

No. Array Row Size Expected
0 0 0 2861056 MB

Exit Code: 0x00[/bash]

Die "Array" und "Row" Nummern merken wir uns für später.

Im Falle einer tatsächlich defekten Platte würden wir diese jetzt zum Austausch durch den Support vorbereiten:

[bash] MegaCli -pdprprmv -physdrv[252:1] -a0[/bash]

Nach Austausch muß die neue Platte u.U. mit Kommandos wie -pdmakegood oder -pdonline bereitgemacht werden. Der Status der Platte muß jedenfalls "Unconfigured Good" sein. In unserem Testvorgang ist dies automatisch der Fall, da wir die Platte nicht tatsächlich austauschen lassen.

Rebuild der neuen Platte

Die neue Platte wird als Ersatz für die ausgefallene bestimmt und der Rebuild gestartet. Für "array" und "row" wählen wir die Werte aus der Tabelle von eben:

[bash]/opt/lsi/MegaCLI # ./MegaCli -pdreplacemissing -physdrv[252:1] -array0 -row0 -a0

Adapter: 0: Missing PD at Array 0, Row 0 is replaced.

Exit Code: 0x00

/opt/lsi/MegaCLI # ./MegaCli -pdrbld -start -physdrv[252:1] -a0

Started rebuild progress on device(Encl-252 Slot-1)

Exit Code: 0x00[/bash]

Dann läuft der Rebuild. Über den Fortschritt können wir uns so informieren:

[bash]/opt/lsi/MegaCLI # ./MegaCli -pdrbld -showprog -physdrv[252:1] -a0

Rebuild Progress on Device at Enclosure 252, Slot 1 Completed 15% in 38 Minutes.

Exit Code: 0x00[/bash]

Nach Abschluß des Rebuild ist die Platte dann wieder "Online" und das Array "Optimal".

Nach der Auslieferung des ESXi-Servers von Hetzner kann man Überlegen, ob man die Updates für 5.0 Update 1 Updates einspielt, oder wie hier jetzt dargestellt das Update auf ESXi 5.1.

Dabei ist zu bedenken, daß möglicherweise noch nicht alle Drittanbieter-Software, die Verwendung finden soll, (vollständig) mit ESXi 5.1 kompatibel ist. Als Beispiel sei die Backup-Software "Veeam Backup & Replication" genannt, bei der noch nicht alle Funktionen unter 5.1 korrekt laufen.

Viele Dritthersteller erhalten offenbar von VMware erst sehr spät, quasi gleichzeitig mit der Allgemeinheit, Zugriff auf neue Major Releases, so daß einige Zeit vergeht, bis diese ihre Produkte angepaßt haben.

Wir empfehlen daher, mit dem Update auf 5.1 zu warten, bis Kompatibilität hergestellt ist und die üblicherweise vorhandenen "Kinderkrankheiten" ausgeräumt sind.

Update auf ESXi 5.1

Wichtig: Vor der Installation von Updates sollten alle VMs heruntergefahren und der Host über den vSphere Client in den Maintenance Mode versetzt werden. Dies kann man natürlich auch mit Hilfe der CLI machen.

[bash]
# backup ESXi configuration to persist changes /sbin/auto-backup.sh
# enter maintenance mode
vim-cmd hostsvc/maintenance_mode_enter[/bash]

Herunterladen des Updates

Man kann hier das Offline Bundle Herunterladen: ESXi 5.1 Offline Bundle. Der Name der Datei: VMware-ESXi-5.1.0-799733-depot.zip.

Wenn man keinen Zugriff auf diese Datei hat, kann man auch - wie weiter unten beschrieben - eine andere Möglichkeit benutzen, um das Update einzuspielen.

Unterschiede zwischen Install und Update

Ein "Profil" im Sinne von VMware ist eine Zusammenstellung aller VIBs (ähnlich wie .RPM oder .DEB Pakete einer Linux-Distribution), die auf dem ESXi installiert sein sollen. Einen Profilwechsel könnte man mit einem Distributions-Upgrade unter Linux vergleichen.

Zusätzlich ist zu beachten, daß im Gegensatz zu üblichen Linux-Systemen ein Großteil des ESXi-Dateisystems beim Bootvorgang aus VIBs zusammengebaut wird. Der Inhalt von z.B. /bin oder /sbin ist nicht statisch auf der Platte abgelegt, sondern wird beim Booten aus VIBs ausgepackt.

Update mit Hilfe des Offline-Depots

[bash]
/vmfs/volumes/datastore1/ # esxcli software profile install -d /vmfs/volumes/datastore1/VMware-ESXi-5.1.0-799733-depot.zip -p ESXi-5.1.0-799733-standard
Installation Result
Message: The update completed successfully, but the system needs to be rebooted for the changes to be effective.
Reboot Required: true
VIBs Installed: VMware_bootbank_ata-pata-amd_0.3.10-3vmw.510.0.0.799733, VMware_bootbank_ata-pata-atiixp_0.4.6-4vmw.510.0.0.799733,
VMware_bootbank_ata-pata-cmd64x_0.2.5-3vmw.510.0.0.799733, VMware_bootbank_ata-pata-hpt3x2n_0.3.4-3vmw.510.0.0.799733,
VMware_bootbank_ata-pata-pdc2027x_1.0-3vmw.510.0.0.799733, VMware_bootbank_ata-pata-serverworks_0.4.3-3vmw.510.0.0.799733,
VMware_bootbank_ata-pata-sil680_0.4.8-3vmw.510.0.0.799733, VMware_bootbank_ata-pata-via_0.3.3-2vmw.510.0.0.799733,
VMware_bootbank_block-cciss_3.6.14-10vmw.510.0.0.799733, VMware_bootbank_ehci-ehci-hcd_1.0-3vmw.510.0.0.799733,
VMware_bootbank_esx-base_5.1.0-0.0.799733, VMware_bootbank_esx-dvfilter-generic-fastpath_5.1.0-0.0.799733, [
VMware_bootbank_esx-tboot_5.1.0-0.0.799733, VMware_bootbank_esx-xlibs_5.1.0-0.0.799733,
...
VIBs Removed: VMware_bootbank_ata-pata-amd_0.3.10-3vmw.500.0.0.469512, VMware_bootbank_ata-pata-atiixp_0.4.6-3vmw.500.0.0.469512,
VMware_bootbank_ata-pata-cmd64x_0.2.5-3vmw.500.0.0.469512, VMware_bootbank_ata-pata-hpt3x2n_0.3.4-3vmw.500.0.0.469512,
VMware_bootbank_ata-pata-pdc2027x_1.0-3vmw.500.0.0.469512, VMware_bootbank_ata-pata-serverworks_0.4.3-3vmw.500.0.0.469512,
VMware_bootbank_ata-pata-sil680_0.4.8-3vmw.500.0.0.469512, VMware_bootbank_ata-pata-via_0.3.3-2vmw.500.0.0.469512,
...
VIBs Skipped:[/bash]

Nach einem Neustart des System hat man die aktuellste Version vom ESXi.

(mehr …)

Beim Betrieb eines RAID-1 möchte man üblicherweise über einen Ausfall einer Platte möglichst sofort informiert werden, um sie schnellstmöglich tauschen lassen zu können.

Nach Installation des CIM-Providers von LSI für den LSI MegaRAID SAS 9260-4i wird auf der Hardware-Monitoring-Seite im vSphere-Client der Status des RAID angezeigt. Eine aktive Alarmierung ist aber nur in der kostenpflichtigen Version und bei Betrieb eines vCenter möglich - der vSphere-Client allein hat keine Alarmierungsfunktionalität.

Als Alternative installieren wir das "MegaCli" (ein Kommandozeilentool zum Management des RAID-Controllers) auf dem Host und richten ein Skript ein, das regelmäßig Hardwarestatus-Informationen zusammenstellt und per SCP an einen Server schickt, auf dem die Informationen weiter ausgewertet werden können.

In unserem Beispiel verwenden wir die Monitoring-Software "Zabbix", für die wir ein Skript, User-Parameter und ein Template zur Verfügung stellen. Mit etwas Erfahrung sollten sich die Skripts aber auch für andere Monitoring-Systeme anpassen lassen.

Skriptinstallation auf dem ESXi-Host

MegaCli installieren

In diesem Abschnitt der Installationsanleitung ist beschrieben, wie wir den MegaCli installieren.

Verzeichnis für die Skripts einrichten

Da der Großteil des ESXi-Dateisystems beim Booten neu zusammengesetzt und vorige Inhalte damit gelöscht werden, brauchen wir einen "sicheren Ort" für unsere Skripts und Dateien. Wir entschließen uns, ein Unterverzeichnis des Datastores zu benutzen, hier /vmfs/volumes/datastore1/lsi. Dieses legen wir an.

[bash]mkdir /vmfs/volumes/datastore1/lsi[/bash]

SSH-Key vom Monitoring-Server übertragen

Die fertigen RAID-Informationen sollen per SCP auf den Monitoring-Server geschickt werden. Damit dies automatisiert und ohne Kennworteingabe geht, brauchen wir ein "Identity-File", sprich den SSH Private Key des gewünschten Users auf dem Monitoring-Server.

In unserem Beispiel hat der Monitoring-Server den Hostnamen centaurus.tianet.de und der User heißt zabbix

Mit dem Kommando ssh-keygen erzeugen wir auf dem Monitoring-Server ein solches, falls der User noch keins hat. Die Passphrase lassen wir leer, da der ESXi-Host ohne Kennworteingabe den Key benutzen können muß.

[bash]zabbix@centaurus:~$ ssh-keygen

Generating public/private rsa key pair.
Enter file in which to save the key (/home/zabbix/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/zabbix/.ssh/id_rsa.
Your public key has been saved in /home/zabbix/.ssh/id_rsa.pub.
The key fingerprint is:
4c:60:c9:cb:0f:e4:92:c4:2a:40:60:86:af:82:0f:7b zabbix@centaurus
The key's randomart image is: [...][/bash]

Die Datei id_rsa kopieren wir per SCP auf den ESXi-Host ins richtige Verzeichnis. Dazu brauchen wir das Root-Kennwort.

[bash]zabbix@centaurus:~$ scp .ssh/id_rsa root@esxi.tianet.de:/vmfs/volumes/datastore1/lsi/centaurus_zabbix_id
The authenticity of host 'esxi.tianet.de (5.9.86.110)' can't be established.
RSA key fingerprint is 77:d8:25:f8:40:16:e6:6c:36:c1:ed:5f:8f:99:6e:b0.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'esxi.tianet.de,5.9.86.110' (RSA) to the list of known hosts.
Password:
id_rsa 100% 1675 1.6KB/s 00:00[/bash]

(mehr …)

Bei der Virtualisierung auf Hetzner-Servern ist es aus mehreren Gründen sinnvoll bzw. notwendig, die VMs an einen separaten virtuellen Switch anzuschließen und das so entstehende Netz über eine Router-VM mit dem Hetzner-Netz zu verbinden.

Dieser Abschnitt beschreibt, wie wir eine Router-VM auf Basis von "pfSense" einrichten. Es gibt natürlich unzählige weitere Routerlösungen. Wir haben uns für pfSense entschieden, weil diese sehr stabil läuft, einen großen Funktionsumfang bietet und eine komfortabel zu bedienende GUI aufweist.

Anlegen der VM

Wir loggen mit dem vSphere-Client am ESXi ein und erstellen eine neue virtuelle Maschine.

Grundkonfiguration

Configuration Custom
Name pfSense
Destination Storage datastore1
Virtual Machine Version 8
Guest OS: Other / FreeBSD (64-bit)
Number of virtual sockets 1
Number of cores per socket 1
Memory 256 MB

Netzwerkkonfiguration

Netzwerkkonfiguration

Storage-Konfiguration

SCSI Controller LSI Logic Parallel
Type of disk Create a new virtual disk
Disk Size 5 GB
Disk Provisioning Thick Provision Lazy Zeroed
Location Store with the virtual machine
Virtual Device Node SCSI (0:0)
Mode "Independent" unchecked

Abschließende Konfiguration

Wir setzen den Haken bei "Edit the virtual machine settings before completion" und führen folgende Schritte durch:

Konfiguration der MAC-Adresse
(mehr …)

Die Version vom Ausgelieferten ESXi-Server ist veraltet. Auslieferungs Build-Nummer: 623860

Die aktuellen Updates kann man direkt von der VMware-Homepage ziehen oder wie bei Virtualisierung mit VMware ESXi auf EX4 - Server-Vorbereitung beschrieben herunterladen.

Die aktuellen Patche kann man auch immer von hier ziehen: http://www.vmware.com/patchmgr/download.portal (Achtung, ESX kann kein WGET über HTTPS!)

Deswegen wird nun hier gezeigt, wie man die aktuellen Updates einspielt.

ESXi-Updates

Wir verwenden hier das Kommando esxcli software vib install anstelle von update, da "update" keine neuen VIBs installiert, sondern nur bereits existierende upgradet. "install" macht beides: es upgradet existierende VIBs und installiert fehlende. Bereits existierende VIBs, die im Zip nicht enthalten sind, bleiben in beiden Fällen unangetastet.

Wichtig: Vor der Installation von Updates sollten alle VMs heruntergefahren und der Host über den vSphere Client in den Maintenance Mode versetzt werden. Dies kann man natürlich auch mit Hilfe der CLI machen.

[bash]
# backup ESXi configuration to persist changes /sbin/auto-backup.sh
# enter maintenance mode
vim-cmd hostsvc/maintenance_mode_enter[/bash]

Installation von ESXi500-201204001 - Build Number: 653509

[bash]~ # esxcli software vib install --depot=/vmfs/volumes/datastore1/patches/ESXi500-201204001.zip
Installation Result
Message: Operation finished successfully.
Reboot Required: false
VIBs Installed: VMware_locker_tools-light_5.0.0-1.12.653509
VIBs Removed: VMware_locker_tools-light_5.0.0-1.11.623860
VIBs Skipped: VMware_bootbank_ata-pata-amd_0.3.10-3vmw.500.0.0.469512,
...[/bash]

Installation von ESXi500-201205001 - Build Number: 702118

[bash]~ # esxcli software vib install --depot=/vmfs/volumes/datastore1/patches/ESXi500-201205001.zip
Installation Result
Message: The update completed successfully, but the system needs to be rebooted for the changes to be effective.
Reboot Required: true
VIBs Installed: VMware_bootbank_esx-base_5.0.0-1.13.702118
VIBs Removed: VMware_bootbank_esx-base_5.0.0-1.11.623860
VIBs Skipped: VMware_bootbank_ata-pata-amd_0.3.10-3vmw.500.0.0.469512, VMware_bootbank_ata-pata-atiixp_0.4.6-3vmw.500.0.0.469512, VMware_bootbank_ata-pata-cmd64x_0.2.5-3vmw.500.0.0.469512,
...[/bash]

Installation von ESXi500-201206001 - Build Number: 721882

[bash]~ # esxcli software vib install --depot=/vmfs/volumes/datastore1/patches/ESXi500-201206001.zip
Installation Result
Message: The update completed successfully, but the system needs to be rebooted for the changes to be effective.
Reboot Required: true
VIBs Installed: VMware_bootbank_esx-base_5.0.0-1.16.721882
VIBs Removed: VMware_bootbank_esx-base_5.0.0-1.13.702118
VIBs Skipped: VMware_bootbank_ata-pata-amd_0.3.10-3vmw.500.0.0.469512, VMware_bootbank_ata-pata-atiixp_0.4.6-3vmw.500.0.0.469512,
...[/bash]

Installation von ESXi500-201207001 - Build Number: 768111

[bash]~ # esxcli software vib install --depot=/vmfs/volumes/datastore1/patches/ESXi500-201207001.zip
Installation Result
Message: The update completed successfully, but the system needs to be rebooted for the changes to be effective.
Reboot Required: true
VIBs Installed: VMware_bootbank_esx-base_5.0.0-1.18.768111, VMware_bootbank_misc-drivers_5.0.0-1.18.768111, VMware_bootbank_net-e1000_8.0.3.1-2vmw.500.1.18.768111, VMware_bootbank_scsi-mptsas_4.23.01.00-5vmw.500.1.18.768111, VMware_locker_tools-light_5.0.0-1.18.768111
VIBs Removed: VMware_bootbank_esx-base_5.0.0-1.16.721882, VMware_bootbank_misc-drivers_5.0.0-1.11.623860,
...[/bash]

Installation von ESXi500-201209001 - Build Number: 821926

[bash]~ # esxcli software vib install --depot=/vmfs/volumes/datastore1/patches/ESXi500-201209001.zip
Installation Result
Message: Operation finished successfully.
Reboot Required: false
VIBs Installed: VMware_locker_tools-light_5.0.0-1.22.821926
VIBs Removed: VMware_locker_tools-light_5.0.0-0.0.469512
VIBs Skipped: VMware_bootbank_ata-pata-amd_0.3.10-3vmw.500.0.0.469512,
...[/bash]

Installation von allen Updates nach einander

[bash]esxcli software vib install --depot=/vmfs/volumes/datastore1/patches/ESXi500-201204001.zip
sleep 10
esxcli software vib install --depot=/vmfs/volumes/datastore1/patches/ESXi500-201205001.zip
sleep 10
esxcli software vib install --depot=/vmfs/volumes/datastore1/patches/ESXi500-201206001.zip
sleep 10
esxcli software vib install --depot=/vmfs/volumes/datastore1/patches/ESXi500-201207001.zip
sleep 10
esxcli software vib install --depot=/vmfs/volumes/datastore1/patches/ESXi500-201209001.zip
sleep 10
reboot[/bash]

Raid-Controller Update

Überprüfen der Firmware des Raid-Controllers

Die hier installierte Firmware ist die aktuellste von LSI.

[bash]/opt/lsi/MegaCLI # ./MegaCli -adpallinfo -a0|grep ^FW

FW Package Build: 12.12.0-0111
FW Version : 2.130.353-1663[/bash]

Installation des Firmware Updates vom Raid-Contoller

ACHTUNG! Bei unserem Testserver war die aktuellste Firmware schon installiert. Deswegen nur exemplarisch!

[bash]/opt/lsi/MegaCLI # ./MegaCli -adpfwflash -f /vmfs/volumes/datastore1/patches/mr2108fw.rom -a0

Adapter 0: LSI MegaRAID SAS 9260-4i
Vendor ID: 0x1000, Device ID: 0x0079

Package version on the controller: 12.12.0-0111
Package version of the image file: 12.12.0-0111
ERROR: The image file has older version than or same as that on the
controller. The controller is not flashed.

Exit Code: 0x01[/bash]

© 2011-2019 SJT CONSULTING – Alle Rechte vorbehalten. | Datenschutz | Impressum