Die Foren-SW läuft ohne erkennbare Probleme. Sollte doch etwas nicht funktionieren, bitte gerne hier jederzeit melden und wir kümmern uns zeitnah darum. Danke!

Raid-Treiber bei ESXi-Setup installieren // 3Ware 9750-4i

Moderatoren: Dayworker, irix

Member
Beiträge: 51
Registriert: 22.04.2010, 17:23

Raid-Treiber bei ESXi-Setup installieren // 3Ware 9750-4i

Beitragvon vin-jordan » 26.04.2010, 17:45

Hallo,
im ESXi 4.0 Setup soll eine Abfrage nach zusätzlichen Treibern kommen.
Steht hier:
http://www.3ware.com/KB/article.aspx?id=15548
3Ware Support-Seite hat geschrieben:When prompted for additional driver support, please provide the 3ware driver CD attached to this KB article and click next. Once the driver is loaded proceed with the installation, choosing the volume, etc.


Wo aber werde ich danach gefragt?

Den passenden Treiber für den RAID-Controller 9750-4i für ESXi 4.0 habe ich der VMwareseite entnommen.
http://downloads.vmware.com/d/info/datacenter_downloads/vmware_esxi/4#drivers_tools

King of the Hill
Beiträge: 13043
Registriert: 02.08.2008, 15:06
Wohnort: Hannover/Wuerzburg
Kontaktdaten:

Beitragvon irix » 26.04.2010, 18:25

Nein das steht da nicht und darum siehst du auch nichts. Nur beim ESX kann man bei der Installation Treiber einspielen. Beim ESXi geht das nur hinterher und darum kann man deinen Kontroller nur benutzen um ihn als 2. Storageanbindung zuverwenden. Magst du das nicht must du schauen ob du es in das oem.tgz einpflegen kannst deinen Treiber.

.....
VMWare ESXi4.0/4.0 update 1:
(RAID Device can only be Secondary Storage)....


Gruss
Joerg

King of the Hill
Beiträge: 13652
Registriert: 01.10.2008, 12:54
Wohnort: laut USV-Log am Ende der Welt...

Beitragvon Dayworker » 27.04.2010, 20:52

Für das Patchen der "oem.tgz" findest du eine Anleitung auf der immer mit einer gewissen Vorsicht zu geniessenden Webseite http://vm-help.com
Problematisch ist dabei nicht die Webseite ansich, sondern die manchmal unvollständigen Benutzerrückmeldungen.

Member
Beiträge: 51
Registriert: 22.04.2010, 17:23

Beitragvon vin-jordan » 03.05.2010, 15:54

Also leicht bzw. übersichtlich ist dieses Anliegen leider nicht.

So wie ich es recht verstanden habe, muss die "OEM.TGZ" aus einer 3.5er Version in das 4.0er Image integriert werden. Anschließend muss es in die "isolinux.cfg eingebunden werden damit es beim booten mitgeladen wird.
ISOs bearbeiten kann ich mittels Apache3.
Das ganze wäre ja noch hinzukriegen, aber sollen in dieser OEM.TGZ nun die Treiber sein?
"simple.map" und "pci.ids" sind also dafür da, damit das Setup die verbaute Hardware erkennt. Das wäre quasi der erste Schritt.
Diese beiden müssten in meinem Fall um den RAID-Controller ja aktualisiert werden, damit ESXi 4.0 den RAID-Controller erkennen (aber noch nicht installieren) kann.
Bitte korrigiert mich wenn ich falsch liege.

Der nächste Punkt:
vm-help.com hat geschrieben:Should you want to add additional drivers or modify simple.map/pci.ids to recognize additional hardware, then you would first need to modify this file.
Aber wie kann ich an diese Dateien kommen, wenn ich das System nicht ja nicht installieren kann?
Ich will's mir wirklich nicht zu einfach machen, aber gibt es eine HowTo in der es ein bisschen verständlicher erklärt ist?

edit:
vm-help.com hat geschrieben:This list was compiled from the file simple.map, which includes the PCI IDs and module names, and pci.ids which includes the PCI IDs and the device name. Both these files can be found on your ESXi host "AFTER" an install (/etc/vmware/simple.map and /usr/share/hwdata/pci.ids). The file pci.ids does list other devices, but ESXi will only recognize the devices listed in simple.map.

