slb service-group

A service group contains a set of real servers from which the ACOS device can select to service a client request.

ACOS selects a server based on the load balancing method used by the service group, and on additional criteria relevant to the load balancing method.

The following are descriptions of the commands used for configuring SLB service groups.

service-group Specification

Type Collection
Object Key(s) name
Collection Name service-group-list
Collection URI /axapi/v3/slb/service-group/
Element Name service-group
Element URI /axapi/v3/slb/service-group/{name}
Element Attributes service-group_attributes
Statistics Data URI /axapi/v3/slb/service-group/{name}/stats
Operational Data URI /axapi/v3/slb/service-group/{name}/oper
Schema service-group schema

Operations Allowed:

Operation Method URI Payload

Create Object

POST

/axapi/v3/slb/service-group/

service-group Attributes

Create List

POST

/axapi/v3/slb/service-group/

service-group Attributes

Get Object

GET

/axapi/v3/slb/service-group/{name}

service-group Attributes

Get List

GET

/axapi/v3/slb/service-group/

service-group-list

Modify Object

POST

/axapi/v3/slb/service-group/{name}

service-group Attributes

Replace Object

PUT

/axapi/v3/slb/service-group/{name}

service-group Attributes

Replace List

PUT

/axapi/v3/slb/service-group/

service-group-list

Delete Object

DELETE

/axapi/v3/slb/service-group/{name}

service-group Attributes

Get Stats

GET

/axapi/v3/slb/service-group/{name}/stats

stats data

Get Oper

GET

/axapi/v3/slb/service-group/{name}/oper

operational data

service-group-list

service-group-list is JSON List of service-group Attributes

