Avi GslbService Object API

##CLI## ``` - configure gslbservice - show gslbservice ```
More information: https://avinetworks.com/contact-us
Contact Info: support@avinetworks.com
Version: 17.2.4
BasePath:/api
All rights reserved
http://apache.org/licenses/LICENSE-2.0.html

Access

  1. HTTP Basic Authentication

Methods

[ Jump to Models ]

Table of Contents

  1. get /gslbservice
  2. post /gslbservice
  3. delete /gslbservice/{uuid}
  4. get /gslbservice/{uuid}
  5. patch /gslbservice/{uuid}
  6. put /gslbservice/{uuid}
  7. get /gslbservice/{uuid}/runtime/
Up
get /gslbservice
( gslbserviceGet)

Consumes

This API call consumes the following media types via the Content-Type request header:

Query parameters

name (optional)
Query Parameter — object name
refers_to (optional)
Query Parameter — Filter to request all objects that refers to another Avi resource. Its syntax is refers_to=<obj_type>:<obj_uuid>. Eg. get all virtual services referring to pool p1 will be refers_to=pool:pool_p1_uuid
referred_by (optional)
Query Parameter — Filter to request all objects that are referred by another Avi resource. Its syntax is referred_by=<obj_type>:<obj_uuid>. Eg. get all pools referred_by virtual service vs1 - referred_by=virtualservice:vs_vs1_uuid
fields (optional)
Query Parameter — List of fields to be returned for the resource. Some fields like name, URL, uuid etc. are always returned.
include_name (optional)
Query Parameter — All the Avi REST reference URIs have a name suffix as URI#name. It is useful to get the referenced resource name without performing get on that object.
join_subresources (optional)
Query Parameter — It automatically returns additional dependent resources like runtime. Eg. join_subresources=runtime.

Return type

GslbServiceApiResponse

Example data

Content-Type: application/json
{
  "count" : 123,
  "results" : [ {
    "application_persistence_profile_ref" : "aeiou",
    "site_persistence_enabled" : true,
    "pool_algorithm" : "aeiou",
    "description" : "aeiou",
    "groups" : [ {
      "consistent_hash_mask" : 123,
      "members" : [ {
        "cloud_uuid" : "aeiou",
        "public_ip" : {
          "ip" : ""
        },
        "vs_uuid" : "aeiou",
        "cluster_uuid" : "aeiou",
        "fqdn" : "aeiou",
        "ip" : "",
        "description" : "aeiou",
        "location" : {
          "location" : {
            "latitude" : 1.3579000000000001069366817318950779736042022705078125,
            "name" : "aeiou",
            "tag" : "aeiou",
            "longitude" : 1.3579000000000001069366817318950779736042022705078125
          },
          "source" : "aeiou"
        },
        "hm_proxies" : [ {
          "site_uuid" : "aeiou",
          "proxy_type" : "aeiou"
        } ],
        "enabled" : true,
        "ratio" : 123
      } ],
      "name" : "aeiou",
      "description" : "aeiou",
      "priority" : 123,
      "algorithm" : "aeiou"
    } ],
    "min_members" : 123,
    "controller_health_status_enabled" : true,
    "created_by" : "aeiou",
    "ttl" : 123,
    "uuid" : "aeiou",
    "enabled" : true,
    "url" : "aeiou",
    "domain_names" : [ "aeiou" ],
    "down_response" : {
      "fallback_ip" : {
        "addr" : "aeiou",
        "type" : "aeiou"
      },
      "type" : "aeiou"
    },
    "wildcard_match" : true,
    "use_edns_client_subnet" : true,
    "tenant_ref" : "aeiou",
    "name" : "aeiou",
    "health_monitor_refs" : [ "aeiou" ],
    "num_dns_ip" : 123,
    "health_monitor_scope" : "aeiou",
    "is_federated" : true
  } ]
}

Produces

This API call produces the following media types according to the Accept request header; the media type will be conveyed by the Content-Type response header.

Responses

200

OK GslbServiceApiResponse

401

log in failed

Up
post /gslbservice
( gslbservicePost)

Consumes

