F5 Networks · Schema

VirtualServer

A virtual server resource that directs client traffic to a pool of backend servers based on an IP address and port combination.

API GatewayApplication DeliveryAutomationEdge ComputingKubernetesLoad BalancingMulti-CloudNGINXSecurityWAF

Properties

Name Type Description
kind string Resource type identifier.
name string Name of the virtual server resource.
fullPath string Full path including partition.
generation integer Configuration generation counter.
selfLink string Self-referencing URI for this resource.
addressStatus string Whether the virtual contributes to the operational status of the associated virtual address.
autoLasthop string Automatic last hop setting for return traffic routing.
cmpEnabled string Whether Clustered Multi-Processing (CMP) acceleration is enabled.
connectionLimit integer Maximum number of concurrent connections allowed. A value of 0 means unlimited.
description string User-defined description of the virtual server.
destination string Destination IP address and service port in the format /partition/address:port or /partition/address.port.
disabled boolean When true, the virtual server does not accept new connections.
enabled boolean When true, the virtual server accepts and processes traffic.
fallbackPersistence string Persistence profile to use when the primary persistence method fails.
gtmScore integer Score value used by Global Traffic Manager for load balancing decisions.
ipProtocol string IP protocol for the virtual server.
mask string Network mask for the destination address. Use 255.255.255.255 for host-specific virtual servers.
mirror string Whether connection and persistence mirroring is enabled for high availability failover.
nat64 string Whether NAT64 translation is enabled.
partition string Administrative partition containing this resource.
persist array Persistence profiles applied to the virtual server.
pool string Default pool for directing traffic. Specified as a full path (e.g., /Common/my_pool).
profiles array Profiles applied to the virtual server.
rateLimit string Maximum number of connections per second. A value of disabled or 0 means no limit.
rateLimitMode string Scope of rate limiting.
rules array iRules applied to the virtual server.
source string Source address filter. Only connections from this network are accepted.
sourcePort string Source port translation behavior.
synCookieStatus string Current SYN Cookie protection status.
translateAddress string Whether address translation is enabled.
translatePort string Whether port translation is enabled.
vlansEnabled boolean Whether VLAN filtering is enabled.
vlansDisabled boolean Whether the virtual server is disabled on listed VLANs.
vlans array List of VLANs on which the virtual server is enabled or disabled.
vsIndex integer System-assigned index for the virtual server.
View JSON Schema on GitHub

JSON Schema

