VMware Cloud Community
The-Kevster
Contributor
Contributor

SATA Support Clear as Mud!?

From the updated I/O sheet this is what's mentioned on supported SATA controllers....

Supported SAS/SATA Dual Controllers

ESX Server 3.5 supports selected SATA devices connected to dual SAS/SATA controllers. This support is limited to ESX Server 3.5. It is not included with ESX Server 3.0.x.

The supported dual SAS/SATA controllers are:

  • mptscsi_2xx (PCIE) ‐ LSI1078*

  • mptscsi_pcie ‐ LSI1068E (LSISAS3442E)*

  • mptscsi_pcix ‐ LSI1068 (SAS 5)*

  • aacraid_esx30 ‐ IBM serveraid 8k SAS controller*

  • cciss ‐ Smart Array P400/256 controller*

So what is the best PCIE card for me to put into my S5000PAL server that will use the above driver, if only someone could make a list :smileygrin:

Thanks,

Kev

Reply
0 Kudos
342 Replies
rpartmann
Hot Shot
Hot Shot

Hi,

many thanks for the hint!

Tried it and yes you were right. Cleaned up my / and /boot. Smiley Wink

Commented out these two lines (rm -r -f ...) so you have to delete these subdirs manually, leave them or change the script.

Fortunately i have kickstart in place for my devel server, so if it crashes it does no harm... Smiley Wink

thanks again,

Reinhard.

ps: Award points if you find answers helpful. Thanks.

ps: Award points if you find answers helpful. Thanks.
Reply
0 Kudos
rpartmann
Hot Shot
Hot Shot

Forgot to attach the new version (0.6). :smileygrin:

reinhard.

ps: Award points if you find answers helpful. Thanks.

ps: Award points if you find answers helpful. Thanks.
Reply
0 Kudos
jims_tx
Contributor
Contributor