This API call consumes the following media types via the Content-Type request header:

Request body

body (required)
Body Parameter — GslbService object creation

Return type

GslbService

Example data

Content-Type: application/json
{
  "application_persistence_profile_ref" : "aeiou",
  "site_persistence_enabled" : true,
  "pool_algorithm" : "aeiou",
  "description" : "aeiou",
  "groups" : [ {
    "consistent_hash_mask" : 123,
    "members" : [ {
      "cloud_uuid" : "aeiou",
      "public_ip" : {
        "ip" : ""
      },
      "vs_uuid" : "aeiou",
      "cluster_uuid" : "aeiou",
      "fqdn" : "aeiou",
      "ip" : "",
      "description" : "aeiou",
      "location" : {
        "location" : {
          "latitude" : 1.3579000000000001069366817318950779736042022705078125,
          "name" : "aeiou",
          "tag" : "aeiou",
          "longitude" : 1.3579000000000001069366817318950779736042022705078125
        },
        "source" : "aeiou"
      },
      "hm_proxies" : [ {
        "site_uuid" : "aeiou",
        "proxy_type" : "aeiou"
      } ],
      "enabled" : true,
      "ratio" : 123
    } ],
    "name" : "aeiou",
    "description" : "aeiou",
    "priority" : 123,
    "algorithm" : "aeiou"
  } ],
  "min_members" : 123,
  "controller_health_status_enabled" : true,
  "created_by" : "aeiou",
  "ttl" : 123,
  "uuid" : "aeiou",
  "enabled" : true,
  "url" : "aeiou",
  "domain_names" : [ "aeiou" ],
  "down_response" : {
    "fallback_ip" : {
      "addr" : "aeiou",
      "type" : "aeiou"
    },
    "type" : "aeiou"
  },
  "wildcard_match" : true,
  "use_edns_client_subnet" : true,
  "tenant_ref" : "aeiou",
  "name" : "aeiou",
  "health_monitor_refs" : [ "aeiou" ],
  "num_dns_ip" : 123,
  "health_monitor_scope" : "aeiou",
  "is_federated" : true
}

Produces

This API call produces the following media types according to the Accept request header; the media type will be conveyed by the Content-Type response header.

Responses

200

OK GslbService

401

log in failed

Up
delete /gslbservice/{uuid}
( gslbserviceUuidDelete)

Path parameters

uuid (required)
Path Parameter — UUID of the object to fetch

Consumes

This API call consumes the following media types via the Content-Type request header:

Query parameters

name (optional)
Query Parameter — object name

Return type

String

Example data

Content-Type: application/json
"aeiou"

Produces

This API call produces the following media types according to the Accept request header; the media type will be conveyed by the Content-Type response header.

Responses

204

object deleted String

404

not found

Up
get /gslbservice/{uuid}
( gslbserviceUuidGet)

Path parameters

uuid (required)
Path Parameter — UUID of the object to fetch

Consumes

This API call consumes the following media types via the Content-Type request header:

Query parameters

name (optional)
Query Parameter — object name
fields (optional)
Query Parameter — List of fields to be returned for the resource. Some fields like name, URL, uuid etc. are always returned.
include_name (optional)
Query Parameter — All the Avi REST reference URIs have a name suffix as URI#name. It is useful to get the referenced resource name without performing get on that object.
join_subresources (optional)
Query Parameter — It automatically returns additional dependent resources like runtime. Eg. join_subresources=runtime.

Return type

GslbService

Example data

