Cassatt introduces new Java virtualization solution

Discussions

News: Cassatt introduces new Java virtualization solution

  1. Cassatt Corporation has introduced a new Java virtualization solution called "Web Automation Module," built on top of their Collage product, which allows data centers to dynamically deploy server resources based on live service levels rather than allocating servers based on anticipated need.

    The typical data center deployment allocates servers based on an anticipated maximum load. For example, a data center might deploy five servers to handle one hour's traffic, while the other 23 hours have those same servers idle, for the most part, and repeats this pattern for multiple applications. Since WAM relies on normal J2EE distributed capabilities, no deployed code needs to be changed (although tests would need to include distribution among multiple application servers, of course.)

    With WAM, the same data center deploys applications to one server for the "low load" periods (leaving the other nodes completely idle and blank), and when load exceeds what the one application server can handle (based on configurable rules) the WAM controller node will automatically deploy the application to the idle servers at need, so that the server utilization climbs from the industry-average 2-5% to much more cost-effective numbers.

    The end result is that fewer physical servers need be deployed, and management costs go down because less human intervention is necessary to meet service level agreements.

    Application server support includes monitoring of specific application server metrics, such as server load, JVM heap space, and other such metrics.

    The initial versions of WAM target BEA WebLogic, but the company plans more application server support soon.

    Threaded Messages (14)

  2. Fewer Servers[ Go to top ]

    "The end result is that fewer physical servers need be deployed, and management costs go down because less human intervention is necessary to meet service level agreements."

    You still need the same amount of servers to handle your peak load cases. The only savings would be if you had jobs that could run at idle time.
  3. Fewer Servers[ Go to top ]

    That's only true if your peak load times occur at the same time on all applications, and that peak load actually created a 100% utilization on each server as well.

    Does that happen often? In all of the sites I've seen who could benefit from this product, the peak times were offset by application.

    Editor's note: This does not reflect an endorsement of this technology. I've not used it, and I can't say whether it works well or not, although I can see use cases where it would be beneficial.
  4. Thanks Joe[ Go to top ]

    I was just about to post the same thought, but you beat me to it.

    Also, I'll add that the product is designed for environments with many applications. It's this ability to dynamically distribute load, based on demand, across several applications that enables server consolidation.

    -Steve

    Steve Wilson
    Cassatt Corporation
  5. Thanks Joe[ Go to top ]

    Steve,
    Also, I'll add that the product is designed for environments with many applications. It's this ability to dynamically distribute load, based on demand, across several applications that enables server consolidation.

    This is a problem domain that is similar to what Azul targets with a "network attached processing" device (the Azul server appliance), and DataSynapse targets with FabricServer (grid software). Do you work with those products, compete with them, or is Cassat something else entirely?

    Peace,

    Cameron Purdy
    Tangosol Coherence: Clustered Shared Memory for Java
  6. Azul[ Go to top ]

    Hi Cameron,

    At the highest level, solutions like Azul are trying to address the same root problem: today's data center uses resources really inefficiently. That being said, I think we take a really different approach. Where possible, we leverage virtualization that already exists (such as the JVM and app server containers you already have), so we don't add complexity to your execution stack.

    While our latest stuff is heavily Java focused, we're aiming ouf software more broadly than that and have solutions that are applicable for native (e.g. non-Java) applications on Linux, Solaris and Windows. Really, the core of what we do is allow users to set up service-level agreements for each of their applications. Then, taking into account things like demand, priority and performance, we automatically manage your resources to ensure you meet them. We do this by managing many layers in the system including the hardware, OS and JVM/App Server.

    Now, all that being said, while we haven't looked at it extensively, I suspect we could co-exist nicely in an environment with an Azul appliance. I know some of those guys from my days working on HotSpot and I'm quite sure it's cool stuff.

    -Steve
  7. Fewer Servers[ Go to top ]

    Nice theory, but the load in my company's data centers is still heavily diurnal and centered on the North American day.

    Obviously this is anecdotal, but we're hosting over 50 different company's apps, so it's an aggregate of all their traffic and it's still a 10:1 ratio from US night to day.

    Also, my experience working with our customers is that extra servers seem to be driven more by function than by load. They tend to break out app servers, web servers, with different apps on different app servers, etc. Yes, our largest customers end up with large clusters of app servers, but that's less common than you'd think.

    This is not to say that virtualization isn't useful, but I'm personally a lot more excited about using it to do provisioning than to do load balancing. It's also very handy for applications which are currently low volume, we can run multiple applications in full isolation on a single piece of hardware, which helps the bottom line a lot.

    Obviously if your business has the ability to choose when a particular operation runs, you'll have a lot more success with this technology. But most apps are demand-driven, and the peak demand is still primarily focused on the time your customers are awake.
  8. This has been resolved by multiple enterprise products already. Take a look at PolyServe, which is a clustered file system, with an HA product that allows dynamic resource allocation, that can be either timed and/or be based on other runtime scenerious, like processor/memory load, etc...

    Ilya
  9. Polyserve[ Go to top ]

    Cluster File systems are great. If you have a grid then you often need scalable storage I/O. However, unlike databases, storage access is rarely the bottleneck in middle-tier applications. Take a look at how Pfizer is using the Cassatt software for a feel about the problem's they're addressing.

    http://www.cassatt.com/CGI-BIN/downloads/Pfizer_CS_final_lr.pdf
  10. Polyserve[ Go to top ]

    Cluster File systems are great. If you have a grid then you often need scalable storage I/O. However, unlike databases, storage access is rarely the bottleneck in middle-tier applications. Take a look at how Pfizer is using the Cassatt software for a feel about the problem's they're addressing.http://www.cassatt.com/CGI-BIN/downloads/Pfizer_CS_final_lr.pdf

    Great, thanks, I'll look at it.

    Also, PolyServe is not only a clustered file system. It's CFS as well as HA. The HA product, has the dynamic server allocation/provisioning ability, so you can specify which servers at which times/conditions are purposed for which application, etc... The underlying storage is a CFS, the features of which you already. For Oracle say, you can have a single Oracle home instance, and the same goes for app servers. It has a build in technology sort of what Oracle's cache fusion has been promising for years, but PolyServer symmetrical caching is generic.

    I'll take a look at the paper though, it would be interesting to see what I'm missing here.

    Ilya
  11. VMWare ESX[ Go to top ]

    Hmmm. Why not virtualize complete servers with VMWare ESX? Why should I virtualize layers (J2EE or whatever) only? VMWare ESX (+ Virtual Center) is not that expensive and you get the same results, IMO.
  12. VMWare ESX[ Go to top ]

    Hmmm. Why not virtualize complete servers with VMWare ESX? Why should I virtualize layers (J2EE or whatever) only? VMWare ESX (+ Virtual Center) is not that expensive and you get the same results, IMO.

    #1 I can give you many references to enterprise clients who wouldn't run VMWare in production if you payed them. It just hasn't proven stable enough yet, IMO. It's a great development environment though, I run it myself.

    #2 VMWare virtualizes one physical machine, into virtuals. To truly realize it's potential, you either have to buy a very large box (some monolithic system) and then carve it up. That's not where most industry is headed these days. It's no longer about virtical scaling, it's about horizontal scalability. You buy a bunch of 2 CPU machines and cluster them. That's where clustering products like PolyServe come in. Please note, I'm not advertising PolyServe, it's just a product I'm most familiar with, there are tens of other enterprise ready products that do similar things.

    Ilya
  13. VMWare ESX[ Go to top ]

    Hmmm. Why not virtualize complete servers with VMWare ESX? Why should I virtualize layers (J2EE or whatever) only? VMWare ESX (+ Virtual Center) is not that expensive and you get the same results, IMO.
    #1 I can give you many references to enterprise clients who wouldn't run VMWare in production if you payed them. It just hasn't proven stable enough yet, IMO. It's a great development environment though, I run it myself.#2 VMWare virtualizes one physical machine, into virtuals. To truly realize it's potential, you either have to buy a very large box (some monolithic system) and then carve it up. That's not where most industry is headed these days. It's no longer about virtical scaling, it's about horizontal scalability. You buy a bunch of 2 CPU machines and cluster them. That's where clustering products like PolyServe come in. Please note, I'm not advertising PolyServe, it's just a product I'm most familiar with, there are tens of other enterprise ready products that do similar things.Ilya

    Also, if you use VMWare take a look at Virtuozza, which is an OS level virtualization. Allows you to use native hardware, though only allows one operating system per physical machine. Which is not an issue, IMO. I'm yet to see an enterprise production environment that run multiple OS systems on the same box. For development it's great, but in reality, most OS systems are managed by different groups/deparments, so segregation is necessary.

    Ilya
  14. VMware[ Go to top ]

    Actually, VMware is pretty cool stuff (as is Xen). However, if you already have a layer of virtualization (a JVM), why would you want to add another? Why not leverage the layer you already have for server consolidation? That's what Cassatt's Web Automation product does.

    However, there are lots of occations where you don't have an existing virtualization layer in your stack. In that case you might need a general purpose container like VMware. Having Cassatt manage general purpose VMMs the way we do App Servers and JVMs makes a lot of sense. Watch this space...

    Now all that being said, Virtual Center doesn't do the same things as Cassatt's products. Virtual Center is a management console. It allows administrators to manually set up and deploy VMMs from a control panel (similar to deploying applications at the Weblogic admin console). Cassatt's products allow users to define service-level agreements for each application and then the software manages to that automatically by adjusting the infrastructure.

    -Steve

    Steve Wilson
    Cassatt Corporation
  15. Mainframe again[ Go to top ]

    I much rather have an operating system that can span multiple PC's. Sort of Zen, but than the other way around an install a JVM on that "thing".

    That way the JVM is shielded form the machine configuration.