Artikel mit Tag vsphere

[Lösung] vSphere/ESXi 6.0 U1 mit Veeam - Error: NFC storage connection is unavailable

Es ist mal wieder Zeit für einen Ausflug in virtuelle Gefilde, genauer gesagt soll es um das neueste Update aus dem Hause VMware gehen.

vSphere/Veeam - NFC storage connection is unavailable

VMware hat vor wenigen Tagen ein Update 60u1 für vCenter und ESXi Maschinen veröffentlicht (Changelog). 
Dieses bringt neben Neuerungen auch neue Probleme mit sich, so lässt sich nach einem Update auf die aktuellste Version keine virtuelle Maschine mit der Sicherungssoftware Veeam sichern, auch wenn dort die aktuellste Patch Version installiert ist. 

Die Sicherung bricht mit dem folgenden Fehler ab:

Getting VM info from vSphere
Error: NFC storage connection is unavailable. Storage: [stg:datastore-666,nfchost:host-666,conn:127.0.1.1]. Storage display name: [datastore]
Failed to create NFC download stream. NFC path: [nfc://conn:127.0.1.1,nfchost:host-667,stg:datastore-666@localhost.vmx]. 

Im Netz finden sich einige Vorschläge die dieses Problem angeblich lösen. Viele bringen den Fehler mit falschen DNS Einstellungen in Verbindung und schlagen vor alle Geräte richtig ins DNS einzutragen, bzw. die Host Datei anzupassen.
Leider beziehen sich die Lösungen oft auf ältere ESXi bzw. Veeam Versionen und führen somit nicht zum gewünschten Ziel.

veeam

Hier hilft ein Blick in die Logs der Sicherungssoftware oft weiter:

ERR |Failed to initiate NFC session. Target host: [127.0.0.1]. VI connection ID: [127.0.1.1]. Storage MOID: [datastore-666].
ERR |SSL error, code: [3368].error:14094410:SSL routines:SSL3_READ_BYTES:sslv3 alert handshake failure
>>  |SSL_connect() function call has failed.

Der Meldung lässt sich entnehmen, dass die Verbindung an der SSL Aushandlung scheitert. Der Fehler hat somit Nichts mit DNS oder ähnlichem zu tun, es kommt schlicht keine sichere Verbindung zu Stande.


Ein weiterer Blick in den Changelog von ESXi 6.0 Update 1 zeigt folgenden Satz "Support for SSLv3: Support for SSLv3 has been disabled by default."
Das heißt, aktualisierte ESXi Hosts unterstützen dieses Protokoll in der neuesten Version nicht mehr. Das ist nicht weiter verwunderlich, denn es gilt als unsicher.

vSphere6

Leider benötigt Veeam SSLv3 weiterhin für seine Sicherungen, genauer betrifft es den Port 902. Die Funktion lässt sich über einen Eintrag in der Config wieder aktivieren. Dazu muss auf die jeweilige ESXi Maschine via SSH zugegriffen werden. Die unten erwähnte Konfigurationsdatei gilt es anzupassen.

cp /etc/vmware/config /etc/vmware/config.date
vi /etc/vmware/config
    vmauthd.ssl.noSSLv3 = false
    

Danach ist ein Neustart des Dienstes erforderlich

/etc/init.d/rhttpproxy restart 

Nach dieser Änderung sollten Sicherungen mit Veeam wieder funktionieren. Weitere Details dazu unter kb2063.

VirtualBox to VMware - OVF/OVA Image erstellen und in VMware importieren

Für den Umzug eines virtuellen Systems von VirtualBox zu VMware oder anderen virtuellen Hosts wurde das Format OVF/OVA (Open Virtualization Format) eingeführt.
Dieses ermöglicht den Export/Import von virtuellen Maschinen auf verschiedene Systeme.

So leicht sich dieser Vorgang erscheinen mag, so viele Hürden kann dieser in der Praxis haben.

Ich möchte heute Schritt für Schritt die Konvertierung eines Oracle VirtualBox OVA Images zu einer VMware OVF Vorlage durchgehen. (Als Beispiel könnte der neulich erwähnte Web Security Dojo genommen werden, welches ebenfalls im OVA Format vorliegt).


OVA Image erstellen und in VMware/vSphere (ESXi) importieren

virtualbox-ova-export

Appliance exportieren

Zunächst muss von einer bestehenden virtuellen Maschine in VirtualBox ein OVA Image erstellt werden.

Nachdem im Menü "Appliance exportieren" gewählt wurde, gilt es die ersten Dinge zu beachten:

  • Als OVA Version sollte Version 1.0 gewählt werden
  • Auch sollte der Haken bei "Schreibe Manifest Datei" gesetzt werden

virtualbox-ova-export

Danach ist auf der Festplatte eine "Dateiname.ova" vorhanden.

Image konvertieren

Bevor nun der Import in VMware gestartet werden kann, sollte die Datei konvertiert werden. Dafür stellt VMware die Open Virtualization Format Tools bereit.
Zum Herunterladen dieser Tools ist ein Account notwendig, darum habe ich mich um einen anderen Weg bemüht.

Ein einfacherer Weg ist es die OVA Datei mit 7Zip oder WinZip zu entpacken.

Danach sind im Ordner eine *.vmdk, eine *.mf und eine *.ovf enthalten. Letztere, also die "Dateiname.ovf", könnte nun mit VMware importiert werden "OCF Vorlage bereitstellen".

ova-entpacken

Image importieren

Oft kommt es jedoch beim ersten Import zu Fehlermeldungen, da in OVF Datei Einträge vorhanden sind, mit denen VMware so seine Probleme hat.

Diese Fehler lassen sich mit etwas Handarbeit beheben.

ova-import-error-ovf

Der Fehler "Nicht unterstützte Hardwarefamilie 'virtualbox-2.2" lässt sich durch editieren der "Dateiname.ovf" behehen.  (Als Editor kann hier Notepad++ oä. genommen werden).

Sobald die Datei geöffnet ist kann mit Strg+F nach dem Wert "virtualbox" gesucht oder gleich die Zeile (29) aufgerufen werden.

<vssd:VirtualSystemType>virtualbox-2.2</vssd:VirtualSystemType>

Diese wird ab ESXi 5.x ersetzt durch:

<vssd:VirtualSystemType>vmx-08</vssd:VirtualSystemType>

Ein weiterer Fehler der aufreten kann ist: "Keine Unterstützung für Gerätetyp 20".

ova-import-error

Auch hier kann eine Lösung mit Hilfe der OVF gefunden werden.

Suche

<Item>
<rasd:Address>0</rasd:Address>
<rasd:Caption>sataController0</rasd:Caption>
<rasd:Description>SATA Controller</rasd:Description>
<rasd:ElementName>sataController0</rasd:ElementName>
<rasd:InstanceID>5</rasd:InstanceID>
<rasd:ResourceSubType>AHCI</rasd:ResourceSubType>
<rasd:ResourceType>20</rasd:ResourceType>
</Item>

Ersetze mit

<Item>
<rasd:Address>0</rasd:Address>
<rasd:Caption>SCSIController</rasd:Caption>
<rasd:Description>SCSI Controller</rasd:Description>
<rasd:ElementName>SCSIController</rasd:ElementName>
<rasd:InstanceID>5</rasd:InstanceID>
<rasd:ResourceSubType>lsilogic</rasd:ResourceSubType>
<rasd:ResourceType>6</rasd:ResourceType>
</Item>

Ein letzter Fehler, der sich bei meinem Test bemerkbar machte, konnte behoben werden, indem der Bereich einfach ignoriert wurde. (Zeile 83)

Suche

     <Item>
        <rasd:AddressOnParent>3</rasd:AddressOnParent>
        <rasd:AutomaticAllocation>false</rasd:AutomaticAllocation>
        <rasd:Caption>sound</rasd:Caption>
        <rasd:Description>Sound Card</rasd:Description>
        <rasd:ElementName>sound</rasd:ElementName>
        <rasd:InstanceID>7</rasd:InstanceID>
        <rasd:ResourceSubType>ensoniq1371</rasd:ResourceSubType>
        <rasd:ResourceType>35</rasd:ResourceType>
      </Item>

Da es sich nur um das Soundmodul handelt, kann dieses erst einmal ignoriert werden.

      <Item ovf:required="false">
        <rasd:AddressOnParent>3</rasd:AddressOnParent>
        <rasd:AutomaticAllocation>false</rasd:AutomaticAllocation>
        <rasd:Caption>sound</rasd:Caption>
        <rasd:Description>Sound Card</rasd:Description>
        <rasd:ElementName>sound</rasd:ElementName>
        <rasd:InstanceID>7</rasd:InstanceID>
        <rasd:ResourceSubType>ensoniq1371</rasd:ResourceSubType>
        <rasd:ResourceType>35</rasd:ResourceType>
      </Item>

Nun sollte einen Import über "OVF-Vorlage bereitstellen" Nichts mehr im Wege stehen.


Alternativ möchte ich hier die Konvertierung mit Hilfe des OVFTools über die Kommandozeile ausführen

Konvertierung mit den OVFTools

Diese müssen wie oben bereits erwähnt zunächst heruntergeladen und installiert werden.

OVFTools

Danach genügt es den unten beschriebenen Befehle auszuführen.

C:\Program Files\VMware\VMware OVF Tool\ovftool.exeovftool.exe --lax "C:\Pfad\zum\Image\Dateiname.ova" "C:\Pfad\zum\Image\Dateiname.ovf"


Troubleshooting

Damit auch wirklich keine Hürde bestehen bleibt, hier noch ein paar weitere Tipps

Fehlermeldung

Error:
 - Line 2: Incorrect namespace 'http://schemas.dmtf.org/ovf/envelope/2' found.
Completed with errors

Lösung: Die richtige OVA Version (1.0) beim Exportieren wählen.

Fehlermeldung

Capacity of uploaded disk is larger than requested

Lösung: In der OVF Datei nach "<DiskSection> </DiskSection>" suchen und die Festplattenkapazität anpassen.

Linux - VMware Tools in CentOS oder Ubuntu installieren

Bei Arbeiten mit ESXi Servern, ist es sinnvoll auf allen virtuellen Maschinen VMware Tools zu installieren. Auf Windows Maschinen ist die kein Problem, ein Rechtsklick auf die virtuelle Maschine und "VMware Tools installieren/aktualisieren" und schon sind die Tools quasi aktiv.

vmtools-installieren

Bei Linux Geräten müssen neben diesem ersten Schritt noch ein paar weitere ausgeführt werden.

VMware Tools in CentOS installieren

yum install make gcc kernel-devel kernel-headers glibc-headers perl

mkdir /mnt/cdrom

mount /dev/cdrom /mnt/cdrom

cd /tmp/

tar xvf /mnt/cdrom/VMwareTools-9.*.tar.gz

cd vmware-tools-distrib/

./vmware-install.pl -d

umount /mnt/cdrom/

Der Parameter "-d" hinter dem Perlskript bewirkt das automatische Bestätigen aller Abfragen während der Installation.

VMware Tools in Ubuntu installieren

Die Quick and Dirty Methode ist hier sicherlich die freie Alternative der VM Tools via sudo apt-get install open-vm-tools zu installieren. Wer dennoch auf die offizielle Variante zurückgreifen möchte, der führt folgendes aus.

sudo apt-get install make gcc

sudo mkdir cdrom

sudo mount /dev/cdrom /mnt/cdrom

cd /tmp

ls -l /mnt/cdrom/

sudo tar zxf /mnt/cdrom/VMwareTools-9.*.gz

cd vmware-tools-distrib/

./vmware-install.pl -d

umount /mnt/cdrom/