application load balancing

98

Upload: others

Post on 12-Sep-2021

6 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Application Load Balancing
Page 2: Application Load Balancing

Application Load Balancing Jeff OstermillerJeff Ostermiller

Page 3: Application Load Balancing

Additional Programs:Content Programs7 Ed ti l T k • IT Management

• IT Executive Symposium• Cisco-on-Cisco Case studies• Public Sector General Session

7 Educational Tracks• Borderless Networks

• Network Infrastructure & Systems• Security • Public Sector General Session

• Collaboration User Group• CCIE Practical Exam•Architecture Town Halls

• Security• Mobility

• DC & Virtualization• Collaboration

•Cisco Developers Network•Product and Solution Sessions

Experiential Learning:

• Video• Service Provider• BYOD• Cloud Experiential Learning:

• Technical Solutions Clinic• Meet the Engineer• Walk-In Self Paced Labs

T bl T i

Cloud

Sub-Programs• Certifications

© 2012 Cisco and/or its affiliates. All rights reserved.BRKAPP-2020 3Cisco Public

• Table Topics

Page 4: Application Load Balancing

ACE Deployment in an Application E i tEnvironment BRKAPP-2020

Page 5: Application Load Balancing

Agenda Load Balancing Today’s Web ApplicationLoad Balancing Today s Web Application

– Benefits of Traffic Management

– Introduction to ACE

Design Considerations– Design Considerations

– Probes, Persistence, Predictors

– Server Offload

T l ti d C fi ti Templatized Configuration

Linking VMware VCenter manager to the ANM 5.1

Deploying VMware View w/Cisco ACE

Microsoft Deployments

– ACE for Microsoft Exchange 2010

– ACE for Microsoft SharePoint 2010

© 2012 Cisco and/or its affiliates. All rights reserved.BRKAPP-2020 5Cisco Public

ACE for Microsoft SharePoint 2010

ACE Support for IPv6

Page 6: Application Load Balancing

Load Balancing Today’s Web ApplicationsWhat are the Challenges?

Virtual Data Center introduces new challenges for load balancers and application management

What are the Challenges?

– Transition to Virtual Machines (VMs) using Vmware and Microsoft Hyper-V technology

– Servers that used to be stand-alone are now VMs– Virtual data center requires orchestration of the application, VM server and

switching infrastructure

© 2012 Cisco and/or its affiliates. All rights reserved.BRKAPP-2020 6Cisco Public

Application Network Manager (5.1)

6

Page 7: Application Load Balancing

Application Delivery Controller Benefits of Traffic Management - Why application

delivery Controller:– Availability

Mobile phoneAvailability

– Scalability

– Performance ACE Load Balancer

Virtual IP

Web browser

