Setting Up Chargeback in EM 12.1.0.4

Some time back, I posted a blog entry about Metering and Chargeback in Enterprise Manager, where I covered the basic capabilities of the Chargeback Application. It’s taken me some time to get back to the promised followup blog post on setting up Chargeback, what with Oracle Open World getting in the way of things, but that’s what I’m finally doing now.

Chargeback can be setup in EM12c by any user with the EM_CBA_ADMIN role, or of course as SYSMAN. Once you are logged in as a user with the relevant privileges, follow the path “Enterprise → Chargeback”:

Image00001

The default currency symbol displayed in the Chargeback application is the dollar sign ($). Note this is just a symbol and does not have any impact on chargeback calculations, but you can change it if you want by clicking on the “Settings” tab:

Image00002

You can enter a new currency symbol here, but for this environment we will leave it at the default and click “Change Plans”:

Image00003

The first thing we want to do is set rates for the universal change plan. This covers the CPU Usage, Memory Allocation and Storage Allocation metrics. Click “Set Rates”:

Image00004

Set the rates appropriately and click “Save”:

Image00005

While the universal charge plan is useful, there are situations where you want to apply charges on other entities. That’s where an extended charge plan can be used. To create an extended charge plan, click “Create” then “Plan”:

Image00006

Provide a meaningful name for the charge plan, then click “Add” to select an entity type for which you can set rates:

Image00007

You can add multiple entity types to the charge plan at once, so choose “Host” and “Oracle Pluggable Database” then click “OK”:

Image00008

You can now setup specific configurations for each entity type, by selecting the entity then clicking “Setup Configurations …”:

Image00009

Click the “Add” button:

Image00010

In this example, we want to charge different rates for different machine architectures. This is the sort of thing you would do if you wanted to charge more for maintaining machines that are either outdated or where you have less skills and may need to bring in consultants. To do this, you can set the “Condition Item” to “Machine Architecture”, then click the “Search” button to search for different values you can choose:

Image00011

In this scenario, we want to set up three different configurations:
• Intel x86_64 as our default
• Intel i686 as more expensive because it’s outdated
• PA-RISC 64-bit as more expensive since we have less skills in that area.
You can select each in turn from the list and click “OK”, like this:

Image00012

Click “OK”:

Image00013

On the “Setup Configurations” pop-up, click “OK” again:

Image00014

You can now specify multipliers for each architecture. In this example, we’re leaving our preferred architecture (Intel x86-64) at 1, setting Intel i686 to 2x, PA-RISC 64 bit to 1.5x and other architectures to 3x. Next we can click “Oracle Pluggable Database” to setup configurations for that:

Image00015

Click “Setup Configurations”:

Image00017

Click “Add…”:

Image00018

On the “Add Configuration” pop-up, select “Version” for the “Condition Item”:

Image00019

In this scenario, we want to charge more for clients that have not switched to the latest version of the database as a way of encouraging migration so we set the “Condition Operator” and “Condition Value” to validate that. We could also have chosen to charge more when using paid options like Partitioning and so on. Click “OK”:

Image00020

On the “Setup Configurations” pop-up, click “OK”:

Image00021

Back on the “Create Plan: HR Chargeback Plan” page, we can increase the multiplier for configurations that aren’t on the latest version and click “Save”:

Image00022

Now we have the charge plans configured the way we want, we can also define cost centers that the charges will be assigned to. Cost centers are normally configured in a business hierarchy, so let’s walk through the process of building that. We start by clicking the “Cost Centers” tab:

Image00023

Cost centers can either be imported from an existing LDAP configuration (done via the “Action” menu) or defined in the Chargeback application itself. In this example, we’ll walk through adding them to the Chargeback application. To do this, click “Add”:

Image00024

On the “New Cost Center” pop-up, enter a cost center name and display name, then click “OK”:

Image00025

You can do this as many times as you like. To add a cost center in a business hierarchy, first create a cost center at the top level (as shown above) then create a cost center using the “Member of” radio button and select the relevant top level cost center, as shown here:

Image00026

Once you have defined all the cost centers you need, the next step is to add the relevant entities. An entity is either a target in Enterprise Manager, or a custom resource that has been added to Enterprise Manager. Custom resources can include target types for which there is no current out-of-the-box Chargeback support (covered in more detail in the documentation). To add entities, click the “Entities” tab:

Image00027

Click “Add Entities”:

Image00028

This will start the “Add Entities” wizard. Click “Add” to select targets for chargeback:

Image00029

Firstly, we want to add hosts. To search for hosts to add, deselect “All” and select “Host” from the “Target Type” dropdown:

Image00030

From the list of hosts, select one or more hosts to add as an entity and click “Select”:

Image00031

On the Make Assignments wizard step, select the entity name and click “Assign Plan”:

Image00032

Select “HR Chargeback Plan” and click “OK” to add the chargeback plan to this host:

Image00033

To add a cost center to this host, click “Assign Cost Center”:

Image00034

Select the relevant cost center and click “OK”:

Image00035

Back on the “Make Assignments” step, click “Next”:

Image00036

Review the settings and if they are correct, click “Submit”:

Image00037

You can walk through the same process to add one of the container databases and a PaaS zone as well.

NOTE: If you add a PaaS zone, everything inside the zone automatically gets added, so you don’t need to add items individually as I’ve shown here. If you’re not adding a PaaS zone, then you still need to add items individually.

Once that has been done, you can schedule an on-demand data collection to start seeing the information for these entities in the Chargeback application. To do that, select “On-demand data collection” from the “Action” dropdown menu:

Image00038

Click “Yes” on the “Confirmation” pop-up:

Image00039

In the “Information” message, click “here” to view the job status:

Image00040

Once the job status changes to “1 Succeeded”, click on “Enterprise” then “Chargeback”:

Image00041

You should see information being collected both in the “Summary” and “Usage Trends” regions:

Image00042

It might seem like a very long-winded setup, but in reality Chargeback only takes you a short time to configure. Of course, once it’s configured you then have all the joys of getting money out of the end clients for their resource usage – good luck with that one, I can’t help you there! 🙂

Pete

After 22 years of working at Oracle in just about every role except Marketing and Support, I am now working as a Senior Managed Services Consultant with Red Stack Tech, specializing in Oracle Database technology, High Availability and Disaster Recovery solutions.

I am also a member of the OakTable Network, and have presented at RMOUG Training Days, Hotsos Symposia, Oracle OpenWorld conferences, and other user group events. I have co-authored the Expert Oracle Enterprise Manager 12c and Practical Oracle Database Appliance books published by Apress, and am one of the authors of the Building Database Clouds in Oracle Database 12c book published by Addison Wesley.

Leave a Reply

Your email address will not be published. Required fields are marked *