Sunday, January 22, 2012

Use RDA or Enterprise Manager for Governance

Within my current project I ended up in an interesting discussion. As part of the governance or more specifically some government regulations for the systems security we needed a description of the system components.

Obviously there are several layers for this topic, but in order to have a complete view of the system a list of installed system components and also of the systems configuration was desired.

Well, as you can guess, there was no tangible description of the current configuration, and there was also only a sketchy overview of the Oracle components which were used to build the system.

So, the first idea was to ask the various departments which were involved in the setup and configuration of the system to use a variety of tools and approaches to deliver the information.
I offered the idea to use "the one ring to rule them all" approach. Oracle offers two tools that provide an overview of the used components, their configuration and even of platform settings.

One tool would be either the local Enterprise Manager or the central Grid Control (Cloud Control if you are up to date). The problem is that from the Enterprise Manager perspective, each of the layers (host, OS, storage, Oracle components, configuration) would need its own report. So a number of reports would need to be executed.

So my thought turned to the Remote Diagnostic Assistant. The RDA is a tool that is used by Oracle Support to gather information of the system setup, OS settings, and the like.

So I downloaded RDA for one of the machines, unpacked it, configured it and executed it.
Within minutes you'll have the output of a large number of Perl scripts.

The good thing is that the presentation is provided in a human readable format (HTML) so that a support analyst or the DBA can have a glance at the data.
But even more interesting is the fact that each HTML page is also available as a text file, with a nice structure.

So with the intention of building a prototype, I used some AWK scripts to get the data out of the text files, and used it as input for the data pump.
Create some tables in a new tablespace, get the data into it and you have a description of your technical components for your governance.

Next step would be to add the date of the execution, and you could easily figure out if changes had happened in the last period and add them to your governance.

So again a nice use of things you already have in your environment which can be put to good use for slightly different purposes as they were intended in the first place.