02 Setting Cloud for IaaS

Overview

Now that the preparation work has been done, I am now ready to IAAS (Infrastructure as a Service) on my private cloud.

References

Procedure

4.1 Getting Started

Following the procedure in 4.1 Getting Started, I think I have all the necessary elements in place:

    • OVM Manager has been installed on MELBOURNE.
    • OVM Server has been installed on VICTORIA.
    • Network Accessible Storage is available on NARRABRI.

4.1 Cloud Infrastructure Privileges

Since this is a test installation of a private cloud, I will skip over the procedure in 4.1 Cloud Infrastructure Privileges. There is no need for a sophisticated security model at this stage.

4.2 Registering the Oracle VM Manager

Enable Remote Log-Ins for OVMM

Following the procedure in 4.2 Registering the Oracle VM Manager, I discovered I had to enable remote log ins as described in 03 Enabling Remote Log Ins before I could proceed.

Update .bash_profile

On MELBOURNE, I added the following variables to ~/.bash_profile for oracle:

export JAVA_HOME=/u01/app/oracle/java export AGENT_INSTANCE_HOME=/u01/app/oracle/agent/agent_inst export OVM_MANAGER_HOME=/u01/app/oracle/ovm-manager-3

I set these variables as follows:

. ~/.bash_profile

Export OVMM Certificate

On MELBOURNE, I exported the OVMM certificate generated in 03 Enabling Remote Log Ins, as follows:

${JAVA_HOME}/bin/keytool -keystore ${OVM_MANAGER_HOME}/ovmmCoreTcps.ks -exportcert -alias ovmm -file /tmp/ovmm_cert

I entered the OVMM Key Store password when prompted as follows:

Enter keystore password: Certificate stored in file </tmp/ovmm_cert>

Import OVMM Certificate into OEM Agent

I used the following command to import the exported OVMM certificate into the key store for the OEM agent on MELBOURNE:

${AGENT_INSTANCE_HOME}/bin/emctl secure add_trust_cert_to_jks -trust_certs_loc /tmp/ovmm_cert -alias ovmm

I entered welcome when prompted below:

Oracle Enterprise Manager Cloud Control 12c Release 3 Copyright (c) 1996, 2013 Oracle Corporation. All rights reserved. Password: Message : Certificate was added to keystore ExitStatus: SUCCESS

Remove the Exported OVMM Certificate

On MELBOURNE, I cleaned up the exported OVMM certificate as follows:

rm -f /tmp/ovmm_cert

Deploy Virtualization Plug-In

I used the plug-in deployment procedure described in 15.4.7 Deploying Plug-Ins on Oracle Management Agent to deploy the Oracle Virtualization (12.1.0.5.0) Plug-In to the OEM agent on MELBOURNE only:

First Attempt to Register OVMM

I used the following parameters to register the OVMM on MELBOURNE:

The job failed with the following messages:

4321: Error getting uuid.

Executing command /u01/app/oracle/agent/core/12.1.0.3.0/jdk/bin/java -Xmx256m -Djavax.net.ssl.trustStore=/u01/app/oracle/agent/agent_inst/sysman/config/montrust/AgentTrust.jks -classpath /u01/app/oracle/agent/core/12.1.0.3.0/sysman/jlib/emagentSDK.jar:/u01/app/oracle/agent/core/12.1.0.3.0/sysman/jlib/log4j-core.jar:/u01/app/oracle/agent/core/12.1.0.3.0/sysman/jlib/emagentSDK-intg.jar:/u01/app/oracle/agent/core/12.1.0.3.0/jlib/gcagent_core.jar:/u01/app/oracle/agent/plugins/oracle.sysman.vt.agent.plugin_12.1.0.5.0/archives/OvmClient.jar:/u01/app/oracle/agent/plugins/oracle.sysman.vt.agent.plugin_12.1.0.5.0/archives/commons-logging-1.0.4.jar:/u01/app/oracle/agent/plugins/oracle.sysman.vt.agent.plugin_12.1.0.5.0/archives/em-vt-fetchlet-pojo.jar:/u01/app/oracle/agent/plugins/oracle.sysman.vt.agent.plugin_12.1.0.5.0/archives/em-vt-ovmintegration-pojo.jar:/u01/app/oracle/agent/plugins/oracle.sysman.vt.agent.plugin_12.1.0.5.0/archives/em-vt-ovmintegrationcore-pojo.jar:/u01/app/oracle/agent/core/12.1.0.3.0/lib/jsch.jar oracle.sysman.vt.fetchlet.pojo.AsyncOVMWrapper