Content-Type: application/json
{
  "application_persistence_profile_ref" : "aeiou",
  "site_persistence_enabled" : true,
  "pool_algorithm" : "aeiou",
  "description" : "aeiou",
  "groups" : [ {
    "consistent_hash_mask" : 123,
    "members" : [ {
      "cloud_uuid" : "aeiou",
      "public_ip" : {
        "ip" : ""
      },
      "vs_uuid" : "aeiou",
      "cluster_uuid" : "aeiou",
      "fqdn" : "aeiou",
      "ip" : "",
      "description" : "aeiou",
      "location" : {
        "location" : {
          "latitude" : 1.3579000000000001069366817318950779736042022705078125,
          "name" : "aeiou",
          "tag" : "aeiou",
          "longitude" : 1.3579000000000001069366817318950779736042022705078125
        },
        "source" : "aeiou"
      },
      "hm_proxies" : [ {
        "site_uuid" : "aeiou",
        "proxy_type" : "aeiou"
      } ],
      "enabled" : true,
      "ratio" : 123
    } ],
    "name" : "aeiou",
    "description" : "aeiou",
    "priority" : 123,
    "algorithm" : "aeiou"
  } ],
  "min_members" : 123,
  "controller_health_status_enabled" : true,
  "created_by" : "aeiou",
  "ttl" : 123,
  "uuid" : "aeiou",
  "enabled" : true,
  "url" : "aeiou",
  "domain_names" : [ "aeiou" ],
  "down_response" : {
    "fallback_ip" : {
      "addr" : "aeiou",
      "type" : "aeiou"
    },
    "type" : "aeiou"
  },
  "wildcard_match" : true,
  "use_edns_client_subnet" : true,
  "tenant_ref" : "aeiou",
  "name" : "aeiou",
  "health_monitor_refs" : [ "aeiou" ],
  "num_dns_ip" : 123,
  "health_monitor_scope" : "aeiou",
  "is_federated" : true
}

Produces

This API call produces the following media types according to the Accept request header; the media type will be conveyed by the Content-Type response header.

Responses

200

OK GslbService

401

log in failed

Up
patch /gslbservice/{uuid}
( gslbserviceUuidPatch)

Path parameters

uuid (required)
Path Parameter — UUID of the object to fetch

Consumes

This API call consumes the following media types via the Content-Type request header:

Request body

body (required)
Body Parameter — GslbService object creation

Query parameters

name (optional)
Query Parameter — object name

Return type

GslbService

Example data

Content-Type: application/json
{
  "application_persistence_profile_ref" : "aeiou",
  "site_persistence_enabled" : true,
  "pool_algorithm" : "aeiou",
  "description" : "aeiou",
  "groups" : [ {
    "consistent_hash_mask" : 123,
    "members" : [ {
      "cloud_uuid" : "aeiou",
      "public_ip" : {
        "ip" : ""
      },
      "vs_uuid" : "aeiou",
      "cluster_uuid" : "aeiou",
      "fqdn" : "aeiou",
      "ip" : "",
      "description" : "aeiou",
      "location" : {
        "location" : {
          "latitude" : 1.3579000000000001069366817318950779736042022705078125,
          "name" : "aeiou",
          "tag" : "aeiou",
          "longitude" : 1.3579000000000001069366817318950779736042022705078125
        },
        "source" : "aeiou"
      },
      "hm_proxies" : [ {
        "site_uuid" : "aeiou",
        "proxy_type" : "aeiou"
      } ],
      "enabled" : true,
      "ratio" : 123
    } ],
    "name" : "aeiou",
    "description" : "aeiou",
    "priority" : 123,
    "algorithm" : "aeiou"
  } ],
  "min_members" : 123,
  "controller_health_status_enabled" : true,
  "created_by" : "aeiou",
  "ttl" : 123,
  "uuid" : "aeiou",
  "enabled" : true,
  "url" : "aeiou",
  "domain_names" : [ "aeiou" ],
  "down_response" : {
    "fallback_ip" : {
      "addr" : "aeiou",
      "type" : "aeiou"
    },
    "type" : "aeiou"
  },
  "wildcard_match" : true,
  "use_edns_client_subnet" : true,
  "tenant_ref" : "aeiou",
  "name" : "aeiou",
  "health_monitor_refs" : [ "aeiou" ],
  "num_dns_ip" : 123,
  "health_monitor_scope" : "aeiou",
  "is_federated" : true
}

Produces

This API call produces the following media types according to the Accept request header; the media type will be conveyed by the Content-Type response header.

Responses

200

OK GslbService

401

log in failed

Up
put /gslbservice/{uuid}
( gslbserviceUuidPut)

Path parameters

