Cisco Server Load Balancing
The Cisco Server Load Balancing pattern builds the BMC Discovery load balancer model based on additional details obtained via SNMP for the configured Virtual Servers, Server Farms and Real Servers from Cisco devices that support the Server Load Balancing (SLB) feature.
All configuration is obtained from SNMP tables defined in CISCO-SLB-MIB. Any configuration no longer reported is removed from the model.
Devices known to support the SLB feature:
- Catalyst 6500 family switches
- Cisco 7600 series routers
- Cisco 7300 series routers
- Cisco 7200 series routers
- Cisco 7100 series routers
Load Balancer Model
Cisco Server Load Balancing uses the following conceptual model:
Virtual Server (n) - (1) Server Farm (n) - (n) Real Server
A Virtual Server is modeled as a LoadBalancerService.
A Server Farm is modeled as a LoadBalancerPool.
A Real Server is modeled as a LoadBalancerMember.
Supported virtual server states
- OutOfService
- InService
- Standby
- InOperReal
- StbInOperReal
- TestReal
- OutOfMemory
Supported virtual service types
- none
- ftp
- wsp
- gtp
- rtsp
Supported balancing methods (algorithms)
- RoundRobin
- LeastConns
- IpHash
- IpHashSrc
- IpHashDest
- UrlHash
- Forward
- LeastLoaded
- HttpCookieHash
- HttpHeaderHash
- Layer4PayloadHash
- ResponseTime
- LeastBandwidth
- HttpContentHash
Supported protocol types
- ip
- icmp
- igmp
- ipinip
- tcp
- igrp
- udp
- gre
- esp
- ah
- icmp6
- eigrp
- ospf
- nos
- pim
- pcp
- snp
Supported Server Farm NAT types
The type of NAT employed for servers in the server farm
- NoNat
- ClientNat
- ServerNat
- ClientAndServerNat
Supported Real Server States
- OutOfService
- InService
- Failed
- ReadyToTest
- Testing
- MaxConnsThrottle
- MaxClientsThrottle
- DfpThrottle
- ProbeFailed
- ProbeTesting
- OperWait
- TestWait
- InbandProbeFailed
- ReturnCodeFailed
- ArpFailed
- Standby
- Inactive
- MaxLoad
Modeled Load Balancer Components
Load Balancer Instance
The pattern creates a Load Balancer Instance with the following attributes:
Attributes | Value |
---|---|
key | A hash of the device key and load balancer type. |
type | A load balancer type. |
name | A %LB_TYPE% on %device.name%. |
instance_version | A version of the device OS. |
The pattern models a network service relationship between the device and the Load Balancer Instance.
Load Balancer Pool
The pattern creates a Load Balancer Pool with the following attributes:
Attributes | Value |
---|---|
key | A hash of the instance key and pool name. |
name | A pool name. |
algorithm | A balancing method (algorithm) used. |
nat_type | A Server Farm NAT type used. |
_config_hash | Contains a hash of the pool name, algorithm, and nat_type. |
The pattern models a containment relationship between the Load Balancer Instance and a Load Balancer Pool.
Load Balancer Service
The pattern creates a Load Balancer Service with the following attributes:
Attributes | Value |
---|---|
key | A hash of the instance key, virtual server name, ip address, and port. |
name | A virtual server name. |
ip_addr | A virtual server IP address. |
port | A virtual server port. |
type | A virtual server type. |
protocol | A virtual server protocol type. |
state | A virtual server state. |
dns_names | A dns name of a virtual server IP address. |
_config_hash | Contains a hash of the virtual server name, IP address, port, type, protocol, and state. |
The pattern models a containment relationship between the Load Balancer Instance and a Load Balancer Service.
If the virtual server is configured to be a part of the server farm, the pattern models a containment relationship between the Load Balancer Service and a Load Balancer Pool.
Load Balancer Member
The pattern creates a Load Balancer Member for every real server and populates the following attributes:
Attributes | Value |
---|---|
key | A hash of the instance key, IP address and port of the real server. |
ip_addr | A real server IP address. |
port | A real server port. |
name | A pair of real server IP address and port. |
state | A real server state. |
_config_hash | Contains a hash of the real server ip address, port, and type. |
The pattern models a containment relationship between the Load Balancer Pool and a Load Balancer Member.