target_pools
Creates, updates, deletes, gets or lists a target_pools resource.
Overview
| Name | target_pools |
| Type | Resource |
| Id | google.compute.target_pools |
Fields
The following fields are returned by SELECT queries:
- get
- list
- aggregated_list
| Name | Datatype | Description |
|---|---|---|
id | string (uint64) | [Output Only] The unique identifier for the resource. This identifier is defined by the server. |
name | string | Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply withRFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. (pattern: [a-z](?:[-a-z0-9]{0,61}[a-z0-9])?) |
backupPool | string | The server-defined URL for the resource. This field is applicable only when the containing target pool is serving a forwarding rule as the primary pool, and its failoverRatio field is properly set to a value between [0, 1].backupPool and failoverRatio together define the fallback behavior of the primary target pool: if the ratio of the healthy instances in the primary pool is at or belowfailoverRatio, traffic arriving at the load-balanced IP will be directed to the backup pool. In case where failoverRatio and backupPool are not set, or all the instances in the backup pool are unhealthy, the traffic will be directed back to the primary pool in the "force" mode, where traffic will be spread to the healthy instances with the best effort, or to all instances when no instance is healthy. |
creationTimestamp | string | Output only. [Output Only] Creation timestamp inRFC3339 text format. |
description | string | An optional description of this resource. Provide this property when you create the resource. |
failoverRatio | number (float) | This field is applicable only when the containing target pool is serving a forwarding rule as the primary pool (i.e., not as a backup pool to some other target pool). The value of the field must be in [0, 1]. If set, backupPool must also be set. They together define the fallback behavior of the primary target pool: if the ratio of the healthy instances in the primary pool is at or below this number, traffic arriving at the load-balanced IP will be directed to the backup pool. In case where failoverRatio is not set or all the instances in the backup pool are unhealthy, the traffic will be directed back to the primary pool in the "force" mode, where traffic will be spread to the healthy instances with the best effort, or to all instances when no instance is healthy. |
healthChecks | array | The URL of the HttpHealthCheck resource. A member instance in this pool is considered healthy if and only if the health checks pass. Only legacy HttpHealthChecks are supported. Only one health check may be specified. |
instances | array | A list of resource URLs to the virtual machine instances serving this pool. They must live in zones contained in the same region as this pool. |
kind | string | Output only. [Output Only] Type of the resource. Always compute#targetPool for target pools. (default: compute#targetPool) |
region | string | Output only. [Output Only] URL of the region where the target pool resides. |
securityPolicy | string | [Output Only] The resource URL for the security policy associated with this target pool. |
selfLink | string | [Output Only] Server-defined URL for the resource. |
sessionAffinity | string | Session affinity option, must be one of the following values: NONE: Connections from the same client IP may go to any instance in the pool. CLIENT_IP: Connections from the same client IP will go to the same instance in the pool while that instance remains healthy. CLIENT_IP_PROTO: Connections from the same client IP with the same IP protocol will go to the same instance in the pool while that instance remains healthy. (CLIENT_IP, CLIENT_IP_NO_DESTINATION, CLIENT_IP_PORT_PROTO, CLIENT_IP_PROTO, GENERATED_COOKIE, HEADER_FIELD, HTTP_COOKIE, NONE, STRONG_COOKIE_AFFINITY) |
| Name | Datatype | Description |
|---|---|---|
id | string | [Output Only] Unique identifier for the resource; defined by the server. |
items | array | A list of TargetPool resources. |
kind | string | Output only. [Output Only] Type of resource. Always compute#targetPoolList for lists of target pools. (default: compute#targetPoolList) |
nextPageToken | string | [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger thanmaxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. |
selfLink | string | Output only. [Output Only] Server-defined URL for this resource. |
warning | object | [Output Only] Informational warning message. |
| Name | Datatype | Description |
|---|---|---|
id | string (uint64) | [Output Only] The unique identifier for the resource. This identifier is defined by the server. |
name | string | Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply withRFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. (pattern: [a-z](?:[-a-z0-9]{0,61}[a-z0-9])?) |
backupPool | string | The server-defined URL for the resource. This field is applicable only when the containing target pool is serving a forwarding rule as the primary pool, and its failoverRatio field is properly set to a value between [0, 1].backupPool and failoverRatio together define the fallback behavior of the primary target pool: if the ratio of the healthy instances in the primary pool is at or belowfailoverRatio, traffic arriving at the load-balanced IP will be directed to the backup pool. In case where failoverRatio and backupPool are not set, or all the instances in the backup pool are unhealthy, the traffic will be directed back to the primary pool in the "force" mode, where traffic will be spread to the healthy instances with the best effort, or to all instances when no instance is healthy. |
creationTimestamp | string | Output only. [Output Only] Creation timestamp inRFC3339 text format. |
description | string | An optional description of this resource. Provide this property when you create the resource. |
failoverRatio | number (float) | This field is applicable only when the containing target pool is serving a forwarding rule as the primary pool (i.e., not as a backup pool to some other target pool). The value of the field must be in [0, 1]. If set, backupPool must also be set. They together define the fallback behavior of the primary target pool: if the ratio of the healthy instances in the primary pool is at or below this number, traffic arriving at the load-balanced IP will be directed to the backup pool. In case where failoverRatio is not set or all the instances in the backup pool are unhealthy, the traffic will be directed back to the primary pool in the "force" mode, where traffic will be spread to the healthy instances with the best effort, or to all instances when no instance is healthy. |
healthChecks | array | The URL of the HttpHealthCheck resource. A member instance in this pool is considered healthy if and only if the health checks pass. Only legacy HttpHealthChecks are supported. Only one health check may be specified. |
instances | array | A list of resource URLs to the virtual machine instances serving this pool. They must live in zones contained in the same region as this pool. |
kind | string | Output only. [Output Only] Type of the resource. Always compute#targetPool for target pools. (default: compute#targetPool) |
region | string | Output only. [Output Only] URL of the region where the target pool resides. |
securityPolicy | string | [Output Only] The resource URL for the security policy associated with this target pool. |
selfLink | string | [Output Only] Server-defined URL for the resource. |
sessionAffinity | string | Session affinity option, must be one of the following values: NONE: Connections from the same client IP may go to any instance in the pool. CLIENT_IP: Connections from the same client IP will go to the same instance in the pool while that instance remains healthy. CLIENT_IP_PROTO: Connections from the same client IP with the same IP protocol will go to the same instance in the pool while that instance remains healthy. (CLIENT_IP, CLIENT_IP_NO_DESTINATION, CLIENT_IP_PORT_PROTO, CLIENT_IP_PROTO, GENERATED_COOKIE, HEADER_FIELD, HTTP_COOKIE, NONE, STRONG_COOKIE_AFFINITY) |
Methods
The following methods are available for this resource:
| Name | Accessible by | Required Params | Optional Params | Description |
|---|---|---|---|---|
get | select | project, region, targetPool | Returns the specified target pool. | |
list | select | project, region | orderBy, filter, maxResults, pageToken, returnPartialSuccess | Retrieves a list of target pools available to the specified project and region. |
aggregated_list | select | project | returnPartialSuccess, includeAllScopes, orderBy, filter, serviceProjectNumber, maxResults, pageToken | Retrieves an aggregated list of target pools. To prevent failure, Google recommends that you set the returnPartialSuccess parameter to true. |
insert | insert | project, region | requestId | Creates a target pool in the specified project and region using the data included in the request. |
delete | delete | project, region, targetPool | requestId | Deletes the specified target pool. |
set_backup | exec | project, region, targetPool | failoverRatio, requestId | Changes a backup target pool's configurations. |
set_security_policy | exec | project, region, targetPool | requestId | Sets the Google Cloud Armor security policy for the specified target pool. For more information, seeGoogle Cloud Armor Overview |
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 |
|---|---|---|
project | string | |
region | string | |
targetPool | string | |
failoverRatio | number (float) | |
filter | string | |
includeAllScopes | boolean | |
maxResults | integer (uint32) | |
orderBy | string | |
pageToken | string | |
requestId | string | |
returnPartialSuccess | boolean | |
serviceProjectNumber | string (int64) |
SELECT examples
- get
- list
- aggregated_list
Returns the specified target pool.
SELECT
id,
name,
backupPool,
creationTimestamp,
description,
failoverRatio,
healthChecks,
instances,
kind,
region,
securityPolicy,
selfLink,
sessionAffinity
FROM google.compute.target_pools
WHERE project = '{{ project }}' -- required
AND region = '{{ region }}' -- required
AND targetPool = '{{ targetPool }}' -- required
;
Retrieves a list of target pools available to the specified
project and region.
SELECT
id,
items,
kind,
nextPageToken,
selfLink,
warning
FROM google.compute.target_pools
WHERE project = '{{ project }}' -- required
AND region = '{{ region }}' -- required
AND orderBy = '{{ orderBy }}'
AND filter = '{{ filter }}'
AND maxResults = '{{ maxResults }}'
AND pageToken = '{{ pageToken }}'
AND returnPartialSuccess = '{{ returnPartialSuccess }}'
;
Retrieves an aggregated list of target pools.
To prevent failure, Google recommends that you set thereturnPartialSuccess parameter to true.
SELECT
id,
name,
backupPool,
creationTimestamp,
description,
failoverRatio,
healthChecks,
instances,
kind,
region,
securityPolicy,
selfLink,
sessionAffinity
FROM google.compute.target_pools
WHERE project = '{{ project }}' -- required
AND returnPartialSuccess = '{{ returnPartialSuccess }}'
AND includeAllScopes = '{{ includeAllScopes }}'
AND orderBy = '{{ orderBy }}'
AND filter = '{{ filter }}'
AND serviceProjectNumber = '{{ serviceProjectNumber }}'
AND maxResults = '{{ maxResults }}'
AND pageToken = '{{ pageToken }}'
;
INSERT examples
- insert
- Manifest
Creates a target pool in the specified project and region using
the data included in the request.
INSERT INTO google.compute.target_pools (
data__backupPool,
data__healthChecks,
data__description,
data__failoverRatio,
data__selfLink,
data__id,
data__securityPolicy,
data__name,
data__instances,
data__sessionAffinity,
project,
region,
requestId
)
SELECT
'{{ backupPool }}',
'{{ healthChecks }}',
'{{ description }}',
{{ failoverRatio }},
'{{ selfLink }}',
'{{ id }}',
'{{ securityPolicy }}',
'{{ name }}',
'{{ instances }}',
'{{ sessionAffinity }}',
'{{ project }}',
'{{ region }}',
'{{ requestId }}'
RETURNING
id,
name,
clientOperationId,
creationTimestamp,
description,
endTime,
error,
getVersionOperationMetadata,
httpErrorMessage,
httpErrorStatusCode,
insertTime,
instancesBulkInsertOperationMetadata,
kind,
operationGroupId,
operationType,
progress,
region,
selfLink,
setCommonInstanceMetadataOperationMetadata,
startTime,
status,
statusMessage,
targetId,
targetLink,
user,
warnings,
zone
;
# Description fields are for documentation purposes
- name: target_pools
props:
- name: project
value: "{{ project }}"
description: Required parameter for the target_pools resource.
- name: region
value: "{{ region }}"
description: Required parameter for the target_pools resource.
- name: backupPool
value: "{{ backupPool }}"
description: |
The server-defined URL for the resource. This field is applicable only when
the containing target pool is serving a forwarding rule as the primary
pool, and its failoverRatio field is properly set to a value
between [0, 1].backupPool and failoverRatio together define
the fallback behavior of the primary target pool: if the ratio of the
healthy instances in the primary pool is at or belowfailoverRatio, traffic arriving at the load-balanced
IP will be directed to the backup pool.
In case where failoverRatio and backupPool
are not set, or all the instances in the backup pool are unhealthy,
the traffic will be directed back to the primary pool in the "force"
mode, where traffic will be spread to the healthy instances with the
best effort, or to all instances when no instance is healthy.
- name: healthChecks
value:
- "{{ healthChecks }}"
description: |
The URL of the HttpHealthCheck resource. A member instance in this
pool is considered healthy if and only if the health checks pass.
Only legacy HttpHealthChecks are supported. Only one health check may be
specified.
- name: description
value: "{{ description }}"
description: |
An optional description of this resource. Provide this property when you
create the resource.
- name: failoverRatio
value: {{ failoverRatio }}
description: |
This field is applicable only when the containing target pool is serving a
forwarding rule as the primary pool (i.e., not as a backup pool to some
other target pool). The value of the field must be in [0, 1].
If set, backupPool must also be set. They together define
the fallback behavior of the primary target pool: if the ratio of the
healthy instances in the primary pool is at or below this number,
traffic arriving at the load-balanced IP will be directed to the
backup pool.
In case where failoverRatio is not set or all the
instances in the backup pool are unhealthy, the traffic will be
directed back to the primary pool in the "force" mode, where traffic
will be spread to the healthy instances with the
best effort, or to all instances when no instance is healthy.
- name: selfLink
value: "{{ selfLink }}"
description: |
[Output Only] Server-defined URL for the resource.
- name: id
value: "{{ id }}"
description: |
[Output Only] The unique identifier for the resource. This identifier is
defined by the server.
- name: securityPolicy
value: "{{ securityPolicy }}"
description: |
[Output Only] The resource URL for the security policy associated with this
target pool.
- name: name
value: "{{ name }}"
description: |
Name of the resource. Provided by the client when the resource is created.
The name must be 1-63 characters long, and comply withRFC1035.
Specifically, the name must be 1-63 characters long and match the regular
expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first
character must be a lowercase letter, and all following characters must
be a dash, lowercase letter, or digit, except the last character, which
cannot be a dash.
- name: instances
value:
- "{{ instances }}"
description: |
A list of resource URLs to the virtual machine instances serving this pool.
They must live in zones contained in the same region as this pool.
- name: sessionAffinity
value: "{{ sessionAffinity }}"
description: |
Session affinity option, must be one of the following values:
NONE: Connections from the same client IP may go to any
instance in the pool.
CLIENT_IP: Connections from the same client IP will go
to the same instance in
the pool while that instance remains healthy.
CLIENT_IP_PROTO: Connections from the same client IP
with the same IP protocol will go to the same instance in the
pool while that instance remains healthy.
valid_values: ['CLIENT_IP', 'CLIENT_IP_NO_DESTINATION', 'CLIENT_IP_PORT_PROTO', 'CLIENT_IP_PROTO', 'GENERATED_COOKIE', 'HEADER_FIELD', 'HTTP_COOKIE', 'NONE', 'STRONG_COOKIE_AFFINITY']
- name: requestId
value: "{{ requestId }}"
DELETE examples
- delete
Deletes the specified target pool.
DELETE FROM google.compute.target_pools
WHERE project = '{{ project }}' --required
AND region = '{{ region }}' --required
AND targetPool = '{{ targetPool }}' --required
AND requestId = '{{ requestId }}'
;
Lifecycle Methods
- set_backup
- set_security_policy
Changes a backup target pool's configurations.
EXEC google.compute.target_pools.set_backup
@project='{{ project }}' --required,
@region='{{ region }}' --required,
@targetPool='{{ targetPool }}' --required,
@failoverRatio='{{ failoverRatio }}',
@requestId='{{ requestId }}'
@@json=
'{
"target": "{{ target }}"
}'
;
Sets the Google Cloud Armor security policy for the specified target pool.
For more information, seeGoogle
Cloud Armor Overview
EXEC google.compute.target_pools.set_security_policy
@project='{{ project }}' --required,
@region='{{ region }}' --required,
@targetPool='{{ targetPool }}' --required,
@requestId='{{ requestId }}'
@@json=
'{
"securityPolicy": "{{ securityPolicy }}"
}'
;