vROps Cluster Dashboard Step by Step how to

Today I thought I would extend on one of the chapters in my recently released book Mastering vRealise Operations Manager and at the same time update one of the more popular posts being the vCOps Cluster Dashboard Step by Step how too. I have had many emails asking about a vROps 6 version so after way too long here it is πŸ™‚

Layout

1) First thing to look at is how we want to lay out the dashboard, This can be done in good old paint or on paper or you can just start laying out the dashboard in the editor either way its good to get an idea on how you would want it to look like. The image below is just a quick layout of the dashboard being made today.

map

2) Take what you have designed and create a new dashboard and drag over the widgets from the left onto the right untill we have them in the right position that works for you.
cluster01

Configuration

For this we will work from the first widget in the top left being the object list and work our way down the first column then start at the top of the second etc. Here we will see the configurations made as well as any XML that may be needed. The biggest difference between the previous dashboard post is that the previous dashboard was static this dashboard will be interactive based on which cluster is selected in the object list.

Object List ( Cluster List )

1) Edit the Object List widget
2) Change the title to cluster list
3) Set mode to self
4) Select the Cluster Compute Resources tag, this means only cluster objects will be shown in the list which is what we are after in this case.

clusterlist

Health Chart ( Cluster Host Health )

1) Edit Health Chart Widget
2) Change title to Cluster Host Health
3) Set Self Provider to off
4) Select Children as the mode
5) Under the tag select host systems

I will cover the interactions at the end but what this achieves is when cluster is select from the list this health chart will show children resources that are host systems.
hosthealth

Scoreboard ( Summary )

XML file being used can be download here:

1) Copy the custom XML file up to the vROps Node(s) to /usr/lib/vmware-vcops/tomcat-web-app/webapps/vcops-web-ent/web-inf/classes/resources/reskndmetric
2) Edit the scoreboard widget
3) Select self provider off
4) Feel free to adjust the box and label size to suit
5) In Res. Interaction Mode select a custom XML file which was uploaded as the first step.

summary

Heat Map ( Core Utilisation )

1) Edit the Heat Map Widget
2) Edit the title to core Utilisation
3) Enter the same name in the description
4) Choose Cluster Compute Resource in the group by section
5) Mode is set to instance
6) Object Type should be changed to Host System
7) and the attribute Kind should use CPU Core Utilization

What this will achieve is that it will show the hosts in the cluster selected with smaller boxes representing the cores and the colours will show the utilisation of the cores. It is worth noting that by default the core utilization is not set to collect if using th default or base policy and will need to be changed to use this metric.

coreute

Scoreboard ( CPU Health )

XML file being used can be download here:

1) Copy the custom XML file up to the vROps Node(s) to /usr/lib/vmware-vcops/tomcat-web-app/webapps/vcops-web-ent/web-inf/classes/resources/reskndmetric
2) Edit the scoreboard widget
3) Edit the title to CPU Health
4) Self Provider set to off
5) In Res. Interaction Mode select a custom XML file which was uploaded as the first step.

cpuhealth

Scoreboard ( Datastore Health )

XML file being used can be download here:

1) Copy the custom XML file up to the vROps Node(s) to /usr/lib/vmware-vcops/tomcat-web-app/webapps/vcops-web-ent/web-inf/classes/resources/reskndmetric
2) Edit the scoreboard widget
3) Edit the title to Datastore Health
4) Self Provider set to off
5) In Res. Interaction Mode select a custom XML file which was uploaded as the first step.

datastorehealth

HeatMap ( Datastore Threshold)

1) Edit the heat map widget
2) Edit the title to Datastore Threshold
3) Set description to the same “Datastore Threshold”
4) Select instance as the Mode.
5) Object type to Datastore
6) Attribute Kind set to Disk Space|Capacity Remaining
7) On the colour scale where it is green on the left click the little green square, This will open a colour pallet choose red, on the right side do the same but choose green. This will effectively swap the colours around. This is done because 0 space remaining is bad.
8) Set the Max Value to 20. If this was set to 100 it would not make a good indicator of reaming space. This means it will be green all the way up to 20 then have a more granular colour down to 0.
9) Click Save

