Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
![]() |
![]() |
Home -> Community -> Usenet -> c.d.o.server -> Re: configure VMWare to share disk for testing RAC
"cs charlie" <cfs3526(no_spam)@hotmail.com> wrote in message
news:bHKX9.5868$XP2.2414_at_nwrddc01.gnilink.net...
> This message seems off the topic, but it is closely related to implement
RAC
> on single machine, so I am posting it here, hopefully some body can help
me
> out. Search on google, I only found one corresponse from Howord J Rogers
> discussing about this, but it is not very clear.
Oh well. Guess I'll have to try harder, then.
>
> I installed two virtural machine(linux) by VMWARE. I added a virtural
Disk
> on machine A, (scsi), and added the virtural Disk on machine B using the
> same file, I then edited the .VMX files on both machines, added
>
> disk.locking=false,
>
> both Virtural machine seems to boot up fine, and both machine seems to
have
> two disks, but they do not seem to be shared even though they seem to
share
> the same file.
>
> I created one partition on one machine, which can not show up on another
> machine.
>
> Could some body tell me step by step how to configure these two Vmachine
> share one disk?
>
> Thanks for your help.
Because you are deep in Linux territory, I can't offer much advice. But I can tell you what you do on a Windows box, and as far as VMware configuration goes, that should be the same whatever O/S you're running.
You create the first virtual machine with ONE virtual disk. Fair enough. You then create a second virtual machine, also with only one hard disk. You then do NOT use the VMware interface to add a second hard disk to the machines. Instead, you locate the VMX file for the first machine, and you add in the following lines:
disk.locaking='FALSE'
scsi0:0.present = "TRUE"
scsi0:0.fileName = "rac2.vmdk"
scsi0.present = "TRUE"
(obviously, you need to change the filename there to something more appropriate to your specific circumstances).
You repeat the procedure for the VMXD file of the second machine.
But, the question arises: how do you create the file referred to by these lines in the first place? As I said, you CAN'T use the VMware program itself to create this shared disk. That's because sharing an ordinary virtual SCSI disk (the one's you create using the VMware front-end) will NOT work for RAC installation. VMware's SCSI drives are weird things: they grow dynamically up to the limit you specify when you ask the GUI frontend to create them. That means the virtual drive's geometry is inherently variable, and that will stop RAC in its tracks.
[I'll qualify that slightly: the 'regular' SCSI disk *will* work if you have ONE virtual machine, and intend to run two instances on that one machine accessing the one database. But it definitely won't work if you are trying to get two virtual machines to access a database stored on a common virtual disk]
What you *have* to do is use a special sort of VMware virtual SCSI device, called a "Plain SCSI" drive. That has a fixed geometry, and works without a problem. Trouble is, VMware 3.x can't create plain SCSI drives, only use them if it comes across pre-existing ones. So, what you have to do to fix that is re-visit www.vmware.com and download the archived version of their product: version 2.something will do. Install that, run it, forget about the licensing stuff, and get it to configure a 4GB (or larger) plain SCSI hard disk. That creates the vmxd files which you can then simply copy across to the version 3 virtual machine directories.
One more word of warning, though: you can't install version 2 AFTER version 3 has been installed. So what you'll have to do is install version 2 on a separate machine, and copy across the files which make up the plain SCSI drive to the 'real' machine that's got version 3 on it. Or, de-install 3, install 2, generate the plain SCSI files somewhere (anywhere will do), re-install 3, create your virtual machines, and *then* do the edits of the version 3 VMXD files so that the virtual machines know where you put the plain SCSI hard drive files (they don't need to live in the same directory as the virtual machine files themselves, in other words).
And after all that, you should find that the two machines can see the same shared disk.
Now in Windows, that's not quite the end of the story: even though both machines see the same disk, you have to use one of the machines (let's call it Node 1) to create a logical volume on the shared disk. And when you then boot up Node 2, that machine notices the existence of a new logical volume, and offers to assign it a drive letter and format it for you. Point is, the second machine has to be persuaded big-time not to mess with the configuration you performed on Node 1.
What that all translates into in the weird and wondeful world of Linux, I have no idea. Maybe Linux is well-behaved (hah!) and your Node 2 won't mess with the configuration done on Node 1. But maybe it will. You're definitely on your own at this point.
I don't know whether I've mentioned this before to you (I know I have on this newsgroup), but there are two very comprehensively worked-out papers on doing VMware RAC at www.oaktable.net (under the Files link). They are, however, only for Windows -but the business of creating the plain SCSI files etc should be the same in principle whatever platform you're running on, so they should be of some use. That site also has a paper by James Morle on creating a VMware RAC on a Linux-based laptop, and that may be of use, too. However, I think James is doing two instances on one virtual machine, not two virtual machines, so there could be issues there.
Personally, I recommend doing it the Windows way, because I know it works, and it's relatively easy. Once you know how.
But then I can't stand Linux!
Call me biased.
Regards
HJR
Received on Thu Jan 23 2003 - 00:41:19 CST
![]() |
![]() |