uuid (required)
Path Parameter — UUID of the object to fetch

Consumes

This API call consumes the following media types via the Content-Type request header:

Request body

body (required)
Body Parameter — GslbService object creation

Query parameters

name (optional)
Query Parameter — object name

Return type

GslbService

Example data

Content-Type: application/json
{
  "application_persistence_profile_ref" : "aeiou",
  "site_persistence_enabled" : true,
  "pool_algorithm" : "aeiou",
  "description" : "aeiou",
  "groups" : [ {
    "consistent_hash_mask" : 123,
    "members" : [ {
      "cloud_uuid" : "aeiou",
      "public_ip" : {
        "ip" : ""
      },
      "vs_uuid" : "aeiou",
      "cluster_uuid" : "aeiou",
      "fqdn" : "aeiou",
      "ip" : "",
      "description" : "aeiou",
      "location" : {
        "location" : {
          "latitude" : 1.3579000000000001069366817318950779736042022705078125,
          "name" : "aeiou",
          "tag" : "aeiou",
          "longitude" : 1.3579000000000001069366817318950779736042022705078125
        },
        "source" : "aeiou"
      },
      "hm_proxies" : [ {
        "site_uuid" : "aeiou",
        "proxy_type" : "aeiou"
      } ],
      "enabled" : true,
      "ratio" : 123
    } ],
    "name" : "aeiou",
    "description" : "aeiou",
    "priority" : 123,
    "algorithm" : "aeiou"
  } ],
  "min_members" : 123,
  "controller_health_status_enabled" : true,
  "created_by" : "aeiou",
  "ttl" : 123,
  "uuid" : "aeiou",
  "enabled" : true,
  "url" : "aeiou",
  "domain_names" : [ "aeiou" ],
  "down_response" : {
    "fallback_ip" : {
      "addr" : "aeiou",
      "type" : "aeiou"
    },
    "type" : "aeiou"
  },
  "wildcard_match" : true,
  "use_edns_client_subnet" : true,
  "tenant_ref" : "aeiou",
  "name" : "aeiou",
  "health_monitor_refs" : [ "aeiou" ],
  "num_dns_ip" : 123,
  "health_monitor_scope" : "aeiou",
  "is_federated" : true
}

Produces

This API call produces the following media types according to the Accept request header; the media type will be conveyed by the Content-Type response header.

Responses

200

OK GslbService

401

log in failed

Up
get /gslbservice/{uuid}/runtime/
( gslbserviceUuidRuntimeGet)

Path parameters

uuid (required)
Path Parameter — UUID of the object to fetch

Consumes

This API call consumes the following media types via the Content-Type request header:

Return type

String

Example data

Content-Type: application/json
"aeiou"

Produces

This API call produces the following media types according to the Accept request header; the media type will be conveyed by the Content-Type response header.

Responses

200

OK String

401

log in failed

Up

Models

[ Jump to Methods ]

Table of Contents

  1. GeoLocation
  2. GslbGeoLocation
  3. GslbHealthMonitorProxy
  4. GslbIpAddr
  5. GslbPool
  6. GslbPoolMember
  7. GslbService
  8. GslbServiceApiResponse
  9. GslbServiceDownResponse
  10. IpAddr

GeoLocation Up

latitude (optional)
Float Latitude of the location. This is represented as degrees.minutes. The range is from -90.0 (south) to +90.0 (north). Allowed values are -90.0-+90.0. Field introduced in 17.1.1. format: float
longitude (optional)
Float Longitude of the location. This is represented as degrees.minutes. The range is from -180.0 (west) to +180.0 (east). Allowed values are -180.0-+180.0. Field introduced in 17.1.1. format: float
name (optional)
String Location name in the format Country/State/City. Field introduced in 17.1.1.
tag (optional)
String Location tag string - example USEast. Field introduced in 17.1.1.

GslbGeoLocation Up

location (optional)
GeoLocation Geographic location of the site. Field introduced in 17.1.1.
source
String This field describes the source of the GeoLocation. . Enum options - GSLB_LOCATION_SRC_USER_CONFIGURED, GSLB_LOCATION_SRC_INHERIT_FROM_SITE, GSLB_LOCATION_SRC_FROM_GEODB. Field introduced in 17.1.1.

