Meiosys: Application Virtualization and Stateful Application Relocation
Meiosys: Application Virtualization and Stateful Application Relocation
By Ann Ernst published: Wednesday, March 02 2005
Delivering more efficient enterprise data center management solutions by enabling dynamic server consolidation and infrastructure optimization, central to on-demand computing.
Meiosys is an independent company licensing transparent application virtualization and stateful application relocation technology. VSM spoke to CEO Jason Donahue about the company and their newest product release, MetaCluster UC 3.0.
VSM: Can you talk a little about the company and your products?
JD: The company was started in 2000, is venture backed, and has gone through four rounds of financing. The last round was in September 2004, so we have a very strong balance sheet right now and cash through the end of 2006, hopefully bringing us to profitability.
Meiosys was started in Toulouse, France, but we’re a US-based company headquartered in Palo Alto, CA. We have a split management team from the two locations. Our COO and co-founder, Marc Rougier, is from Europe. Our CTO Marc Vertes, the other co-founder, is in Toulouse along with François Richard, our VP of Engineering. Our head of of Software Development for our virtualization management software, Rick Houlihan, is based here in Palo Alto.
VSM: Why did the founders start the company?
JD: The original vision for the company was to build high availability and on demand computing middleware that was application agnostic, and could run on commodity hardware with standard operating system environments.
The team that founded the company came out of life-critical systems. They had worked with platforms like Tandem, which is fault tolerant, and Stratus, and high-end systems from companies like IBM and Sun. They were very familiar with those technologies and with methodologies to build software that was life critical or mission critical for businesses. The core engineering team built the air traffic controller system for Europe, which is why they’re based in Toulouse, where Airbus is headquartered.
The founders saw an opportunity to build virtualization and high-availability middleware software that would be generically applied to the enterprise computing space. The company started building a platform that does checkpoint/restart for Linux-based computing environments, targeted initially at the high performance computing space.
VSM: How do you define checkpoint/restart?
JD: Checkpoint/restart is providing the ability to snapshot an application in its running state, basically the memory footprint of the application, including the status of connections and the state around the application. This is called a checkpoint. Then that is stored to disk, so that you can recover it later. This is called a restart. If you restart the application on a different machine than it was running on previously, this is stateful application relocation, but you also need our application virtualization software to do that.
VSM: How does a checkpoint differ from traditional ghost imaging?
JD: Checkpoint is taking the application state and storing that to disk. Checkpointing actually captures the state of what’s going on in the application, including that of TCP/IP connections, open sockets, etc. Ghost imaging is about capturing an image of a hard drive and storing it to disk, while application checkpoint is about capturing the in-memory state of an application. Ghost imaging is stateless, whereas our application checkpoint is stateful. They are consequently applied to very different business problems.
VSM: How did your technology go to market?
JD: The first place the company applied their middleware was in the High Performance Computing market, compute-intensive applications like risk management in financial services, chip design in technology and manufacturing and pharmaceutical genome processing.
Those are long-running processes or applications that can go for 60 days. If you have a failure in those applications during a run, and you’re 30 days in, historically you had to start that over. If you do periodic scheduled checkpoints you can recover from the failure point, and you don’t lose all that work. That’s where we went to market initially in mid-2003 with our first production product, MetaCluster 1.0.
Then we added a lot of application virtualization capabilities on top of that, and ultimately stateful relocation capability that allowed us to move an application from one machine to another while preserving the state and connection of that application. We take that checkpoint and virtualize the application. We separate the application from the infrastructure that it’s running on, so you can move that application from one machine to another. We can move applications across machines which are not identically configured, for example from a 4-way Xeon-based machine to a 16-way Opteron machine.
Further, we substantially extended resource support for our application virtualization, so that we today support the standard OS resources utilized by the vast majority of single-tier and multi-tier enterprise applications. This makes our technology well-suited to on-demand computing for the enterprise data center.
We have an agent that performs the checkpoint and virtualization and manages the mobility, and the mobility is stateful. If you imagine on demand computing environments, most of the virtualization technology that has been deployed today is virtual machine and OS virtualization. That’s what VMware, Xen, Microsoft Virtual Server and Sun Solaris Containers are doing.
From our perspective, virtual machine technology is really about resource isolation. It’s about creating OS containers that are isolated from other containers on a physical machine. You can run multiple virtualized machines in parallel on a physical machine and have complete isolation. Technology like VMware gives you the capability to run multiple OSs in parallel on the same machine, so you can run Windows and Linux in parallel. You get some utilization benefits out of that on a machine-specific basis, but the real value of that technology is resource isolation.
We’re application virtualization so we’re above that infrastructure and resource level, and our technology is much more fine-grained. We build a container dynamically around a specific application that runs either on a physical or virtual machine, and we allow the application to be moved from physical machine to physical machine, or virtual machine to virtual machine. We are more granular because we can wrap and move specific applications and application processes, and of course multiple applications can be running within a particular virtual machine.
We also have developed a patented TCP/IP socket migration technology that allows us to preserve state and connection during the relocation of an application from one machine to another.
So while VM technology is about isolation and optimizing utilization on a single machine, we’re about application mobility. Thus our application virtualization technology applies to very different business cases than virtual machine technology has been applied to.
VM technology has historically mostly been applied to Test and Development environments, where people want to be able to set up the Test and Development environment on Production machines without affecting the Production environment. Or they want to be able to run multiple single OSs on single Test and Development machines so they get more efficiency out of those boxes.
VM technology historically has not been very well optimized to data center environments in the enterprise because it doesn’t go across machines very well. The reason is that it’s not very granular. If you virtualize an entire OS, there could be multiple applications running on that OS. If you try to move that OS, you have to move all of those applications together.
There are some technologies such as VMWare’s VMotion or Xen that have been developed which combine virtual machine capabilities with machine-to-machine mobility. However, these technologies still require the VM to be running underneath, so in addition to not being granular they impose high overhead and consequently a performance hit on the systems where they enable this mobility. This obviously can be counter-productive to the goal of increasing efficiency with the virtualization technology. Because we provide a fine-grained virtualization at the application layer, our overhead is under 1%, compared to 15% to 40% overhead for some other technologies which enable mobility.
Since we virtualize at the application layer, we have a very business-centric view on virtualization, because applications deliver business services to enterprises. Therefore our technology is much more suited to enterprise data center environments than VM technology.
VSM: So your target audience is enterprise-class businesses?
JD: Yes, and at a very high level there are two kinds of business cases that we address. One is high availability cases, where by enabling stateful application relocation we enable in turn something called “stateful failover” of applications.
There’s a market out there for high availability (HA) clustering. HA clustering has historically provided a cold failover solution. If you have a node that you can detect is failing in a cluster, you can move an application from that failing node to another node in the cluster.
But when you move that application in a typical HA Clustering environment, you’re restarting it on the new machine. You have to reprovision it, which takes time, and you lose the state of the application, so you’re starting over. That’s cold failover.
By combining our technology with an HA Clustering environment, the application would be moved seamlessly and in a matter of seconds. This failover would be totally transparent to the end user. That’s hot failover, or stateful failover. We have a number of availability pieces we address around scenarios like that, working with technologies like HA Clustering and application monitoring platforms.
The other category of cases we address is utilization-based and performance-based across the data center. We have a new manager component in our MetaCluster 3.0 platform called Application Relocation Manager, or ARM. ARM provides a rules-based framework for allowing users to define rules that say when, how, and why you move an application from one machine to another.
You can define priorities among applications, determining levels of importance. If you hit a certain CPU utilization or memory utilization on a particular machine, you can move that application to a larger machine, or provision and deploy another instance of that application on a second machine and have that application run across more machines.
Our technology allows you to dynamically scale applications up and down based on changing demand on the applications across a large pool of resources in a data center.
VSM: We see that policy automation is a coming feature of many applications that relate to virtualization. Does your technology provide virtualized physical resources?
JD: Yes. We’re an application virtualization platform. There are three components to our technology that enable stateful application relocation. One is checkpoint restart, the second is application virtualization and the third is the application relocation agent.
The checkpoint restart takes a snapshot of the application in its running state. What the application is doing, and the TCP/IP connections and sockets and their state, are preserved.
The application virtualization technology virtualizes all the application resources that interact with the operating system. We abstract the application from the OS. We run for the most part in user space, not kernel space.
VSM: Do you see MetaCluster UC as primarily for HA customers, or more broadly across the enterprise space?
JD: We broadly and directly target enterprise computing. That’s a key thing about our UC product. It’s applicable to high performance computing, but we saw high performance computing as a vanguard for what was going to happen in enterprise computing.
That’s coming to fruition. A lot of virtualization technologies are now making their way into the enterprise data center. Recent analyst perspective, from people like Tier 1 Research, IDC and The 451 Group, is saying that as virtualization technology moves from the Test and Development environments outside the data center into the data center or the core of IT, it also needs to be more granular. That means moving up the virtualization stack from coarse-grain technology like VM and OS virtualization to fine-grain technology like application and process virtualization.
VSM: Do you sell directly to customers or through a channel?
JD: Our business model is not to provide our technology directly to corporate enterprises. We go to market completely through partners. It’s a 100% channel model, and our partners are the large hardware and software platform companies.
We do that because we’re a relatively small company providing mission critical software targeted at large enterprise data center environments. It’s a bit of a paradox. Our technology is very unique, it’s quite hardened. We’ve had it in production for almost two years, so it’s very solid technology. But we recognize that trying to grow the business by selling to enterprises directly would be difficult for us to do. So we go to market through partners.
VSM: If readers are interested in the application, how do they find out where to get it?
JD: We have relationships with pretty much all of the big platform companies. If they call us and describe to us what their environment is and what they’re doing, we’re happy to have a discussion about our technology and ascertain the potential fit. Then we’ll try to align the discussion with one of our partners, people like IBM, Sun, HP, EMC, CA and Novell.
VSM: It’s used on the storage side as well?
JD: Absolutely. We don’t do storage virtualization, but EMC is a big player in virtualization now, and software is about 27% of their business. They are applying virtualization technologies broadly across their business. There have been ties built between VMware and the storage business, and there are synergies there that they have found and are leveraging.
There are also synergies across EMC’s other product lines. They just acquired a company called SMARTS that provides an analytics capability. That ties into virtualization very well because analytics enables SMARTS automation, and virtualization doesn’t do a lot of good except in very small environments unless you have automation capabilities on top of it.
VSM: Who do you perceive as your competitors?
JD: Veritas acquired a company called Ejasent about a year ago, and Ejasent was probably our most direct competitor. They have a stateful application relocation technology that Veritas is incorporating into their products.
VSM: Others who consider themselves application virtualization companies include Softricity.
JD: Because Softricity has been focused on the Windows market and we, because of our data center focus, run on the Linux and Unix operating systems, we have not run into Softricity directly.
VSM: I noticed in a press release that you are rolling out on Solaris now, in addition to running on Linux.
JD: Yes, and we’re talking with IBM about a port to AIX.
VSM: Are you going to these particular platforms because they are the hard working, heavy lifting ones that enterprises use for intensive processing?
JD: It boils down to what our target market is, which contrasts us to people like Softricity. We target the enterprise data center, and the enterprise data center is largely Unix operating systems. There’s growth with Linux, some growth with Windows, but Linux is growing faster now. Unix is the bulk of the existing environments.
We see Linux as the biggest growth area in the data center and that’s why Linux is our standard platform. A lot of new opportunities are on Linux, and there are a lot of data center server consolidation and migration projects from different Unix operating systems onto Linux.
Having the capability to provide this technology on the various Unix platforms is important because there is so much Unix-embedded base. IBM, Sun, and HP are not stopping their investment on AIX and Solaris and HP-UX, and those are very mature platforms. Those companies feel their Unix platforms are differentiated from Linux in several ways, and they will continue to invest to mature those platforms further.
VSM: You are definitely seeing Linux grow in the enterprise space?
JD: Yes, there is a lot of momentum around Linux, and there’s a lot of new business that’s being driven by that. There are some Linux clustering companies that have been financed recently, like Linux Networx.
A lot of the supercomputing companies are moving to Linux, and we’re working with some of them now with our checkpoint technology. You buy it in their supercomputing platforms. It’s an ideal fit.
The compute-intensive or large processing jobs that people like IBM and HP are bidding are often on Linux, but they’re also pushing their Unix platforms as well. And certain environments are perhaps more suited to Linux, and others are more suited to the Unix operating systems.
VSM: What does the future look like for MetaCluster?
JD: There are two key capabilities that we are supporting in the 3.0 platform which is just shipping now that are substantial extensions beyond the previous version. One is the dramatically increased resource support for enterprise applications so that we can provide truly application-agnostic support for traditional enterprise applications. The second is the management platform for automation of virtualization and mobility management.
Looking forward, what we’ll be doing in the fairly near term is incorporating management of other virtualization technologies into our MetaCluster ARM, the Application Resource Manager platform. We’re looking at integrating it into technologies like VMware’s ESX and Xen, so we can manage multiple levels of mobility and virtualization technologies together. We think ultimately these things have to be tied together from an automation perspective for the enterprise to get broad-based value out of these virtualization technologies.
We’ve made substantial improvements in the efficiency of the checkpoint and virtualization process as we relocate applications from one machine to another, so that the time of relocation has dropped quite a bit. We’re going to do some additional things along those lines that will make the process even faster.
Our goal is to make it instantaneous; right now it’s seconds. For many environments seconds are fine, but in others having truly instantaneous relocation capability is important. It really matters how frequently you’re moving applications. If you’re doing it every couple of minutes you want it to be really fast. If you’re doing it once a day, seconds is great.
VSM: What kinds of applications will the new version support?
JD: Applications like Oracle, WebLogic, DB2, and numerous other commercial applications.
Note that one of the other things that MetaCluster 3.0 provides in the management layer is the ability to associate different application components together in a multi-tiered application environment to define an application from a business perspective.
From a business user’s perspective an application is eBay, or Oracle Financials, or SAP. They are really multi-tier applications that have a database layer, an app server layer and a Web tier. Each of those layers may have multiple instances of a particular component. You might have multiple instances of WebLogic server running across multiple machines, and that might be tied to one Oracle database. That might be tied on top to six app servers. And that all together might comprise a single business application.
What we allow the user to do is define the associations between those different components at the different tiers, so you can build rules around how and when you move each of the tiers of the application, and to what machines you might want to move those tiers, and scale out different tiers.
We’re very application-centric and business-centric from a business user’s perspective. The rules that the user can define are associated with the business service. On the agent side, our container technology wraps each component of a multi-tier application. On the management side, you tie all those containers together around a specific solution or business case.
VSM: Because they’re containerized, you can knit them together.
JD: Right, and also because we allow the enterprise to define associations between the various application containers through our policy management engine.
VSM: I’m beginning to hear regularly about business processes taking precedence in defining the rules for an application. I think it happens frequently that technology leads, but once the newness wears off, the business proposition takes over. In the end that’s what it’s about: you can’t stay in business unless you focus on the business proposition.
JD: Absolutely. At the end of the day, IT infrastructure is all about meeting business needs, and at the same time there is a lot of momentum around VM technology, which has to-date been applied to solve very specific business problems like optimization in Test and Development environments. Virtualization today is about a $2 billion business if you include storage virtualization, server virtualization, and OS virtualization technologies. For this to become a $20 billion business, the virtualization technologies will need to be much more broadly applicable across the whole of the enterprise IT environment, particularly in corporate data centers. This, in turn, requires finer-grained virtualization technologies and the automation to tie different layers of virtualization together and to associate the virtualization technology with business needs. That’s what we’re all about.