I have the ASUS P5BV-E / SAS motherboard, which as anyone who has read up on SAS/SATA support knows, works great with VMware ESX v3.5. But, what has me scratching my head is that 3.5 installs, allows me to create a VMFS and deploy VMs even though I only have 1 SATA drive connected to the ICH7R controller (I'm not even using the SAS controller!). In the dmesg output below, you can see that the SAS controller is scsi5 and has no devices attached. While scsi4 is my AHCI Intel controller with a lone disk attached. Am I the only one that did not expect this to work? Does this mean that any ICH7R board w/ a support NIC will run ESX? That would let you pick up $80 motherboards and run ESX.

scsi4 : ahci

Vendor: ATA Model: ST380013AS Rev: 3.43

Type: Direct-Access ANSI SCSI revision: 05

VMWARE SCSI Id: Supported VPD pages for sda : 0x0 0x80 0x83

VMWARE SCSI Id: Device id info for sda: 0x2 0x0 0x0 0x18 0x4c 0x69 0x6e 0x75 0x7

8 0x20 0x41 0x54 0x41 0x2d 0x53 0x43 0x53 0x49 0x20 0x73 0x69 0x6d 0x75 0x6c 0x6

1 0x74 0x6f 0x72

VMWARE SCSI Id: Id for sda 0x20 0x20 0x20 0x20 0x20 0x20 0x20 0x20 0x20 0x20 0x2

0 0x20 0x34 0x4d 0x52 0x31 0x5a 0x41 0x37 0x42 0x53 0x54 0x33 0x38 0x30 0x30

VMWARE: Unique Device attached as scsi disk sda at scsi4, channel 0, id 0, lun 0

Attached scsi disk sda at scsi4, channel 0, id 0, lun 0

SCSI device sda: 156301488 512-byte hdwr sectors (80026 MB)

sda: sda1 sda2 sda3 sda4 < sda5 sda6 sda7 >

scsi5 : mptscsi_2xx

Reply
0 Kudos
rpartmann
Hot Shot
Hot Shot

Basically you are right. But i´n not 100% sure if any ICH7 controller will work correctly.

Your SAS controller is detected an driven by the driver mptscsi_2xx.

Your SATA controller is driven by ata_piix and these drives are recognized as /dev/sd[a|b|c|d].

So your SATA drive is being seen as an SCSI device.

And you can only format SCSI disks and SAN LUNS with VMFS.

here we go.....

hth,

Reinhard.

(can´t let you scatch you head until it bleeds.... Smiley Wink )

ps: Award points if you find answers helpful. Thanks.

ps: Award points if you find answers helpful. Thanks.
Reply
0 Kudos
DArndt
Enthusiast
Enthusiast

Jaap,

I am running a Sun Ultra 40 M2, but I was not able to get it working with the onboard sata controllers. I also have a LSI1068E as my SAS/SATA controller which is a VMware supported controller. I have tried it with both SAS and SATA disks and it works fine. The LSI1068E also works in raid mode, although only supports raid 0,1 and 10.

Two things to keep in mind with the Ultra 40, one there is a multimedia timer setting in the bios that must be disabled for VMware to work. Secondly if you are running with multi processors using both sockets, you will either need to have the same amount of memory on both sockets, or turn on memory interleaving to disable NUMA. If you are only using one socket then it won't matter, but with both sockets you will need that set.

Dave

Reply
0 Kudos
oluvido
Contributor
Contributor

Hello All,

I have read all these post with interest and I must first say that even though i'm a specialist in Windows, I'm a newbie in Linux. I have a Dell Inspiron 531. As usual, the installation of ESX 3.5 works but the get the Mounting root error. I have tried using the script from a ubumtu live CD but it does not seem to work as it complains about a patrticular line. I will preferr to run it in the troubleshooting mode but would like to know how to navigate to the USB drive, copy it to the ESX installation and then run the script. Can you also please confirm that the gosata.sh version 0.6 will work for me?

I believe my controller is the NVIDIA MCP61 Sata controller. Can you please help as I bought this machine some weeks back for this ESX and haven't been able to use it since. Incidentally, I have a Dell Dimension E521 which works without any problem but I would rather use the new Inspiron which is dual core with 5600 processor.

Thanks in advance,

Vido.

Reply
0 Kudos
jaapr
Contributor
Contributor

Hi Dave,

Thanks for the reply. I gave up on the U40M2 and indeed ordered the SAS controller (which did not arrive yet). I will keep your other suggestions in mind.

I also tried Ultra20M2 and it had the same "mount of root failed" problem. On this box the fix worked: boot in service console mode, changed sata_nv.xml and run esxcfg-pciid.

Thanks,

Jaap

Reply
0 Kudos
blackforce
Contributor
Contributor

I ran your last script posted on my ML115. Had to put a larger disk in.

I boot into troubleshooting mode and then copy it across using winscp. However this is what happens

./gosata.sh

SATA BootFix for VMware ESX Server by Reinhard Partmann

check ifrunning on an ESX host :

isESX: 1

isESXfailsafe: 1

DEBUG: BOOT_MOUNTED 1

DEBUG: 1==BOOT_MOUNTED 1

Thats it.

Can anyone help?

Reply
0 Kudos
rpartmann
Hot Shot
Hot Shot

Hi blackforce,

use v0.61. (bug fixed)

Smiley Wink

hth Reinhard.

ps: Award points if you find answers helpful. Thanks.

ps: Award points if you find answers helpful. Thanks.
Reply
0 Kudos
blackforce
Contributor
Contributor

already have Smiley Happy worked a treat. Cheers

Reply
0 Kudos
VMware_4Me
Contributor
Contributor

Okay... I think I'm at the end of my rope, and before I hang myself with it... I think I'm just gonna bite the bullet and purchase an LSI MegaRAID Controller and be done with it. Any recommendations on model..? or a good place to buy from...? I'm out on the east coast so I'm limited.. I'll probably have to go online to tiger direct or ebay..

Thanks for any help guys...

Rick

Reply
0 Kudos
Dave_Mishchenko
Immortal
Immortal

A megaraid SATA 150-4 will do the job for you (it is unsupported). What's the exact error that you're getting?

Reply
0 Kudos
Smeagol
Enthusiast
Enthusiast

adaptec sata stuff works fine too, the 2410, 2810 and newer 2420 and 2820 stuff.

Ive used both on 2.5x, 3.0x and 3.5

Reply
0 Kudos
oluvido
Contributor
Contributor

Hi there,

Further to my last post. I was finally able to run the script onl after using the umbutu live CD. the only problem however was that it took a couple of tries to get it to work after finally copying the script to the ESX server.

It did not work when I ran it from the mounted USB stick nor the tmp folder on the server until I logged on as root (changed the password) on the live CD as it was coming up with Access denied.

The script ran later after complaining about line 56 and some commands not found, It finished but was unable to mount the drive. I eventually restarted the server after this and came up with a screwed up server posibly because it could not mount the root drive.

Can you please let me the steps to take to run the script from the troubleshooting console. I have the nvidia sata controller which I believe the script supports hence I didn't need to modify the script. (only other thing I noticed was that I had to run the other script to remove the windows carriage return before it ran.

Am I right in assuming that the following is the right order of things:

Boot to Service console, attach USB drive with scipt, make a temp directory and mount the USB drive. copy the script to ESX server (does it have to be in the root folder?) run chmod +x gosata.sh and then ./gosata.sh from root (or can this be run anywhere else?)

Your help will be much appreciated along with the time you have taken to put this script together. I just need to sort this out as I have been sleeping very late due to this problem.

Thanks in advance,

Oluvido.

Reply
0 Kudos
blackforce
Contributor
Contributor

I booted into troubleshooting mode then I enabled SSH :-

To allow the root user to login to a VMware ESX Server over the network using SSH, do the following:

  1. login to root

  2. vi /etc/ssh/sshd_config

  3. Change the line that says PermitRootLogin from "no" to "yes"

  4. do service sshd restart

Then I used winscp and uploaded the script to the default folder it connects to. Then I Changed permissions on the file to 777. I then ran 0.61 and it ran fine Smiley Happy

Reply
0 Kudos
oluvido
Contributor
Contributor

Thanks Blackforce for that piece of information. I was now able to run the script following your instruction (copied it via Winscp). The only problem is that even after successfully running the script without any error. I rebooted the machine and still had the same problem. I did notice however that the script seems to have updated the pci.xml file compared to the sata_nv.xml that I was expecting.

Currently trying to verify/confirm my sata controller once again. I have one of the new Dell Inspiron 531 which I believe to be using the nvidia sata controller. I ran lspci -v ¦more and it revealed loads of nvidia controllers with numerous 037a through to 037f. At some point in time it was showing the 10de for nvidia. Is there another way of verifying the sata controller or could it be possible that there are multiple contrller in the system?

Sorry for being a pain, just want to figure this out.

Oluvido.

Reply
0 Kudos
oluvido
Contributor
Contributor

Hi there,

I finally was able to boot into the esx installation by editing the sata_nv.xml file to modify the 037e entry to 03f6 and running esxcfg-pciid afterwards. the only problem is that I can then no longer get the NIC up whenthe server boots up. Initially when running service console, I was able to access the server remotely via winscp to copy the script across (later decided not to use it as it didn't work for me even after modifying the device id)

Everytime I boot, I still get the following error, ipms_si unable to find any system interface...

Is there something else i'm missing? i'm using the onboard NIC which was fine when installing the server or does this mean that I might have to change the NIC? if so then why does it work sometimes?

Regards,

Oluvido.

Reply
0 Kudos
Dave_Mishchenko
Immortal
Immortal

You'll probably have to swap the NIC. It isn't recogized and / or support by the vmkernel. The linux installer can use it during the install and like wise in service console mode it is still just the service console Linux running (the vmkerel isn't started up).

What's the output of lspci when you boot up ESX regularly. You may be able to edit the pci xml files in the same way that you do for the SATA controller to get it to work.

Reply
0 Kudos
oluvido
Contributor
Contributor

Hello All,

Thanks to Dave for helping me solve the last piece of the puzzle. I tried editting the pci.xml file but it didn't work possibly because I wasn't sure of how many changes to make to the file. I finally have the server running ( Yipee!) last night after a week of sleepless nights. The following is my fix route.

1. Rebuilt the server with a support NIC and disabled the onboard NIC

2. Booted the server to the service console and logged on as Root using build password

3. Enabled remote login to ssh by editing the sshd_config file vi /etc/ssh/sshd_config (thanks to Blackforce)

4. Scrolled down and changed the line that says "PermitRootLogin" from "no" to "yes" and saved the file with :wq!

5. Restarted the SSHD service using "Service sshd restart" and was then able to access the server from a remote machine using winscp to copy files or edit files directly

6. Edited the /etc/vmware/pciid/sata_nv.xml file and replaced the last entry from 037f to 03f6, Also changed the controller name from MCP55 Nvidia... to MCP61 Nvidia... (Please note that steps 3 to 5 can be skipped as the file can be modified directly from the service console)

7. Ran the esxcfg-pciid

8. Restarted the server

9. Server comes up and mounts the root

A big thank you goes to everyone in this forum which I find very helpful. A big thank you goes to rpartmann for his wonderful script as well as pdewild, Dave.Mishchenko for his help as well as the list he is compiling (Please add Dell Inspiron 531 to your list) and lastly but not the least Blackforce. I love forums like this where you learn and I have sure picked up one or two things about Linux.

Regards,

Oluvido.

Reply
0 Kudos
MarkFromMn
Contributor
Contributor

> So in BIOS, I made Intel 6300ESB Sata Controller to be SATA only. It was in MIX mode before - IDE + SATA.

For what it's worth this did the trick with an ASUS NCCH-DL motherboard as well. I installed ESX 3.5 without error but got the mount error on reboot. After making this change the system came right up. The NCCH-DL was a probably the fastest 800MHz FSB Socket 604 Xeon board out there as it uses an 875P Northbridge with a 6300 Southbridge - so no registered DRAM requirements or latency.

--

Mark

Reply
0 Kudos