Welcome!

Virtualization Authors: Rebel Brown, Miko Matsumura, Yeshim Deniz, Liz McMillan, Chris Fleck

Related Topics: Virtualization

Virtualization: Article

SOA & Virtualization: Network Virtualization for Improved Application Availability

Implementing SOA and virtualization without considering the network can cost you

Service oriented architecture (SOA) and virtualization are both top of mind in today’s IT environment, but for the enterprise architect or chief information officer, identifying how these approaches can be brought together for the benefit of the entire enterprise can be a difficult task. Adopting SOA creates expectations of higher levels of service availability and reuse in addition to the quick creation of new composite applications.

SOA most often resides in the domain of the application development group. Meanwhile, data center teams are usually first to embrace virtualization as they consolidate infrastructure for cost reduction. However, the application development platform is quickly becoming virtual, requiring enterprise architects to understand the best way to roll out SOA-based services and applications in this new virtualized environment, where any given application service may need to be accessed from around the globe.

Beyond fostering communication between the application development and data center teams, enterprise architects must grapple with mapping SOA-based systems to a virtualized data center, question where SOA and virtualization intersect, and determine how one can make optimal use of the other.

SOA can be defined in several ways. The most common is as a set of architectural principles that guide the building of modular systems based on “services,” or units of application functionality. In traditional environments, applications (and perhaps the infrastructure to run those applications) belong to an individual group or business function in the enterprise.

SOA relies instead on a model analogous to that of telecommunications providers, where services are offered to end users based on service level agreements. Applications (the “users”) become modular and can take advantage of common reusable services through the “contract” that each service provides. Ideally, some services will be used by many applications across the enterprise; however, services that are in great demand must perform well, adapt gracefully to changes in use, and be available at all times or risk losing “subscribers.”

SOA is important as companies strive to align business goals with IT resources and capabilities by enabling the reuse of applications and reducing application integration costs. Virtualization helps create a service-oriented infrastructure (SOI), thus improving physical resource utilization through the virtualization of the servers and storage resources that applications require. Together, SOA and virtualization can be a powerful combination. But implementing SOA and virtualization without considering the network can result in companies missing out on some of the most important benefits derived from the combination of SOA and virtualization: greater applications availability, agility, resiliency, and broad cost savings as well as the ability to scale these benefits globally.

Virtualization for applications is important in today’s fast-moving, borderless business environment in which employees, customers, and business partners demand anytime, anywhere access and use different methods and devices to conduct business. Application services must be available all the time, no matter when or where demand occurs.

Imagine this scenario: It’s early November and your company does a disproportionate amount of business during the Christmas shopping season. Before you implemented virtualization, your IT staff would work around the clock, overprovisioning the infrastructure to provide order-processing applications with sufficient resources to handle the influx of sales leading up to Christmas.

Then, starting the day after Christmas, the demand for those applications would dramatically decline, with returns processing and reverse-logistics applications almost immediately overburdened. Every year, more physical servers, application switches, and storage capacity were procured to support individual applications as the company’s business grew. How could virtualization help ease this annual crunch?

By adopting a phased approach to consolidating the infrastructure and using virtualization techniques across servers, network equipment, and storage, an enterprise can make much more efficient use of resources and provide simpler, faster application provisioning. In the example above, a virtualized infrastructure can allow common physical resources to be reallocated to the application that needs them, eliminating the burden of manual overprovisioning, making better use of the existing infrastructure, and providing better application availability and responsiveness for improved customer experience.

Virtualization can help guarantee high levels of availability without costly investments in manpower, time, and resources. Describing the evolution of the data center, Yankee analyst Zeus Karravala predicted that the resources residing in the data center today as physical infrastructure will be transformed to virtual infrastructure. Memory, storage, processing power, and databases will become virtual resources that can be called on-demand by whatever application requires it. These virtual resources will comprise pooled physical resources that can reside across the data center, across the city or across the globe, but they will look like a single resource to all applications. The network plays a key role in making sure these resources and applications are available whenever and wherever they are needed.
Network-based virtualization
While many organizations are familiar with server virtualization and are beginning to embrace storage virtualization, many fail to understand that network virtualization is equally important – if not critical – when it comes to scalability and availability. Server and storage virtualization clearly enable a higher utilization of existing computational and storage resources, but the network provides system virtualization to guarantee access to those pooled resources or to switch to alternate resources as required.

