TECHNICAL FIELD

This disclosure relates to visualizing, monitoring, and improving performance of cloud data centers and computer networks.

BACKGROUND

Virtualized data centers are becoming a core foundation of the modern information technology (IT) infrastructure. In particular, modern data centers have extensively utilized virtualized environments in which virtual hosts, such virtual machines or containers, are deployed and executed on an underlying compute platform of physical computing devices.

Virtualization with large scale data center can provide several advantages. One advantage is that virtualization can provide significant improvements to efficiency. As the underlying physical computing devices (i.e., servers) have become increasingly powerful with the advent of multicore microprocessor architectures with a large number of cores per physical CPU, virtualization becomes easier and more efficient. A second advantage is that virtualization provides significant control over the infrastructure. As physical computing resources become fungible resources, such as in a cloud-based computing environment, provisioning and management of the compute infrastructure becomes easier. Thus, enterprise IT staff often prefer virtualized compute clusters in data centers for their management advantages in addition to the efficiency and increased return on investment (ROI) that virtualization provides.

SUMMARY

In general, the disclosure describes techniques for monitoring, scheduling, and performance management for computing environments, such as virtualization infrastructures deployed within data centers. The techniques provide visibility into operational performance and infrastructure resources. As described herein, the techniques may leverage analytics in a distributed architecture to provide near or seemingly-near real-time and historic monitoring, performance visibility and dynamic optimization to improve orchestration, security, accounting and planning within the computing environment. The techniques may provide advantages within, for example, hybrid, private, or public enterprise cloud environments. The techniques accommodate a variety of virtualization mechanisms, such as containers and virtual machines, to support multi-tenant, dynamic, and constantly evolving enterprise clouds.

Aspects of this disclosure describe techniques for presenting information about resources such as a (communication) network and its network devices, a computer network comprised of compute nodes (e.g., physical computers and/or virtual machines), network or virtualization infrastructure including any elements therein, a cluster (e.g., multiple computer networks), or another computing environment. Techniques in accordance with one or more aspects of the present disclosure involve presentation of user interfaces that may enable nuanced, unique, and/or comprehensive insights into how computing resources such as infrastructure elements and compute nodes are being used and how the use affects operations at the computing resources. As described in one or more examples, some techniques may involve presentation of various resources in a configuration such as a topology of a computer network comprising one or more compute nodes interconnected by a packet-based communications network provided by a set of network devices.

Aspects of this disclosure also describe techniques for communicating, within a computing system, information used to create, update, and/or modify user interfaces that present information about a network, virtualization infrastructure, cluster, or other computing environment. Techniques in accordance with one or more aspects of the present disclosure may involve use of separate interfaces for collecting data used to generate a user interface that presents information about a network, and collecting data used to update the visual indicators reflecting the state of the infrastructure elements represented within the user interface. Techniques in accordance with one or more aspects of the present disclosure also involve use of a summary metric that is used to create value ranges for characterizing and/or classifying one or more infrastructure elements with respect to an operational state.

The disclosure describes one or more techniques that allows a policy controller to output a dashboard that includes at least one graphic user interface illustrative of a computer network and the interconnections between physical devices coupled together as part of the computer network. The physical devices represent the underlay resources, for example the switch fabric including switches, routers, and servers, which provide the communication interconnects between hosts within a computer network and/or between the hosts and other devices and/or computer networks that are external to the computer network. Examples of the graphic user interfaces that may be generated using the techniques described in this disclosure include graphic user interfaces providing an illustration of the network topology of the underlay resources of a particular computer network.

Examples of the above-mentioned policy controller display a sufficient number of underlay resources to provide ample visibility without obstruction. A substantial number of resources cannot be displayed for a number of reasons, mainly readability. If the described techniques allow the policy controller to determine whether a resource should be classified as having an operational state of interest (e.g., in terms of health or risk), the policy controller may propagate that information to one or more resources in the computer network including one or more resources that are connected to the identified resource having the operational state of interest. Hence, an unhealthy or at-risk state may be assigned to identified resource based upon usage statistics and operational data and further assigned to at least one connected resource based upon the connection with the identified resource. If the at least one connected resource is one of the sufficient number of underlay resources to display on the graphic user interfaces, the techniques may provide a visual indicator corresponding to the unhealthy or at-risk state such that an administrator viewing the illustration with the visual indicator comprehends which displayed resource is connected to a resource in an unhealthy or at-risk state. In some examples, the sufficient number of underlay resources includes one or more of top-most levels in hierarchical structure formed by the topology.

