stephrobert.scaleway.lb_load_balancer_info module – Gather information about Scaleway Load Balancers

Note

This module is part of the stephrobert.scaleway collection (version 0.7.0).

It is not included in ansible-core. To check whether it is installed, run ansible-galaxy collection list.

To install it, use: ansible-galaxy collection install stephrobert.scaleway. You need further requirements to be able to use this module, see Requirements for details.

To use it in a playbook, specify: stephrobert.scaleway.lb_load_balancer_info.

New in stephrobert.scaleway 0.1.0

Synopsis

  • Retrieve information about an existing Load Balancer, specified by its Load Balancer ID. Its full details, including name, status and IP address, are returned in the response object.

  • List all Load Balancers in the specified zone, for a Scaleway Organization or Scaleway Project. By default, the Load Balancers returned in the list are ordered by creation date in ascending order, though this can be modified via the `order_by` field.

Requirements

The below requirements are needed on the host that executes this module.

  • scaleway >= 2.9.0

Parameters

Parameter

Comments

access_key

string

Scaleway API access key.

api_allow_insecure

boolean

Allow the API endpoint to be reached without verifying its TLS certificate.

Falls back to the Scaleway configuration file, then to false.

Choices:

  • false

  • true

api_timeout

integer

Seconds allowed for a single API call, connection and read.

Without a limit a silent connection would hang the module forever: the Scaleway SDK issues its requests with no timeout at all.

This bounds a single call, not a whole wait. Modules that can wait for a state bound the overall wait separately.

Default: 60

api_url

string

URL of the Scaleway API endpoint.

Point it at a local emulator to exercise a playbook without credentials.

Falls back to the Scaleway configuration file, then to https://api.scaleway.com. It carries no module default on purpose: a default is never unset, so it would always override the profile.

config_file

path

Path to the Scaleway configuration file.

lb_id

string

Load Balancer ID.

lb_ids

list / elements=string

Filter by lb_ids, only Load Balancers with these IDs will be returned.

name

string

Load Balancer name to filter for.

order_by

string

Sort order of Load Balancers in the response.

Choices:

  • "created_at_asc"

  • "created_at_desc"

  • "name_asc"

  • "name_desc"

organization_id

string

Default Organization ID used when an operation does not name one.

profile

string

Name of the profile to read in the Scaleway configuration file.

project_id

string

Default Project ID used when an operation does not name one.

secret_key

string

Scaleway API secret key.

tags

list / elements=string

Filter by tag, only Load Balancers with one or more matching tags will be returned.

user_agent

string

Value of the User-Agent header sent to the API.

zone

string / required

The zone you want to target

Choices:

  • "fr-par-1"

  • "fr-par-2"

  • "nl-ams-1"

  • "nl-ams-2"

  • "nl-ams-3"

  • "pl-waw-1"

  • "pl-waw-2"

  • "pl-waw-3"

Attributes

Attribute

Support

Description

check_mode

Support: full

This module only reads, so check mode changes nothing about how it runs.

diff_mode

Support: none

This module changes nothing, so it has no difference to report.

Notes

Note

  • Every option can be set from its environment variable, respectively SCW_PROFILE, SCW_CONFIG_PATH, SCW_ACCESS_KEY, SCW_SECRET_KEY, SCW_API_URL, SCW_DEFAULT_ORGANIZATION_ID and SCW_DEFAULT_PROJECT_ID.

  • Module options take precedence over environment variables, which take precedence over the configuration file.

Examples

# This module only reads: it never changes anything, and check mode
# is native.
#
# `lb_id` decides which of the two reads runs: given, the
# module returns that one resource; omitted, it lists them all,
# walking every page rather than returning the first one in silence.

- name: Get a Load Balancer
  stephrobert.scaleway.lb_load_balancer_info:
    zone: fr-par-1
    lb_id: 11111111-2222-3333-4444-555555555555
  register: result
- name: List Load Balancers
  stephrobert.scaleway.lb_load_balancer_info:
    zone: fr-par-1
  register: result
- name: Filter Scaleway Load Balancers by tags
  stephrobert.scaleway.lb_load_balancer_info:
    zone: fr-par-1
    tags:
    - production
  register: result