Outlook (remote– Security

Th Ci A li ti C t l E i (ACE) id lid t d

Client Access Server farm

Outlook (remote user)

Outlook (local user)

The Cisco Application Control Engine (ACE) provides validated solutions for Microsoft applications

© 2012 Cisco and/or its affiliates. All rights reserved.BRKAPP-2020 7Cisco Public

Cisco ACE30 Module4–16 Gbps

Cisco ACE 4710 0.5 – 4Gbps Cisco vACE

Page 8: Application Load Balancing

Design ConsiderationsOne Armed ModeLoad Balancers not inlineAllows direct server access

Routed ModeEasy to deploy

Requires Source NAT, PBR, or RISE

Easy to deploy Requires at least two IP subnetsServers in dedicated IP subnet

Bridged ModeEasy migration for serversRequires one IP subnets

© 2012 Cisco and/or its affiliates. All rights reserved.BRKAPP-2020 8Cisco Public

Recommend for non-LB traffic

Page 9: Application Load Balancing

Introduction to ACE Load Balancer

Cisco ACE provides many advanced load balancing feature which can be applied to meet challengers with deploying today's applications

These features include:These features include:1. Access-control (permit or deny a

request)2 M t t ffi2. Management traffic3. TCP normalization/connection

parameters4. Server load balancing5. Fix-ups/application inspection6. Source NAT

© 2012 Cisco and/or its affiliates. All rights reserved.BRKAPP-2020 9Cisco Public

6. Source NAT 7. Destination NAT

Page 10: Application Load Balancing

Virtual Context Setup

Virtual contexts are virtualized ACEs. Each virtual context has independent configuration and dedicated resources assigned. One context can pull resources from another

Microsoft Exchange 2010

Microsoft SharePoint 2010

Cisco UCS

Virtual Virtualization of Microsoft Exchange 2010A separate virtual machine for each of the roles: Two Client

© 2012 Cisco and/or its affiliates. All rights reserved.BRKAPP-2020 10Cisco Public

A separate virtual machine for each of the roles: Two Client Access Server, Hub Transport, Four Mailbox in a DAG (Database Availability Group)

Page 11: Application Load Balancing

Basic Load Balancing for ERP Applications

• Is the server active? How can you check? • How can you

balance the

Predictors• How do you

keep the client connected to the

Probes

balance the connections? same server?

Persistence

© 2012 Cisco and/or its affiliates. All rights reserved.BRKAPP-2020 11Cisco Public

Page 12: Application Load Balancing

Health ProbesSAP Enterprise PortalSAP Enterprise Portal

Configuration

© 2012 Cisco and/or its affiliates. All rights reserved.BRKAPP-2020 12Cisco Public

Page 13: Application Load Balancing

Health ChecksWatch the Expected Status CodeWatch the Expected Status Code

ACE/dc# telnet 169.145.90.16 50100Trying 169.145.90.16...Connected to 169.145.90.16.Escape character is '^]'.GET / HTTP/1 1

NetWeaver Web Administrator

GET /nwa HTTP/1.1Host: 169.145.90.16

HTTP/1.1 302 Foundserver: SAP NetWeaver / AS Java 7.1

t t t t t/ht l

© 2012 Cisco and/or its affiliates. All rights reserved.BRKAPP-2020 13Cisco Public

content-type: text/htmllocation: http://169.145.90.116/webdynpro/dispatcher/sap.com/tc~lm~itsam~co~ui~nwa~localnavigation~wd/NWAApp

Page 14: Application Load Balancing

Probe Defaults

Name Description Min Time

Max Time

Default

Interval Time between successful probes 2 65535 120

FailDetect Number of failed probes before marking as failed

1 65535 3

PassDetect Interval

Time to send a probe when a server is marked as failed

2 65535 300Interval as failed

PassDetect Count

Number of successful probes before marking the server as passed

1 65535 3

Open time for a successful 3-way handshake 1 65535 10

Receive time for getting a response, ie. send a GET, wait for a reply

1 65535 10

© 2012 Cisco and/or its affiliates. All rights reserved.BRKAPP-2020 14Cisco Public

Page 15: Application Load Balancing

Probe Configuration Options To configure a real server to remain in the OPERATIONAL state unless all To configure a real server to remain in the OPERATIONAL state unless all

probes associated with it fail (AND logic), use the fail-on-all command in real server host configuration mode

probe http BasicHTTP_02-probe-1interval 5passdetect interval 5passdetect interval 5request method get url /index.htmlexpect status 200 499open 10

probe scripted SQL_USERinterval 5interval 5passdetect interval 10script SQL_PROBE SQL_User Success

0!serverfarm host BasicHTTP_02failaction purgeprobe BasicHTTP_02-probe-1probe SQL_USERrserver 192.168.11.1 80inservice

© 2012 Cisco and/or its affiliates. All rights reserved.BRKAPP-2020 15Cisco Public

rserver 192.168.11.2 80inservice

rserver 192.168.11.3 80inservice

Page 16: Application Load Balancing

Predictors - Application Response

Load balancing based on server response time; response time calculated over a configured number of samples and supports the following options

ACE Serverfarm

SYN to Close Application Request to ResponseSYN to SYN-ACK

Time between HTTP request send from ACE to HTTP response received from the

Time between SYN send from ACE to SYN-ACK received from the

Time between SYN send from ACE to FIN/RST received from

pp q p

© 2012 Cisco and/or its affiliates. All rights reserved.BRKAPP-2020 16Cisco Public

pserverserver the server

Page 17: Application Load Balancing

Predictors - Application Response

Measures the response time from when the ACE sends an HTTP request to a server to the time that the ACE receives a response from the server for that requestthe server for that request

serverfarm TCP80-SFpredictor response app-req-to-resp

rserver SERVER1inservice

rserver SERVER2inservice

-------------------------------------------connections-----------

l i h l f ilreal weight state current total failures ---+---------------------+------+------------+----------+----------+---------rserver: TCP80-SF

172.16.29.10:0 8 OPERATIONAL 0 239287 32max-conns : - , out-of-rotation count : -min-conns : -

© 2012 Cisco and/or its affiliates. All rights reserved.BRKAPP-2020 17Cisco Public

conn-rate-limit : - , out-of-rotation count : -bandwidth-rate-limit : - , out-of-rotation count : -retcode out-of-rotation count : -average response time (usecs) : 228

Page 18: Application Load Balancing

Session Persistence Methods

Source IP Cookie SSL ID HTTP Redirect RDP SIP GPP

How to Uniquely Identify a Client…

How Does It Work

Client= its SRC IP

client = acookie value

client = SSLsession ID

LB Redirects to Specific (V)Server

SD, Session Directory. Routing Token = server IP + Port

Client = Session Call-ID

Regex matches on TCP and UDP data

Full IP Static Full SSID

Variation Masked IP Dynamic

Insert

Full SSID

Offsetcustom

Info Stored on LB LB LB Client LB LB LB

N C ki N S Recovering SIP ifi Flexible forGood For Simplicity Flexibility No Cookie

supportNo State on LB

Recovering Disconnected WTS sessions

SIP-specific stickiness

Flexible for custom applications

Caveats ProxiesHTTP only

Clear Test

SSL v3

Renegotiation

HTTP only

Absolute URLs

No Token, needs to fall back to source IP

Specific to application

© 2012 Cisco and/or its affiliates. All rights reserved.BRKAPP-2020 18Cisco Public

Bookmarkssource IP

Page 19: Application Load Balancing

Session Persistence

When customers visits an e-commerce site, they usually start out by browsing the site

Depending on the application, the site may require that the client become "stuck" to one server once the connection is established, or the application

t i thi til th li t t t t b ildmay not require this until the client starts to build a shopping cart

This is known as stickiness or session persistence

Prior to ACE 4.X, sticky connections require a resource class to be configured. If your forget ANM will send you the following message

© 2012 Cisco and/or its affiliates. All rights reserved.BRKAPP-2020 19Cisco Public

Page 20: Application Load Balancing

Basic ERP Web Load BalancingPersistence Options

Configuration shows two different sticky options; HTTP Cookie insert and source IP sticky

Persistence Options

© 2012 Cisco and/or its affiliates. All rights reserved.BRKAPP-2020 20Cisco Public

Page 21: Application Load Balancing

Basic ERP Web Load BalancingPersistence Options

Configuration shows two different sticky options; HTTP Cookie and source IP sticky

Persistence Options

IP stickysticky http-cookie ILIKECOOKIES COOKIESTICKY

cookie inserttimeout 720serverfarm HTTP-SF

!sticky ip-netmask 255.255.240.0 address source IPSTICKY

serverfarm HTTPS-SF!!policy-map type loadbalance first-match WEB-PM

class class-defaultsticky-serverfarm COOKIESTICKY

policy-map type loadbalance first-match TCP80-PM

© 2012 Cisco and/or its affiliates. All rights reserved.BRKAPP-2020 21Cisco Public

class class-defaultsticky-serverfarm IPSTICKY

Page 22: Application Load Balancing

Basic ERP Web Load BalancingCreate new rule

Click View then Edit to modify

What are you looking for? What do

you want to do when you OR

y

find it? OR

© 2012 Cisco and/or its affiliates. All rights reserved.BRKAPP-2020 22Cisco Public

Page 23: Application Load Balancing

Basic ERP Web Load Balancingsticky http-cookie ILIKECOOKIES COOKIESTICKYcookie insert browser-expireserverfarm TCP80-SF

!!policy-map type loadbalance first-match HTTP-PMclass class-defaultsticky-serverfarm COOKIESTICKY

policy-map multi-match LOADBALANCEclass HTTP-CMloadbalance vip inserviceloadbalance policy HTTP-PMloadbalance policy HTTP-PM

interface vlan 2ip address 10.10.119.55 255.255.255.0access-group input EVERYONE

© 2012 Cisco and/or its affiliates. All rights reserved.BRKAPP-2020 23Cisco Public

service-policy input LOADBALANCEservice-policy input REMOTE-MGNTno shutdown

Page 24: Application Load Balancing

Basic ERP Web Load Balancingclass-map match-all TCP80-CM2 match virtual-address 10.10.119.112 tcp eq 80

!rserver host SERVER1ip address 10.10.119.1

serverfarm TCP80-SFprobe TCP80-PROBEprobe HTTP-PROBEpredictor leastconns slowstart 200rserver SERVER1i i

p add ess 0. 0. 9.inservice

rserver host SERVER2ip address 10.10.119.222inservice

probe tcp TCP80-PROBE

inservicerserver SERVER2inservice

sticky http-cookie ILIKECOOKIES COOKIESTICKYcookie insert browser-expireserverfarm TCP80-SF

interval 10port 80passdetect interval 10passdetect count 3

probe http HTTP-PROBEi l 20

serverfarm TCP80-SF!policy-map type loadbalance first-match HTTP-PMclass class-defaultsticky-serverfarm COOKIESTICKY

policy-map multi-match LOADBALANCEinterval 20passdetect interval 5request method get url /index.htmlexpect status 200 499

p y pclass HTTP-CMloadbalance vip inserviceloadbalance policy HTTP-PM

interface vlan 2ip address 10.10.119.55 255.255.255.0

© 2012 Cisco and/or its affiliates. All rights reserved.BRKAPP-2020 24Cisco Public

access-group input EVERYONE service-policy input LOADBALANCEservice-policy input REMOTE-MGNTno shutdown

Page 25: Application Load Balancing

Basic ERP Web Load BalancingSimple of Complex?

Select *NEW

New Options DynamicallyAppear

Increase Header Max Parse LengthCase-Insensitive

What doyou want to do when you find it?

ORy

OR

© 2012 Cisco and/or its affiliates. All rights reserved.BRKAPP-2020 25Cisco Public

Page 26: Application Load Balancing

URL Parsing ( Advanced Mode )How to look for the data

What are you looking for? Cookies Di t i ?Now for the Directories? Headers?

Now for the RegexExpression

Now you found it, now what?

© 2012 Cisco and/or its affiliates. All rights reserved.BRKAPP-2020 26Cisco Public

Page 27: Application Load Balancing

URL Parsing ( Advanced Mode ) cont.New Sticky Serverfarm for Image store

Select Correct ProbeProbe

ReplicateSti k

© 2012 Cisco and/or its affiliates. All rights reserved.BRKAPP-2020 27Cisco Public

Sticky

Page 28: Application Load Balancing

Basic ERP Web Load Balancingparameter map type http INSENSITIVE

Where’s the Cookie?

Default Header Parse Length 2K

parameter-map type http INSENSITIVEcase-insensitivepersistence-rebalanceset header-maxparse-len 8192

policy-map multi-match LOADBALANCEclass HTTP-CM

switch/SAP-Datacentre# show stats http+------------------------------------------++ HTTP statistics +

loadbalance vip inserviceloadbalance policy SAP-PMappl-parameter http advanced-options INSENSITIVE

+-------------- HTTP statistics -----------++------------------------------------------+LB parse result msgs sent : 151 , TCP data msgs sent : 152 Inspect parse result msgs : 0 , SSL data msgs sent : 495

sentTCP fin/rst msgs sent : 8 , Bounced fin/rst msgs sent: 8 SSL fin/rst msgs sent : 18 , Unproxy msgs sent : 14 D i t 118 P ti l d 1718 Drain msgs sent : 118 , Particles read : 1718 Reuse msgs sent : 0 , HTTP requests : 156 Reproxied requests : 0 , Headers removed : 0 Headers inserted : 254 , HTTP redirects : 0 HTTP chunks : 37 , Pipelined requests : 0 HTTP unproxy conns : 14 , Pipeline flushes : 0 Whitespace appends : 0 , Second pass parsing : 0 R t i l d 110 A l i 0

© 2012 Cisco and/or its affiliates. All rights reserved.BRKAPP-2020 28Cisco Public

Response entries recycled : 110 , Analysis errors : 0 Header insert errors : 0 , Max parselen errors : 3 Static parse errors : 0 , Resource errors : 0 Invalid path errors : 0 , Bad HTTP version errors : 0

Page 29: Application Load Balancing

URL Parsingclass map t pe http loadbala match an URL MATCHINGclass-map type http loadbala match-any URL-MATCHING

2 match http url .*class-map type http loadbala match-any URL-IMAGE

2 match http url /image/.*class-map match-all HTTP-CM

2 match virtual-address 172.16.1.73 tcp eq 80p qserverfarm IMAGE-SF

probe IMAGE-PROBErserver IMAGE1

inservicerserver IMAGE2

inservice

sticky http-cookie IMAGE-COOKIES IMAGECOOKIEcookie insert browser-expireserverfarm IMAGE-SF backup WEB-SF

sticky http-cookie WEB-COOKIES WEBCOOKIEcookie insert browser expireinservice

serverfarm WEB-SFprobe WEB-PROBErserver SERVER1

inservicerserver SERVER2

cookie insert browser-expireserverfarm WEB-SF

!policy-map type loadbala first-match HTTP-PM

class URL-IMAGEsticky-serverfarm IMAGE-COOKIE

inservice class URL-MATCHINGsticky-serverfarm WEB-COOKIE

policy-map multi-match L4class HTTP-CM

loadbalance vip inserviceloadbalance policy HTTP-PM

© 2012 Cisco and/or its affiliates. All rights reserved.BRKAPP-2020 29Cisco Public

loadbalance policy HTTP-PMappl-para http advanced-option INSENSITIVE

Page 30: Application Load Balancing

Server OffloadingServer Offloading

Page 31: Application Load Balancing

SSL Server Offload

To terminate or initiate HTTPS connections with ACE, the virtual context must have at least one SSL proxy service. An SSL proxy contains the certificate and key information needed to terminate HTTPS connections yfrom the client or initiate them to the servers

ANM (Application Network Manager) provides you with a guided setup to import an SSL key pair into the ACE Cli k T kp SS y p C Click on Task you

want to perform

© 2012 Cisco and/or its affiliates. All rights reserved.BRKAPP-2020 31Cisco Public

Page 32: Application Load Balancing

Sample SSL Key/Cert Pair

ACE shipped with a default RSA 1024 bit. Certificate is based on this key pair

The sample certificate and key are named cisco-sample-cert and cisco-sample-key

You can view the sample SSL key and certp y

© 2012 Cisco and/or its affiliates. All rights reserved.BRKAPP-2020 32Cisco Public

The sample SSL key and cert files can be exported using the ‘crypto export’ command

Page 33: Application Load Balancing

HTTP to HTTPs Redirect via the GUIMore Manual via Device manager than I want Think Templates more toMore Manual via Device manager than I want…Think Templates, more to come in the next section

Appropriate template

Do you needt di tto redirect HTTP to HTTPS?

What are you going to redirect them to?

© 2012 Cisco and/or its affiliates. All rights reserved.BRKAPP-2020 33Cisco Public

%H = Domain Name %P = Path

http://www.cisco.com/go/ace -> https://www.cisco.com/go/ace

Page 34: Application Load Balancing

Basic SSL Load BalancingRedirecting Clients to Use SSL

rserver redirect REDIRECTwebhost-redirection https://%h%p 302 inservice

%h %p

http://www.cisco.com/go/ace

inservice !serverfarm redirect REDIRECT-SFrserver REDIRECTinservice

!class-map match-all HTTP2 match virtual-address 172.16.1.73 tcp eq 80

!policy-map type loadbalance first-match REDIRECT-PM

https://www.cisco.com/go/ace

policy map type loadbalance first match REDIRECT PMclass class-defaultserverfarm REDIRECT-SF

!policy-map multi-match LOADBALANCE

l HTTP

© 2012 Cisco and/or its affiliates. All rights reserved.BRKAPP-2020 34Cisco Public

class HTTPloadbalance vip inserviceloadbalance policy REDIRECT-PM

Page 35: Application Load Balancing

SSL Server Offload Configuration

In order to configure SSL, you need to add the following to a L3 / L4 class map:

‘parameter map t pe ssl’– ‘parameter-map type ssl’

– ‘ssl-proxy service’– ‘policy-map’

parameter-map is used to define parameters for SSL connections (e.g., SSL version, cipher suites, close protocol behavior)

ssl-proxy is used to define the certificates and keys to be used ssl-proxy is used to define the certificates and keys to be used in SSL connections

© 2012 Cisco and/or its affiliates. All rights reserved.BRKAPP-2020 35Cisco Public

Page 36: Application Load Balancing

SSL Packet Flow with ACE

HTTP 200 Ok ResponseHTTPS GET index htmlSSL Handshake

SYN (tcp—443)SYN SYN/ACK ACK

HTTP—GET index.html

L3Flow

Client Server 1

HTTP—200 Ok Response index.html

HTTPS—GET index.htmlAccept-Encoding: gzip, deflate

HTTPS—Response

TCPFlow

ssl-proxy service CLIENT-SSLkey mykey.pemcert mycert.pem

!serverfarm WEB-PROTOCOLS

policy-map type loadbalance first-mat SSL-PMclass class-default

serverfarm WEB-PROTOCOLS!

rserver SERVER1 81inservice

rserver SERVER2 81inservice

probe HTTP-GET!l t h ll HTTPS CM

policy-map multi-match L4class HTTPS-CM

loadbalance vip inserviceloadbalance policy SSL-PMloadbalance vip icmp-replyssl-proxy server CLIENT-SSL

© 2012 Cisco and/or its affiliates. All rights reserved.BRKAPP-2020 36Cisco Public

class-map match-all HTTPS-CM2 match virtual-address 172.16.1.73 tcp eq 443

ssl-proxy server CLIENT-SSL

Page 37: Application Load Balancing

Basic SSL Offload Examplerserver host SERVER1 ip address 192.168.1.1 inservicerserver host SERVER2 ip address 192.168.1.2i i

serverfarm WEB-PROTOCOLSpro rserver SERVER1 81inservice

rserver SERVER2 81inservice

inservice!probe http HTTP-GETinterval 5port 81 passdetect interval 3request method get url /secure/index html

!sticky http-cookie WEBCOOKIE STICKYCOOKIEcookie insertserverfarm WEB-PROTOCOLS

!policy-map type load first-match SSL-PMcl ss cl ss d f ltrequest method get url /secure/index.html

expect status 200 200!parameter-map type ssl CLIENT_PARAMcipher RSA_WITH_RC4_128_MD5 priority 2cipher RSA_WITH_AES_128_CBC_SHA priority 3cipher RSA WITH AES 256 CBC SHA priority 5

class class-defaultsticky-serverfarm STICKYCOOKIE

policy-map multi-match L4clas HTTPS-CMloadbalance vip inserviceloadbalance policy SSL-PMloadbalance vip icmp-replycipher RSA_WITH_AES_256_CBC_SHA priority 5

session-cache timeout 600ssl-proxy service CLIENT-SSLkey mykey.pemcert mycert.pemssl advanced-options CLIENT_PARAM

!

loadbalance vip icmp-replyssl-proxy server CLIENT-SSL

© 2012 Cisco and/or its affiliates. All rights reserved.BRKAPP-2020 37Cisco Public

class-map match-all HTTPS-CM2 match virtual-address 172.16.1.73 tcp eq 443

!

Page 38: Application Load Balancing

Standardization with TemplatesStandardization with Templates

Page 39: Application Load Balancing

Why Templates

Standardization

Simplify

Best Practices

Customization

Portability of rules

© 2012 Cisco and/or its affiliates. All rights reserved.BRKAPP-2020 39Cisco Public

http://developer.cisco.com/web/anm/application-templates

Page 40: Application Load Balancing

Template Considerations

Templates do not know all local configurationTemplates do not know all local configuration

Configure Reals first with names then use Templates

Templates are for multiple devices so must be abstracted

© 2012 Cisco and/or its affiliates. All rights reserved.BRKAPP-2020 40Cisco Public

Examples DR, QA, Test, Production

Page 41: Application Load Balancing

Working with Templates

Modify ExistingModify Existing template

Templates do not know all local configurationTemplates do not know all local configuration

Configure Reals first with names then use Templates

Templates are for multiple devices so must be abstracted

Export Template

Import your own template

© 2012 Cisco and/or its affiliates. All rights reserved.BRKAPP-2020 41Cisco Public

Examples DR, QA, Test, Production

Page 42: Application Load Balancing

Microsoft Exchange Template Code

© 2012 Cisco and/or its affiliates. All rights reserved.BRKAPP-2020 42Cisco Public

Page 43: Application Load Balancing

Microsoft Exchange Template User View

Select template

© 2012 Cisco and/or its affiliates. All rights reserved.BRKAPP-2020 43Cisco Public

http://developer.cisco.com/web/anm/application-templates

Page 44: Application Load Balancing

ACE in a Virtualized EnvironmentACE in a Virtualized Environment

Page 45: Application Load Balancing

Enabling a New Server in a VM Environment ANM 5.x VCenter plug-in lets Sysadmins activate, suspend,ANM 5.x VCenter plug in lets Sysadmins activate, suspend,

configure and monitor rservers

Application serversESX ClusterACE Load Balancer

VM3Server Farm

VM2A

A

A

r2

1

AVM3

Ar3

ApplicationVIP

AA

Ar1

VM2

SysadminSLB Team

© 2012 Cisco and/or its affiliates. All rights reserved.BRKAPP-2020 45Cisco Public

Page 46: Application Load Balancing

ANM 5.2 Plug-in for VMware VCenter

activate,dsuspend,

configure and monitor

© 2012 Cisco and/or its affiliates. All rights reserved.BRKAPP-2020 46Cisco Public

rservers

Page 47: Application Load Balancing

Deploying VMware View 4 6 withDeploying VMware View 4.6 with Cisco ACE

Page 48: Application Load Balancing

Why Add a Cisco ACE?

Scalability: Larger deployments require multiple Security Servers or multiple Connection Servers

Ci ACE b l li t ti il bl ti– Cisco ACE balances client connections across available connection servers

– VMware rates a single View Connection Server at 1,500 concurrent non-tunneled connections, and 30% less if tunneled

Fault Tolerance– Cisco ACE detects the failure of View components, and directs traffic around the

failure

Performance– Reduce CPU usage on Connection Servers by offloading HTTPS cryptography

© 2012 Cisco and/or its affiliates. All rights reserved.BRKAPP-2020 48Cisco Public

Page 49: Application Load Balancing

VMware View Deployment with Cisco ACEGeneral Types of View Deployments

LAN Direct Deployment

General Types of View Deployments

– Display protocol does not pass through the View Connection Server

LAN Tunneled DeploymentDisplay protocol Traffic is encapsulated in HTTPS and passes through–Display protocol Traffic is encapsulated in HTTPS and passes through the View Connection Server

Secure (DMZ) Tunneled Deployment–Display protocol Traffic is encapsulated in HTTPS and passes through the View Security Server

–View Security Server does not participate in Active Directory, and can be

© 2012 Cisco and/or its affiliates. All rights reserved.BRKAPP-2020 49Cisco Public

safely placed in DMZ

Page 50: Application Load Balancing

VMware View Deployment with Cisco ACELAN Tunneled Deployment w/ACE

More Secure – All traffic encapsulated in SSL. Virtual Desktop IP Addresses do not need to be

LAN Tunneled Deployment w/ACE

View Client1. Authentication

2a. RDPIP Addresses do not need to be reachable by clients

Offload Benefit – SSL cryptography ffl d d b Ci ACE d i

2b. RDP Decrypted

2c. RDP Brokered

offloaded by Cisco ACE, reducing CPU utilization on Connection Servers

Cisco ACE

Recommended for LAN deployments on secure networks. Connection Servers participate in Active Directory ESX Cluster

Connection

© 2012 Cisco and/or its affiliates. All rights reserved.BRKAPP-2020 50Cisco Public

and should not be exposed to the Internet

Containing Virtual Desktops

Connection Servers

Page 51: Application Load Balancing

VMware View Deployment with Cisco ACESecure Tunneled Deployment (DMZ)Secure Tunneled Deployment (DMZ)

* Client RDP connection is tunneled over HTTPS to

View Client

1. HTTP(S) – Authentication & Desktop Selection 13 tunneled over HTTPS to

Security Serverp

2. AJP/JMS Authentication

SecurityServer

3. RDP Over HTTPS

13

Server4. RDP Un-Tunneled By Security Server

24

ESX Cl tC ti

© 2012 Cisco and/or its affiliates. All rights reserved.BRKAPP-2020 51Cisco Public

ESX Cluster Containing Virtual

Desktops

Active Directory Server

vCenter Connection Server

Page 52: Application Load Balancing

VMware View Deployment with Cisco ACESecure Tunneled Deployment (DMZ) w/ACE

Most Secure – All traffic encapsulated in SSL. No public exposure of Connection Servers

Secure Tunneled Deployment (DMZ) w/ACE

View Client1a. Authentication

1b. AuthenticationDecrypted

Requires careful planning, since Security Servers depend on their paired Connection Server

ACE2a. RDP

Decrypted1c. Authentication

Proxied

ACE2b. RDP

Decrypted2c. RDP Brokered

SecurityServers

© 2012 Cisco and/or its affiliates. All rights reserved.BRKAPP-2020 52Cisco Public

ESX Cluster Containing Virtual

Desktops

Connection Servers

Page 53: Application Load Balancing

VMware View Deployment with Cisco ACEConfiguring Secure Tunneled Deployment

Connection Servers No specific configuration required

Configuring Secure Tunneled Deployment

Security Servers Create locked.properties file on each security server as shown in earlier slide Restart VMware Security Server windows service after placing locked.properties fileCisco ACECisco ACE Configure VIP listening on TCP/443

– Configure each security server as an rserver using port 80 (and add to serverfarm)

– Configure an HTTP probe on serverfarm, to check health of connection servers

– Configure leastconns predictor on VIP, with slowstart

– Configure SSL proxy on VIP

– Configure Source IP sticky on VIP (default timeout of 24 hours is ideal)

– Configure redirect to HTTPS for HTTP requests

© 2012 Cisco and/or its affiliates. All rights reserved.BRKAPP-2020 53Cisco Public 53

Page 54: Application Load Balancing

VMware View Deployment with Cisco ACEConfiguring View Step 1 – SSL Settingg g p g

Whenever the connection servers are b hi d Ci ACE hi h i t i tibehind a Cisco ACE which is terminating SSL, the “Require SSL” option MUST be un-checked

The probes configured on the Cisco ACE MUST match this setting. If the box is checked, use HTTPS probes, if the box i h k d HTTP bis un-checked, use HTTP probes

© 2012 Cisco and/or its affiliates. All rights reserved.BRKAPP-2020 54Cisco Public

Page 55: Application Load Balancing

VMware View Deployment with Cisco ACEConfiguring View Step 2 – Direct Connect Settingg g p g

Connection server settings are not global, rather per-server

The external URL MUST be set to an FQDN whichThe external URL MUST be set to an FQDN which is resolvable by clients

When connection servers sit behind a Cisco ACE, the external URL should be set to an FQDN which

l t th VIP ddresolves to the VIP address

Pay attention to protocol and port! Make sure it matches what is configured on the Cisco ACE VIP

Direct connection should only be used in LAN environments where the virtual desktops and clients have routes to each other

© 2012 Cisco and/or its affiliates. All rights reserved.BRKAPP-2020 55Cisco Public

Page 56: Application Load Balancing

VMware View Deployment with Cisco ACEHighlights - LAN Tunneled Deployment Part 1g g p y

probe http VIEW-ACE-PROBEinterval 5passdetect interval 5

t th d t l /f i irequest method get url /favicon.icoexpect status 200 200open 1

rserver redirect VIEW_REDIRECTwebhost-redirection https://%h%p 302inservice

serverfarm host VIEW-SFpredictor leastconns slowstart 300probe VIEW-ACE-PROBErserver CONNECTION SERV1 80rserver CONNECTION_SERV1 80

inservicerserver CONNECTION_SERV2 80

inservicesticky ip-netmask 255.255.255.255 address source VIEW-STICKY

© 2012 Cisco and/or its affiliates. All rights reserved.BRKAPP-2020 56Cisco Public

replicate stickyserverfarm VIEW-SF

Page 57: Application Load Balancing

VMware View Deployment with Cisco ACEHighlights - LAN Tunneled Deployment Part 2g g p y

class-map match-any VIEW-REDIRECT-CM2 match virtual-address 30.30.30.10 tcp eq www

class-map match-any VIEW-HTTPS-CM2 match virtual-address 30.30.30.10 tcp eq httpsli t l db l htt fi t t h VIEW HTTPS PMpolicy-map type loadbalance http first-match VIEW-HTTPS-PMclass class-default

sticky-serverfarm VIEW-STICKYpolicy-map type loadbalance http first-match VIEW-REDIRECT

class class-defaultserverfarm VIEW-REDIRECT

policy-map multi-match VIEW-HTTPSclass VIEW-HTTPS-CM

loadbalance vip inserviceloadbalance vip inserviceloadbalance policy VIEW-HTTPS-PMssl-proxy server VIEW-SSL

class VIEW-REDIRECT-CMloadbalance vip inservice

© 2012 Cisco and/or its affiliates. All rights reserved.BRKAPP-2020 57Cisco Public

loadbalance policy VIEW-REDIRECT

Page 58: Application Load Balancing

Load Balancing Microsoft ExchangeLoad Balancing Microsoft ExchangeOutlook Web Access 2010 Example

Page 59: Application Load Balancing

Application Solutions Validated with ACE

Comprehensive set of validated ACE solutions

This design guide presents an end-to-end solution architecture that demonstrates how enterprises can virtualize their Exchange 2010 environment on Cisco Unifiedenvironment on Cisco Unified Computing System

http://www.cisco.com/en/US/docs/solutions/Enterprise/Data_Center/App_Networking/hy

h h l

© 2012 Cisco and/or its affiliates. All rights reserved.BRKAPP-2020 59Cisco Public

pervexchange.html

Page 60: Application Load Balancing

Exchange 2010ACE Load Balancing OWA

Exchange 2010: –All client access goes through

Branch-Router w NM-WAE

XP Client Load GenInternetMobile User

WAAS

Remote BranchACE Load Balancing OWA

All client access goes through Client Access Servers, likely more than 8 servers needed to support load DC1-Core1 DC1-Core2

WAN-ASRData

Center WAE Appliance

Network Architecture– Session persistence for user sessions

involving multiple flowsS IP b d ti ki

Agg-4Agg-3SC1

ACE1 SC2 ACE2

• Source-IP-based stickiness• HTTP-based cookie persistence• (ACE-inserted, server)

SJ-DCAL-N5K-1

UCS-A

SJ-DCAL-N5K-2

UCS-B

SAN

© 2012 Cisco and/or its affiliates. All rights reserved.BRKAPP-2020 60Cisco Public

Page 61: Application Load Balancing

Understanding Exchange Architecture

Exchange Components

Exchange 2007

Exchange ComponentsEntourage

Exchange 2010

Exchange ComponentsOWAOWA

SyncSyncUMUM

Transport Agents

Transport Agents

Mailbox Agents

Mailbox Agents

WSWSExchange Components

OWAOWA

SyncSyncUMUM

Transport Agents

Transport Agents

Mailbox Agents

Mailbox Agents

WSWS

Outlook / MAPI clients

Outlook / MAPI clients

Mid

dle

Tier g

Exchange Biz Logic

Entourage

Outlook / MAPI clients

Outlook / MAPI clients

Mid

dle

Tier

MAPI, RFR & NSPI RPC

Exchange Core Biz Logic

Exchange Biz Logic

Mai

lbox MAPI RPCMAPI RPC

StoreDAVDAV

Mai

lbox MAPI RPCMAPI RPC

StoreStore

© 2012 Cisco and/or its affiliates. All rights reserved.BRKAPP-2020 61Cisco Public

Page 62: Application Load Balancing

Exchange 2010 Middle Tier New services in Exchange Server 2010 that

reside on CAS– Restrict all Outlook data access to a single

common path by migrating Mailbox and Directory

Outlook Clients

p y g g yendpoints to CAS

What it handles:– Outlook data connections go to RPC Client Exchange CAS Array

Access Service on CAS instead of connecting to Mailbox servers

– Address Book Service on CAS replaces DSProxy interface, handles all Outlook Directory

ti

g y

connections

– Public folder connections connect directly to the Mailbox server, but through RPC Client Access Service running on backend

MB GC

© 2012 Cisco and/or its affiliates. All rights reserved.BRKAPP-2020 62Cisco Public

Page 63: Application Load Balancing

Exchange 2010ACE Load Balancing Outlook Anywhere

Microsoft Active Directory

Outlook Anywhere

ACE Load Balancing Outlook Anywhere

Access SwitchACE

Outlook Anywhere

Internet

ACE can provide the following benefits:

Additional Data Centre Security using ACL

ACEMicrosoft Exchange CAS Servers

Load balancing using the HTTP header-value "MSRPC“

Session persistence based on SOURCE-IP or http-header Authorization

Mailbox Server

© 2012 Cisco and/or its affiliates. All rights reserved.BRKAPP-2020 63Cisco Public

SSL termination

Health monitoring check Client Access Server status

Page 64: Application Load Balancing

RPC over HTTPAccess Exchange from an Outlook Client Access Exchange from an Outlook Client If you use RPC over HTTP, you can use Outlook to access Exchange

Server over the Internet

The HTTP session terminates at a server running Internet Information Services (IIS) that has the RPC over HTTP Proxy networking component installed

RPC over HTTP turns a Web request into an RPC request. Outlook sends the RPC request inside an HTTP tunnel. The actual RPC request does not change between the Outlook client and the Exchange server

© 2012 Cisco and/or its affiliates. All rights reserved.BRKAPP-2020 64Cisco Public

Page 65: Application Load Balancing

Configuring the CAS Server for SSL-Offload

© 2012 Cisco and/or its affiliates. All rights reserved.BRKAPP-2020 65Cisco Public

To configure support for SSL-offloading on a CAS role, refer tohttp://social.technet.microsoft.com/wiki/contents/articles/how-to-configure-ssl-offloading-in-exchange-2010.aspx

Page 66: Application Load Balancing

Outlook Anywhere Over HTTP If ACE can use the User-Agent: MSRPC HTTP header to detect RPC over

HTTP

This enables you to use the same VIP for OWA and Outlook Anywhere,This enables you to use the same VIP for OWA and Outlook Anywhere, therefore saving address space

ACE can use the Basic Authorization header for session persistence. This eliminates you having to use SOURCE-IP stickinessy g

RPC_IN_DATA /rpc/rpcproxy.dll?exch-ace-tme.com:6004 HTTP/1.1Accept: application/rpcUser-Agent: MSRPC When using NTLM the default authorization type hash valuegHost: exch-ace-tme.comContent-Length: 1073741824Connection: Keep-AliveCache-Control: no-cache

When using NTLM, the default authorization type, hash valuewill change. Therefore you cannot use the Authorization header for session persistence. You will need to use source-ip stickiness

© 2012 Cisco and/or its affiliates. All rights reserved.BRKAPP-2020 66Cisco Public

Pragma: no-cacheAuthorization: Basic Q0xJRU5UXG1kaXR0bWVyOmZvbw==

Page 67: Application Load Balancing

Microsoft Exchange Template User View

Select template

© 2012 Cisco and/or its affiliates. All rights reserved.BRKAPP-2020 67Cisco Public

http://developer.cisco.com/web/anm/application-templates

Page 68: Application Load Balancing

Microsoft Exchange Template User View

Base Name in Config

VIP

WWW.CISCO.COMOR REGEX %H

Do you need end to end SSL?

Will be called by name if RSERVERalready defined

© 2012 Cisco and/or its affiliates. All rights reserved.BRKAPP-2020 68Cisco Public

Page 69: Application Load Balancing

Microsoft Exchange Template User View cont.

Which ACE

SSL Certs

Outlook AnywhereMore info to follow

© 2012 Cisco and/or its affiliates. All rights reserved.BRKAPP-2020 69Cisco Public

Page 70: Application Load Balancing

Microsoft Exchange Template User View cont.

Source Nat

Deploy or Stage

Deployed and Named

Deploy Template

© 2012 Cisco and/or its affiliates. All rights reserved.BRKAPP-2020 70Cisco Public

Page 71: Application Load Balancing

GUI Versus CLI Comparisondc1-ace1/Admin# show run filter vips

G ti fi ti serverfarm OWAGenerating configuration....

probe https OWA-probe-1interval 60passdetect count 2ssl version allrequest method get url /exchweb/bin/auth/owalogon.aspexpect status 400 404open 10

serverfarm OWA

ssl-proxy service OWA-terminationkey OWA-sample-key.pemcert OWA-sample-cert.pem

class-map type http loadbalance match-any OWA-conddescription RPC2 match http header User-Agent header-value "MSRPC"

class-map match-all OWA httprserver host CAS1

ip address 192.168.200.15inservice

rserver host CAS2ip address 192.168.200.16inservice

rserver redirect OWA_httpwebhost-redirection https://%H/owa 302inservice

class map match all OWA_http2 match virtual-address 10.87.121.119 tcp eq www

class-map match-all OWA_https2 match virtual-address 10.87.121.119 tcp eq https

class-map match-all OWA_other2 match virtual-address 10.87.121.119 any

policy-map type loadbalance first-match OWA_http-l7slbclass class-default

serverfarm OWA_redir

serverfarm host OWAfailaction purgepredictor leastconnsprobe OWA-probe-1rserver CAS1 80

inservicerserver CAS2 80

inservice

policy-map type loadbalance first-match OWA_https-l7slbclass OWA-cond

sticky-serverfarm OWA-OutlookRPCclass class-default

sticky-serverfarm OWA-OutlookSessionpolicy-map type loadbalance first-match OWA_other-l7slb

class class-defaultserverfarm OWA-others

policy-map multi-match vipsl hserverfarm host OWA-others

failaction purgepredictor leastconnsrserver CAS1

inservicerserver CAS2

inserviceserverfarm redirect OWA_redir

failaction purge OWA htt

class OWA_httploadbalance vip inserviceloadbalance policy OWA_http-l7slb

class OWA_httpsloadbalance vip inserviceloadbalance policy OWA_https-l7slbssl-proxy server OWA-termination

class OWA_otherloadbalance vip inserviceloadbalance policy OWA other l7slb

© 2012 Cisco and/or its affiliates. All rights reserved.BRKAPP-2020 71Cisco Public

rserver OWA_httpinservice

sticky http-cookie sessionid OWA-OutlookSessionreplicate stickyserverfarm OWA

sticky http-header Authorization OWA-OutlookRPCreplicate sticky

loadbalance policy OWA_other-l7slb

Page 72: Application Load Balancing

OWA ACE Base Configuration rserver host CAS1ip address 192 168 1 11ip address 192.168.1.11inservice

rserver host CAS2ip address 192.168.1.12inservice

access-list everyone line 10 extended permit ip any anyaccess list everyone line 10 extended permit ip any any!class-map type management match-any REMOTE-ACCESSdescription REMOTE-ACCESS-traffic-match2 match protocol ssh any3 match protocol icmp any4 match protocol https any

!policy-map type management first-match REMOTE-MGNclass REMOTE-ACCESSpermit

!interface vlan 2description CLIENT_VLANip address 172.16.20.254 255.255.255.0access-group input everyoneservice-policy input REMOTE-MGN

interface vlan 3description SERVER_VLANi dd 10 1 1 254 255 255 255 0

© 2012 Cisco and/or its affiliates. All rights reserved.BRKAPP-2020 72Cisco Public

ip address 10.1.1.254 255.255.255.0access-group input everyoneservice-policy input REMOTE-MGN

Page 73: Application Load Balancing

OWA Configuration with ACE crypto csr-params SSL_PARAMScountry USstate CAorganization-name SJCorganization-unit DC

j

class-map match-all OWA-SSL-CM2 match virtual-addr 172.16.11.190 tcp eq

443!sticky http-cookie Cookie OWA-STICKY

ki i t b icommon-name owa.sjc.comserial-number 1email [email protected]

ssl-proxy service OWA-SSLkey owa.pemcert owa pem

cookie insert browser-expirereplicate stickyserverfarm CAS

!policy-map type loadbalan first-ma OWA-SSL-PMclass class-defaultsticky serverfarm OWA STICKYcert owa.pem

probe http HTTP-GETinterval 10passdetect interval 10request meth get url /iisstart.htmexpect status 200 202

sticky-serverfarm OWA-STICKYpolicy-map multi-match LOADBALANCEclass OWA-SSL-CMloadbalance vip inserviceloadbalance policy OWA-SSL-PMloadbalance vip icmp-reply activessl-proxy server OWA-SSLp

!probe icmp PINGinterval 3!

serverfarm CASprobe HTTP-GET

b

ssl proxy server OWA SSL

!interface vlan 2description CLIENT_VLANip address 172.16.20.254 255.255.255.0access-group input everyone

© 2012 Cisco and/or its affiliates. All rights reserved.BRKAPP-2020 73Cisco Public

probe PINGrserver CAS1 80inservice

rserver CAS2 80inservice

g p p yservice-policy input REMOTE-MGNservice-policy input LOADBALANCE

Page 74: Application Load Balancing

Initial HTTP to HTTPS Redirect

ACEOutlook Web

Access (OWA)

Microsoft Exchange CAS

Servers

Client VLAN 172.16.20.0/24 Server VLAN 192.168.1.0/24

rserver REDIRECT REDIRECTSSLwebhost-REDIRECTion https://%H/owa/ 302inservice

serverfarm REDIRECT REDIRECTrserver REDIRECTSSL

Access (OWA) Servers

GET /owa HTTP/1.1Accept: image/gif, image/x-xbitmap,Accept Language en us rserver REDIRECTSSL

inservice! class-map match-any VIP-HTTP-OWA2 match virtual-address 172.16.11.190 tcp eq www

!policy-map type loadbalance first-match REDIRECTSSL

Accept-Language: en-usUA-CPU: x86Accept-Encoding: gzip, deflateUser-Agent: Mozilla/4.0 (compatible; NT 5.2; SV1; .NET CLR 1.1.4322)Host: 172.16.11.190Connection: Keep-Alive p y p yp

class class-defaultserverfarm REDIRECT

class VIP-HTTP-OWAloadbalance vip inserviceloadbalance policy REDIRECTSSLloadbalance vip icmp-reply active

HTTP/1.1 302 FoundConnection: close

© 2012 Cisco and/or its affiliates. All rights reserved.BRKAPP-2020 74Cisco Public

Location: https://172.16.11.190/owa/

ACE redirects clients initial request from http-to-https

Page 75: Application Load Balancing

Combined Outlook Anywhere and OWA ACE Configuration

class-map match-all OWA-OUTLOOKANYWHERE-SSL2 match virtual-addr 172.16.11.190 tcp eq 443

!sticky http-cookie Cookie OWA-STICKY

cookie insert browser expire

Configuration

cookie insert browser-expirereplicate stickyserverfarm CAS-80

sticky http-header Authorization CAS-RPC-HTTPserverfarm CAS-80

!policy-map type loadbalan first-ma OWA-OUTLOOKANYWHEREmatch OUTLOOK_ANYWHERE http header User-Agent header-value "MSRPC"

sticky-serverfarm CAS-RPC-HTTPclass class-default

sticky-serverfarm OWA-STICKY

© 2012 Cisco and/or its affiliates. All rights reserved.BRKAPP-2020 75Cisco Public

Page 76: Application Load Balancing

Optional Information for OWA Use Microsoft Cookie instead of ACE cookie for HTTP session

persistence across the CAS servers

sticky http cookie sessionid exchange sticky sessionid grp

Additional health monitoring probe that you could add to check the il bilit f E h

sticky http-cookie sessionid exchange-sticky-sessionid-grptimeout 20serverfarm CAS

availability of Exchangeprobe http http-probe

interval 60passdetect interval 60passdetect count 2passdetect count 2request method get url /exchweb/bin/auth/owalogon.aspexpect status 401 401

probe https https-probeinterval 60

© 2012 Cisco and/or its affiliates. All rights reserved.BRKAPP-2020 76Cisco Public

passdetect interval 60passdetect count 2request method get url /owa/auth/login.aspxexpect status 401 401

Page 77: Application Load Balancing

Optional Information for OWA

Using HTTP Compression for OWA to compress the following objects:– JavaScript

GIF fil– GIF files

– CSSparameter-map type http CompressObjectspersistence-rebalancecompress mimetype "text/css"compress mimetype "text/css"compress mimetype "images/gif"compress mimetype "application/x-javascript“

policy-map type loadbalance first-match OWA-OutlookAnywherematch OUTLOOK_ANYWHERE http header User-Agent header-value "MSRPC"sticky-serverfarm CAS-RPC-HTTPsticky serverfarm CAS RPC HTTP

class class-defaultcompress default-method gzipsticky-serverfarm OWA-STICKY

policy-map multi-match Exchange2007class VIP-HTTPS-OWA-OutlookAnywhere

Enable compression

© 2012 Cisco and/or its affiliates. All rights reserved.BRKAPP-2020 77Cisco Public

yloadbalance vip inserviceloadbalance policy OWA-OutlookAnywhereappl-parameter http advanced-options CompressObjectsssl-proxy server exch-ace-tme.com

Page 78: Application Load Balancing

Optional Information for OWA

Use the show service-policy detail to view compression ratioACE# show service-policy Exchange2007 detail class: VIP-HTTPS-OWA-OutlookAnywhere

ssl-proxy server: exch-ace-tme.comVIP Add P t l P tVIP Address: Protocol: Port:10.10.10.100 tcp eq 443 loadbalance:

L7 loadbalance policy: OWA-OutlookAnywhere…

Persistence Rebalance: ENABLEDcurr conns : 0 , hit count : 26 dropped conns : 0

…L7 Loadbalance policy : OWA-OutlookAnywhere

class/match OUTLOOK ANYWHEREclass/match : OUTLOOK_ANYWHERELB action :

sticky group: CAS-RPC-HTTPprimary serverfarm: CAS-80

state:UP…

compression : offclass/match : class-default

LB action : sticky group: OWA-STICKY

primary serverfarm: CAS 80primary serverfarm: CAS-80state:UP

backup serverfarm : -

hit count : 397 dropped conns : 0

compression : oncompression:

bytes_in : 1600177 b tes o t 576628

© 2012 Cisco and/or its affiliates. All rights reserved.BRKAPP-2020 78Cisco Public

bytes_out : 576628

Compression ratio : 63.96%Parameter-map(s):

CompressObjects

Shows compression ratio

Page 79: Application Load Balancing

Microsoft SharePoint 2010 with ACEMicrosoft SharePoint 2010 with ACE

Page 80: Application Load Balancing

What is Microsoft SharePoint Server 2010?

Microsoft SharePoint Server 2010 is a portal-based collaboration platform for creating, managing and sharing documents and Web servicesdocuments and Web services

SharePoint 2010 enables users to create "SharePoint Portals" that include shared workspaces, applications,Portals that include shared workspaces, applications, blogs, wikis and other documents accessible through a Web browser

© 2012 Cisco and/or its affiliates. All rights reserved.BRKAPP-2020 80Cisco Public

Page 81: Application Load Balancing

Logical Architecture A SharePoint 2010 Serverfarm is a 3 Tier

Architecture, which consists of:

Web Front End Server(s)

Browser Client App

Application Server(s)

Database Server(s)

The Web Server role provides Web content to li t

SharePointWeb Front End

clients.

The Application Server role provides SharePoint 2010 services such as search queries, Office Web Applications and crawling and indexing content

SharePointApplication Server

The Database Server stores Content and Configuration information.

Config Content Custom

© 2012 Cisco and/or its affiliates. All rights reserved.BRKAPP-2020 81Cisco Public

DB DB DB

Page 82: Application Load Balancing

ACE Load Balancing SharePoint 2010 Web Front End ServersWeb Front End Servers

DB

Tier

SharePoint 2010

SP 2010

WFE Servers

SP 2010

App. Servers

ACEUsers

ACE can provide the following benefits:

Additional Data Centre Security using ACL

Layer 4/7 load balancing between Clients and SharePoint WFE servers with session persistence based upon HTTP Cookie insertion

SSL termination

© 2012 Cisco and/or its affiliates. All rights reserved.BRKAPP-2020 82Cisco Public

SSL termination

Health monitoring (Including In-Band) for guaranteed service availability

Page 83: Application Load Balancing

ACE Load Balancing SharePoint 2010 Web Front End ServersWeb Front End Servers

Microsoft

SharePoint 2010HTTPS HTTP

SSL

TerminationCookie Insertion

for

ACESharePoint 2010

User

SharePoint 2010

WFE Servers

In-band Health Ch ki

for

Session Persistence

ACE Load Balancing Services

Checking

&

OOB Probes

SSL Termination for Portal Traffic

L4 Load Balancing for Application Traffic

& OO S C

© 2012 Cisco and/or its affiliates. All rights reserved.BRKAPP-2020 83Cisco Public

In-Band & OOB WFE Server Health Checking

Session Persistence maintained with HTTP Cookie Insertion

Page 84: Application Load Balancing

SharePoint 2010 Portal ACE Configurationprobe http msSharePoint01-probe-1p p pinterval 5passdetect interval 30expect status 401 401open 15

rserver host WFE01

OOB Health Checking

for Failed WFE Servers

ip address 192.168.11.1inservice

rserver host WFE02ip address 192.168.11.2inservice

f h h i 01 80

In-Band Health Checkingserverfarm host msSharePoint01-80failaction purgepredictor leastconnsprobe msSharePoint01-probe-1inband-health check remove 100 reset 500 resume-service 300rserver WFE01 80inservice

for Failed HTTP Connections

inservicerserver WFE02 80inservice

parameter-map type http msSharePoint01-http_paramspersistence-rebalanceset content-maxparse-length 8192

Required for Cookie Insertion on HTTP 1.1 Persistent Connections

© 2012 Cisco and/or its affiliates. All rights reserved.BRKAPP-2020 84Cisco Public

set content-maxparse-length 8192

Page 85: Application Load Balancing

SharePoint 2010 Portal ACE Configurationsticky http-cookie SPLB-Port msSharePoint01-WFE-Portal

cookie insert browser-expirereplicate stickyserverfarm msSharePoint01-80

sticky http-cookie SPLB-WFE msSharePoint01-WFE-Appssticky http cookie SPLB WFE msSharePoint01 WFE Appscookie insert browser-expirereplicate stickyserverfarm msSharePoint01

policy-map type loadbalance first-match msSharePoint01 https-l7slbp y p yp _ pclass class-default

compress default-method deflatesticky-serverfarm msSharePoint01-WFE-Portal

policy-map type loadbalance first-match msSharePoint01_other-l7slbclass class-default

compress default-method deflatesticky-serverfarm msSharePoint01-WFE-Apps

© 2012 Cisco and/or its affiliates. All rights reserved.BRKAPP-2020 85Cisco Public

Page 86: Application Load Balancing

Simplifying All of the Above with ANM Application TemplatesApplication Templates

Only Required to Provide:

VIP IP

WFE Server IP Addresses

SSL Cert/Key Location

NAT R i d?

© 2012 Cisco and/or its affiliates. All rights reserved.BRKAPP-2020 86Cisco Public

NAT Required?

ANM Does the rest!

Page 87: Application Load Balancing

Simplifying All of the Above with ANM Templates

© 2012 Cisco and/or its affiliates. All rights reserved.BRKAPP-2020 87Cisco Public

Page 88: Application Load Balancing

ACE Configuration Created by ANM Template

access-list vip-acl-1 remark Created to permit IP traffic to VIP.access-list vip-acl-1 line 10 extended permit ip any host 192.168.10.100

probe http msSharePoint01-probe-1interval 5passdetect interval 30expect status 401 401open 15

probe icmp msSharePoint01-probe-2interval 2passdetect interval 60

rserver host 192.168.11.1ip address 192.168.11.1inservice

h 192 168 11 2rserver host 192.168.11.2ip address 192.168.11.2inservice

rserver host 192.168.11.3ip address 192.168.11.3inservice

© 2012 Cisco and/or its affiliates. All rights reserved.BRKAPP-2020 88Cisco Public

Page 89: Application Load Balancing

ACE Configuration Created by ANM Template

serverfarm host msSharePoint01failaction purgepredictor leastconnsprobe msSharePoint01-probe-2inband-health check remove 100 reset 500 resume-service 300rserver 192.168.11.1

inservicerserver 192.168.11.2

inservicerserver 192.168.11.3

i iinserviceserverfarm host msSharePoint01-80

failaction purgepredictor leastconnsprobe msSharePoint01-probe-1inband-health check remove 100 reset 500 resume-service 300rserver 192 168 11 1 80rserver 192.168.11.1 80

inservicerserver 192.168.11.2 80

inservicerserver 192.168.11.3 80

inservice

© 2012 Cisco and/or its affiliates. All rights reserved.BRKAPP-2020 89Cisco Public

parameter-map type http msSharePoint01-http_paramspersistence-rebalanceset content-maxparse-length 8192

Page 90: Application Load Balancing

ACE Configuration Created by ANM Templatesticky http-cookie SPLB-Port msSharePoint01-WFE-Portal

cookie insert browser-expirereplicate stickyserverfarm msSharePoint01-80

sticky http-cookie SPLB-WFE msSharePoint01-WFE-Appscookie insert browser-expire

lic t stickreplicate stickyserverfarm msSharePoint01

ssl-proxy service msSharePoint01-terminationkey msSharePoint01-msExch02key.pemcert msSharePoint01-msExch02cert.pem

class-map match-all msSharePoint01_https2 match virtual-address 192.168.10.100 tcp eq https

class-map match-all msSharePoint01_other2 match virtual-address 192.168.10.100 any

policy-map type loadbalance first-match msSharePoint01_https-l7slbp y p yp pclass class-default

compress default-method deflatesticky-serverfarm msSharePoint01-WFE-Portal

policy-map type loadbalance first-match msSharePoint01_other-l7slbclass class-default

compress default-method deflate

© 2012 Cisco and/or its affiliates. All rights reserved.BRKAPP-2020 90Cisco Public

sticky-serverfarm msSharePoint01-WFE-Apps

Page 91: Application Load Balancing

ACE Configuration Created by ANM Template

policy-map multi-match int10class msSharePoint01 httpsclass msSharePoint01_httpsloadbalance vip inserviceloadbalance policy msSharePoint01_https-l7slbappl-parameter http advanced-options msSharePoint01-http_paramsssl-proxy server msSharePoint01-terminationp y

class msSharePoint01_otherloadbalance vip inserviceloadbalance policy msSharePoint01_other-l7slbloadbalance vip icmp-reply active

interface vlan 10access-group input vip-acl-1service-policy input int10

© 2012 Cisco and/or its affiliates. All rights reserved.BRKAPP-2020 91Cisco Public

Page 92: Application Load Balancing

IPv6 OptionsIPv6 Options

Page 93: Application Load Balancing

IPv6 Load Balancing Deployment Modes

Dual StackIPv6 Client Network

IPv6 Real Servers

IPv6 Virtual Servers

Supports End-to-End IPv4 and IPv6 Virtual servers and Real serversIPv4 Client Network

IPv4 Virtual Servers

IPv4 Real Servers

IPv6-to-IPv4 Translation

True Dual Stack Support

IPv6 Client Network

IP 4 R l

IPv6 Virtual Servers Supports Translation from IPv6

Virtual Server to IPv4 Real servers and vice versa

© 2012 Cisco and/or its affiliates. All rights reserved.BRKAPP-2020 93Cisco Public

IPv4 Real ServersSLB64 and SLB46 Support

For IPv6 to IPv4 translation or IPv4 to IPv6, Source NAT is required

Page 94: Application Load Balancing

ACE Release A5(1.0) Provides IPv6 Support Dual Stack

– IPv4-to-IPv4 and IPv6-to-IPv6– HTTP and DNS inspection for native IPv6-IPv6 traffic

T l ti Translation• SLB64, SLB46 for all the Layer4 load balancing, which do not need payload modifications or pinholing

• NAT64, NAT46 for all TCP, UDP protocols, which do not need payload modifications or pinholing

• SLB64 and SLB46 support L7 loadbalancing for HTTP and SSL protocols.

No DNS64 or DNS46 support on ACE• No DNS64 or DNS46 support on ACE

Mixed v4 &v6 rserver support Duplicate Address Discovery Neighbor Discoveryg y ICMPv6 Application Awareness

– HTTP, HTTPS and DNS

OCSP S t f A th ti ti SSL Offl d d S i

© 2012 Cisco and/or its affiliates. All rights reserved.BRKAPP-2020 94Cisco Public

OCSP Support for Authenticating SSL Offloaded Sessions– IPv6 and IPv4 support

Page 95: Application Load Balancing

Recommended Reading

© 2012 Cisco and/or its affiliates. All rights reserved.BRKAPP-2020 95Cisco Public

Page 96: Application Load Balancing

Complete Your Online Session EvaluationSession Evaluation Give us your feedback and you

could win fabulous prizes.Winners announced daily.

Receive 20 Passport points for each session evaluation you complete.

Complete your session evaluation online now (open a browser through our wireless network to access our Don’t forget to activate your portal) or visit one of the Internet stations throughout the Convention Center.

Cisco Live Virtual account for access to all session material, communities, andon-demand and live activities throughout the year. Activate your account at the

© 2012 Cisco and/or its affiliates. All rights reserved.BRKAPP-2020 96Cisco Public

Cisco booth in the World of Solutions or visit www.ciscolive.com.

96

Page 97: Application Load Balancing

Final Thoughts

Get hands-on experience with the Walk-in Labs located in World of Solutions, booth 1042 Come see demos of many key solutions and products in the main Cisco

booth 2924 Visit www ciscoLive365 com after the event for updated PDFs on-Visit www.ciscoLive365.com after the event for updated PDFs, on

demand session videos, networking, and more! Follow Cisco Live! using social media:

F b k htt // f b k / i li– Facebook: https://www.facebook.com/ciscoliveus– Twitter: https://twitter.com/#!/CiscoLive– LinkedIn Group: http://linkd.in/CiscoLI

© 2012 Cisco and/or its affiliates. All rights reserved.BRKAPP-2020 97Cisco Public 97

Page 98: Application Load Balancing