Skip to main content

On-Prem Storage Dashboard

Overview

Customers require visibility into the Free vs Used vs Reserved capacity of their Storage Arrays to inform forecasting and budgeting decisions. This documentation guides users on how to access the current status of their on-prem environment, specifically focusing on storage capacity reports.

Data Collection and Storage

Virtual Wisdom collects detailed storage related metrics from various vendors through its wide range of integrations. This data is sent over to Global View using the Virtana Cloud Sync (VCS) component. This data includes the specific storage array inventory details, specific metrics which are responsible for indicating usage, analytics output which are run on the Virtual Wisdom. The Storage Capacity dashboard collates this data across multiple Virtual Wisdom appliances and shows unified view of the Storage capacity across the entire infrastructure, enabling users to get detailed insights on the storage array usage and trends.

Refer to Architecture, for more information.

Authentication

For Authentication, refer to Get Bearer Token.

Reporting Capabilities

Users have various options to generate data points, such as:

  • High Usage/Low Available Space: Identify which Storage Arrays are high on usage and low in available space.

  • Site Capacity: Determine which Sites have high storage capacity.

  • Vendor Analysis: Assess how many storage arrays each Vendor provides and the current state of their usage.

  • Historical Capacity: Review historical capacity across various Sites.

Example Queries

  • Storage Array Usage: Determine which storage array is high on usage and low on available space.

  • Site Capacity: Identify which site has the highest capacity

  • Vendor Storage Arrays: Analyze how many storage arrays each vendor provides and their current usage state.

  • Historical Capacity: Review the historical capacity of storage arrays across various sites.

Entities Summary

Purpose:  This API fetches a summarized view of entities based on the provided group by and filter criteria. It helps users quickly understand the distribution and status of different entities within their inventory.

Endpoint:  /api/inventory/entities/summary

Example:

{
  "groupBy": "entityType",
  "countBy": "entityStatus",
  "limit": "10",
  "filterBy": {
    "entityCategory": "Server",
    "isEntityTerminated": false
  }
}
  • groupBy : Defines the attribute by which the entities should be grouped.

  • countBy : Specifies the attribute used for counting the entities within each group.

  • limit: Sets a limit on the number of groups to be returned in the summary.

  • filterBy : Filters the entities based on specific criteria before summarizing them.

Expected Response:  The response will be a JSON object containing the summary of entities grouped and counted based on the specified criteria. Each group will include the entity type, status count, and any applicable filters.

Search Entities

Purpose:  This API retrieves a paginated list of entities that match the provided filter criteria, allowing users to efficiently search and navigate through large sets of entities.

Endpoint:  /api/inventory/entities/search

Example

{
  "filterBy": {
    "entityType": "k8scluster"
  },
  "sortBy": [
    "entityName asc"
  ],
  "pageSize": 20
}

Components:

  • filterBy (filterBy): Filters the entities based on specific criteria before listing them.

  • sortBy (sortBy): Defines the sorting order for the list of entities.

  • pageSize (pageSize):Sets the number of entities to be returned per page in the paginated results.Sets the number of entities to be returned per page in the paginated results.

Expected Response:  The response will be a JSON object containing a paginated list of entities that match the provided filter criteria. Each entity in the list will include detailed information such as entity name, type, and status.

By using the Search Entities API with the specified parameters, users can efficiently retrieve, sort, and navigate through a list of entities that meet specific criteria. This aids in managing and monitoring various types of entities within the infrastructure.

Query

The Metrics Service APIs provide a way to query and retrieve metrics data related to on-prem capacity, storage, and clusters from a timeseries database. This document details the use cases for querying specific metrics through these APIs.

Endpoint Details  : POST /api/metrics/query

Calculate: Query Used Usable Capacity

Title: Retrieve Used Usable Capacity in Gigabytes (GB)

This use case retrieves the total used usable capacity in gigabytes (GB) for each storage array, grouped by entity name and manufacturer, over the last 30 days.

Query

{
  "query": [
    "sum((UsedUsableCapacity_KB{version='1', type='StorageArray'}[30d])) by (manufacturer ) / 1024^3"
  ],
  "step": "1d",
  "start": "17066xxxx",
  "end": "17196xxxx"
}

Components:

  • UsedUsableCapacity_KB: The metric indicating the used capacity in kilobytes.

  • {version='1', type='StorageArray'}: Filters to include only metrics from version '1' and of type 'StorageArray'.

  • [30d]: The time range of the last 30 days.

  • sum(...) by (entityName, manufacturer, model): Sums the capacity for each combination of entity name, manufacturer, and model.

  • / 1024^3: Converts kilobytes to gigabytes.

  • Step: Specifies the resolution step width for the query, set to 1 day in this case.

  • Time: Specifies the evaluation timestamp for the queries.

Query Long-Term Trends

Title : Retrieve Long-Term Trends for Storage Arrays

This use case retrieves long-term trend enumeration for storage arrays over the last 30 daysThis use case retrieves long-term trend enumeration for storage arrays over the last 30 days

Query

{
  "query": [
    "(LongTermTrend_ENUM{version='1', type='StorageArray'}[30d])"
  ],
  "step": "1d",
  "time": "17xxxxx"
}

Components:

  • LongTermTrend_ENUM: The metric indicating the long-term trend.

    • Long-Term Trend: This metric indicates the usage trend of a storage array over an extended period, typically spanning several years.

    • Short-Term Trend: This metric provides insights into the usage trend of a storage array for a shorter, specified period, such as a month.

  • {version='1', type='StorageArray'}: Filters to include only metrics from version '1' and of type 'StorageArray'.

  • [30d]: The time range of the last 30 days.

  • Step: Specifies the resolution step width for the query, set to 1 day in this case.

  • Time: Specifies the evaluation timestamp for the queries.

Refer to Metrics Service APIs: Metrics Service APIs

Refer to Inventory Service APIs: Inventory Service APIs

By leveraging the Virtana Platform UI and our APIs, users can efficiently monitor and manage their storage resources, ensuring optimal performance and capacity planning.