Oracle Enterprise Manager 12c Cloud Control incorporates the use of plugins to extend its functionality for management of the complete cloud stack. Plugins are provided for databases, middleware, virtualization among others.
For a few weeks I had been struggling to deploy Oracle Enterprise Manager 12c agents on IBM AIX 6.1 targets. This became a very lengthy cycle of patching, searching and tweeting in an attempt to get things going. I finally had the agent deployed on the hosts but no targets were being discovered. After coming across MOS Note [ID 1388143.1] I discovered that I needed to update and deploy the database plugin in order to discover the database targets.
To deploy plugins go to Setup->Extensibility->Self Update
From this screen you can see a list of plugins and their status. If there is an updated plugin available it will have a non-zero revision number in the Revision column and the status will be available. The Oracle Database plugin update (20111221) above was downloaded by selecting download from the Actions drop-down menu. Under the Past Activities section you can see the different activities that were performed and the status. After the plugin has been downloaded it first needs to be deployed on the Management Server and then the Management Agents.
Click the Plug-in Icon to go to the plugin deployment screen.
In the Plug-ins screen you can see a list of plugins with the version available and downloaded. You may have to click on the icon beside the Databases folder to expand all database plugins. Clicking on the Oracle Database plugin will show the details in the bottom section of the screen. This displays the plugin versions downloaded, plugin ID, Vendor, version deployed on Management Server and Agents. Here you can see that three versions of the oracle.sysman.db plugin have been downloaded. Only the base version 12.1.0.1.0 has been deployed on Management Server and Agents. To deploy the latest downloaded version click on the Deploy On menu item then select Management Server.
I received the above error when I attempted to deploy the plugin. What? But the plugin was already downloaded. At this point I was stuck again! After several futile attempts and twitter rants I created a SR for the issue. Surprisingly, Oracle Support was very responsive and proceeded with a series of calls and web conferences to try and help me resolve the issue. However, after many attempts and hours of phone support they were unable to find the cause of the error. We tried deleting and downloading the plugins again both in online and offline mode. Offline mode requires the use of emcli. At this time the recommendation was to apply Bundle Patch 1 for Enterprise Manager 12c or do a complete reinstall. Since this was a test system I was fairly comfortable with either approach. However, I decided to try to use emcli command to deploy the plugin to see if it made any difference.
The emcli command is installed by default in the OMS_HOME/bin directory. You first need to login using
emcli login -username=SYSMAN
After logging I issued the commands below:
-bash-3.2$ ./emcli deploy_plugin_on_server -plugin=oracle.sysman.db:12.1.0.1.0
Enter repository DB sys password:
Performing pre-requisites check... This will take a while.
Pre-requisites check succeeded
Deployment of plug-in on the management servers is in progress
Use "emcli get_plugin_deployment_status -plugin_id=oracle.sysman.db" to track plug-in deployment status.
To check the status of the deployment I issued the following command:
-bash-3.2$ ./emcli get_plugin_deployment_status -plugin_id=oracle.sysman.db
Plugin Deployment/Undeployment Status
Destination : OMS - lnxvmoidt02.smrcy.com:4890_Management_Service
Plugin Name : Oracle Database
Version: : 12.1.0.1.0
ID: : oracle.sysman.db
Content : Plugin
Action : Deployment
Status : Deploying
Steps Info:
---------------------------------------- ------------------------- ------------------------- ----------
Step Start Time End Time Status
---------------------------------------- ------------------------- ------------------------- ----------
Start deployment 3/27/12 11:06:56 AM CDT 3/27/12 11:06:56 AM CDT Success
Initialize 3/27/12 11:07:14 AM CDT N/A Running
---------------------------------------- ------------------------- ------------------------- ----------
Here I could see some definite progress. Things looking good so far. Issue the same command after a few minutes to check the status.
-bash-3.2$ ./emcli get_plugin_deployment_status -plugin_id=oracle.sysman.db
Plugin Deployment/Undeployment Status
Destination : OMS - lnxvmoidt02.smrcy.com:4890_Management_Service
Plugin Name : Oracle Database
Version: : 12.1.0.1.0
ID: : oracle.sysman.db
Content : Plugin
Action : Deployment
Status : Success
Steps Info:
---------------------------------------- ------------------------- ------------------------- ----------
Step Start Time End Time Status
---------------------------------------- ------------------------- ------------------------- ----------
Start deployment 3/27/12 11:06:56 AM CDT 3/27/12 11:06:56 AM CDT Success
Initialize 3/27/12 11:07:14 AM CDT 3/27/12 11:07:22 AM CDT Success
Validate plug-in home 3/27/12 11:07:24 AM CDT 3/27/12 11:07:24 AM CDT Success
Check mandatory patches 3/27/12 11:07:24 AM CDT 3/27/12 11:07:25 AM CDT Success
Update inventory 3/27/12 11:07:25 AM CDT 3/27/12 11:07:26 AM CDT Success
---------------------------------------- ------------------------- ------------------------- ----------
Success! Now that's what I'm talking about. How do I check if the plugin is actually deployed on the server. Oh, there's a command for that too.
-bash-3.2$ ./emcli list_plugins_on_server
OMS name is EMGC_OMS1
Plug-in Name Version [revision]
Oracle MOS (My Oracle Support) 12.1.0.1.0
Oracle Fusion Middleware 12.1.0.1.0
Oracle Database 12.1.0.1.0[20111221]
Oracle Exadata 12.1.0.1.0
Here you can see the highlighted plugin with the latest update. You can also check from the Enterprise Manager console Setup-> Extensibility-> Self-Update
Here you can see the status of the updated plugin is Applied. Go to the Plug-ins section to verify the updated plugin has been deployed to the Management server.
The next step is to deploy the plugin to the targets. In my environment, I wanted to deploy plugin on to AIX targets consisting of Oracle 11gR2 Real Application Clusters databases.
Using emcli again to deploy the plugins on the management agents.
-bash-3.2$ ./emcli deploy_plugin_on_agent -plugin=oracle.sysman.db:12.1.0.1.0 -agent=oradba10t:3872
Agent side plug-in deployment is in progress
Use "emcli get_plugin_deployment_status -plugin_id=oracle.sysman.db" to track plug-in deployment status.
-bash-3.2$ ./emcli deploy_plugin_on_agent -plugin=oracle.sysman.db:12.1.0.1.0 -agent=oradba11t:3872
Agent side plug-in deployment is in progress
Use "emcli get_plugin_deployment_status -plugin_id=oracle.sysman.db" to track plug-in deployment status.
Note that both targets could have been deployed at the same time by separating them with a semicolon ";".
Check on the deployment status
-bash-3.2$ ./emcli get_plugin_deployment_status -plugin_id=oracle.sysman.db
Plugin Deployment/Undeployment Status
Destination : AGENT - oradba11t:3872
Plugin Name : Oracle Database
Version: : 12.1.0.1.0
ID: : oracle.sysman.db
Content : Plugin
Action : Deployment
Status : Success
Steps Info:
---------------------------------------- ------------------------- ------------------------- ----------
Step Start Time End Time Status
---------------------------------------- ------------------------- ------------------------- ----------
Start deployment 3/27/12 11:18:41 AM CDT 3/27/12 11:18:41 AM CDT Success
Initialize 3/27/12 11:21:20 AM CDT 3/27/12 11:21:20 AM CDT Success
Copy archives 3/27/12 11:21:20 AM CDT 3/27/12 11:21:20 AM CDT Success
Configure plug-in on management agent 3/27/12 11:21:20 AM CDT 3/27/12 11:23:56 AM CDT Success
Update inventory 3/27/12 11:21:20 AM CDT 3/27/12 11:23:56 AM CDT Success
---------------------------------------- ------------------------- ------------------------- ----------
Destination : AGENT - oradba11t:3872
Plugin Name : Oracle Database
Version: : 12.1.0.1.0
ID: : oracle.sysman.db
Content : Discovery
Action : Deployment
Status : Success
Steps Info:
---------------------------------------- ------------------------- ------------------------- ----------
Step Start Time End Time Status
---------------------------------------- ------------------------- ------------------------- ----------
Start deployment 3/27/12 11:18:41 AM CDT 3/27/12 11:18:41 AM CDT Success
Initialize 3/27/12 11:18:53 AM CDT 3/27/12 11:18:53 AM CDT Success
Copy archives 3/27/12 11:18:53 AM CDT 3/27/12 11:18:53 AM CDT Success
Configure plug-in on management agent 3/27/12 11:18:53 AM CDT 3/27/12 11:21:20 AM CDT Success
Update inventory 3/27/12 11:18:53 AM CDT 3/27/12 11:21:20 AM CDT Success
---------------------------------------- ------------------------- ------------------------- ----------
You can also verify the updated plugin has been deployed in Enterprise Manager console.
Click the Recent Deployments tab in the details section to see a list of deployments to both the management server and agent.
To view a list of all plugins deployed on agents using emcli execute the following:
(Output truncated for brevity)
-bash-3.2$ ./emcli list_plugins_on_agent
The Agent URL is https://oradba11t:3872/emd/main/ -
Plug-in Name Version
Oracle Database 12.1.0.1.0[20111221]
Oracle Home 12.1.0.1.0
Oracle Home 12.1.0.1.0
Oracle Database 12.1.0.1.0
Oracle Home 12.1.0.1.0
Oracle Fusion Middleware 12.1.0.1.0
Oracle Beacon 12.1.0.1.0
Management Services and Repository 12.1.0.1.0
Oracle Home 12.1.0.1.0
Oracle Database 12.1.0.1.0
Oracle Home 12.1.0.1.0
Oracle Fusion Middleware 12.1.0.1.0
Oracle Database 12.1.0.1.0
Oracle Fusion Middleware 12.1.0.1.0
Oracle Home 12.1.0.1.0
Oracle Database 12.1.0.1.0
Oracle Home 12.1.0.1.0
Oracle Database 12.1.0.1.0[20111221]
Oracle Home 12.1.0.1.0
Oracle Database 12.1.0.1.0[20111221]
After the updated plugins were deployed to the Management Server and Agents I was able to successfully discover all targets on AIX. This leads me to my next post on managing RAC 11gR2 with Enterprise Manager 12c. Stay tuned :)