Software as a service (SaaS) is a software licensing and delivery model in which software is licensed on a subscription basis and is centrally hosted somewhere in the cloud. It is sometimes referred to as "on-demand software". SaaS is typically accessed by users using a thin client via a web browser. The key here is that the consumer knows nothing (and doesn’t care) about the managed infrastructure it takes to operate the service, other than their network connectivity to the service.
How AppManager Manages Components in a SAAS Cloud Environment
In the SAAS world, an example of a SAAS provider would be Google Apps, Salesforce.com or the interface that you use for online banking. Whereas, the consumer may be individuals or other businesses.
What the SAAS company is providing to the consumer is an entire service, which includes infrastructure, applications, data storage and anything else that is needed to provide that service. To the consumer, their only view into the SAAS world is the online web interface. There are instances, however, where SAAS companies may have other interfaces as well, but the online interface is what is in common to all SAAS offerings.
Below is a diagram of a typical SAAS configuration depicting both the provider’s infrastructure and the access to the service from several customers. Note that the provider’s infrastructure is made up of physical servers, virtual servers and even cloud IAAS servers which appear, to the rest of the service, to be on-premise.
Managing SAAS from the Provider’s Perspective
The above diagram shows the provider’s infrastructure with AppManager monitoring added. The existing infrastructure servers now have the AppManager agent installed along with the appropriate modules to monitor the operating system and applications for those servers. Please note that the agent is also installed on the IAAS cloud server. As mentioned in a previous section, the agent-based monitoring allows deep monitoring of the various computing levels that exist on production servers. So when the items being monitored are outside of the allowed ranges, then actions can be taken such as generating an alarm or event or performing some action such as restarting a service.
The AppManager server components and database were added to the infrastructure in order to receive, process, evaluate and store information and events coming from the various agents.
The AppManager R/T monitor was also added. As mentioned prior, R/T will allow a service or application to be monitored from an end user’s perspective. You may wonder why, since we are monitoring the individual components of the infrastructure, we would need to also monitor the service from the higher level? There are a couple of reasons for this. First, even though the infrastructure is being monitored, there are always minor components that are not being looked at in detail that may affect the accessibility or performance of a service. R/T is a great way to ensure overall service health. Then, if a problem does exist, AppManager can be used to look at the infrastructure components for further diagnosis and resolution The other reason that a service provider may want to monitor their end service is to get accurate, ongoing baselines of performance and availability due to service level agreements that may exist between them and their customers.
Managing SAAS from the Consumer’s Perspective
This diagram shows how a SAAS consumer could use AppManager to manage the SAAS services that are in use by their company.
Because the infrastructure components are owned by the SAAS provider, AppManager agent technology could not be usable here by the consumer. However, this does not mean that the service is any less critical to the business of the consumer. This is where the AppManager R/T product(s) are great solutions.
R/T uses only externally available interfaces for monitoring. The items that can be monitored are:
Availability – Is the service accessible and available?
Performance – Is the service providing the performance and response time that is expected?
Accuracy – Is the service communicating information the way it should? This may be checking portions of a web page for expected results or evaluating messages that are returned after an action is performed.
As mentioned in the SAAS provider section, R/T can also be used to ensure service level agreements are being adhered to.