service-group-list : [

service-group Attributes

backup-server-event-log

Description: Enable log messages to indicate when a backup service-group member is placed into service or is removed from service. Disabled by default.

The backup-server-event-log command generates a log message when a backup service-group member is placed into service for either of the following reasons:

  • The connection limit on the primary servers or member ports is exceeded.
  • The primary servers or member ports go down.

Likewise, the command generates a log message when a backup service-group member is removed from service, and a primary server is returned to service for either of the following reasons:

  • The primary server or member port’s connection-resume limit is reached.
  • The primary server or member port comes back up.

Generation of log messages for these events is rate-limited to once per minute. The events described in a message occur at some point within the 60 seconds prior to the log message’s time stamp.

Type: boolean

Supported Values: true, false, 1, 0

Default: 0

conn-rate

Description: Rate of new connection requests per second at which the load balancing method is changed. The rate applies collectively to all servers in the service group.

Type: number

Range: 1-1000000

conn-rate-duration

Description: Number of seconds during which the specified trigger must continue to occur before the service group changes to stateless load balancing.

Type: number

Range: 1-600

conn-rate-grace-period

Description: (Optional) Number of seconds the ACOS device continues to use the current load balancing method for active sessions, before changing to the other load balancing method.

NOTE: The grace period applies only to sessions that are active when the load balancing change is triggered. The change applies immediately to new sessions that begin after the change is triggered.

Type: number

Range: 1-600

conn-rate-log

Description: Logs changes between stateful and stateless load balancing that occur due to the connection rate feature. This is disabled by default.

Type: boolean

Supported Values: true, false, 1, 0

Default: 0

conn-rate-revert-duration

Description: (Optional) Number of seconds during which the specified revert trigger must continue to occur before the service group changes to stateful load balancing again.

Type: number

Range: 1-600

conn-revert-rate

Description: Connection rate use percentage at which the service group can revert to using stateful load balancing.

Type: number

Range: 1-1000000

extended-stats

Description: Enable collection of peak connection statistics for a service group.

Type: boolean

Supported Values: true, false, 1, 0

Default: 0

health-check

Description: Name of the health monitor to use.
The health monitor is used to test the health of all members of the service group, including any members that are added in the future.

Type: string

Format: string-rlx

Mutual Exclusion: health-check and health-check-disable are mutually exclusive

Reference Object: /axapi/v3/health/monitor

health-check-disable

Description: Disable health check. The default ICMP, TCP, or UDP monitor is not used if you disable it on the server or port, or you apply a different monitor to the server or port.

Type: boolean

Supported Values: true, false, 1, 0

Default: 0

Mutual Exclusion: health-check-disable and health-check are mutually exclusive

l4-session-revert-duration

Description: (Optional) Revert duration – Number of seconds during which the specified revert trigger must continue to occur before the service group changes to stateful load balancing again.

Type: number

Range: 1-600

l4-session-usage

Description: Percentage of the system-wide Layer 4 session capacity that is currently in use.

Type: number

Range: 1-100

l4-session-usage-duration

Description: Number of seconds during which the specified trigger must continue to occur before the service group changes to stateless load balancing.

Type: number

Range: 1-600

l4-session-usage-grace-period

Description: (Optional) Number of seconds the ACOS device continues to use the current load balancing method for active sessions, before changing to the other load balancing method.

NOTE: The grace period applies only to sessions that are active when the load balancing change is triggered. The change applies immediately to new sessions that begin after the change is triggered.

Type: number

Range: 1-600

l4-session-usage-log

Description: Logs changes between stateful and stateless load balancing that occur due to Layer 4 session use. This is disabled by default.

Type: boolean

Supported Values: true, false, 1, 0

Default: 0

l4-session-usage-revert-rate

Description: – Layer 4 session use percentage at which the service group can revert to using stateful load balancing.

Type: number

Range: 1-100

lb-method

Description: Specifies load balancing method. Options include:

  • Destination IP Hash – Calculates a hash value based on the destination IP address and protocol port of the client’s request.
  • Destination Only IP Hash – Calculates a hash value based on only the destination IP address of the client’s request.
  • Fastest Response Time – Selects the service port with the fastest first data packet response time (after three-way handshake) from end-user traffic requests.
  • Least Request - Selects the real server port for which the ACOS device is currently processing the fewest HTTP requests. This method is applicable to HTTP load balancing.
  • Source IP Hash - Calculates a hash value based on the source IP address and protocol port of the client’s request.
  • Source IP Only Hash – Calculates a hash value based on only the source IP address of the client’s request.
  • Weighted Round Robin - Selects servers in rotation, based on the servers’ administratively assigned weights. If the weight value is the same on each server, this load-balancing method simply selects the servers in rotation. The Weighted Round Robin method uses only the server weight. Server port weight is not used. (Instead, server port weight is used by the Service Weighted Least Connection method).
  • Round Robin - Selects servers in rotation.
  • Round Robin Strict - Provides a more exact round-robin method. The standard, default round robin method is optimized for high performance. Over time, this optimization can result in a slight imbalance in server selection. Server selection is still basically round robin, but over time some servers may be selected slightly more often than others.

Type: string

Supported Values: dst-ip-hash, dst-ip-only-hash, fastest-response, least-request, src-ip-hash, src-ip-only-hash, weighted-rr, round-robin, round-robin-strict

Default: round-robin

Mutual Exclusion: lb-method lc-method and stateless-lb-method are mutually exclusive

lc-method

Description: Specifies least-connection weighted load balancing method. Assign different weights to servers or ports, so that higher weighted servers or ports are preferred over lower weighted ones. Options include:

  • Least Connection – Selects the server that currently has the fewest connections.
  • Service Least Connection - Selects the service port that currently has the fewest connections.
  • Weighted Least Connection - Selects a server based on a combination of the server’s administratively assigned weight and the number of connections on the server.
  • Service Weighted Least Connection - Selects a service based on a combination of the service’s administratively assigned weight and the number of connections per service port.

NOTE: For the Server Least Connection method and the other least-connection methods, if there is a tie, the port (among those tied) that has the lowest number of request bytes plus response bytes is selected. If there is still a tie, a port is randomly selected from among the ones that are still tied.

Type: string

Supported Values: least-connection, service-least-connection, weighted-least-connection, service-weighted-least-connection

Mutual Exclusion: lc-method lb-method and stateless-lb-method are mutually exclusive

member-list

Description: member-list is a JSON List . Please see below for member-list

Type: List

Reference Object: /axapi/v3/slb/service-group/{name}/member/{name}+{port}

min-active-member

Description: Continue using backup servers in order to maintain a minimum number of active servers. Will not continue to use only the backup servers after the primary servers come back up. Specify the minimum number of primary servers that can still be active (available), before the backup servers are used.

If the ACOS device stops using the primary servers due to other features (for example, exceeding connection limits), the priority affinity feature will take effect just as if the switch-over to the backup servers were triggered by a change in the status of the primary servers. If those higher-priority servers become available due to the number of connections dropping below the configured threshold, ACOS will not use them, but will instead continue using the lower-priority backup servers.

Type: number

Range: 1-63

min-active-member-action

Description: Enable dynamic-priority and or skip-pri-set.
The dynamic priority option helps ensure the minimum number of high-priority servers is maintained, by temporarily increasing the priority of lower-priority servers if needed. The skip-pri-set option skips the current priority set if the minimum is not met.

Type: string

Supported Values: dynamic-priority, skip-pri-set

name

Description: Name of the service group.

Type: string

Format: string-rlx

Required: Yes

priorities

Description: priorities is a JSON List . Please see below for priorities

Type: List

priority-affinity

Description: Configure the ACOS device to continue using backup servers (servers with lower priority) even when the primary (high priority) servers come back up. Disabled by default.

Type: boolean

Supported Values: true, false, 1, 0

Default: 0

protocol

Description: Layer 4 transport protocol used by services in the service group, TCP or UDP.

Type: string

Supported Values: tcp, udp

pseudo-round-robin

Description: When one of the least-connection methods under the service group is selected, Pseudo Round Robin options allows you to use Round Robin to select a server when multiple servers are selected. Applicable least-connection methods include:

  • Least Connection - Selects the server that currently has the fewest connections.
  • Service Least Connection - Selects the service port that currently has the fewest connections.
  • Weighted Least Connection - Selects a server based on a combination of the server’s administratively assigned weight and the number of connections on the server.
  • Service Weighted Least Connection - Selects a service based on a combination of the service’s administratively assigned weight and the number of connections per service port.

Type: boolean

Supported Values: true, false, 1, 0

Default: 0

report-delay

Description: Specifies reporting frequency in minutes.

Type: number

Range: 1-7200

reset

Description: reset is a JSON Block . Please see below for reset

Type: Object

Reference Object: /axapi/v3/slb/service-group/{name}/reset

reset-on-server-selection-fail

Description: Send a TCP reset (RST) to the client if server selection fails.

Type: boolean

Supported Values: true, false, 1, 0

Default: 0

reset-priority-affinity

Description: Reset the priority affinity feature so that the primary servers can be used again.

Type: boolean

Supported Values: true, false, 1, 0

Default: 0

rpt-ext-server

Description: Allows you to specify a report of the top 10 fastest and/or slowest servers.

Type: boolean

Supported Values: true, false, 1, 0

Default: 0

sample-rsp-time

Description: Allows you to sample the server response time for the configured servers of the selected service group.

Type: boolean

Supported Values: true, false, 1, 0

Default: 0

sampling-enable

Description: sampling-enable is a JSON List . Please see below for sampling-enable

Type: List

stateless-auto-switch

Description: Specifies auto stateless method. ACOS has a service-group option that begins using stateless load balancing instead of stateful load balancing, based on traffic. You can configure the change from stateful to stateless load balancing to be triggered based on connection rate or Layer 4 session use.

Type: boolean

Supported Values: true, false, 1, 0

Default: 0

stateless-lb-method

Description: Specifies stateless load balancing which will balance traffic without creating session entries on the ACOS device. Stateless SLB is suitable only for certain types of traffic. Options include:

  • Stateless Destination IP Hash – Balances server load based on a hash value calculated using the destination IP address and destination.
  • Stateless Per-Packet Round Robin - Balances server load by sending each packet to a different server, in rotation.
  • Stateless Src and Dst IP Hash – Balances server load based on a hash value calculated using both the source and destination IP addresses, but not the TCP or UDP ports.
  • Stateless Source IP Only Hash – Balances server load based on a hash value calculated using the source IP address only.

Type: string

Supported Values: stateless-dst-ip-hash, stateless-per-pkt-round-robin, stateless-src-dst-ip-hash, stateless-src-dst-ip-only-hash, stateless-src-ip-hash, stateless-src-ip-only-hash

Mutual Exclusion: stateless-lb-method lb-method and lc-method are mutually exclusive

stateless-lb-method2

Description: The stateless load balance (LB) method 2 option specifies the stateless load balancing method to use if the traffic reaches the configured threshold. Options include:

  • Stateless Destination IP Hash – Balances server load based on a hash value calculated using the destination IP address and protocol port of the client’s request.
  • Stateless Per-Packet Round Robin - Balances server load by sending each packet to a different server, in rotation. This method is applicable only for UDP DNS traffic.
  • Stateless Src and Dst IP Hash – Balances server load based on a hash value calculated using both the source and destination IP addresses, but not the TCP or UDP ports.
  • Stateless Source IP Only Hash – Balances server load based on a hash value calculated using the IP address and protocol port of the client’s request. Applicable only for wildcard VIP cases.

Type: string

Supported Values: stateless-dst-ip-hash, stateless-per-pkt-round-robin, stateless-src-dst-ip-hash, stateless-src-dst-ip-only-hash, stateless-src-ip-hash, stateless-src-ip-only-hash

stats-data-action

Description: Specify collection of statistical data for the service group. Statistical data collection for load-balancing resources is enabled by default.

Type: string

Supported Values: stats-data-enable, stats-data-disable

Default: stats-data-enable

template-policy

Description: Name of policy template which binds a server template to a service group. Settings in the template are used to configure the server.

Note: Some of the parameters that can be set using a server template can also be set on the individual server.

Type: string

Format: string-rlx

Reference Object: /axapi/v3/slb/template/policy

template-port

Description: Name of template which binds a server port template to the server, within this service group. Settings in the template are used to configure the server ports, but only when the ports are used as members of this service group.

Some of the parameters that can be set using a port template can also be set on the individual port. In this case, the setting in the template has lower priority than the setting on the port.

Note: If slow start is configured in a server template or a server port template, it will take effect if bound to a real server or a real port. If the template is bound to a service-group, slow start will not take effect.

Type: string

Format: string-rlx

Reference Object: /axapi/v3/slb/template/port

template-server

Description: Name of the service group template which binds a server template to service group. Settings in the template are used to configure the server.
Some of the parameters that can be set using a server template can also be set on the individual server.

Type: string

Format: string-rlx

Reference Object: /axapi/v3/slb/template/server

top-fastest

Description: Report top 10 fastest servers

Type: boolean

Supported Values: true, false, 1, 0

Default: 0

top-slowest

Description: Specifies top 10 slowest servers.

Type: boolean

Supported Values: true, false, 1, 0

Default: 0

traffic-replication-mirror

Description: The ACOS device sends the packets “as is” to the collector server(s). Forwarding is based on the IP address in the original packet. This mode does not change the packet header at all. The original Layer 2 Destination Address (DA) or Source Address (SA) and Layer 3 IP addresses are left intact.

Type: boolean

Supported Values: true, false, 1, 0

Default: 0

traffic-replication-mirror-da-repl

Description: Mirror Destination MAC Address replacement mode uses Layer 2 forwarding, with the ACOS device replacing the destination MAC address on the incoming packet with the destination MAC for each of the collector servers within the designated service group.

Type: boolean

Supported Values: true, false, 1, 0

Default: 0

traffic-replication-mirror-ip-repl

Description: Mirror IP-replacement mode replaces the incoming packet’s IP address with the IP address of the collector server(s) and then forwards the duplicated packet to those servers. This option affects the packet at Layer 4, with minor changes made to the L4 source and destination ports. This option is recommended for scenarios in which collector servers are directly connected to the ACOS device.

Type: boolean

Supported Values: true, false, 1, 0

Default: 0

traffic-replication-mirror-sa-da-repl

Description: Mirror Source MAC Address and Destination MAC Address replacement mode replaces both the source and destination MAC addresses at Layer 2 but does not change the Layer 3 IP addressing information.

Type: boolean

Supported Values: true, false, 1, 0

Default: 0

traffic-replication-mirror-sa-repl

Description: Mirror Source MAC Address replacement mode replaces the source MAC address on the incoming packet with the MAC address corresponding to virtual server on the ACOS device.

Type: boolean

Supported Values: true, false, 1, 0

Default: 0

user-tag

Description: Customized tag

Type: string

Format: string-rlx

uuid

Description: uuid of the object

Type: string

member-list

Specification
Type list
Block object keys

fqdn-name

Description: Server hostname - Not applicable if real server is already defined

Type: string

host

Description: IP Address - Not applicable if real server is already defined

Type: string

Format: ipv4-address

member-priority

Description: Priority of Port in the Group (Priority of Port in the Group, default is 1)

Type: number

Range: 1-16

Default: 1

member-state

Description: ‘enable’: Enable member service port; ‘disable’: Disable member service port; ‘disable-with-health-check’: disable member service port, but health check work;

Type: string

Supported Values: enable, disable, disable-with-health-check

Default: enable

member-stats-data-disable

Description: Disable statistical data collection

Type: boolean

Supported Values: true, false, 1, 0

Default: 0

member-template

Description: Real server port template (Real server port template name)

Type: string

Format: string-rlx

Reference Object: /axapi/v3/slb/template/port

name

Description: Member name

Type: string

Format: comp-string

Required: Yes

Reference Object: /axapi/v3/slb/server

port

Description: Port number

Type: number

Range: 0-65534

Default: 65534

Reference Object: /axapi/v3/slb/server/port

sampling-enable

Description: sampling-enable is a JSON List . Please see below for sampling-enable

Type: List

server-ipv6-addr

Description: IPV6 Address - Not applicable if real server is already defined

Type: string

Format: ipv6-address

user-tag

Description: Customized tag

Type: string

Format: string-rlx

uuid

Description: uuid of the object

Type: string

member-list.sampling-enable

Specification
Type list
Block object keys

counters1

Description: ‘all’: all; ‘total_fwd_bytes’: Total forward bytes; ‘total_fwd_pkts’: Total forward packets; ‘total_rev_bytes’: Total reverse bytes; ‘total_rev_pkts’: Total reverse packets; ‘total_conn’: Total connections; ‘total_rev_pkts_inspected’: Total reverse packets inspected; ‘total_rev_pkts_inspected_status_code_2xx’: Total reverse packets inspected status code 2xx; ‘total_rev_pkts_inspected_status_code_non_5xx’: Total reverse packets inspected status code non 5xx; ‘curr_req’: Current requests; ‘total_req’: Total requests; ‘total_req_succ’: Total requests successful; ‘peak_conn’: peak_conn; ‘response_time’: Response time; ‘fastest_rsp_time’: Fastest response time; ‘slowest_rsp_time’: Slowest response time; ‘curr_ssl_conn’: Current SSL connections; ‘total_ssl_conn’: Total SSL connections;

Type: string

Supported Values: all, total_fwd_bytes, total_fwd_pkts, total_rev_bytes, total_rev_pkts, total_conn, total_rev_pkts_inspected, total_rev_pkts_inspected_status_code_2xx, total_rev_pkts_inspected_status_code_non_5xx, curr_req, total_req, total_req_succ, peak_conn, response_time, fastest_rsp_time, slowest_rsp_time, curr_ssl_conn, total_ssl_conn

reset

Specification
Type object

auto-switch

Description: Reset the service group to stateful SLB.

Type: boolean

Supported Values: true, false, 1, 0

Default: 0

priorities

Specification
Type list
Block object keys

priority

Description: Priority option. Define different action for each priority node. (Priority in the Group)

Type: number

Range: 1-16

priority-action

Description: ‘drop’: Drop request when all priority nodes fail; ‘drop-if-exceed-limit’: Drop request when connection over limit; ‘proceed’: Proceed to next priority when all priority nodes fail(default); ‘reset’: Send client reset when all priority nodes fail; ‘reset-if-exceed-limit’: Send client reset when connection over limit;

Type: string

Supported Values: drop, drop-if-exceed-limit, proceed, reset, reset-if-exceed-limit

Default: proceed

sampling-enable

Specification
Type list
Block object keys

counters1

Description: ‘all’: all; ‘server_selection_fail_drop’: Service selection fail drop; ‘server_selection_fail_reset’: Service selection fail reset; ‘service_peak_conn’: Service peak connection;

Type: string

Supported Values: all, server_selection_fail_drop, server_selection_fail_reset, service_peak_conn

stats data

Counter Size Description
server_selection_fail_drop 8 Service selection fail drop
server_selection_fail_reset 8 Service selection fail reset
service_peak_conn 8 Service peak connection

operational data

Name Type Description
state enum Output contains one of the following values: - All Up, Functional Up, Down, Disb, Unkn
servers_down number servers_down
servers_up number servers_up
servers_disable number servers_disable
servers_total number servers_total