f5-networks-virtualserver-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "#/components/schemas/VirtualServer",
  "title": "VirtualServer",
  "type": "object",
  "description": "A virtual server resource that directs client traffic to a pool of backend servers based on an IP address and port combination.",
  "properties": {
    "kind": {
      "type": "string",
      "description": "Resource type identifier.",
      "example": "tm:ltm:virtual:virtualstate",
      "readOnly": true
    },
    "name": {
      "type": "string",
      "description": "Name of the virtual server resource.",
      "example": "my_virtual_server"
    },
    "fullPath": {
      "type": "string",
      "description": "Full path including partition.",
      "example": "/Common/my_virtual_server",
      "readOnly": true
    },
    "generation": {
      "type": "integer",
      "description": "Configuration generation counter.",
      "readOnly": true,
      "example": 10
    },
    "selfLink": {
      "type": "string",
      "format": "uri",
      "description": "Self-referencing URI for this resource.",
      "readOnly": true,
      "example": "https://www.example.com"
    },
    "addressStatus": {
      "type": "string",
      "description": "Whether the virtual contributes to the operational status of the associated virtual address.",
      "enum": [
        "yes",
        "no"
      ],
      "default": "yes",
      "example": "yes"
    },
    "autoLasthop": {
      "type": "string",
      "description": "Automatic last hop setting for return traffic routing.",
      "enum": [
        "default",
        "enabled",
        "disabled"
      ],
      "default": "default",
      "example": "default"
    },
    "cmpEnabled": {
      "type": "string",
      "description": "Whether Clustered Multi-Processing (CMP) acceleration is enabled.",
      "enum": [
        "yes",
        "no"
      ],
      "default": "yes",
      "example": "yes"
    },
    "connectionLimit": {
      "type": "integer",
      "description": "Maximum number of concurrent connections allowed. A value of 0 means unlimited.",
      "minimum": 0,
      "default": 0,
      "example": 0
    },
    "description": {
      "type": "string",
      "description": "User-defined description of the virtual server.",
      "example": "Production web virtual server"
    },
    "destination": {
      "type": "string",
      "description": "Destination IP address and service port in the format /partition/address:port or /partition/address.port.",
      "example": "/Common/10.0.0.100:80"
    },
    "disabled": {
      "type": "boolean",
      "description": "When true, the virtual server does not accept new connections.",
      "example": true
    },
    "enabled": {
      "type": "boolean",
      "description": "When true, the virtual server accepts and processes traffic.",
      "example": true
    },
    "fallbackPersistence": {
      "type": "string",
      "description": "Persistence profile to use when the primary persistence method fails.",
      "example": "/Common/source_addr"
    },
    "gtmScore": {
      "type": "integer",
      "description": "Score value used by Global Traffic Manager for load balancing decisions.",
      "default": 0,
      "example": 10
    },
    "ipProtocol": {
      "type": "string",
      "description": "IP protocol for the virtual server.",
      "enum": [
        "tcp",
        "udp",
        "sctp",
        "any"
      ],
      "example": "tcp"
    },
    "mask": {
      "type": "string",
      "description": "Network mask for the destination address. Use 255.255.255.255 for host-specific virtual servers.",
      "example": "255.255.255.255"
    },
    "mirror": {
      "type": "string",
      "description": "Whether connection and persistence mirroring is enabled for high availability failover.",
      "enum": [
        "enabled",
        "disabled"
      ],
      "default": "disabled",
      "example": "enabled"
    },
    "nat64": {
      "type": "string",
      "description": "Whether NAT64 translation is enabled.",
      "enum": [
        "enabled",
        "disabled"
      ],
      "default": "disabled",
      "example": "enabled"
    },
    "partition": {
      "type": "string",
      "description": "Administrative partition containing this resource.",
      "default": "Common",
      "example": "Common"
    },
    "persist": {
      "type": "array",
      "description": "Persistence profiles applied to the virtual server.",
      "items": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "example": "cookie"
          },
          "tmDefault": {
            "type": "string",
            "enum": [
              "yes",
              "no"
            ]
          }
        }
      },
      "example": []
    },
    "pool": {
      "type": "string",
      "description": "Default pool for directing traffic. Specified as a full path (e.g., /Common/my_pool).",
      "example": "/Common/my_pool"
    },
    "profiles": {
      "type": "array",
      "description": "Profiles applied to the virtual server.",
      "items": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "example": "http"
          },
          "context": {
            "type": "string",
            "enum": [
              "all",
              "clientside",
              "serverside"
            ],
            "example": "all"
          },
          "fullPath": {
            "type": "string",
            "example": "/Common/http"
          }
        }
      },
      "example": []
    },
    "rateLimit": {
      "type": "string",
      "description": "Maximum number of connections per second. A value of disabled or 0 means no limit.",
      "default": "disabled",
      "example": "example_value"
    },
    "rateLimitMode": {
      "type": "string",
      "description": "Scope of rate limiting.",
      "enum": [
        "object",
        "object-source",
        "object-destination",
        "object-source-destination"
      ],
      "default": "object",
      "example": "object"
    },
    "rules": {
      "type": "array",
      "description": "iRules applied to the virtual server.",
      "items": {
        "type": "string"
      },
      "example": [
        "/Common/my_irule"
      ]
    },
    "source": {
      "type": "string",
      "description": "Source address filter. Only connections from this network are accepted.",
      "default": "0.0.0.0/0",
      "example": "0.0.0.0/0"
    },
    "sourcePort": {
      "type": "string",
      "description": "Source port translation behavior.",
      "enum": [
        "preserve",
        "preserve-strict",
        "change"
      ],
      "default": "preserve",
      "example": "preserve"
    },
    "synCookieStatus": {
      "type": "string",
      "description": "Current SYN Cookie protection status.",
      "readOnly": true,
      "enum": [
        "not-activated",
        "activated"
      ],
      "example": "not-activated"
    },
    "translateAddress": {
      "type": "string",
      "description": "Whether address translation is enabled.",
      "enum": [
        "enabled",
        "disabled"
      ],
      "default": "enabled",
      "example": "enabled"
    },
    "translatePort": {
      "type": "string",
      "description": "Whether port translation is enabled.",
      "enum": [
        "enabled",
        "disabled"
      ],
      "default": "enabled",
      "example": "enabled"
    },
    "vlansEnabled": {
      "type": "boolean",
      "description": "Whether VLAN filtering is enabled.",
      "example": true
    },
    "vlansDisabled": {
      "type": "boolean",
      "description": "Whether the virtual server is disabled on listed VLANs.",
      "example": true
    },
    "vlans": {
      "type": "array",
      "description": "List of VLANs on which the virtual server is enabled or disabled.",
      "items": {
        "type": "string"
      },
      "example": [
        "/Common/external"
      ]
    },
    "vsIndex": {
      "type": "integer",
      "description": "System-assigned index for the virtual server.",
      "readOnly": true,
      "example": 10
    }
  }
}