The User VMs Report

Like components, segments, zones, and services, virtual machines can also be assigned to specific users. This feature is particularly useful for cloud service providers, who often need to provision a VM on-demand for any customer who requests for it. These cloud consumers (i.e., customers) are only concerned with the availability and internal health of those VMs that the service provider has provisioned for them, as typically, they will have no knowledge of the virtual servers on which the VMs operate. This means that these customers may not require monitoring access to the whole virtual server as such. By configuring user-VM mappings using the eG administrative interface, the cloud service providers will not only be able to track who is using which VM, but will also be able to provide a customer with the ability to view in real-time the status, overall performance, and problems related to only the VMs (and not the virtual servers) that were specifically launched on the cloud for him/her.

If a user who has been assigned VMs logs into the eG Reporter console, then a special User VMs report option will appear under the Virtualization menu of eG Reporter (see Figure 1).

Figure 1 : Navigating to the User VMs report from the eG Reporter interface

Note:

If the current user to the eG Reporter console has the right to monitor only VMs and not any other infrastructure element, then, for such a user, only the Operations, Virtualization, and Options menus will be available in eG Reporter. Also, the Virtualization menu in this case will include only the User VMs option.

With the help of the User VMs report, the user can zoom into one of the VMs assigned to him/her and analyze how well that VM is using the resources allocated to it. Sporadic/consistent spikes in resource usage and root-cause for such abnormal usage patterns can thus be deduced.