Member
Beiträge: 51
Registriert: 22.04.2010, 17:23

Beitragvon vin-jordan » 06.05.2010, 13:49

So, nach langem gesuche habe ich alle Schritte nach dieser Anleitung gemacht:
Anleitung um RAID-Treiber einzubinden

1. Ich habe den SSH Zugriff aktiviert um via WinSCP auf den ESXi Server zuzugreifen.
2. Dort habe ich mir die Datei "simple.map" herauskopiert und in einen Ordner namens "Skript" lokal auf meinem Rechner abgelegt
3. Das Skript von Philipp Wollermann in eine txt kopiert und die Dateiendung entfernt. Diese Datei ebenfalls in den Ordner "Skript" kopiert.
4. Die Installationsiso "VMware-VMvisor-Installer-4.0.0.Update01-208167.x86_64.iso" in den Ordner kopiert und in "VMware-VMvisor-Installer-4.0.0-171294.x86_64.iso" umbenannt.
5. Den RAID-Treiber in den Ordner kopiert und von "vmware-esx-drivers-scsi-3w-sas_400.3.26.00.001vm40-1.0.4.00000.229230.iso" in "ESX_ESXi_4.0_driver-GUID78f4117c3d57443485d1c9c989d80909.iso" umbenannt, damit das Skript die Dateien auch finden kann.

Nun habe ich vier Dateien in meinen Ordner:
- ESX_ESXi_4.0_driver-GUID78f4117c3d57443485d1c9c989d80909.iso
- install
- simple.map
- VMware-VMvisor-Installer-4.0.0-171294.x86_64

Via WinSCP wechsel ich in eine Partition in der genügend Platz ist.
Dazu überprüfe ich in der Konsole mittels "df" welche Partition genügen Platz hat und damit ich weiß wie diese heißt.
In dem Fall gehe ich in das Verzechnis /vmfs/volumes/. Dort sind die Partition alphanumerisch angegeben. In die erste die genügen Platz hat kopiere ich den gesamten Ordner "Skript" von meinem PC auf den ESXi-Server.
An der Konsole wechsel ich in diesen Ordner und gebe "./install" ein.
Das was mir angezeigt wird ist "ash: ./install: Permission denied"

Also gibt es i-wo ein Rechteproblem. In WinSCP kann ich dies in den Eigenschaften überprüfen. In jedem Ordner bis zu dem Ort wo sich meine dateien befinden herrscht 0755.
Die Dateien in dem Ordner haben die berechtigung 0644. Root darf also überall lesen, schreiben und ändern.
- Warum bekomme ich Permission denied?

edit: Es liegt an der abgespeckten busybox die die Programme einfach nicht besitzt.
versuche es nun mit einer Ubuntu.

Profi
Beiträge: 871
Registriert: 26.09.2007, 13:09
Wohnort: NRW

Beitragvon ideFix » 06.05.2010, 14:08

Du kannst das Script nicht starten, weil dir die Ausführungsberechtigungen fehlern.

644 =
owner: lesen + schreiben
group: lesen
other: lesen


1. Log dich via ssh auf deinen ESXi ein (ssh hattest du bereits freigeschaltet)
2. Navigiere zu dem Ordner, wo das Skript 'install' liegt
3. ändere die Berechtigungen mit:

chmod 775 ./install

Nun darf der Benutzer die Datei auch ausführen.

Member
Beiträge: 51
Registriert: 22.04.2010, 17:23

Beitragvon vin-jordan » 06.05.2010, 15:22

Code: Alles auswählen