Return Values

Common return values are documented here, the following are the fields unique to this module:

Key

Description

lbs

list / elements=dictionary

List all Load Balancers in the specified zone, for a Scaleway Organization or Scaleway Project. By default, the Load Balancers returned in the list are ordered by creation date in ascending order, though this can be modified via the `order_by` field.

Returned: when lb_id is omitted

backend_count

integer

Number of backends the Load Balancer has.

Returned: when the API returns it

created_at

string

Date on which the Load Balancer was created. (RFC 3339 format)

Returned: when the API returns it

description

string

Load Balancer description.

Returned: when the API returns it

frontend_count

integer

Number of frontends the Load Balancer has.

Returned: when the API returns it

id

string

Underlying Instance ID.

Returned: when the API returns it

instances

list / elements=dictionary

List of underlying Instances.

Returned: when the API returns it

ip

list / elements=dictionary

List of IP addresses attached to the Load Balancer.

Returned: when the API returns it

name

string

Load Balancer name.

Returned: when the API returns it

organization_id

string

Scaleway Organization ID.

Returned: when the API returns it

private_network_count

integer

Number of Private Networks attached to the Load Balancer.

Returned: when the API returns it

project_id

string

Scaleway Project ID.

Returned: when the API returns it

region

string

The region the Load Balancer is in.

Deprecated by the Scaleway API contract.

Returned: when the API returns it

route_count

integer

Number of routes configured on the Load Balancer.

Returned: when the API returns it

ssl_compatibility_level

string

Determines the minimal SSL version which needs to be supported on client side.

Returned: when the API returns it

status

string

Load Balancer status.

Returned: when the API returns it

subscriber

dictionary

Subscriber information.

Returned: when the API returns it

tags

list / elements=string

Load Balancer tags.

Returned: when the API returns it

type

string

Load Balancer offer type.

Returned: when the API returns it

updated_at

string

Date on which the Load Balancer was last updated. (RFC 3339 format)

Returned: when the API returns it

zone

string

The zone the Load Balancer is in.

Returned: when the API returns it

result

dictionary

added in stephrobert.scaleway 0.4.0

Retrieve information about an existing Load Balancer, specified by its Load Balancer ID. Its full details, including name, status and IP address, are returned in the response object.

The API contract names no payload field for this operation: the response body is returned as is.

Returned: when lb_id is provided

backend_count

integer

Number of backends the Load Balancer has.

Returned: when the API returns it

created_at

string

Date on which the Load Balancer was created. (RFC 3339 format)

Returned: when the API returns it

description

string

Load Balancer description.

Returned: when the API returns it

frontend_count

integer

Number of frontends the Load Balancer has.

Returned: when the API returns it

id

string

Underlying Instance ID.

Returned: when the API returns it

instances

list / elements=dictionary

List of underlying Instances.

Returned: when the API returns it

ip

list / elements=dictionary

List of IP addresses attached to the Load Balancer.

Returned: when the API returns it

name

string

Load Balancer name.

Returned: when the API returns it

organization_id

string

Scaleway Organization ID.

Returned: when the API returns it

private_network_count

integer

Number of Private Networks attached to the Load Balancer.

Returned: when the API returns it

project_id

string

Scaleway Project ID.

Returned: when the API returns it

region

string

The region the Load Balancer is in.

Deprecated by the Scaleway API contract.

Returned: when the API returns it

route_count

integer

Number of routes configured on the Load Balancer.

Returned: when the API returns it

ssl_compatibility_level

string

Determines the minimal SSL version which needs to be supported on client side.

Returned: when the API returns it

status

string

Load Balancer status.

Returned: when the API returns it

subscriber

dictionary

Subscriber information.

Returned: when the API returns it

tags

list / elements=string

Load Balancer tags.

Returned: when the API returns it

type

string

Load Balancer offer type.

Returned: when the API returns it

updated_at

string

Date on which the Load Balancer was last updated. (RFC 3339 format)

Returned: when the API returns it

zone

string

The zone the Load Balancer is in.

Returned: when the API returns it

Authors

  • Stéphane Robert (@stephrobert)