The recognized leader in proven and affordable load balancing and application delivery solutions White Paper Managing Application Performance and Availability in a Virtual Environment by James Puchbauer Coyote Point Systems, Inc. Visit coyotepoint.com for more information.
Copyright 2012 Coyote Point Systems. All rights reserved. Coyote Point TM, Equalizer TM, Equalizer OnDemand TM, Equalizer VLB TM, Envoy TM, E205GX TM, E350GX TM, E450GX TM, E650GX TM and Smart Control TM are trademarks of Coyote Point Systems, Inc. in the U.S. and other countries. Microsoft TM, Windows TM and SharePoint TM are trademarks of Microsoft Corporation. All other brand or product names referenced in this document are the respective trademarks of their respective owners. The specifications and information contained in this document are subject to change without notice. All statements, information and recommendations are believed to be accurate but are presented without warranty of any kind, express or implied. Users must take full responsibly for their application thereof. Document Name: WP_Virtualization_V1_020212 Document version: 1.0 March, 2012
Table of Contents Introduction... 1 Enter Virtualization... 1 VMware vsphere... 2 Choosing a vsphere License: Free or Fee... 2 Other Virtualization Platforms... 2 Virtual Application Performance... 2 Equalizer Deployments in a Virtualized Environment... 3 Traditional Equalizer Deployment... 4 Equalizer VLB Integrated Virtual Application Delivery... 5 Full ADC Virtualization... 7 Choosing Between a Virtual or Hardware ADC Appliance... 8 Conclusion... 8 About Coyote Point... 9 Contact Us!... 9
This page intentionally left blank
Introduction Virtualization is a technology that has radically transformed how data centers are built, managed, and networked. While it brings many benefits, such as better hardware utilization, quicker server deployment and flexibility, it also raises questions on how to better manage application performance and availability in a virtualized environment with Application Delivery Controllers (ADCs). For over a decade, load balancers have provided critical high availability and scalability to web server farms. Virtualization doesn t eliminate the need for load balancing but it does require a new set of best practices for a deploying a virtualized web application environment. This paper discusses virtualized application performance characteristics and three ways to deploy the capabilities of a Coyote Point an Equalizer ADC to significantly enhance the availability and performance of virtualized applications. This includes Traditional, Integrated and Full Virtual. Enter Virtualization While virtualization has been around for decades (IBM first introduced it in the mainframe world in the 1960s), the modern x86-centric data center landscape has only recently been transformed by this technology. Virtualization solves several problems for the data center; primarily better hardware utilization and operating system flexibility. You can now take an underutilized server, virtualize it, and run several operating systems on a single physical host (running at a much higher utilization rate). Virtualization has very positive ramifications for application delivery as well. With virtualization the full processing capacity of a real server, or servers, is broken up into individual, independent computing units (virtual server instances) to run applications. An important aspect of virtualization for application delivery is that it creates these virtual servers instances with individual memory and processing resources assigned to them. These virtual server instances are now unaffected by other virtual server workloads. This changes the old paradigm of a number of applications or services delivered by a single physical server, sharing a fixed performance capacity. We all know the danger of multiple applications sharing a single physical server s CPU and memory resources where spikes in any one application s load slows down the whole server and every other application running on that server. The flexibility is greatly enhanced, since we can provision, clone, install, rollback, test new scenarios, and develop and quality check quickly and with greatly reduced effort, time and resources. Gone are the days of subservience to the un-rebootable server (because if it s rebooted, no one knows if it will come back up). 1 White Paper: Virtualization
VMware vsphere In the world of x86-centric server virtualization, VMware has the largest market share. The overall product line from VMware is called vsphere ). This includes management products such as vcenter as well as the vsphere Hypervisor, formerly known as ESXi. Choosing a vsphere License: Free or Fee In terms of licensing a VMware solution, there are a couple of options. The first option is free ESXi. VMware offers the ability to run and license the ESXi 4 and 5 hypervisors for free, but only the hypervisor and only with certain capacity and feature constraints. With free ESXi 4, you are limited to 6 cores and 256 GB of physical RAM. With the free version of ESXi 5, there is no core limit, although you are limited to 32 GB of physical RAM. There are other limits with the free version as well. An ESXi host with the free license cannot be part of a cluster controlled by vcenter. You also don t get some of the more advanced vsphere features, such as vmotion, HA, and DRS. You do get a sense of the benefits of virtualization and it s a good place to start. If you want to use vcenter and enjoy the benefits of HA, DRS and vmotion, you ll need to purchase a license (Essentials Plus or better). VMware has several options, including special SMB kits for 3-5 server deployments, depending on what your needs are. Other Virtualization Platforms VMware is currently the most popular server virtualization platform. There are other platforms including Microsoft Hyper-V and Citrix Xen. This paper specifically covers the vsphere environment and the specific capabilities we have built into Equalizer to improve application delivery with VMware. Virtual Application Performance While every web application is different, there are some basic guidelines that most tend to follow in terms of performance characteristics. Even in a virtualized environment, these performance characteristics are still largely the same as they are in a non-virtualized environment. However, virtualization makes adjusting these parameters easier in many ways. Most web applications are comprised of three tiers: 1. Web server tier 2. Application server tier 3. Database server tier With virtualization, they are still kept on separate virtual machines as they were separated on physical bare metal hosts, but now several virtual machines can be put into the same hypervisor host. 2 White Paper: Virtualization
In the graphic above, a web application stack is divided up between three physical ESXi hosts. There are five web+application servers (Web+App) in production, split between all three hosts. There are two database servers in an HA cluster (clustering is done by the database software, not a load balancer), and two development systems (Dev). Just like a regular server environment, basic performance resources can be grouped into some basic building blocks: 1. CPU power 2. Memory resources 3. Disk I/O In a physical environment, the physical server, where the operating system resides, limits these metrics. In a virtualized environment, the physical resources of the physical host can be divided up between the virtual machines running them. Memory and CPU typically limit web servers and application servers with little need of disk I/O resources. For a scripting-based application platform like PHP or ASP, more vcpus can help scale up an individual virtual machine, but not necessarily memory. For an application platform that resides as a separate process in memory, such as.net and Java/Tomcat, adding lots of memory can help greatly. Equalizer Deployments in a Virtualized Environment To understand how they deployment options differ, first consider a typical virtualized environment consisting of several hypervisor hosts. They can be operated in a standalone mode (see the previous section on free hypervisors), although typically they are controlled by a centralized system such as VMware vcenter. The graphic below shows a typical deployment of VMware vsphere with VCenter. 3 White Paper: Virtualization
With virtualized applications, there are generally three different ways to implement an Equalizer ADC platform: 1. Traditional ADC treats manages virtual server traffic identically to how a it would manage physical server application traffic 2. Integrated In addition to traffic management the ADC is tightly integrated with virtual infrastructure to also optimize virtualized application delivery resources 3. Fully Virtual ADC appliance itself is a virtual machine allowing for complete virtualization of your web application delivery infrastructure. Traditional Equalizer Deployment A common scenario for integrating the Coyote Point Equalizer into a virtualized environment is by using a traditional deployment. In this type of deployment, Equalizer s relationship to the virtualized servers is no different than the relationship between Equalizer and traditional servers. Equalizer includes virtual and/or physical servers in a cluster and manages application delivery of both types identically. When configuring Equalizer, a virtual machine is added to a cluster like a regular, non-virtualized 4 White Paper: Virtualization
server would be. In fact, it s a simple matter to mix and match both virtual servers and real servers, even in the same cluster. This type of mixed environment can be quite common, especially during physical to virtual transition periods. In the server s menu of the GUI, Equalizer treats the virtual machine the same as it would a regular server there is no additional information provided by the hypervisor used in routing traffic. In a traditional load balancer deployment, Equalizer does not need to be aware that it is managing traffic for a virtualized infrastructure. Likewise the virtualized infrastructure isn t in communication with Equalizer. This is a common and effective implementation of an ADC. All traditional Equalizer ADC capabilities of are supported. Equalizer runs health probes on, and manages traffic to, the virtual machines like it normally would with a traditional physical server. Equalizer VLB Integrated Virtual Application Delivery To get the most from your virtual infrastructure the ADC (load balancer) must go beyond the basic capabilities and integrate into the virtual infrastructure. Equalizer offers an integration option to build functionality specifically for virtual servers on top of the traditional deployment with Equalizer VLB. Available in both Basic and Advanced licenses, VLB runs on Equalizer and queries various metrics on the virtual machines from either an individual ESXi server or the vcenter instance controlling a cluster of ESXi hosts. VLB links into the VMware API and gives Equalizer deeper insight into the virtualized environment. Equalizers with VLB monitor VMware vsphere (vcenter or ESX) to determine realtime virtual machine status. This VMware information is combined with Coyote Point's proven application-awareness expertise to manage the traffic flowing to VMware Virtual Machines running on ESX server. Combining application awareness with visibility into virtual server resource utilization yields more information to base load balancing decisions. The result is higher application performance and availability compared to traditional ADCs where load balancing and virtualization work independently. 5 White Paper: Virtualization
Equalizer ties into the vcenter API to retrieve performance metrics on the virtual machines and combines this with application traffic and response metrics to make routing decisions. Fundamentally, when setting up a cluster of servers the administrator has two questions in mind: How powerful are the servers relative to each other and how best to monitor performance of those servers? This is typically accomplished with the use of probes. While probes are an essential part of making sure a server is responding appropriately, probes by themselves do not give Equalizer complete insight into how the server is doing in terms of CPU utilization and other metrics. Virtual server is associated with a virtual machine in VMware vcenter. Very often servers are not all configured with equal memory and CPU resources or hosted are on physical server with a more powerful CPU. In these cases it doesn t make sense to send equal amounts of traffic to each. Also, if one server is struggling with high CPU utilization, you ll want Equalizer to route less traffic to it so it can service existing requests faster. With Equalizer VLB, the information regarding how powerful the servers are and how the servers are doing is obtained through Equalizers communication with vcenter or the ESX (i) host. 6 White Paper: Virtualization
VLB Advanced goes one step further and creates a two-way communication with vcenter that allows Equalizer to instruct vcenter to react to real-time information it receives regarding the availability or surplus of virtual machine resources supporting an application. VLB Advanced enhances the VLB feature-set by enabling administrators to control the availability of virtual machines, in addition to managing the traffic to those virtual machines. Smart Control is Coyote Point's powerful visual scripting language used to automate VMware administration actions based on Equalizer events and triggers. Administrators can define threshold conditions for parameters that will trigger a VMware response. By creating Smart Control rules, administrators can instruct VMware to spin up or tear down virtual machines to deal with changing traffic patterns and load. Resources that are assigned to idle virtual servers and would otherwise remain unused can be freed for other applications. VLB Advanced can tell vcenter to spin up new servers to support application experiencing load spikes. Smart Control rules also work with Equalizer s Intelligent Platform Management Interface (IPMI) using application probes to identify unresponsive applications and trigger a reboot the virtual server hosting a crashed application. Based on application requirements, a smart control can also power down unused physical servers, and power them back on when workload requirements demand extra computing power. The Result: higher performing applications, reduced capital expenses resulting from fewer servers, as well as a reduction in operational expenses resulting from power, cooling and management. Full ADC Virtualization The newest option from Coyote Point for virtualized environment deployments is Equalizer OnDemand. This is a virtualized version of Equalizer in the form of a virtual machine appliance. It allows full virtualization of your web application delivery infrastructure. The illustration shows how an individual or HA pair of Equalizer OnDemand virtual appliances are implemented as part of a completely virtualized application delivery environment. 7 White Paper: Virtualization
This fully virtual Equalizer ADC provides high availability and load balance traffic using VLB Advanced with the same integrated approach described above for an Equalizer hardware appliance. Unlike a physical device, however, Equalizer OnDemand allows you to scale up or scale down the resources given to the Equalizer OnDemand virtual appliance itself such as memory and vcpu. You can start out with Equalizer OnDemand running with "X" Megabytes of RAM and 1 vcpu and scale to Y number of vcpus and "Y" amount of RAM. The more resources you need, the more resources you give Equalizer OnDemand. Choosing Between a Virtual or Hardware ADC Appliance All Equalizers include VLB as a basic functionality and therefore are ideal to help you realize the efficiencies you need to scale your virtual applications. Choosing to implement a physical, virtual or hybrid ADC configurations is easier than it sounds. Equalizer hardware appliances are purpose-built and optimized for specific application delivery environments. When application acceleration such as high capacity SSL offloading or compression is required for bandwidth considerations, a hardware-based Equalizer will deliver the best performance from your virtual applications. If you have a virtualized application delivery environment that requires sophisticated traffic management, either the physical or virtual Equalizer will meet your needs. If you are working to implement the ultimate flexibility of a completely virtual application delivery network, Equalizer OnDemand is a virtual ADC appliance that delivers the load balancing capabilities you need in a completely virtual package. If you have available hardware server resources the virtual ADC give you additional Return on the Investment of current underutilized servers. This would eliminate the need for additional hardware appliances and further decrease the cost of guaranteeing application availability in a virtual data center deployment. Conclusion Virtualization has drastically changed the way web applications are hosted by adding flexibility, manageability, as well as scalability in ways previously not possible. However, doing so does require a new mindset and a new set of best practices. There are application delivery tools that are optimized for virtual application delivery, if you look for them. This paper has provided some basics principles that can be taken piecemeal or as a whole. They can provide a good point of reference for questions you may have on your particular deployment and whether your virtual application delivery challenges would be solved with an Application Delivery Controller like Equalizer. 8 White Paper: Virtualization
About Coyote Point Coyote Point has been an application delivery innovator for over 12 years. In 1999 we introduced our first server load balancer and we ve shipped tens of thousands of units since then. As leading manufacturer of application delivery, acceleration and load balancing solutions our products enable IT personnel to have greater control over their web and application servers. Coyote Point's EQ/OS 10 is an enterprise class application delivery architecture supporting Equalizer ADC, Virtual Equalizer OnDemand ADC, Envoy (Global Server Load Balancing) and VLB (Virtualization optimization) product families. At Coyote Point, we pride ourselves on delivering value, based on an unmatched combination of performance, reliability, ease of deployment and affordability. Our Equalizer appliances are deployed as hardware ADC appliances or as Virtual ADC Appliances to provide comprehensive application delivery solutions to businesses worldwide. Our Equalizer family of ADCs offer capabilities for load balancing, application acceleration, high availability, HTTP Web compression, SSL offload & acceleration, Global Server Load Balancing, fault tolerance, disaster recovery, virtualization optimization and clustering. With a versatile and powerful architecture, we provide an affordable family of ADC solutions offering comprehensive traffic management delivering 24x7 application availability, optimized performance, and a flexible, scalable, secure application delivery infrastructure. Contact Us! Bring us your application delivery challenges and let us demonstrate to you the benefits that Coyote Point s affordable, non-stop, application acceleration and load balancing ADC technology can bring to your business. You can contact us conveniently from the web at http://www.coyotepoint.com/contact.php or by calling us at 1-877-367-2696. 9 White Paper: Virtualization