datastoreThreshold\

Heat Map ( Memory Swap in Rate )

1) Edit the Heat Map Widget
2) Edit the title to Memory Swap in Rate
3) Enter the same name in the description
4) Choose Cluster Compute Resource in the group by section
5) Mode is set to instance
6) Object Type should be changed to Host System
7) and the attribute Kind should use memory|Swap in Rate
8) Configure the Max for you environment generally its low, here we set 5 for 5 Kbps
9) Click on Save

memoryswap

Scoreboard ( Memory Health )

XML file being used can be download here:

1) Copy the custom XML file up to the vROps Node(s) to /usr/lib/vmware-vcops/tomcat-web-app/webapps/vcops-web-ent/web-inf/classes/resources/reskndmetric
2) Edit the scoreboard widget
3) Edit the title to Memory Health
4) Self Provider set to off
5) In Res. Interaction Mode select a custom XML file which was uploaded as the first step.

memoryhealth

Scoreboard ( Capacity )

XML file being used can be download here:

1) Copy the custom XML file up to the vROps Node(s) to /usr/lib/vmware-vcops/tomcat-web-app/webapps/vcops-web-ent/web-inf/classes/resources/reskndmetric
2) Edit the scoreboard widget
3) Edit the title to Capacity
4) Self Provider set to off
5) In Res. Interaction Mode select a custom XML file which was uploaded as the first step.

capacity

Topology Graph

1) Change Self Provider to Off.

This one here is more of a space filler you could place an object relationship widget something to show relationship I chose this as it gives the connections to the cluster object and its children. Optionally you could add the degree of separation to 2 this really shows a spider web of dependencies.

Interactions

From the image below we can see this is pretty straight forward. One widget being the object list feeds all the other widgets.

interactions

If all has gone well we should now have something like the image below, This will allow a dashboard to quick view and switch between clusters.

dashboard

While this is a functional dashboard it might not fit everyone and what makes a good dashboard is tuning, take this and tune it to your environment, add metrics remove metrics make it your own.
One small tip when working with XML files it is quicker to create a new file if you have made changes. You may have noticed when making changes they don’t appear to change. Due to caching of the XML files I have found updates are often not picked up for some time..

Cheers

*Update

I have received some feed back about 6.1 and wanted to add this update. The above method of creating this example dash is the same under vROps 6.1. But only thing I would recommend is instead of coping the file over to the hosts use the really handy Manage Metric Config section πŸ™‚

What I did was stand up vROps 6.1 this morning fresh no update and imported the dashboard and copied over the XML.
I did enable the metrics I needed in the default policy (Which is what was used in this case) so that the correct data is collected. This was the same as 6.0. For example core utilization is not collected by default.

Below is the image of vROps dashboard with no touch ups. as you can see the datastore capacity and the VM capacity as well as my super metric are not available. This is because the capacity analysis has not run yet and the supermetric was not imported.
But should work once available, everything else is working as expected.
fresh install

I do like the new shading of the health chart.

Below is the XML code that was used, should be roughly the same minus any testing Ive done since the original post
Datastore
datastore
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<AdapterKinds>
<AdapterKind adapterKindKey="VMWARE">
<ResourceKind resourceKindKey="ClusterComputeResource">
<Metric attrkey="diskspace|snapshot" label="Snapshot" unit="GB" yellow="20" orange="70" red="85" />
<Metric attrkey="diskspace|used" label="VM Usage" unit="TB" yellow="5000000" orange="7000000" red="8500000" />
<Metric attrkey="disk|commandsAveraged_average" label="Disk Commands" unit="cmd/s" yellow="1000" orange="7000" red="8500" />
<Metric attrkey="disk|totalReadLatency_average" label="Read Latency" unit="ms" yellow="10" orange="30" red="85" />
<Metric attrkey="disk|totalWriteLatency_average" label="Write Latency" unit="ms" yellow="10" orange="30" red="85" />
</ResourceKind>
</AdapterKind>
</AdapterKinds>

