Given the failure to configure the Oracle Virtual Server as described in 05 Diagnose VM Agent Problem, I decided to pursue the manual configuration option (Use XEN commands from DOM0 to create a VM image) as described in 02 Problem Installing VM Manager.
There are two (2) devices on the Lenovo TS130 server:
/dev/sda
/dev/sdb
I decide to use all of the space on /dev/sdb for the /OVS filesystem. I use fdisk to create a single partition as follows:
Command (m for help): p
Disk /dev/sdb: 1000.2 GB, 1000204886016 bytes
255 heads, 63 sectors/track, 121601 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sdb1 1 121601 976760001 83 Linux
When I try to format the filesystem, I get the following error:
[root@victoria ~]# mkfs.ext3 /dev/sdb1
mke2fs 1.39 (29-May-2006)
/dev/sdb1 is apparently in use by the system; will not make a filesystem here!
I tried to reboot the server in order to release the lock, but instead found I could not proceed of a mistake I made. I had updated /etc/fstab with an entry for /OVS pointing to /dev/sdb1. And, of course, the initialisation failed that filesystem could not be checked on start-up. Unfortunately, the shell I got dropped into only allowed read-only access to /etc/fstab. Not knowing any better, I decided to reinstall Oracle Virtual Server from scratch.
Followed the procedure from 01 Install VM Server with the exception that I modified the disk layout as follows:
Created a new filesystem on partition #4 of RAIDP0 that:
used all of the free space (nearly 1.8TB)
was mounted at /OVS
was formatted as EXT3 instead of OCFS2 because I am not sharing this filesystem with another physical server
Created the following subdirectories under /OVS:
iso_pool
running_pool
seed_pool
I unzipped the downloaded files in a DOS window on a Windows box. The Window Explorer complains about needing 436PB to unzipped the downloaded files. Then I used psftp to push the unzipped files to VICTORIA.
Used the method described in Problem importing templates for EM12c into OVS 3:
[root@victoria seed_pool]# cat *.tgz | tar --list --verbose --gunzip --file -
drwxr-xr-x root/root 0 2012-03-16 10:55:27 OVM_EM12/
-rw-r--r-- root/root 6720053760 2012-03-07 10:42:52 OVM_EM12/System.img
-rw-r--r-- root/root 305 2012-03-14 17:38:01 OVM_EM12/vm.cfg -rw-r--r-- root/root 28994112000 2012-03-07 10:41:46 OVM_EM12/em12.img
[root@victoria seed_pool]# cat *.tgz | tar --extract --verbose --gunzip --file -
OVM_EM12/
OVM_EM12/System.img
OVM_EM12/vm.cfg
OVM_EM12/em12.img
Now that I have an /OVS filesystem mounted on VICTORIA, I decided to follow the procedure in 04 Finish OEM Virtualisation Intallation again. This time I got a different error message in emoms.log:
2012-08-18 22:03:05,747 [EMUI_22_03_05_/console/virtualization/target/ovmserverpool/createVSP] ERROR pp.virtualization logp.251 -
oracle.sysman.pp.virtualization.service.platform.ovm.OVMServerPoolManagementIntegrator.validateAddServerPool : Validation failed oracle.ovs.biz.agent.AgentException: OVM-1000 Agent 192.168.1.100 couldn't be connected, please check server ip and agent password.
at oracle.ovs.biz.xmlRpc.AgentRPC.rpcClientExecute(AgentRPC.java:109)
at oracle.ovs.biz.agent.AgentService.getAgentVersion(AgentService.java:369)
at oracle.ovs.api.datamodel.agent.AgentEntityHelper.getOvsAgent(AgentEntityHelper.java:37)
at oracle.ovs.api.datamodel.serverPool.ServerPoolEntityHelper.getServerPool(ServerPoolEntityHelper.java:87)
at oracle.ovs.api.ServerPoolManagementImpl.validateCreateServerPool(ServerPoolManagementImpl.java:243)
at oracle.sysman.pp.virtualization.service.platform.ovm.OVMServerPoolManagementIntegrator.validateAddServerPool(OVMServerPoolManagementIntegrator.java:203)
at oracle.sysman.pp.virtualization.service.target.impl.ovm.OVMTargetDataStoreImpl.registerVirtualServerPool(OVMTargetDataStoreImpl.java:787)
at oracle.sysman.pp.virtualization.ui.target.ovmserverpool.model.OVMServerPoolModel.registerVirtualServerPool(OVMServerPoolModel.java:187)
at oracle.sysman.pp.virtualization.ui.target.ovmserverpool.view.CreateVSPPageHandler.handleEvent(CreateVSPPageHandler.java:318)
It would appear that the OVM-2007 is really complaining about the absence of the /OVS filesystem.
Assuming the OVM-1000 is really a file system error, then the other directory involved is the OVS Proxy Location.
Chapter 14: Virtualization Management says that:
OVS Proxy Location — This is a directory on the virtual server where the scripts required for monitoring are stored when the virtual server is registered with Enterprise Manager.
Given that creating a directory fixed the OVM-2007 problem, I reasoned that the same could be done with the OVM-1000 error. So, I created a directory for the proxy location on VICTORIA:
mkdir -p /root/ovs-proxy
Tried to Create Virtual Server Pool again with:
OVS Proxy Location as /root/ovs-proxy
Got the same OVM-1000 error message in emoms.log.
On VICTORIA, I see the following errors in /var/log/ovs-agent.log:
[2012-08-20 05:10:17 21776] ERROR (xmlrpc:116) Unauthorized access attempt from ('192.168.1.252', 8677)!
Traceback (most recent call last):
File "/usr/lib64/python2.4/site-packages/agent/xmlrpc.py", line 111, in do_POST
auth(username, password)
File "/usr/lib64/python2.4/site-packages/agent/xmlrpc.py", line 51, in auth
raise Exception('Authorization failed: user does not exist or password error.')
Exception: Authorization failed: user does not exist or password error.
[2012-08-20 05:10:17 21776] INFO (xmlrpc:177) code 403, message Unauthorized access attempt from ('192.168.1.252', 8677)!
Following the python code, I found the password file at /etc/ovs-agent/passwdfile which had one (1) user: oracle.
Looks like I need to create the oracle user on VICTORIA.
Ran the following commands on VICTORIA:
[root@victoria agent]# groupadd --gid 200 oracle
[root@victoria agent]# useradd --uid 200 --gid 200 --shell /bin/bash --home-dir /home/oracle oracle
[root@victoria agent]# grep oracle /etc/passwd
oracle:x:200:200::/home/oracle:/bin/bash
[root@victoria agent]# passwd oracle
Changing password for user oracle.
New UNIX password:
Retype new UNIX password:
passwd: all authentication tokens updated successfully.
[root@victoria agent]# chown -R oracle:oracle /OVS
[root@victoria agent]# su - oracle
[oracle@victoria ~]$ pwd /home/oracle
[oracle@victoria ~]$ mkdir proxy
From GRIDCTRL, tested the SSH connection—it worked!
I used the following parameters for Create Virtual Server Pool under OEM 10.2.0.5:
This failed with the following error message in emoms.log:
2012-08-19 20:24:23,591 [EMUI_20_24_23_/console/virtualization/target/ovmserverpool/createVSP] ERROR pp.virtualization logp.251 -
oracle.sysman.pp.virtualization.service.platform.ovm.OVMServerPoolManagementIntegrator.validateAddServerPool : Validation failed
oracle.ovs.biz.server.ServerException: OVM-2007 Master Agent '192.168.1.100' is not active, so couldn't proceed such operation.
at oracle.ovs.biz.server.helper.ServerValidationHelper.checkAgentStatus(ServerValidationHelper.java:72)
at oracle.ovs.api.ServerPoolManagementImpl.validateCreateServerPool(ServerPoolManagementImpl.java:248)
at oracle.sysman.pp.virtualization.service.platform.ovm.OVMServerPoolManagementIntegrator.validateAddServerPool(OVMServerPoolManagementIntegrator.java:203)
at oracle.sysman.pp.virtualization.service.target.impl.ovm.OVMTargetDataStoreImpl.registerVirtualServerPool(OVMTargetDataStoreImpl.java:787)
at oracle.sysman.pp.virtualization.ui.target.ovmserverpool.model.OVMServerPoolModel.registerVirtualServerPool(OVMServerPoolModel.java:187)
at oracle.sysman.pp.virtualization.ui.target.ovmserverpool.view.CreateVSPPageHandler.handleEvent(CreateVSPPageHandler.java:318)
I updated /etc/ovs-agent/passwdfile changing oracle to root. Ran the OEM page again with SSH Username set to root. Got the same errors as described in Third Attempt to Create Virtual Server Pool.
I have re-installed OVS again with the creation of the /OVS filesystem.
I have gone back to using root as the SSH Username.
On GRIDCTRL, emoms.log shows:
2012-08-19 20:56:13,149 [EMUI_20_56_13_/console/virtualization/target/ovmserverpool/createVSP] ERROR pp.virtualization logp.251 -
oracle.sysman.pp.virtualization.service.platform.ovm.OVMServerPoolManagementIntegrator.validateAddServerPool : Validation failed
oracle.ovs.biz.server.ServerException: OVM-2007 Master Agent '192.168.1.100' is not active, so couldn't proceed such operation.
at oracle.ovs.biz.server.helper.ServerValidationHelper.checkAgentStatus(ServerValidationHelper.java:72)
at oracle.ovs.api.ServerPoolManagementImpl.validateCreateServerPool(ServerPoolManagementImpl.java:248)
at oracle.sysman.pp.virtualization.service.platform.ovm.OVMServerPoolManagementIntegrator.validateAddServerPool(OVMServerPoolManagementIntegrator.java:203)
at oracle.sysman.pp.virtualization.service.target.impl.ovm.OVMTargetDataStoreImpl.registerVirtualServerPool(OVMTargetDataStoreImpl.java:787)
at oracle.sysman.pp.virtualization.ui.target.ovmserverpool.model.OVMServerPoolModel.registerVirtualServerPool(OVMServerPoolModel.java:187)
at oracle.sysman.pp.virtualization.ui.target.ovmserverpool.view.CreateVSPPageHandler.handleEvent(CreateVSPPageHandler.java:318)
On VICTORIA, /var/log/ovs-agent.log shows:
[2012-08-19 21:52:30 5584] DEBUG (service:77) echo: ('Is agent alive?',)
[2012-08-19 21:52:30 5584] DEBUG (service:85) echo: call completed.