Oracle Enterprise Manager Cloud Control 13c was released at the end of 2015 and is currently up to Release 3. It is Oracle’s web-based solution for large IT installations.
Unlike Enterprise Manager Express, which is automatically installed with an Oracle database, OEM Cloud Control is a stand-alone product that comes with its own database (Oracle Management Repository) and web server. There is a separate management agent that must be installed on each of the systems that you wish to monitor. Once properly installed and set up, OEM gives you a single point from which you can monitor and control Oracle databases, applications and hardware, control backup jobs and patch deployment, and even monitor non-Oracle databases such as MS SQL Server, Sybase and IBM DB2. But do be aware that OEM is large, 58Gb of hard disk space and 10Gb of RAM for a small installation (Oracle Management Service and Repository combined). There is also a VirtualBox proof of concept setup available, if you just want to test it out.
OEM is designed to allow you to administrate large numbers of databases, and it benefits greatly from a consistent and well-thought-out strategy that enables you to apply the same process automatically to groups of servers and databases. If you only have a few Standard Edition databases, then OEM is going to be overkill, and there are better third-party solutions available. But if you have hundreds of Enterprise Edition databases to monitor, backup and patch then it becomes cost effective.
A brief look at how to use OEM
The first thing you need to do is deploy the latest version of OEM (13.3 as of this blog), which will almost certainly need its own server. Then ensure the network is configured to allow connections between all your database servers and the OEM server. Check that Oracle instant client software is up to date, as OEM needs to deploy the monitoring agent software, and this requires numerous prerequisite checks to be passed. Also, consider standardizing Oracle sys, system and dbsnmp, and host OS passwords to allow OEM automation to work properly.
Installing monitoring agents
Next you need to install the Monitoring Agent to the host server. With OEM13c Oracle provides what it calls an Agent Gold Image, which is a customized version of the agent software that allows for mass deployment, patching and upgrade. Once you subscribe a host to an Agent Gold Image, you can manage all subsequent updates to the agent from OEM.
Setup->Manage Cloud Control->Gold Agent Images, then Manage All Images.
Once you’ve set up a gold agent image, you need to add it to your target server. Go to Setup->Add Target->Add Targets Manually and select Install Agent on Host in the Add Host Targets section. OEM saves your session so you can repeat it again with different parameters. Once you’ve selected the Agent Gold Image, the host or hosts you want, and configured the parameters such as base directories and host credentials, OEM goes through numerous checks before deploying the agent.
With the latest agent installed, you can then register the various different hardware and software components with OEM. Go to Setup->Add Target->Configure Auto Discovery, then choose Targets on Host. Click on your target host and select the Collection Schedule dropdown menu underneath the Search. Choose For Selected Hosts, and disable the collection. Then choose Discover Now. Once OEM has finished discovering the available targets on that host, go to Setup->Add Target->Auto Discovery Results, and again select Targets on Host. You should see various types of target, such as Oracle Home, Agent, Listener, Database etc. Promote the Listener first. You can rename all the targets before promoting them, and it’s a good idea to have a consistent and comprehensive naming system, including host name, database name and target type. This will make things easier to administer later on. Once you’ve promoted the Listener, you can do the rest, making sure the parameters are set correctly, and testing that the connection to the databases all work.
The main menu selections are on the top right. You can select Enterprise to work with multiple Targets, for instance for applying patches or looking at general statistics. Targets allow you to drill down into individual systems for detailed information on specific servers and databases. The options available for each database depend on what Management Packs you have installed, but you can always see general performance data and SQL statements being run. Setup allows you to add new Targets, change credentials and connect to My Oracle Support.
Backups with OEM
Backups can either be done from each database screen, or you can create a job in Enterprise->Job->Library and schedule it to run against a Target Group. Databases can belong to various groups, which allows you to automate them as much as possible. You can also create Dynamic Groups, which will add new Targets based on metadata you’ve added to the Target, thus freeing you from the need to manually change your jobs every time you add a new database.
Monitoring with OEM
Monitoring is available, and you can set various thresholds that can, in turn, cause automated actions to occur, such as adding new datafiles if free space falls below 5%. However, there are a number of caveats to be aware of, in addition to the complexity and size of OEM. It can be particular about how tasks are carried out, so try to be consistent, for example when adding new targets. There are also multiple ways to accomplish some tasks, but they don’t always have the exact same outcome. So pay attention to where you are in the interface and what options you select. Finally, OEM shows the things it thinks are there, which may not always be accurate. It may show databases being down when in fact the Listener has been poorly configure. When in doubt, double check.
The fact the OEM can manage not only database/middleware products but also manage/monitor entire datacenter infrastuctures is big plus for me. If needed it can be used as a full scale monitoring tool. But if you are looking just for a monitoring tool there are also alternatives such as Prometheus and Grafana wich have have much better user interfaces and features.