To generate the User VMs report, do the following:

  1. Upon selecting the User VMs option from Figure 1, Figure 2 will appear. The Virtual Machine list in Figure 2 will list all the VMs that have been explicitly assigned to the user who has logged in. Select a VM from this list.

    Figure 2 : Generating the User VMs report

  2. Next, select Graph from the Report Type field to generate a graphical report. For a data report, select the Data option.
  3. eG Enterprise collects a wide range of virtual resource usage metrics - i.e., ‘inside view’ metrics - from a VM. Using the User VMs report, you can focus on how a chosen VM utilizes a specific resource - say CPU, memory, disk space, etc. For this purpose, by default, eG Enterprise groups the virtual resource usage metrics of a VM into six different ‘resource groups’, based on the ‘resource type’. These groups are, namely: Memory usage, CPU usage, Disk usage, Network usage, TCP Connection, and Uptime Status. For instance, all key metrics related to memory usage – e.g., allocated memory size, Memory max limited, Target memory, etc. -  are by default included in the Memory usage group. Also, to provide administrators with a clearer view of a VM’s resource usage, eG Enterprise, by default, computes the Avg and Max values of every metric in a group, and displays these values in the report. To know how the chosen VM has used a particular resource across the selected Components, pick one of the above-mentioned resource groups from the Measure Group list. On the other hand, if you want to generate a report that brings out the overall resource usage of a VM across the chosen Components, then select All from the Measure Group list.

    Note:

    The default resource groups Memory usage, CPU usage, Disk usage, Network usage, TCP IP usage, and Time in usage - are hard-coded in the eG Enterprise system. The names of these groups cannot be changed, and no new resource groups can be introduced. However, if need be, additional metrics can be included in the default groups, and additional functions can be applied to any of grouped metrics. For instance to add the Run queue in VM metric to the CPU usage group, do the following:

    • Edit the eg_report.ini file in the <EG_INSTALL_DIR>\manager\config directory.
    • In the [virtual_measure_group] section of the file, insert a line for the new metric, in the following format:

      Cpu_usage:<InternalTestName>:<InternalMeasureName>=<Comma-separated list of functions>

      For the Run queue in VM measure therefore, your specification should be:

      Cpu_usage:VmgSystemTest:Run_queue_length=Avg,Max

      To know the <InternalTestName>and <InternalMeasureName>, refer to the procedure discussed in Page First, determine the Internal name of the test and measure to be configured. For that, do the following: of this document.

    • Finally, save the file.

      Similarly, new metrics/functions can be added to the Memory_usage, Disk_usage, Network_usage, Timein_usage , TcpIp_usage groups.

  4. In addition to the settings discussed above, this report comes with a set of default specifications. These settings are hidden by default. If you do not want to disturb these default settings, then you can proceed to generate the report by clicking the Run Report button soon after you pick an option from the Component list. However, if you want to view and then alter these settings (if required), click on the icon. The default settings will then appear in the MORE OPTIONS drop down window (see Figure 3). The steps below discuss each of these settings and how they can be customized.

    Figure 3 : The default settings for generating the User VMs report

  5. The speed with which a report is generated depends primarily on the report Timeline. While a Timeline that varies between a couple of days to a week enables the eG Enterprise system to quickly retrieve the required data, timelines that span multiple weeks/months could slow-down the data retrieval and report generation process to a considerable extent, owing to the volume of data involved. In order to ensure quick and easy access to reports, eG Enterprise provides you the option of enabling data retrieval from the Trend information in the database, instead of the Detailed test information that is used by default for report generation. The Detailed test information based comprises of multiple measurement records for a test - one or more each for every test execution. Whereas, the Trend information includes only hourly, daily, and monthly summary computations for a test performed on a continuous basis. For instance, during a period of 1 hour, a test that runs every 5 minutes inserts atleast 12 records into the Detailed test information base. On the other hand, the Trend information base would consist of only 1 record for the same 1 hour period. Fewer the number of records, query execution becomes much quicker, and data retrieval faster. To use the trend data for report generation, you will have to select the Trend option from the Show Data field in Figure 3. By default, the Detailed option is selected in Figure 3 indicating that the report data is retrieved from the detailed test information in the database. If need be, you can also ensure that all reports always use the Detailed test tables alone by hiding the Show Data field from the reporter interface. To achieve this, do the following: 

    • Login to the eG administrative interface as 'admin'.
    • Select the Manager option from the Settings tile that appears when the button against the Admin tab is clicked.
    • From the GENERAL SETTINGS page that then appears, if you set the Compute average/sum of metrics while trending flag to No, then the Show Data field will not appear in the reporter interface; this denies users access to the Trend option, and thus ensures that reports are always generated using the Detailed tables.

      Note:

      • A Trend report will not include the data for the current day since trend data is only computed at the end of the day.
      • If the Trend option is chosen, the time period of the report should be greater than 1 day.
      • The usage of Detailed test tables for generating reports, especially those that span weeks, increases the stress on the eG database, thus resulting in undue delays in report generation. In order to ensure that the database is not choked by such voluminous data requests, you can configure eG Enterprise to automatically "force" the use of the Trend option if the Timeline of a report exceeds a pre-configured duration. To specify this time boundary, do the following:

        • Edit the eg_report.ini file in the <EG_INSTALL_DIR>\manager\config directory.
        • In the [MISC] section of the  file, you will find a DetailedTime parameter.
        • Specify the duration (in days) beyond which Detailed reports cannot be generated, against the DetailedTime parameter, and save the eg_report.ini file
        • For instance, to make sure that Detailed reports are disallowed for a Timeline of over 2 weeks, set the DetailedTime parameter to 14 and save the file. 
        • Say, subsequently, you attempt to generate a Detailed report for a FixedTimeline of 3 weeks (which is greater than the 14-day limit set in our example). The instant you select the 3 weeks option from the Fixed list box, the Detailed option gets automatically disabled, and the Trend option gets enabled. Similarly, if you specify an AnyTimeline that runs over 14 days, then, upon clicking the Run Report button to generate the report, a message box appears (see Figure 8) informing you that only the Trend option is permitted.
        • To proceed with the Trend report generation, click the ok button in the message box. To terminate Trend report generation, click the Cancel button.   
  6. If the timeline specified for the report needs to exclude the data collected during the Weekends, then set Exclude weekends to Yes. If not, select No.

    Note:

    By default, the weekend constitutes Saturday and Sunday. To override this default setting, do the following:

    • Edit the eg_report.ini file in the <EG_INSTALL_DIR>\manager\config directory.
    • In the  [virtual_measure_group] section of the file, the exclude_weekend parameter is set to Saturday,Sunday by default. You can modify this by setting the exclude_weekend parameter to a comma-separated list of other days of the week - say Friday,Saturday.
    • Save the file after making the required changes.
  7. Next, indicate the report Timeperiod.
  8. Then, specify the Timeline for the graph. You can either provide a fixed time line such as 1 hour, 2 days, etc., or select the Any option from the list to provide a From and To date/time for report generation.

    Note:

    For every user registered with the eG Enterprise system, the administrator can indicate the maximum timeline for which that user can generate a report. Once the maximum timeline is set for a user, then, whenever that user logs into eG Reporter and attempts to generate a report, the Timeline list box in the report page will display options according to the maximum timeline setting of that user. For instance, if a user can generate a report for a maximum period of 3 days only, then 3 days will be the highest option displayed in the Timeline list - i.e., 3 days will be the last option in the fixed Timeline list. Similarly, if the user chooses the Any option from the Timeline list and proceeds to provide a start date and end date for report generation using the From and To specifications, eG Enterprise will first check if the user's Timeline specification conforms to his/her maximum timeline setting. If not, report generation will fail. For instance, for a user who is allowed to generate reports spanning over a maximum period of 3 days only, the difference between the From and To dates should never be over 3 days. If it is, then, upon clicking the Run Report button a message box will appear, prompting the user to change the From and To specification.

  9. In large environments, reports generated using months of data can take a long time to complete. Administrators now have the option of generating reports on-line or in the background. When a report is scheduled for background generation, administrators can proceed with their other monitoring, diagnosis, and reporting tasks, while the eG manager is processing the report. This saves the administrator valuable time. To schedule background processing of a report, select the Background Save - PDF option from the Report Generation list. In this case, a Report Name text box will appear, where you would have to provide the name with which the report is to be saved in the background. To process reports in the foreground, select the Foreground Generation - HTML option from this list.

    Note:

    • The Report Generation list will appear only if the EnableBackgroundReport flag in the [BACKGROUND_PROCESS] section of the eg_report.ini file (in the {EG_INSTALL_DIR}\manager\config directory) is set to Yes.
    • The default selection in the Report Generation list will change according to the Timeline specified for the report. If the Timeline set is greater than or equal to the number of days specified against the MinDurationForReport parameter in the [BACKGROUND_PROCESS] section of the eg_report.ini file, then the default selection in the Report Generation list will be Background. On the other hand, if the Timeline set for the report is lesser than the value of the MinDurationForReport parameter, then the default selection in the Report Generation list will be Foreground. This is because, the MinDurationForReport setting governs when reports are to be processed in the background. By default, this parameter is set to 2 weeks - this indicates that by default, reports with a timeline of 2 weeks and above will be processed in the background.
  10. Finally, click the Run Report button. If the Report Type is Graph and the option chosen from the Report Generation list is Foreground Generation - HTML, then clicking on the Run Report button invokes Figure 4. The Graph report applies the first of the configured functions (i.e., Avg by default) on every metric in the chosen group, and generates time-of-day graphs revealing the variations in the computed values in the chosen VM during the specified period. These graphs help determine whether applications executing on the VM are consuming the resources allocated to the VM excessively, or whether the VMs are inadequately sized.

    Figure 4 : A graphical User VMs report

  11. Each graph in Figure 4 comes with a and a icons. You can view the data plotted in a graph by clicking the icon and can save the data in a CSV file by clicking on the icon.
  12. If the Report Type chosen is Data, then you would not be required to choose a Measure Group. The Data report applies all the configured functions (i.e., both Avg and Max by default) on every metric in every measure group, and displays all the computed values in a tabular format, once the Run Report button is clicked (see Figure 5). Under the individual measure groups, details of the resource usage of the chosen VM will be available.

    Figure 5 : The User VMs Data Report

  13. On the other hand, if the Background Save - PDF option is chosen from the Report Generation list, then clicking on the Run Report button will not generate the report and display it in this page for your benefit. Instead, a message indicating that the report is being processed in the background will appear. This will be accompanied by a link that will lead you to the page that lists all the reports that are being processed in the background, and their current status. If background report generation fails for a report, you can regenerate that report using this page, or can even delete that report if need be. On the other hand, if background processing successfully completes for your report, then, you can view a PDF of the report by clicking on the icon in that page.