The move to grid or grid-like architectures within the datacenter brings many benefits, such as growth of capacities, lower costs, and support for an increasing number and variety of applications. This trend has also brought additional infrastructure requirements and associated challenges. Connecting and managing hundreds or thousands of servers and networked storage, and incorporating server and storage virtualization technologies, has created communication challenges, network complexity and a steep learning curve for getting the most out of the ability to virtualize infrastructure.
With all of this complexity to deal with, have we figured out how much time and resources it takes to deploy applications over grids?
This article examines how grids built around a service-oriented architecture (SOA) focusing on business tasks, business flows, and service delivery will significantly shorten the time and efforts in application deployment and configuration, while delivering the greatest efficiencies. A datacenter grid model is proposed, which includes considerations for deployment and provisioning tools for applications, server and storage infrastructure, and high-performance grid fabrics.
The Evolution of Today’s Data Center Challenges
In recent years, IT has been faced with enormous growth in capacities. Digital data is generated at a growing rate and covers every aspects of our lives — from telephones (VoIP, cellular) to media and entertainment, retail, banking and leisure. The amount of data grows exponentially and becomes larger and more complex to process (think about types, such as media, XML, DNA, etc.), requiring faster servers and storage with greater capacities.
Because compute and storage capacities needed to grow to address the data influx and budgets remained flat, these trends forced a paradigm shift and led to increased commoditization of the compute and storage infrastructure. Commodity-based server clusters and grids replaced large and expansive mainframes, and clusters of low- to mid-range storage replaced the “Big Irons.” Furthermore, server and storage virtualization technologies were introduced to increase the utilization of the hardware, leading to hardware cost savings.
While this revolution in server and storage architecture saves significant amounts of money on hardware and capital expenses, it also created new and increased software and operations expenses. IT’s next challenge is to increase the software efficiency and to reduce the operational costs in grids.
The Key to Reducing Software and Operational Costs? Simplify the Datacenter!
The need for increased capacities at lower costs drove the industry to focus on reducing capital expenses and hardware costs. While doing this, the datacenter became more complex and fragmented, driving up operational costs. Unary systems are replaced with server farms and clusters, network topologies become more complicated due to the distributed nature of the new data center, and new technologies such as SAN (storage area networks) introduced with them complete processes and disciplines (not to mention additional organizational barriers). Server virtualization further fragmented the resources, creating more manageable components and undermining some key assumptions about the relationship between a resource and its physical implementation. Provisioning of an application environment that consists of several tiers can take weeks and relies on many resources. Even small changes to the environment may require scheduling downtime and serial processes that take days.
To address complexity, datacenters will need to be built around an SOA, which focuses on business tasks, business flows and service delivery. This new architecture transcends hardware and software. The infrastructure will become adaptive and self-configuring, focusing less on technology silos and manual processes that take much time and resources. It will instead zero in on how the infrastructure can satisfy the service and application objectives. This “subtlety” is a prerequisite to constructing a true SOA.
Simplification Through I/O and Fabric Consolidation
A significant barrier to achieving a utility datacenter is the tight relation that exists between applications and infrastructure. Some applications are more dependent on compute, some on storage, and some rely more heavily on low-latency, inter-processor communication. Each application may drive different hardware requirements or configurations. For example, a standard Web server and a standard 1U server with two network ports may be good enough for some applications, but for a database of file servers, more and faster I/O is needed. Without addressing that relationship, datacenters would still need to be provisioned physically or, in the best case, automation and virtualization tools would be limited to homogeneous silos.
And CPU capacities are growing. The world is migrating to 64-bit CPU technologies from Intel and AMD, CPUs are faster, and multi-core technology with dual- or quad-CPU cores on a single chip is now reality. New power-saving and cooling technologies allow higher system densities increasing the overall CPU capacity per server by a factor of 10 or more. This requires an equivalent capacity growth on the server I/O, storage and network interfaces.
To address these I/O challenges, servers now need 10 Gbps or faster external interfaces that can process and/or virtualize I/O in hardware. Middleware is needed that can take advantage of that hardware and bypass the OS while still providing traditional application and/or storage APIs. Moreover, the communication fabric/network should be more reliable and predictable — and not waste precious application run time on wait or retransmissions. Since network, storage and I/O resources are scarce, it also is important to enable efficient management and dynamically partition the I/O resources to the right applications and traffic. Much like the CPU-partitioning executed by server virtualization technologies, this can also eliminate the need for manual infrastructure and cable provisioning, and shorten application deployment time.
In today’s datacenter, a lot of focus in put on incorporating tools for storage and server automation, which can take care of many deployment and maintenance tasks. However, a key element in the creation of an operationally efficient datacenter is the use of a unified fabric (for all cluster, I/O and network traffic) that can allow for partitioning of the fabric and the attached I/O to accommodate dynamic application needs. The fabric consolidation is achieved using multi-service switches and servers are connected to the fabric switch using a multi-channel adapter (such as an InfiniBand adapter). This configuration can provide multiple virtual NICs, fast access to storage and low-latency messaging and RDMA for application scale-out and clustering. The switches can form multiple virtual and isolated LAN, SAN and cluster networks on-demand, and attach transparently to external Ethernet or Fibre Channel networks.
Using InfiniBand fabric technology, a single adapter and single link can emulate multiple adapters and network ports. InfiniBand has built-in mechanisms to ensure isolation between virtual I/O elements and between different logical networks. 10 GbE can also be used as a lower-end alternative to InfiniBand. However, today, 10 GbE’s pricing remains high and the technology is immature by comparison. Furthermore, InfiniBand has many unique capabilities that enable consolidation that are not found in 10 GbE.
Service-Oriented Infrastructure (SOI) Management
While virtualization of servers, storage and fabrics is a key element to achieving a flexible and more efficient datacenter, it also is critical to develop a new approach to data center resource management. Instead of manual procedures by which administrators create and configure the infrastructure, infrastructure resources should be dynamically created and configured based on the application requirements. This is achieved through the use of SOI management tools.
Fabric provisioning and SOI management tools, such as Voltaire GridVision Enterprise software, depend on the use of dynamic and unified datacenter fabrics, which have loose relationships between resources and can be programmed to create whatever topology or logical links are needed at a given time or to satisfy a given application load.
These tools are complementary to many of the virtualization and automation/provisioning tools in market today because they focus on the infrastructure and connectivity aspects of virtual datacenter resources. They can integrate with the server virtualization products (such as Xen and VMWare) and typically use an open and extensible API for optional integration with server and storage provisioning tools Orchestration and scheduling tools can use the SOI Web services API and object models to provision infrastructure as needed, collect health/performance information and get notified on infrastructure events and changes.
With a SOI, equipment can be wired once, thus eliminating physical user intervention. Complex application deployment procedures that cross organizational boundaries can be automated and conducted in few minutes rather than days or weeks. They are less error-prone and consume fewer resources. Furthermore, infrastructure can be built-to-order to meet application-specific requirements with the right balance of CPU, network and storage resources. Ultimately, this makes applications on a grid more efficient and eliminates the right bottleneck.