CA Configuration Automation

 View Only
  • 1.  VMWare CI Relationships

    Posted Oct 01, 2013 07:44 PM
    We could like to discover our VMware Infrastructure and display the CIs and Relationships in the CA CMDB within the CA Service Desk.
    We are using SDM 12.7 and CCA 12.7 for discovery.
    We have CIs for our Virtual and Physical Servers.

    We would like to show the relationships of the virtual servers to the VMware clusters and the physical servers in those clusters.
    Here is how we would like the relatonships to show in the CMDB:
    Virtual Server Service CI -(Provided By)-> Virtual Server CIs -(Is Hosted By)-> Virtual Cluster CI -(Is Hosted By)-> Physical Server CIs

    We are using a modified version of the "VMware vCenter Server 5.1.0.37189" Blueprint.

    Here is the CCA data we get back:
    Running as a Server blueprint, under the "VMware vCenter Server" Component...
    Configuration folder, then
    Executables folder, then
    vCenter Server item, then
    Datacenter (our Datacenter name here), then
    Cluster (our 1st Cluster name here) folder, then
    Host folder (our 1st Hostname Here), then at same level as the Hosts...
    VirtualMachines folder, then
    VirtualMachine (our 1st VirtualMachine here), then at same level...
    VirtualMachine (our 2nd VirtualMachine here), etc.

    How can we the Cluster to show as a CI with the Virtual Servers on one side and the Physical Servers on the other?


  • 2.  RE: VMWare CI Relationships

    Broadcom Employee
    Posted Oct 02, 2013 10:40 AM
    Hi Wayne,

    Try this....

    Go to Blueprints --> Structure Classes --> VMware vcenter server with webservices --> Make Copy --> open the copy --> expand datacenter --> expand cluster --> select ^name$ --> scroll down on right pane to "Value Details" --> Change the "Interpret As" to "Host Name or IP Address" --> Change "Relationship Key" to "Yes" --> Change "Relationship Type" to whatever you like --> Save

    Go Back to Blueprints ---> Blueprints --> Select you Customer Blueprint --> Expand Configuration --> Configuration Executables --> vCenter Server --> Scroll Down on the right pane to "Parser Details" --> Change the "Structure Class" to the one you copied\created above --> Save Blueprint

    Before rerunning discovery, please delete the discovered component from the vCenter Server and then run the discovery

    Let me know how that works out for you


  • 3.  RE: VMWare CI Relationships

    Posted Oct 02, 2013 01:42 PM
    a_h,
    First, very good instructions - you definitely know how to use the blueprints :)
    Your instructions helped me get a one of the three relationships working properly; we now have the relationship showing how the vCenter server manages the VMclusters.
    Our most important relationships needed are:
    1. what physical servers are resources for what clusters
    2. what virtual servers are assigned to what clusters

    The data exists, but I am perplexed about how to have the relationships connect between set of sub components rather than the blueprint component to a subcomponent.

    I have attached two pdfs, showing what we have and what we want (desired).

    Let me know if you can help with these critical relationships.

    THANKS SO FAR,
    Wayne

    Attachment(s)

    pdf
    VCenterDesired.pdf   11 KB 1 version
    pdf
    VCenterCurrent.pdf   11 KB 1 version


  • 4.  RE: VMWare CI Relationships

    Broadcom Employee
    Posted Oct 02, 2013 06:46 PM
    I don't have an environment to test this, but might this work.
    I will provide you of what I am thinking, you can try it; if I can some free time, I will build it out a test environment to see

    In that same (new) structure class created, for Datacenter --> Host --> ^name$ --> set Relationship = "No", this will get rid of relationships from vcenter directly to the VMs
    Next, this is where trial and error comes into place for the next two:
    datacenter --> Cluster --> ^name$ --> change "Interpret As" to "Database Table" --> Save
    datacenter --> Cluster --> Hosts --> ^name$ --> change "Interpret As" to "Database Table" --> Save

    The database table was created to have relationship of Tables to a Database vs Tables directly to Database Application (ex: MS SQL Server); hopefully that same concept can be applied here

    The first one would have the Cluster relationship to the esx and the second one would be esx to guest

    I know in your Desired, you have two different relationships from the cluster (one to the esx host and the other to the VMs), not sure how to get that to differentiate, but I see it as Cluster-Host and Hosts-VMs, not cluster-VMs that you are looking for.

    You can always use TWA to manipulate the data to get that, especially if you get the above to work, then you use the ESX box as a reference between the Clsuter and Guest VMs


  • 5.  RE: VMWare CI Relationships

    Posted Oct 03, 2013 08:12 PM
    a_h,
    Thanks for the info.
    I tried your suggestions with no luck.
    When I use the "Database Table" Interpret As, the physical server names now moved into the "Value" column.
    So I now have rows of physical servers where...
    ParameterName = name
    Server Name 1 = <hostname of vcenter server>
    IP Address 1 = <IP Address of vcenter server>
    Application 1 = "VMWare vCenter Server"
    Instance 1 = <>
    Relationship Type = Communicates With
    Server Name 2 = <>
    IP Address 2 = <>
    Port = <>
    Application 2 = <>
    Instance 2 = <>
    Value = <hostname of the specific Physical Host>
    Discovered Time = <time of discovery>

    I think you were thinking at least the database table allows the interpretation of a group of items 2 levels removed from the blueprint - there seems to be some logic there.

    Did you get a chance to try anything in your environment?

    What do you think about creating a blueprint against CCA to look at the clusters within the data CCA holds?
    (we know CCA knows about the clusters and their relationships with the physical and virtual servers)

    Thanks in advance for any help you can provide,
    Wayne


  • 6.  RE: VMWare CI Relationships

    Posted Oct 03, 2013 08:24 PM
    a_h,
    Also, on you comment that the data contains Cluster-Host and Hosts-VMs but not Cluster-VMs, here is what the returned data looks like in the CCA Component Interface:
    Under the Blueprint data...
    Configuration -> Executables -> vCenter Server -> Data Center -> Cluster -> (this is where the Cluster Name value exists)
    Configuration -> Executables -> vCenter Server -> Data Center -> Cluster -> Host (in each host folder is where the Host Name value exists)
    Configuration -> Executables -> vCenter Server -> Data Center -> Cluster -> ResourcePool -> Virtual Machines -> Virtual Machine (in each virtual machine folder is where the Virtual Machine Name value exists)

    So, technically the Physical Hosts are only one level below the Cluster, where the Virtual Machines are 2 levels below that inside the ResourcePool.

    Again, Thanks in Advance for any help,

    Wayne


  • 7.  Re: VMWare CI Relationships

    Broadcom Employee
    Posted Sep 15, 2015 11:41 AM

    Hi Wayne, 

     

    Were you able to accomplish this?  If not, do you require any further assistance on this?



  • 8.  Re: VMWare CI Relationships

    Posted Nov 12, 2015 11:07 AM

    a_h,

    We are now actually using a script we created that feeds data using the VMware API.  It gathers all the Host, Cluster, VM and relationship data and places it in SQL tables, we then query the SQL tables and compare them against the existing CI and relationship data in the CMDB.  Using this comparison, we divide the differences into cases of new CIs/Relationships, Modified CIs/Relationships, or Retired CIs/Relationships.  We then create Change Orders and process the updates by manually creating/modifying/retiring the CIs or Relationships.  It is only semi-automated, but at least it considers cases where discovered data does not exist for an item that does exist in the CMDB - the out of the box CA tools did not do this .

    Thanks for the response,

    Wayne