/vmfs/volumes/4be18d7a-ec7e47f8-b47f-001517b6a3bd/skript #
/vmfs/volumes/4be18d7a-ec7e47f8-b47f-001517b6a3bd/skript # ls -l
-rwxr-xr-x    1 root     root             581632 Apr 26 10:01 ESX_ESXi_4.0_driver-GUID78f4117c3d57443485d1c9c989d80909.iso
-rwxr-xr-x    1 root     root          369717248 Apr 22 07:04 VMware-VMvisor-Installer-4.0.0-171294.x86_64.iso
-rwxr-xr-x    1 root     root               5999 May  5 12:48 install
-rwxr-xr-x    1 root     root              23730 Nov  8 08:50 simple.map
/vmfs/volumes/4be18d7a-ec7e47f8-b47f-001517b6a3bd/skript # chmod 755 ./install
/vmfs/volumes/4be18d7a-ec7e47f8-b47f-001517b6a3bd/skript #
/vmfs/volumes/4be18d7a-ec7e47f8-b47f-001517b6a3bd/skript # ./install
-ash: ./install: not found
/vmfs/volumes/4be18d7a-ec7e47f8-b47f-001517b6a3bd/skript #


Danke schonmal für den Hinweis!!
Noch eine Idee ?

Profi
Beiträge: 871
Registriert: 26.09.2007, 13:09
Wohnort: NRW

Beitragvon ideFix » 06.05.2010, 15:49

Ich vermute das die erste Zeile in dem Skript nicht

Code: Alles auswählen

#!/bin/ash

ist.

Diese bitte als 1. Zeile in das Skript einfügen.

Dann sollte es klappen.



Habe gerde versucht das Skript zu finden, aber auch wenn ich deinem Link folge finde ich es nicht.... muss wohl zum Optiker :D

Member
Beiträge: 51
Registriert: 22.04.2010, 17:23

Beitragvon vin-jordan » 06.05.2010, 16:27

Hier das Skript:

Code: Alles auswählen

#!/bin/bash

# VMware ESXi 4.0.0 ISO patch script 20090704
# - integrates 3ware 9650SE driver
# - integrates better wget and rsync from vm-help.com
# - activates unsupported (!!) SSH server
#
# by Philipp Wollermann <philipp@igowo.de>
# uses ideas from Varazirs mkesxiaio.sh: http://varazir.mine.nu/esxi/

# Requirements:
#
# tested with Ubuntu Linux 8.04
# please do "apt-get install unzip bzip2 mkisofs"

# Usage:
#
# 1) Get the following files and put them in a directory with this shell script:
#
# VMware-VMvisor-Installer-4.0.0-171294.x86_64.iso
# (-> https://www.vmware.com/go/get-free-esxi/)
#
# ESX_ESXi_4.0_driver-GUID78f4117c3d57443485d1c9c989d80909.iso
# (-> http://www.3ware.com/KB/article.aspx?id=15548)
#
# simple.map (you can extract that from an installed ESXi 4.0, see below)
#
# 2) Start the script from the directory where you placed all the files.

# Hint:
#
# I don't know if the simple.map can be redistributed, so for now you have to
# extract it yourself:
#
# Get VMware Workstation or Fusion (something else like VirtualBox may also work)
# Install ESXi as a virtual machine (see http://communities.vmware.com/docs/DOC-6590)
# When the install is finished and you see the yellow management screen, press Alt-F1
# Enter "unsupported", press ENTER, when asked for a password, just press ENTER
# Copy the simple.map to your Linux workstation using:
#
# scp /etc/vmware/simple.map 123.123.123.123:/root

# Todo:
#
# - Find out how to unpack the sys.vgz files, so the simple.map can be extracted
#   automatically.

set -e
set -u

RPWD=`pwd`

# Check if the script is run as a super-user
if [ ! $( id -u ) -eq 0 ]; then
  echo "Must have super-user rights to run this script."
  exit 0
fi

# Clean-up
echo "Preparing ..."
umount esx-cd || /bin/true
umount esx-dd || /bin/true
umount esx-3ware || /bin/true
rm -f ESXi-custom.iso
rm -rf $RPWD/esx-cd $RPWD/esx-build $RPWD/esx-oem $RPWD/esx-image $RPWD/esx-dd $RPWD/esx-3ware $RPWD/esx-3ware-unzip

# Create folders
mkdir -p $RPWD/esx-cd $RPWD/esx-build $RPWD/esx-oem $RPWD/esx-image $RPWD/esx-dd $RPWD/esx-3ware $RPWD/esx-3ware-unzip

