In enterprise environments it is common for an application to be hosted by a pool of servers, either physical or virtual. Over time these applications also go through a lifecycle that consists of security patches, maintenance, upgrades to update capabilities, and changes to keep up with trends such as virtualization, consolidation and deployment in a hybrid cloud environment. For scalability, additional servers may also be deployed.
IT is needed to deliver consistent availability and an optimized user experience for these applications all while delivering the Service Level Agreement (SLA). Trends such as virtualization, consolidation and shared environments in the cloud can make meeting SLA requirements more difficult as the same resources are often shared by different applications – this can lead to SLA breaches. Application SLAs can also be degraded as a result of cyber-attacks that threaten proper application operation.
A recent study of more than 200 IT professionals conducted by Radware with Enterprise Strategy Group (ESG), revealed many of the challenges enterprises face in meeting application service levels. Some were related to security issues for which the applications were not designed, some were related to deployment – compatibility, time to upgrade, and testing – while others were related to not meeting performance expectations of users.
One of the tried-and-true ways of addressing many of these SLA challenges is to use Application Delivery Controllers (ADCs). ADCs may be deployed as physical devices, as a virtual appliance, or as a cloud service. ADCs separate user requests from the application services while bridging them. A wide variety of algorithms enable ADCs to route user requests to appropriate application services, whether within the same data center (server load balancing or SLB) or across data centers (global server load balancing or GSLB).
This separation enables ADCs to provide routing of requests to an available application resource during an upgrade or enabling scalability while new application instances are brought online.
Next generation ADCs also integrate with application orchestration systems and provide easy-to-use templates for quick provisioning without requiring extensive networking know-how to enable automation.
Many of the newer ADCs provide the same functionality across all form factors – whether physical, virtual or as a cloud service – a key requirement when applications teams need to test their applications. So, an application developer or DevOps may use application templates to quickly provision and test applications with virtual or cloud-based ADCs, before deploying the same application on a high performance physical ADC in a production environment.
For years, companies have used ADCs to optimally deliver applications. However, the standard/legacy ADC is based on a best-effort approach and is not enough anymore. In a standard ADC, all resources are shared between served applications. There is no resource isolation per application and no resource reservation mechanism.
Adding features or services to one application can degrade the overall ADC performance and impact other applications SLA. In addition to this, the legacy ADC does not offer tools for monitoring application SLA, but only provides acceleration features that are mainly on the TCP/SSL layers. It does not optimize response time per application, end-user device or browser.
In a multi-tenant environment, if the environments are not segregated, tenants may start competing for shared resources during peak utilization. The isolation of resources is especially critical in situations where financial and user data are involved. There are many security and compliance requirements (PCI, HIPAA, etc.) that mandate the isolation of various environments. In an environment where tenants share the ADC resources, a potential spike in resource consumption or a wrong configuration change of a single tenant may impact all other tenants – severely impacting an application’s SLA and availability.
A next generation ADCs can provide a very cost effective and secure consolidation environment for providing availability, security, and business continuity across a multi-tenant hybrid application environment. With capabilities such as local and global server load balancing, web application security and acceleration, and the continuous monitoring of quality of experience, ADCs provide proactive visibility to measure and deliver on an application SLA and improve business reputation.