CPU Health
cpuhealth
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<AdapterKinds>
<AdapterKind adapterKindKey="VMWARE">
<ResourceKind resourceKindKey="ClusterComputeResource">
<Metric attrkey="cpu|capacity_usagepct_average" label="CPU Usage" unit="%" yellow="50" orange="70" red="85" />
<Metric attrkey="cpu|demandPct" label="CPU Demand" unit="%" yellow="50" orange="70" red="85" />
<Metric attrkey="cpu|capacity_contentionPct" label="CPU Contention" unit="%" yellow="5" orange="10" red="15" />
<Metric attrkey="cpu|reservedCapacity_average" label="CPU Reserved" unit="MHz" yellow="5" orange="10" red="15" />
</ResourceKind>
</AdapterKind>
</AdapterKinds>

Capacity
capacity
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<AdapterKinds>
<AdapterKind adapterKindKey="VMWARE">
<ResourceKind resourceKindKey="ClusterComputeResource">
<Metric attrkey="cpu|capacityRemainingUsingConsumers_average" label="Avg VM Remaining by CPU" unit="#" yellow="50" orange="30" red="10" />
<Metric attrkey="mem|capacityRemainingUsingConsumers_average" label="Avg VM Remaining by MEM" unit="#" yellow="50" orange="30" red="10" />
</ResourceKind>
</AdapterKind>
</AdapterKinds>

Summary
summary
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<AdapterKinds>
<AdapterKind adapterKindKey="VMWARE">
<ResourceKind resourceKindKey="ClusterComputeResource">
<Metric attrkey="summary|total_number_datastores" label="Total Datastores" unit="#" yellow="200" orange="700" red="805" />
<Metric attrkey="summary|total_number_hosts" label="Total Hosts" unit="#" yellow="50" orange="70" red="85" />
<Metric attrkey="summary|total_number_vms" label="Total VMs" unit="#" yellow="10000" orange="70000" red="85000" />
<Metric attrkey="summary|avg_vm_density" label="VM Per Host" unit="#" yellow="100" orange="300" red="850" />
<Metric attrkey="summary|avg_vm_mem" label="Avg RAM per VM" unit="GB" yellow="10000000" orange="30000000" red="85000000" />
<Metric attrkey="Super Metric|sm_6a888afb-89fa-43be-beb4-aff61f7f0309" label="vCPU to pCPU" unit="#" yellow="1000" orange="3000" red="8500" />
<Metric attrkey="summary|avg_vm_cpu" label="Avg MHz Per VM" unit="GHz" yellow="10000" orange="30000" red="85000" />
</ResourceKind>
</AdapterKind>
</AdapterKinds>

Memory
memhealth
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<AdapterKinds>
<AdapterKind adapterKindKey="VMWARE">
<ResourceKind resourceKindKey="ClusterComputeResource">
<Metric attrkey="mem|swapinRate_average" label="Swap In" unit="kbps" yellow="20" orange="70" red="85" />
<Metric attrkey="mem|usage_average" label="Usage" unit="%" yellow="50" orange="70" red="85" />
<Metric attrkey="mem|vmmemctl_average" label="Mem Balloon" unit="kb" yellow="100000000" orange="700000000" red="850000000" />
<Metric attrkey="mem|reservedCapacity_average" label="Reserved" metric="gb" unit="GB" yellow="10000000" orange="30000000" red="85000000" />
<Metric attrkey="mem|active_average" label="Guest Active" metric="gb" unit="GB" yellow="100000000" orange="300000000" red="8500000000" />
<Metric attrkey="mem|host_systemUsage" label="System Usage" metric="gb" unit="GB" yellow="100000000" orange="300000000" red="850000000" />
<Metric attrkey="mem|totalCapacity_average" label="Total Capacity" metricUnitId="gb" unit="GB" yellow="10000000000" orange="30000000000" red="85000000000" />
<Metric attrkey="mem|shared_average" label="Shared" unit="GB" yellow="10000000" orange="30000000" red="85000000" />
</ResourceKind>
</AdapterKind>
</AdapterKinds>