# Copy files from ISO
echo "Extracting ISO ..."
mount -o loop VMware-VMvisor-Installer-4.0.0-171294.x86_64.iso $RPWD/esx-cd
cp -a $RPWD/esx-cd/* $RPWD/esx-build/
umount $RPWD/esx-cd

# Unzip 3ware driver
mount -o loop ESX_ESXi_4.0_driver-GUID78f4117c3d57443485d1c9c989d80909.iso $RPWD/esx-3ware
cd $RPWD/esx-3ware-unzip
unzip $RPWD/esx-3ware/offline-bundle/offline-bundle.zip
umount $RPWD/esx-3ware

ar x vmware-esx-drivers-scsi-3w-9xxx-400.2.26.08.035vm40-1.0.4.00000.x86_64.vib
tar xfz data.tar.gz

# Create oem.tgz staging folder
echo "Creating oem.tgz staging area ..."
mkdir -p $RPWD/esx-oem/etc/vmware $RPWD/esx-oem/bin $RPWD/esx-oem/usr/lib/vmware/vmkmod

# Create new inetd.conf with enabled SSH
echo "Creating new inetd.conf ..."
cat > $RPWD/esx-oem/etc/inetd.conf <<'EOF'
# Remote shell access
#
ssh     stream  tcp     nowait  root    /sbin/dropbearmulti dropbear  ++min=0,swap,group=shell -i -K60
ssh     stream  tcp6    nowait  root    /sbin/dropbearmulti dropbear  ++min=0,swap,group=shell -i -K60

# VMware authentication daemon
#
authd   stream  tcp     nowait  root    /sbin/authd  authd
authd   stream  tcp6    nowait  root    /sbin/authd  authd
EOF

# Create new simple.map with support for 3ware controllers ...
echo "Creating new simple.map ..."
cp $RPWD/simple.map $RPWD/esx-oem/etc/vmware/simple.map
echo "13c1:1004 0000:0000 storage 3w-9xxx.o" >> $RPWD/esx-oem/etc/vmware/simple.map

# Copy 3ware driver into vmkmod directory ...
echo "Copying 3w-9xxx.o driver ..."
cp $RPWD/esx-3ware-unzip/usr/lib/vmware/vmkmod/3w-9xxx.o $RPWD/esx-oem/usr/lib/vmware/vmkmod/

# Download wget and rsync package if not already downloaded
cd $RPWD
if [ ! -e SSH_FTP_oem_1.3.tgz ]; then
  echo "Downloading wget/rsync from vm-help.com ..."
  wget -q http://www.vm-help.com/esx/esx3i/Cus...TP_oem_1.3.tgz
fi

# Extract wget and rsync
echo "Integrating wget and rsync ..."
cd $RPWD/esx-oem
tar xfz $RPWD/SSH_FTP_oem_1.3.tgz bin/wget bin/rsync

# Build oem.tgz
echo "Building oem.tgz ..."
cd $RPWD/esx-oem
tar czf $RPWD/esx-build/oem.tgz *

# Add oem.tgz to isolinux.cfg
echo "Patching isolinux.cfg ..."
sed -i 's/install.tgz/install.tgz --- oem.tgz/g' $RPWD/esx-build/isolinux.cfg

# Extract & delete the image
echo "Extracting image ..."
tar -xzf $RPWD/esx-build/image.tgz -C $RPWD/esx-image
rm $RPWD/esx-build/image.tgz

# Unpack the compressed DD file
echo "Unpacking dd file ..."
cd $RPWD/esx-image/usr/lib/vmware/installer/
esx_ddf=(*.bz2)
bunzip2 ${esx_ddf[0]}
esx_ddf=(*.dd)

# Check the number of sectors
esx_sector=$(fdisk -ul ${esx_ddf[0]} 2>>/dev/null | awk '/bytes/ {print $9}')

# Check where the 5th partition starts
esx_number=$(fdisk -ul ${esx_ddf[0]} 2>>/dev/null | awk '/dd5/ {print $2}')

# Calculate offset of 5th partition in dd file
esx_offset=$(($esx_sector*$esx_number))

# Mounting the 5th partition of the DD file to esx-dd
echo "Mounting 5th partition of the DD file (offset: $esx_offset) ..."
mount -o loop,offset=$(($esx_sector*$esx_number)) $esx_ddf $RPWD/esx-dd/

# Copy the custom oem file to the mounted dd file
echo "Copying oem.tgz into dd file ..."
cp $RPWD/esx-build/oem.tgz $RPWD/esx-dd/oem.tgz

# Unmount the dd file
umount $RPWD/esx-dd

# Compressing the dd file
echo "Compressing dd file ..."
bzip2 -9 $esx_ddf

# Rebuilding image.tgz
echo "Rebuilding image ..."
cd $RPWD/esx-image
tar czf $RPWD/esx-build/image.tgz *

echo "Building new ISO ..."

# Build new ISO
cd $RPWD/esx-build
mkisofs -o $RPWD/ESXi-custom.iso -b isolinux.bin -c boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -input-charset utf-8 ../esx-build

rm -rf $RPWD/esx-cd $RPWD/esx-build $RPWD/esx-oem $RPWD/esx-image $RPWD/esx-dd $RPWD/esx-3ware $RPWD/esx-3ware-unzip

echo "Finished!"
exit 0


Nach langem hin und her probieren habe ich gemerkt, dass das Skript mit der 9750 Raid Karte von 3Ware gar nicht funktionieren "KANN".

Sieht man z.B. daran

Code: Alles auswählen

vmware-esx-drivers-scsi-3w-9xxx-400.2.26.08.035vm40-1.0.4.00000.x86_64

Das Skript ist für den 9650 Treiber ausglegt der komplett andere Pfade benutzt.
Merkwürdigerweise wurde mal von einem behauptet, dass er erfolgreich mit diesem Skript den Treiber der 9750er Karte eingebunden hat. Unmöglich ohne das Skript zu ändern!

Als totaler linuxnoob versuche ich mal das Skript manuell durchzuführen. :-/

Member
Beiträge: 27
Registriert: 11.03.2011, 13:09

Beitragvon b.peters » 17.03.2011, 12:21

Hallo,

ich stehe vor dem gleichen Problem (habe 3ware 9750) und weiß nicht ob ich's mit der o.g. Beschreibung versuchen soll. Funktioniert das?
Ich kenne mich in der Linux Konsole nicht aus.

Gruß

Benni

Member
Beiträge: 51
Registriert: 22.04.2010, 17:23

Beitragvon vin-jordan » 17.03.2011, 15:35

Nein, das wird nicht funktionieren. Danke, dass du nochmal darauf geantwortet hast. Ich habe versäumt es hier zu sagen.
Also...jetzt muss ich nochmal schwer überlegen, ist schon so lange her...
Zwischen der oberen und der unteren Zeile liegt jetzt eine halbe Stunde und mir fällt es nicht mehr richtig ein.

Das ESXi-System wurde temporär ohne RAID-Controller auf einem anderen System installiert. Ich frage mich gerade an dieser Stelle warum es nicht in dem selben System auf eine andere Platte ohne Raid installiert wurde. Ich weiß es nciht mehr, aber ich weiß, dass es notwendig war.
Nach der Installation hatte man die Möglichkeit den Treiber für das Raid erfolgreich einzubinden. Den Treiber bekommt man soweit ich weiß auch offiziel.
Nachdem ESXi auf dem temporären System mit dem Treiber für den RAID-Controller bestückt wurde, musste diese Installation mittels DD if=... of=.. auf eine Platte in das System mit dem RAID kopiert werden. In diesem Fall war es eine übliche Flashkarte mit ein paar Gigabyte.
Das Problem war an dieser Stelle, dass auch für DD der RAID-Controller unterstützt werden musste. Wenn ich mich recht erinnere war es die zu dieser Zeit aktuellste Ubuntudistribution.
Nun hatte man eine ESXi-Installation die den RAID-Controller erkannte. Im vSphere konnte man nun die am Controller angeschlossenen Platten als zusätzlichen Datastore definieren. Voilà...ich hoffe, das waren ein paar Denkanstöße.
Mich stört's gerade ein wenig, dass ich es nicht dokumentiert habe...und wenn...dann weiß ich leider nicht mehr wo :-/

Mich würde es freuen wenn du eine Lösung findest würdest und du sie hier posten könntest...

Bis dahin
Gruß!


Zurück zu „ESXi 4“

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 0 Gäste