F5 BIG-IP load balancer
The F5 BIG-IP load balancer pattern builds the BMC Discovery load balancer model based on additional F5 details obtained through SNMP for the following configured items:
- [GMT] Wide IPs, GTM Pools, GTM Pool Members, Data Centers and Servers.
- [LTM] LTM Virtual Servers, LTM Pools and LTM Pool Members.
Any configuration no longer reported is removed from the model.
For F5 BIG-IP hardware-based appliances that can run virtual instance (vCMP Host) pattern creates corresponding Virtual Machines and links these VMs to virtual Network Devices (vCMP Guests):
Starting from TKU May 2021, F5 iRules are supported to create relationships between Load Balancer Servers and Pool.
Starting from TKU November 2021, F5 LTM policies are supported to create relationships between Load Balancer Servers and Pool.
Load Balancer Model
F5 BIG-IP uses the following conceptual model for LTM-based load balancers: Virtual Server (n) - (1) Pool (n) - (n) Member
A Virtual Server is modeled as a Load Balancer Service.
A Pool is modeled as a Load Balancer Pool.
A Member is modeled as a Load Balancer Member.
F5 BIG-IP uses the following conceptual model for GTM-based load balancers: Wide IP (n) - (n) Pool (n) - (n) Pool Member
A Wide IP is modeled as a Load Balancer Service.
A Pool is modeled as a Load Balancer Pool.
A Pool Member is modeled as a Load Balancer Member.
Supported virtual server types
- poolbased - The virtual server is based on a pool.
- ipforward - The virtual server only supports IP forwarding. There is no load balancing on this type of virtual server.
- l2forward - The virtual server only supports L2 forwarding. There is no load balancing on this type of virtual server.
- reject - All connections going to this virtual server will be rejected, and resets will be sent.
Supported virtual server states
- unknown
- enabled
- disabled
- disabledByParent
Supported device failover state
- Unknown
- Offline
- ForcedOffline
- Standby
- Active
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 (F5 BIG-IP). |
name | A %LB_TYPE% on %device.name%. |
version | A version of the device OS. |
failover_type | A failover type used on the device. |
failover_state | A failover state reported by the device. |
failover_unit_id | No sample. |
__failover_group | No sample. |
__failover_paired_ipaddr | No sample. |
The pattern models a network service relationship between the device and the Load Balancer Instance.
Load Balancer Member
The pattern creates a Load Balancer Member with the following attributes:
Attributes | Value |
---|---|
key | A hash of the instance key, IP address and port of the real server. |
ip_addr | A server IP address. |
port | A server port. |
name | A pair of server IP address and port. |
_config_hash | Contains a hash of the server ip address, port, and type. |
The pattern models a containment relationship between the Load Balancer Pool and a Load Balancer Member.
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. |
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.
The pattern also models a containment relationship between the Load Balancer Service and a Load Balancer Pool.
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. |
_config_hash | Contains a hash of the pool name, and protocol. |
The pattern models a containment relationship between the Load Balancer Pool and Load Balancer Member.
Virtual Machine
The pattern creates a Virtual Machine for every virtual instances and populates the following attributes:
Attributes | Value |
---|---|
key | A hash of the instance name, physical device key. |
name | Virtual Machine name |
short_name | Virtual Machine short name |
type | "BIG-IP vCMP" |
vm_type | "vCMP" |
vm_name | Virtual Load Balancer name |
version | vCMP version |
vm_guest_os | Virtual Load Balancer OS |
product_version | vCMP product version |
state | Virtual Machine state |
The pattern models a relationships between the Virtual Machine and physical, virtual Load Balancer.