As illustrated in Figure 1, using a single physical application switch to support many virtual machines causes applications to compete for resources. Moreover, changes to one application can affect the others, and device configuration is overly complex. Adding more physical switches creates an inefficient isolation of applications and results in device sprawl, underutilized resources, and complexity in upgrading.
With a virtualized architecture, as shown in Figure 2, abstraction and partitioning allow one physical switch to provide multiple virtual contexts on a per-application basis; isolated, secure applications have guaranteed resources and role-based access.
Several network infrastructure services lend themselves well to virtualization, including security services, firewalls, Web Services gateways, and server load balancing. Global site selection enables global server load balancing by distributing client requests for applications to different geographic instances of those applications, allowing users anywhere in the world to reach the nearest instance of an application for faster access and response times. In addition, the use of storage area networks (SANs) and virtual LANs (VLANs) extends storage and computational services across the network.
Reaping the Rewards of Virtualization
Network-based virtualization yields greater application availability because uptime is no longer tied to an individual physical component. As virtualization turns a hard resource into a soft one, time-consuming manual tasks can be transformed to simple configuration changes, enabling automation and fostering greater agility and resiliency.

The following example illustrates how application availability is improved by implementing a network load-balancing service. In a typical siloed infrastructure, adding a load balancer initiates a complex process involving several departments and can easily take up to three months. As more load-balancing systems are added to the network, simply managing and maintaining them consumes staff time and often results in low average utilization. Using the network to implement a virtualized horizontal load-balancing service and to partition resources creates logical, individual load balancers. Load-balancing resources can be divided into virtual partitions, and each partition can be allocated to a given application, customer, or business unit, along with associated resources such as bandwidth and connections. Physical resources can be shifted as needed to support applications during heavy demand, such as the periods when finance departments are rolling up quarterly statements.

The increased flexibility to deal with limited capacity leads to better utilization, which enables consolidation, reduced power consumption, and pervasive cost savings in the data center.
Implementing Network-based Virtualization
Quick and easy benefits can often be gained with small-scale server virtualization, and many companies are already embracing SOA, but organizations that hope to reap the true benefits of network-based virtualization should first invest significant time and effort into the development of an overall virtualization roadmap as part of their enterprise architecture. Guided and supported at the executive level, all stakeholders should take an active role in collaboratively defining their needs to align planned activities with various implementation stages.

Application development teams and application owners must work closely with network engineers and architects to get an end-to-end perspective. This collaboration will foster an understanding of a given application, its dependencies, the ways in which it links to servers and storage, and other intricacies, along with what might be affected by virtualizing a given infrastructure service. Virtualizing network-based services is likely to require the convergence of technologies and multiple groups in a company, not unlike that seen when voice and data converged. Server, storage, and network teams need to work together to develop policies and standards for areas that will be virtualized. Successfully transforming an enterprise from a legacy stovepipe infrastructure to a service-oriented infrastructure hinges on the use of an architectural framework to guide the implementation.

The Cisco Service-Oriented Network Architecture, or SONA, is a conceptual framework illustrating network-based services that applications leverage for innovative business outcomes.

The SONA approach follows application-centered design principles that define a flexible and resilient networking environment, providing an integrated platform for business services. Using SONA elements and principles in conjunction with Cisco Validated Design guides, network architects and engineers, working together with their application-development counterparts, can build and deliver services-capable communications infrastructures that are reliable, scalable, highly secure, predictable, and built to optimize the end-user application experience. A network built on SONA principles and elements can enhance the delivery of applications even in today’s complex network environments. Implementation of a virtualized service-oriented infrastructure should be done incrementally, beginning with the consolidation of computing and storage resources, followed by different stages in the virtualization plan, and ultimately moving toward the automated provisioning of new segmented application-service environments.

IT staff members should be properly trained on virtualization technologies at the outset. Virtualization can initially make operations more complex, and tracking down a complex network application-integration problem may take significantly more resources and time if the support staff has not been trained appropriately.

Some tasks will grow in importance as virtualization is rolled out; these include capacity planning, fault containment, testing, quality management, monitoring, dependency management, and change management. As discussed above, a side benefit of embracing virtualization can be increased collaboration between disparate teams, helping dissolve silos of technical expertise and increasing cross-pollination of important IT skill sets.

Although significant planning and organizational cooperation are required upfront, the value of the greater utilization, availability, resilience, operability, and agility gained through virtualization outweighs the overhead and risk associated with its adoption.

About Tom Woteki

Tom Woteki is director of customer solutions, Cisco SONA Program Office. As director, he helps Cisco customers incorporate and apply the SONA architectural framework into their IT strategies to achieve business results. Previously, he was vice president of information systems engineering at Northrup Grumman and CIO at the American Red Cross. He holds a PhD in statistics from Virginia Tech and a BS in mathematics.

Comments (0)

Share your thoughts on this story.

Add your comment
You must be signed in to add a comment. Sign-in | Register

In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.