GslbHealthMonitorProxy Up

proxy_type (optional)
String This field identifies the health monitor proxy behavior. The designated site for health monitor proxy can monitor public or private or all the members of a given site. . Enum options - GSLB_HEALTH_MONITOR_PROXY_ALL_MEMBERS, GSLB_HEALTH_MONITOR_PROXY_PRIVATE_MEMBERS. Field introduced in 17.1.1.
site_uuid (optional)
String This field identifies the site that will health monitor on behalf of the current site. i.e. it will be a health monitor proxy and monitor members of the current site. . Field introduced in 17.1.1.

GslbIpAddr Up

ip (optional)
IpAddr Public IP address of the pool member. Field introduced in 17.1.2.

GslbPool Up

algorithm
String The load balancing algorithm will pick a local member within the GSLB service list of available Members. Enum options - GSLB_ALGORITHM_ROUND_ROBIN, GSLB_ALGORITHM_CONSISTENT_HASH, GSLB_ALGORITHM_GEO.
consistent_hash_mask (optional)
Integer Mask to be applied on client IP for consistent hash algorithm. Allowed values are 1-31. format: int32
description (optional)
String User provided information that records member details such as application owner name, contact, etc. Field introduced in 17.1.3.
members (optional)
array[GslbPoolMember] Select list of VIPs belonging to this GSLB service.
name
String Name of the GSLB service pool.
priority (optional)
Integer Priority of this pool of Members. The higher the number, the higher is the priority of the pool. The DNS Service chooses the pool with the highest priority that is operationally up. Allowed values are 1-100. format: int32

GslbPoolMember Up

cloud_uuid (optional)
String The Cloud UUID of the Site. Field introduced in 17.1.2.
cluster_uuid (optional)
String The Cluster UUID of the Site.
description (optional)
String User provided information that records member details such as application owner name, contact, etc. Field introduced in 17.1.3.
enabled (optional)
Boolean Enable or Disable member to decide if this address should be provided in DNS responses.
fqdn (optional)
String The pool member is configured with a fully qualified domain name. The FQDN is resolved to an IP address by the controller. DNS service shall health monitor the resolved IP address while it will return the fqdn(cname) in the DNS response.If the user has configured an IP address (in addition to the FQDN), then the IP address will get overwritten whenever periodic FQDN refresh is done by the controller. .
hm_proxies (optional)
array[GslbHealthMonitorProxy] Internal generated system-field. Field introduced in 17.1.1.
ip (optional)
IpAddr IP address of the pool member. If this IP address is hosted via an AVI virtual service, then the user should configure the cluster uuid and virtual service uuid. If this IP address is hosted on a third-party device and the device is tagged/tethered to a third-party site, then user can configure the third-party site uuid. User may configure the IP address without the cluster uuid or the virtual service uuid. In this option, some advanced site related features cannot be enabled. If the user has configured a fqdn for the pool member, then it takes precedence and will overwrite the configured IP address. .
location (optional)
GslbGeoLocation Geographic location of the pool member. Field introduced in 17.1.1.
public_ip (optional)
GslbIpAddr Alternate IP addresses of the pool member. In usual deployments, the VIP in the virtual service is a private IP address. This gets configured in the 'ip' field of the GSLB service. This field is used to host the public IP address for the VIP, which gets NATed to the private IP by a firewall. Client DNS requests coming in from within the intranet should have the private IP served in the A record, and requests from outside this should be served the public IP address. Field introduced in 17.1.2.
ratio (optional)
Integer Overrides the default ratio of 1. Reduces the percentage the LB algorithm would pick the server in relation to its peers. Range is 1-20. Allowed values are 1-20. format: int32
vs_uuid (optional)
String Select local virtual service in the specified controller cluster belonging to this GSLB service. The virtual service may have multiple IP addresses and FQDNs. User will have to choose IP address or FQDN and configure it in the respective field. .

GslbService Up

