Realtime Resource Availability (Erl, Naserpour)
How can cloud consumers access current availability status information for IT resources?
ProblemConventional IT resource usage and status reporting occurs at some point subsequent to the corresponding collection of usage and status data. This delay makes it impossible for cloud consumers to determine the current availability and status of a given IT resource.
SolutionA monitoring and reporting system is established to provide realtime (or near realtime) reporting of IT resource availability and status information.
ApplicationThe status of an IT resource is constantly monitored and transmitted to a monitoring station from which an availability reporter extracts and streams the usage data to a portal where it can be viewed and monitored by the cloud consumer.
Compound PatternsBurst In, Burst Out to Private Cloud, Burst Out to Public Cloud, Elastic Environment, Infrastructure-as-a-Service (IaaS), Multitenant Environment, Platform-as-a-Service (PaaS), Private Cloud, Public Cloud, Resilient Environment, Software-as-a-Service (SaaS)
An SLA includes various metrics to define service quality guarantees, a primary one of which is service availability. For a cloud consumer to be able to check on and assess the availability of a cloud service or IT resource, it needs to be able to receive up-to-date availability information, on-demand. Most management systems used in clouds provide tools for generating usage and status reports after data is collected and stored and then subsequently requested by cloud consumers or cloud providers. The final step is for the data to be presented and rendered in a report. Because of the time it takes to complete these steps, the cloud consumer is given only historical availability data.
The system established by this pattern is similar to conventional usage data collecting and reporting architectures in that it consists of a usage monitor that collects the availability data and sends it to a monitoring station for storage. What distinguishes this system is the use of an availability reporter component that is capable of instantly retrieving and streaming the availability data so that it can be sent, on an on-going basis, to a front-end for viewing.
This pattern is commonly applied together with the Centralized Remote Administration pattern, as the usage and administration portal is generally the most convenient location for the streamed availability data to be displayed.
Figure 1 - A cloud architecture resulting from the application of the Realtime Resource Availability pattern.
- A specialized monitor (not shown) collects and stores availability data in a dedicated database as part of a monitoring station.
- The availability reporter instantly extrapolated the availability data from the monitoring station and published streams it to the usage and administration portal.
- The cloud consumer can view the realtime stream of availability report data via the usage and administration portal.
In the absence of a usage and administration portal, a separate service availability portal can be created, dedicated to the display of IT resource availability and status data. This type of system can also involve the use of a report access manager to manage the list of authorized IT resources for which a given cloud consumer can view availability and status data.
NIST Reference Architecture Mapping
This pattern relates to the highlighted parts of the NIST reference architecture, as follows: