One of the most compelling introductions I found during VMworld 2008 was the VMware AppSpeed product/plugin. AppSpeed is the market delivery of the Beehive aquisition that VMware made last year. During the Wednesday morning keynote by Dr. Stephen Herrod, CTO, all attendees were treated to a live demonstration of the AppSpeed product along with the laundry list of what it promises to be able to do.
Profile/Learn, Monitor, Mitigate
AppSpeed, in short, will passively learn your applications to map and build awareness of the dependant systems, databases (even the query level) and infrastructure services. Once it builds a profile of your application, it can then begin to monitor and watch for problems and be able to guide you directly to the root of the problem.
Once again, a nice thing about this technology is it doesn’t require application modification to do its thing – it happens at a lower level of virtualization – and it happens passively, so it shouldn’t affect performance while its profiling.
AppSpeed will be packaged into vCenter and will exist within the standard management interfaces. The Paul Martiz keynote showed a screenshot of the older product and overnight the AppSpeed team in Israel worked to put together the demo of the live console in vCenter – which was pretty impressive on their part.
During the demo, AppSpeed learned about a SugarCRM implementation. It mapped out the SugarCRM application server, the backend database server, and even the queries that were being executed. As load was placed on to the application, AppSpeed was able to trace down the root of the latency problem. The cause was a bottleneck in the database and that was increasing latency to the end user. Because the remediation profile was defined, it was able to spin up a second database server instance and distribute the load between the databases to improve the performance. That’s an exciting frontier, my friend.
The learn/profile aspect of the software appears to rely on network traffic inspection to build the profile of the application, even a multi-tiered application. I wonder (aloud) how this will work on a real-world application. I guess time, or a nifty requirements sheet, will tell.
Once remediation is needed, AppSpeed can orchestrate a number of things, including changing the resource allocations (they didn’t really say at what level – resource pools or VM level), it can spawn additional instances and eventually it will be able to hot add resources to the VM. That is a future feature.
What I wonder, as with other vendor’s solutions in the same market space, is how AppSpeed will do with propriatary applications (ummm Microsoft, Oracle, etc.) and how licensing will be handled. I wonder if it will be limited to open-source applications where licensing is not an issue – as one vendor I talked to currently is (no names to protect the innocent). I also wonder how it will work with client/server applications rather than web apps, where the execution is happening on a desktop – would a virtual desktop be needed to build the profile?
I also wonder how it orchestrates the load balancing or distribution of services when it spins up a new instance. Does it rely on built in load balance tools for each application? Is that definable? Could it integrate with a third party appliance (Zeus’ ZXTM maybe)?
I probably have the most questions about this out of any of the other announcements made… If anybody out there can shed light, please comment away…