Optimizing the Virtual Data Center

The promise of virtual machines is that operators don’t need to worry about where their servers are. You can have one big server running on five physical computers, or a hundred tiny servers running on one physical machine. This makes it easy to adjust capacity; it also means creating a new server is as simple as dragging and dropping.

But while data center operators might not care where their servers are, the servers do. Today’s data centers are based on Web Services and SOA architectures. Instead of one big mainframe, we have many small servers all talking to one another.

In a traditional data center, machine-to-machine conversations like these can take milliseconds, resulting in slow applications. But if chatty virtual servers live on the same physical machine, they can communicate in microseconds.

Done right, putting virtual servers that need to talk together on the same physical machine could make applications a thousand times faster.

What we need is software that continuously analyzes conversations between all servers, then automatically reconfigures the data center so servers that communicate more often are on the same physical hardware. Call it a Virtual Data Center Optimizer.

The optimizer would be constantly moving servers among physical machines to find the optimal configuration as the data center changes, much as the Internet’s routers are always looking for the best path between two points as the network changes.

Companies already make tools to help humans find good configurations and to manage the flood of new virtual machines. Cirba, for example, helps administrators decide where virtual machines should go based on policy and workload. Embotics, on the other hand, tracks the lifecycle of virtual machines to address sprawl and security challenges.

Firms like these, along with technologies like VMWare’s VMotion, are well-positioned to optimize server-to-server communications. But we need more than just a management tool — we need an autonomic process that’s constantly adapting. Whoever solves this problem stands to speed up data centers dramatically.