tcp_frontends
Creates, updates, deletes, gets or lists a tcp_frontends resource.
Overview​
| Name | tcp_frontends |
| Type | Resource |
| Id | ovh.ip_loadbalancing.tcp_frontends |
Fields​
The following fields are returned by SELECT queries:
- get
- list
successful operation
| Name | Datatype | Description |
|---|---|---|
default_farm_id | integer | Default TCP Farm of your frontend (wire: defaultFarmId) |
default_ssl_id | integer | Default ssl served to your customer (wire: defaultSslId) |
frontend_id | integer | Id of your frontend (wire: frontendId) |
vrack_network_id | integer | Internal Load Balancer identifier of the vRack private network attached to your frontend. (wire: vrackNetworkId) |
vrack_vrouter_id | integer | Virtual Router Identifier. 1-255 (wire: vrackVrouterId) |
display_name | string | Human readable name for your frontend, this field is for you (wire: displayName) |
allowed_source | array | Restrict IP Load Balancing access to these ip block. No restriction if null. You cannot specify allowedSource and deniedSource both at the same time (wire: allowedSource) |
dedicated_ipfo | array | Only attach frontend on these ip. No restriction if null (wire: dedicatedIpfo) |
denied_source | array | Deny IP Load Balancing access to these ip block. No restriction if null. You cannot specify allowedSource and deniedSource both at the same time (wire: deniedSource) |
disabled | boolean | Disable frontend. Default: 'false' |
force_sni | boolean | block all SSL connection request without SNI. Default: 'false' (wire: forceSni) |
port | string | Listening port(s) on the server |
ssl | boolean | SSL deciphering. Default: 'false' |
zone | string | Zone of you frontend |
Frontend TCP
| Name | Datatype | Description |
|---|---|---|
default_farm_id | integer | Default TCP Farm of your frontend (wire: defaultFarmId) |
default_ssl_id | integer | Default ssl served to your customer (wire: defaultSslId) |
frontend_id | integer | Id of your frontend (wire: frontendId) |
vrack_network_id | integer | Internal Load Balancer identifier of the vRack private network attached to your frontend. (wire: vrackNetworkId) |
vrack_vrouter_id | integer | Virtual Router Identifier. 1-255 (wire: vrackVrouterId) |
display_name | string | Human readable name for your frontend, this field is for you (wire: displayName) |
allowed_source | array | Restrict IP Load Balancing access to these ip block. No restriction if null. You cannot specify allowedSource and deniedSource both at the same time (wire: allowedSource) |
dedicated_ipfo | array | Only attach frontend on these ip. No restriction if null (wire: dedicatedIpfo) |
denied_source | array | Deny IP Load Balancing access to these ip block. No restriction if null. You cannot specify allowedSource and deniedSource both at the same time (wire: deniedSource) |
disabled | boolean | Disable frontend. Default: 'false' |
force_sni | boolean | block all SSL connection request without SNI. Default: 'false' (wire: forceSni) |
port | string | Listening port(s) on the server |
ssl | boolean | SSL deciphering. Default: 'false' |
zone | string | Zone of you frontend |
Methods​
The following methods are available for this resource:
| Name | Accessible by | Required Params | Optional Params | Description |
|---|---|---|---|---|
get | select | frontend_id, service_name | Get a TCP frontend | |
list | select | service_name | default_farm_id, default_ssl_id, port, zone, x_pagination_mode | List TCP frontends |
create | insert | service_name, port, zone | Create a TCP frontend | |
update | update | frontend_id, service_name | Update a TCP frontend | |
delete | delete | frontend_id, service_name | Delete a TCP frontend |
Parameters​
Parameters can be passed in the WHERE clause of a query. Check the Methods section to see which parameters are required or optional for each operation.
| Name | Datatype | Description |
|---|---|---|
api_host | string | The OVHcloud API host. Selected by OVH_ENDPOINT (ovh-eu, ovh-ca or ovh-us; default ovh-eu). (default: api.eu.ovhcloud.com, x-stackQL-envVarSelector: {"envVar":"OVH_ENDPOINT","default":"ovh-eu","values":{"ovh-eu":"api.eu.ovhcloud.com","ovh-ca":"api.ca.ovhcloud.com","ovh-us":"api.us.ovhcloud.com"}}) |
frontend_id | integer | Id of your frontend (wire: frontendId) |
service_name | string | The internal name of your IP load balancing (wire: serviceName) |
default_farm_id | integer | Filter the value of defaultFarmId property (=) (wire: defaultFarmId) |
default_ssl_id | integer | Filter the value of defaultSslId property (=) (wire: defaultSslId) |
port | string | Filter the value of port property (like) |
x_pagination_mode | string | Sent as CachedObjectList-Pages by default so the list returns the full objects rather than their identifiers. (wire: X-Pagination-Mode) |
zone | string | Filter the value of zone property (=) |
SELECT examples​
- get
- list
Get a TCP frontend
SELECT
default_farm_id,
default_ssl_id,
frontend_id,
vrack_network_id,
vrack_vrouter_id,
display_name,
allowed_source,
dedicated_ipfo,
denied_source,
disabled,
force_sni,
port,
ssl,
zone
FROM ovh.ip_loadbalancing.tcp_frontends
WHERE frontend_id = '{{ frontend_id }}' -- required
AND service_name = '{{ service_name }}' -- required
;
List TCP frontends
SELECT
default_farm_id,
default_ssl_id,
frontend_id,
vrack_network_id,
vrack_vrouter_id,
display_name,
allowed_source,
dedicated_ipfo,
denied_source,
disabled,
force_sni,
port,
ssl,
zone
FROM ovh.ip_loadbalancing.tcp_frontends
WHERE service_name = '{{ service_name }}' -- required
AND default_farm_id = '{{ default_farm_id }}'
AND default_ssl_id = '{{ default_ssl_id }}'
AND port = '{{ port }}'
AND zone = '{{ zone }}'
AND x_pagination_mode = '{{ x_pagination_mode }}'
;
INSERT examples​
- create
- Manifest
Create a TCP frontend
INSERT INTO ovh.ip_loadbalancing.tcp_frontends (
allowed_source,
dedicated_ipfo,
default_farm_id,
default_ssl_id,
denied_source,
disabled,
display_name,
force_sni,
port,
ssl,
zone,
service_name
)
SELECT
'{{ allowed_source }}',
'{{ dedicated_ipfo }}',
{{ default_farm_id }},
{{ default_ssl_id }},
'{{ denied_source }}',
{{ disabled }},
'{{ display_name }}',
{{ force_sni }},
'{{ port }}' /* required */,
{{ ssl }},
'{{ zone }}' /* required */,
'{{ service_name }}'
RETURNING
default_farm_id,
default_ssl_id,
frontend_id,
vrack_network_id,
vrack_vrouter_id,
display_name,
allowed_source,
dedicated_ipfo,
denied_source,
disabled,
force_sni,
port,
ssl,
zone
;
# Description fields are for documentation purposes
- name: tcp_frontends
props:
- name: service_name
value: "{{ service_name }}"
description: Required parameter for the tcp_frontends resource.
- name: allowed_source
value:
- "{{ allowed_source }}"
description: |
Restrict IP Load Balancing access to these ip block. No restriction if null. You cannot specify allowedSource and deniedSource both at the same time
- name: dedicated_ipfo
value:
- "{{ dedicated_ipfo }}"
description: |
Only attach frontend on these ip. No restriction if null
- name: default_farm_id
value: {{ default_farm_id }}
description: |
Default TCP Farm of your frontend
- name: default_ssl_id
value: {{ default_ssl_id }}
description: |
Default ssl served to your customer
- name: denied_source
value:
- "{{ denied_source }}"
description: |
Deny IP Load Balancing access to these ip block. No restriction if null. You cannot specify allowedSource and deniedSource both at the same time
- name: disabled
value: {{ disabled }}
description: |
Disable your frontend. Default: 'false'
- name: display_name
value: "{{ display_name }}"
description: |
Human readable name for your frontend, this field is for you
- name: force_sni
value: {{ force_sni }}
description: |
block all SSL connection request without SNI. Default: 'false'
- name: port
value: "{{ port }}"
description: |
Port(s) attached to your frontend. Supports single port (numerical value), range (2 dash-delimited increasing ports) and comma-separated list of 'single port' and/or 'range'. Each port must be in the [1;49151] range.
- name: ssl
value: {{ ssl }}
description: |
SSL deciphering. Default: 'false'
- name: zone
value: "{{ zone }}"
description: |
Zone of your frontend. Use "all" for all owned zone.
UPDATE examples​
- update
Update a TCP frontend
UPDATE ovh.ip_loadbalancing.tcp_frontends
SET
allowed_source = '{{ allowed_source }}',
dedicated_ipfo = '{{ dedicated_ipfo }}',
default_farm_id = {{ default_farm_id }},
default_ssl_id = {{ default_ssl_id }},
denied_source = '{{ denied_source }}',
disabled = {{ disabled }},
display_name = '{{ display_name }}',
force_sni = {{ force_sni }},
port = '{{ port }}',
ssl = {{ ssl }},
zone = '{{ zone }}'
WHERE
frontend_id = '{{ frontend_id }}' --required
AND service_name = '{{ service_name }}' --required;
DELETE examples​
- delete
Delete a TCP frontend
DELETE FROM ovh.ip_loadbalancing.tcp_frontends
WHERE frontend_id = '{{ frontend_id }}' --required
AND service_name = '{{ service_name }}' --required
;