OVM Manager URL = <sensitive value not to be displayed>

OVM Manager Username = <sensitive value not to be displayed>

OVM Manager Password = <sensitive value not to be displayed>

OVM Manager UUID = <sensitive value not to be displayed>

Manager ID = SyncManager

Method Name = getOvmMgrUuid

Param Types = <sensitive value not to be displayed>

paramValues = <sensitive value not to be displayed>

Retry Count = 0

Retry Sleep Interval = 0

Operation failed

oracle.sysman.vt.ovm.integration.api.EMOVMCommunicationServiceException: 1010: Error while performing the operation: Connection to the remote OVM Manager URL tcps://melbourne.yaocm.id.au:54322 failed. Ensure that the OVM Manager version is 3.0.2 or greater and the service URL and the credentials are correct.Check exception cause and logs for more details.[com.oracle.ovm.mgr.api.exception.FailedOperationException:OVMAPI_6000E Internal Error: Connection refused Connection refused ]

at oracle.sysman.vt.ovm.integration.core.OVMMConnectionCreatorValidator.checkForDone(OVMMConnectionCreatorValidator.java:212)

at oracle.sysman.vt.ovm.integration.core.OVMMConnectionCreatorValidator.create(OVMMConnectionCreatorValidator.java:87)

at oracle.sysman.vt.ovm.integration.core.OVMManagerConnection.createOvmManagerConnection(OVMManagerConnection.java:448)

at oracle.sysman.vt.ovm.integration.core.OVMManagerConnection.connect(OVMManagerConnection.java:271)

at oracle.sysman.vt.ovm.integration.core.AbstractCoreManager.init(AbstractCoreManager.java:58)

at oracle.sysman.vt.ovm.integration.core.SyncManagerImpl.getOvmMgrUuid(SyncManagerImpl.java:592)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)

at java.lang.reflect.Method.invoke(Method.java:597)

at oracle.sysman.vt.fetchlet.pojo.OVMDataFetchletUtil.executeOperation(OVMDataFetchletUtil.java:265)

at oracle.sysman.vt.fetchlet.pojo.OVMDataFetchletUtil.executeOperation(OVMDataFetchletUtil.java:144)

at oracle.sysman.vt.fetchlet.pojo.OVMDataFetchletUtil.executeOperation(OVMDataFetchletUtil.java:72)

at oracle.sysman.vt.fetchlet.pojo.AsyncOVMWrapper.main(AsyncOVMWrapper.java:126)

Exit code: 242

Diagnosis of Error

Yury Velikanov at Oracle VM Manager: OVMAPI_6000E Internal Error: Connection Refused says that:

If you see that error and try looking for a solution on Google, then unfortunately for you it is a very generic error message (a.k.a. ORA-600 in Oracle VM world ;) ) and you will need to dig a bit to find out what exactly is wrong in your case.

Following Yuri's advice, I ran the following command:

grep -i "error" /u01/app/oracle/ovm-manager-3/machine1/base_adf_domain/servers/AdminServer/logs/AdminServer.log

The results are:

wlw.logErrorsToConsole = false

####<May 17, 2014 6:35:21 PM EST> <Info> <com.oracle.odof.core.WorkflowManager> <melbourne.yaocm.id.au> <AdminServer> <[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <> <0000KO9KP^XFW7WFLzuHOA1JTlwK000002> <1400315721569> <BEA-000000> <Failed to start tcps service at port: 54322 message: java.security.NoSuchAlgorithmException: Error constructing implementation (algorithm: Default, provider: SunJSSE, class: com.sun.net.ssl.internal.ssl.DefaultSSLContextImpl)

java.net.SocketException: java.security.NoSuchAlgorithmException: Error constructing implementation (algorithm: Default, provider: SunJSSE, class: com.sun.net.ssl.internal.ssl.DefaultSSLContextImpl)

Caused By: java.security.NoSuchAlgorithmException: Error constructing implementation (algorithm: Default, provider: SunJSSE, class: com.sun.net.ssl.internal.ssl.DefaultSSLContextImpl)

Issue

This was investigated as the issue described in OVMM Fails to Enable TCPS Connections.