Alternative examples of the graphic user interfaces provide an illustration of the network topology of the underlay resources of the particular computer network and one or more overlay resources (e.g., virtual components such as virtual machine instances, virtual infrastructure elements, and/or the like). In one example, the overlay resource may be the above-mentioned identified resource having the operational state of interest (e.g., the unhealthy or at-risk state). According to some techniques, the policy controller generates, for output, a graphical user interface element that, when activated (e.g., by click), generates an appropriate graphic symbol for the identified resource and a graphical user interface element in which text is presented. An example of such text includes information describing the operational state of interest (e.g., the unhealthy or at-risk state). A graphic may be presented to visually link the identified resource with the displayed connected resource. As an option, text may be displayed with to indicate a state of the link, for example, to indicate that a connection has been broken and requires restoration.

In one example, the disclosure describes a network device comprising: processing circuitry; and a policy controller configured to generate an output comprising a graphic representation of a topology of a computer network, the computer network comprising compute nodes interconnected by a packet-based communications network provided by a set of network devices, wherein network topology information stores connections between the set of network devices and the compute nodes and connections within the set of network devices, wherein the policy controller is further configured to: identify a network element based upon information indicating an operational state of at least one of the compute nodes or at least one of the network devices, wherein the network element is a parent for the at least one compute node or the at least one network device in the topology of the computer network; modify information indicating an operational state of the identified network element using the information indicating the operational state of the at least one compute node or the at least one network device; and output data indicative of a visual indicator and a graphical user interface (GUI) element corresponding to a visible graphic symbol for the identified network element or another network element that is connected to the at least one compute node or the at least one network device in the topology of the computer network, the GUI element further displaying information associated with the operational state at the identified network element.

In another example, the disclosure is directed to a method comprising generating, by a policy controller, an output comprising a graphic representation of a topology of a computer network, the computer network comprising compute nodes interconnected by a packet-based communications network provided by a set of network devices, wherein network topology information stores connections between the set of network devices and the compute nodes and connections within the set of network devices; identifying, by the policy controller, a network element based upon information indicating an operational state of at least one of the compute nodes or at least one of the network devices, wherein the network element is a parent for the at least one compute node or the at least one network device in the topology of the computer network; modifying, by the policy controller, information indicating an operational state of the identified network element using the information indicating the operational state of the at least one compute node or the at least one network device; and outputting, by the policy controller, data indicative of a visual indicator and a graphical user interface (GUI) element corresponding to a visible graphic symbol for the identified network element or another network element that is connected to the at least one compute node or the at least one network device in the topology of the computer network, the GUI element further displaying information associated with the operational state at the identified network element.

In another example, a computer-readable medium comprising instructions for causing a programmable processor to: generate an output comprising a graphic representation of a topology of a computer network, the computer network comprising compute nodes interconnected by a packet-based communications network provided by a set of network devices, wherein network topology information stores connections between the set of network devices and the compute nodes and connections within the set of network devices; identify, amongst the compute nodes or the network devices, a network element based upon information indicating an operational state of interest; modify information indicating an operational state of interest for one or more resources that are coupled to the identified network element; and based upon a determination that the network topology information indicates a visible graphic symbol for the identified network element in the topology of the computer network, output a visual indicator corresponding to the visible graphic symbol and further output a graphical user interface (GUI) element displaying information associated with the operational state of interest at the identified network element, or based upon a determination that the network topology information indicates a visible graphic symbol for the identified network element in the topology of the computer network, output a visual indicator corresponding to a visible resource that is communicably coupled to the identified network element and further output a graphical user interface (GUI) element displaying information associated with the operational state of interest at the identified network element.

The details of one or more examples are set forth in the accompanying drawings and the description below. Other features, objects, and advantages will be apparent from the description and drawings, and from the claims.