Its great that the fix about scaling the metrics got in after being broken in 6.0.1

Update 6.3

Had some questions about this dashboard under 6.3. It still works nothing needs to change but what you do have is new themes to work with. The image below shows the dashboard running under 6.3 with some varying themes. Nice that the original the colors have been washed out a little, easier on the eyes.

vrops 6.3

Update 6.4

This dashboard still works great under 6.4 I have a New post where I have given it a face lift as well as the export of the dashboard HERE
view07

Cheers

49 thoughts on “vROps Cluster Dashboard Step by Step how to

  1. In the Summary widget, the xml of Summary03.xml specifies a super metric that you have. How do you create this super metric? It is to calculate the number vcpu to pcpu.

    • Hi Ron,

      Apologies for the late reply, yes the super metric is a vcpu to pcpu ratio. the super metric fomula is “${this, metric=summary|number_running_vcpus} / ${this, metric=cpu|corecount_provisioned}”

  2. Hi Scott, great dashboard! The path to copy the files to incorrect appears incorrect. They should go into the /usr/lib/vmware-vcops/tomcat-web-app/webapps/vcops-web-ent/web-inf/classes/resources/reskndmetrics

    • Hey Manny,

      Great to hear you like it and Cheers a million for the pick up that’s a cut and paste gone bad. I have fixed up the path in the post.

      Chers

  3. Hi Scott, another question please. Can you please elaborate on the Core Utilization Widget requiring additional configuration to get it going?

    Thank you.

    • Hey Manny,

      Sure happy too, this is regards to the metric collection?
      On the policy that is applied to the cluster and hosts you need to:
      1) Edit the policy
      2) navigate to Override Attribute section
      3) in the object type drop down choose host system from vcenter adapter
      4) type core in the search field to the very right
      5) the metric CPU|core utilization% under state choose local and should have a green tick.

      This will enable the collection of that metric so the widget can work.

      Let me know how it goes or if you meant something different.

      Cheers

      • Thanks Scott, this was it. I did need to wait for a collection cycle to finish, the widget did not light up right away (understandably!).

        Cheers
        Manny

        • Hi Manny,

          Awesome great to hear its all sorted. Yeah I should of noted you would have needed to wait until the next collection.

  4. Pingback: vROPs - Obtain Super Metric ID for custom xml - Virtual Ramblings

  5. Scott

    I love this dashboard.. and your book. I have a question – how did you convert the scorecords to readable format? Is that via supermetrics tied to the policy?

    • Hi Michael,

      Thanks heaps!,
      Ahh yes…. SO in 6.0 vROps automatically scaled the measurement. This was then “broken” in 6.0.1 and 6.0.2 with the introduction of the ability to select the metric measurement you wanted ie GB or GHz etc.
      Issue there is that only worked when using self provider on not when using relationships and XML files. This I am told should have been fixed in 6.1 which I will be testing for my self very soon.
      Otherwise yes standard conversion supermentrics assigned to the object (cluster) and then include them in the XML file.

      Cheers

  6. Scott,
    I am on 6.1 and none of these XML Files are working with any of the scoreboard. Also when I try to manually put in the key metrics referencing from the xml files. For eg the scoreboard summary shows different data from what is being entered into the key metrics or XML, It just shows capacity remaining %, time remaining with committed projects, provisioned capacity, provisioned vCPUs etc

    • Hi Virtualcloud,

      I will post an update showing 6.1 later today. Everything should work. I just did it the other day all the XML and dashboard imported perfectly apart from the metrics which where not being collected, After enabling on the policy it all showed up, I will have another look at it though.

      Cheers

      • I am on 6.1 and all of them still work with no issues. Maybe you need to set overrides to make sure you are collecting those metrics?

        • Are you using XML files?
          If I use XML Files, I get an Internal Server Error. If I input metrics on my own, The only data I get is everything other than the metrics that I just entered.
          The metrics are enabled in the policy to collect data.
          For one specific scoreboard – Capacity. IF I select self provider off, I get metrics like density, time remaining with committed projects, etc.. Eventhough I have added the metrics for Avg VM remaining by CPU and Memory. But If I select self provider ON, I get the metrics for Avg VM remaining by CPU and Memory, but the problem is I get it for all the clusters in my environment, and not just for the cluster that I select from the cluster list. I have made sure that the widget interaction is correct. Also the metric is being collected because If I do self provide ON, I can see the metrics.

          • Yes i am using the xml files. Widget interactions are all to the Cluster List object.

            Self Provider is set to off for the rest of the objects.

            For the metric type did you make sure you are collecting for ClusterComputeResource as some of them are in different buckets.

            If you have can send me your email address or something I can send you screenshots of what I have.

  7. Hi Everyone,

    Just added a small update to the bottom of this post.
    I stood up a fresh instance of vROps 6.1 this morning not my updated environment. and imported the dashboard from 6.0 instance.

    I supplied the XML and screen shots.

    Cheers

    • Fantastic Scott! I used these XML’s, created the supermetric for vcpu/pcpu and it seems to be working for me now with widget interactions setup and self provider turned to off.
      I personally like the new visual theme in the scoreboard widget, if you have not tried that yet. Thanks again for this amazing dashboard. Looking forward for more..

      A question not related to this dashboard. I am trying to create a dashboard which will have 2 view widgets:
      1. That will list all the datastores and will filter them with Usage space % > 80.
      2. Second view (self provider off), that will list all the VMs that are in the datastore that we will select from view 1.

      The problem is widget interaction does not allow me to link the interaction from a ‘view’ widget. And as far as I know, there is no way to apply the filter of Usage space > 80% or any metric in the ‘Object List’ widget.

  8. Hi Scott,

    Is there any way to incorporate this dashboard into a report? For example, I want to take one specific cluster and display this same information in an auto generated report. I’ve given it some time, but I have not been able to get it working.

    Thanks for the great dashboard!

    Kevin

    • Hi Kevin

      Cheers and stay tuned when I get a little more time I have some application based dashboards that should hit the mark.

      Yes there is, if you are running vROps 6.1 it will allow dashboards to be used in reports. I have tested this and it does work, Does it look pretty in my default layout… not really. But dosn’t mean it cant. There would be nothing stopping you creating a report version of the dashboard that is sized and laid out differently to fit within the PDF nicely.

      Now I have seen and issue where the data is not displayed but if combined with another dashboard or view it seams to work. believe it has something to do with how this dashboard is based on what’s selected in the object widget.

      Here is a link of a report I put zero effort into and didnt change the layout in how it looks. just gives an idea on what should be displayed

      I should note I selected the cluster when running the report

      http://www.virtualiseme.net.au/wp-content/uploads/2016/02/2-3-16-The-Cluster-Dash-virtualiseme-2.pdf

  9. Hi,

    I am unable to select β€œCluster Compute List” but it lets me select the cluster name under it.

    Initial tested this in vRops 6.1 and upgraded and tested on 6.2 and its not working.

      • Im guessing this is to do with the cluster list?

        Under “object types” There should be a cluster compute resource type with a bracket with the number. This is how many clusters there are.

        There is a cluster compute resource which has the individual clusters listed under it also. which im guessing is what your seeing?

        Cheers

        Scott

        • Hi there, As above on the latest version of vrops, you cannot choose cluster compute resource in in the cluster list, but you can choose the clusters under the title.

          Which makes this dashboard work only in part

  10. Scott, Have you tried this on 6.2 yet?
    In 6.2, on the scoreboard widget, there is no option to select the custom xml that we upload. Any idea how to tackle that?

    Thanks

      • haha no worries,

        I saw the first post and was thinking I just did an Azure one the other day im sure it was there…then though but was that a different widget… :).

        Cheers

  11. Scott,
    Is there a way to include “Parent vCenter” and “Parent Datacenter” in the object list listing all the clusters? The object list lets you add metrics but not properties. I also thought of creating a supermetric, where I selected the object type as Cluster compute resource, and in the attributes I selected “Parent vCenter”, however it gave me an error saying cannot convert the formula into a number.
    I also thought of using a “view” instead of “object list” but apparently, a view cannot be selected as a source while applying interactions. The problem is all my clusters are named the same across the datacenters and vCenters πŸ™

    • Hey Virtualcloud,

      Just thinking off the top of my head you could have another object list widget and select the parent radio button then select datacenter tag and the interaction to come from your cluster list widget. this will show the parent datacenter of the selected cluster..

      Or go the other way so instead of having the clusters listed have the datacenters, when selected another widget shows the clusters in another list that you would then select.

      did that make sense? and is that what you were after?

  12. Hi Scot,
    Good Morning. Is there any option to get VM Uptime report in %, currently have the option in Seconds, Hours and Days. Please let me know.
    Thanks.

    • Hi Jenganraj,

      Is the uptime metric you have just the ootb OS uptime in seconds? as thats only since last reboot.

      But if you have total uptime Im guessing you want percent update since the date the server was installed?

      Either from vCenter or Windows you could grab the system install date and work out the epoc or total in seconds or days or hours, then use your uptime and work out the percentage in a super metric.

      This data would have to be fed in via rest script or something similar so its not a manual task for every server.

      Cheers

  13. Hi Scot,

    Thanks for your great dashboard, it’s very good, everything work for me, except Core Utilization, I did the following steps,but doesn’t work, it shows “No Data Available” , I am using version 6.2.1
    On the policy that is applied to the cluster and hosts you need to:
    1) Edit the policy
    2) navigate to Override Attribute section
    3) in the object type drop down choose host system from vcenter adapter
    4) type core in the search field to the very right
    5) the metric CPU|core utilization% under state choose local and should have a green tick.

    • Hi Patrick,

      It sure does I have added screen shot at the bottom of this page, under 6.3 showing off some of the different themes now available for scoreboard widget.

      Should note that under 6.3 more metrics are disabled by default which may need to be enabled, Think only the cpu core utilisation is the only one still,

      Cheers

  14. Hi Scott,
    I think one of the labels in the Datastore Health widget is misleading?
    CPU Reserved?
    Shouldn’t that be “Disk Commands”
    This is the offending XML.

  15. XML didn’t upload. 2nd try.
    <Metric attrkey="disk|commandsAveraged_average" label="CPU Reserved" unit="cmd/s" yellow="1000" orange="7000" red="8500"

    • Hey Michael,

      HaHa funny thing is I saw this last week when looking at my own vRops instance and thought that’s not right.

      Good pickup, it was purely a copy paste error there.
      I will fix it up πŸ™‚

      Cheers

  16. Pingback: vROps 6.4 Cluster Dashboard with Added Views | Virtualise Me

  17. Hey Scott, I’m not getting any heat map color renderings for the Core Utilization or Memory Swap widgets. Any ideas? The dashboard has been in place for 3-4 days now, running on 6.4, following your YT video.

    • Hey Ken,

      Have you enabled the collection of the core utilisation metrics in the policy?
      Swap I thought would be enabled by default but best to check. They are usually the most common reasons why the heat maps dont work

      Cheers

Leave a Reply

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

*

Anti SPAM BOT Question * Time limit is exhausted. Please reload CAPTCHA.