application_persistence_profile_ref (optional)
String The federated application persistence associated with GslbService site persistence functionality. . It is a reference to an object of type ApplicationPersistenceProfile. Field introduced in 17.2.1.
controller_health_status_enabled (optional)
Boolean GS member's overall health status is derived based on a combination of controller and datapath health-status inputs. Note that the datapath status is determined by the association of health monitor profiles. Only the controller provided status is determined through this configuration. .
created_by (optional)
String Creator name. Field introduced in 17.1.2.
description (optional)
String User defined description for the object.
domain_names (optional)
array[String] Fully qualified domain name of the GSLB service.
down_response (optional)
GslbServiceDownResponse Response to the client query when the GSLB service is DOWN.
enabled (optional)
Boolean Enable or disable the GSLB service. If the GSLB service is enabled, then the VIPs are sent in the DNS responses based on reachability and configured algorithm. If the GSLB service is disabled, then the VIPs are no longer available in the DNS response.
groups (optional)
array[GslbPool] Select list of pools belonging to this GSLB service.
health_monitor_refs (optional)
array[String] Verify VS health by applying one or more health monitors. Active monitors generate synthetic traffic from DNS Service Engine and to mark a VS up or down based on the response. . It is a reference to an object of type HealthMonitor.
health_monitor_scope (optional)
String Health monitor probe can be executed for all the members or it can be executed only for third-party members. This operational mode is useful to reduce the number of health monitor probes in case of a hybrid scenario. In such a case, Avi members can have controller derived status while Non-Avi members can be probed by via health monitor probes in dataplane. Enum options - GSLB_SERVICE_HEALTH_MONITOR_ALL_MEMBERS, GSLB_SERVICE_HEALTH_MONITOR_ONLY_NON_AVI_MEMBERS.
is_federated (optional)
Boolean This field indicates that this object is replicated across GSLB federation. Field introduced in 17.1.3.
min_members (optional)
Integer The minimum number of members to distribute traffic to. Allowed values are 1-65535. Special values are 0 - 'Disable'. Field introduced in 17.2.4. format: int32
name
String Name for the GSLB service.
num_dns_ip (optional)
Integer Number of IP addresses of this GSLB service to be returned by the DNS Service. Enter 0 to return all IP addresses. Allowed values are 1-20. Special values are 0- 'Return all IP addresses'. format: int32
pool_algorithm (optional)
String The load balancing algorithm will pick a GSLB pool within the GSLB service list of available pools. Enum options - GSLB_SERVICE_ALGORITHM_PRIORITY, GSLB_SERVICE_ALGORITHM_GEO. Field introduced in 17.2.3.
site_persistence_enabled (optional)
Boolean Enable site-persistence for the GslbService. . Field introduced in 17.2.1.
tenant_ref (optional)
String It is a reference to an object of type Tenant.
ttl (optional)
Integer TTL value (in seconds) for records served for this GSLB service by the DNS Service. Allowed values are 1-86400. format: int32
url (optional)
String url
use_edns_client_subnet (optional)
Boolean Use the client ip subnet from the EDNS option as source IPaddress for client geo-location and consistent hash algorithm. Default is true. Field introduced in 17.1.1.
uuid (optional)
String UUID of the GSLB service.
wildcard_match (optional)
Boolean Enable wild-card match of fqdn if an exact match is not found in the DNS table, the longest match is chosen by wild-carding the fqdn in the DNS request. Default is false. Field introduced in 17.1.1.

GslbServiceApiResponse Up

count
Integer format: int32
results

GslbServiceDownResponse Up

fallback_ip (optional)
IpAddr Fallback IP address to use in response to the client query when the GSLB service is DOWN.
type
String Response from DNS service towards the client when the GSLB service is DOWN. Enum options - GSLB_SERVICE_DOWN_RESPONSE_NONE, GSLB_SERVICE_DOWN_RESPONSE_ALL_RECORDS, GSLB_SERVICE_DOWN_RESPONSE_FALLBACK_IP, GSLB_SERVICE_DOWN_RESPONSE_EMPTY.

IpAddr Up

addr
String IP address.
type
String Enum options - V4, DNS.