gcore.cloud.loadbalancer_info (1.0.1) — module

Gather infos about all GCore loadbalancers.

Authors: GCore (@GCore)

Install collection

Install with ansible-galaxy collection install gcore.cloud:==1.0.1


Add to requirements.yml

  collections:
    - name: gcore.cloud
      version: 1.0.1

Description

Gather infos about all GCore loadbalancers.

Usage examples

  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Gather gcore loadbalancer infos
  gcore.cloud.loadbalancer_info:
    api_key: "{{ api_key }}"
    region_id: "{{ region_id }}"
    project_id: "{{ project_id }}"
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Gather gcore specific loadbalancer info
  gcore.cloud.loadbalancer_info:
    api_key: "{{ api_key }}"
    region_id: "{{ region_id }}"
    project_id: "{{ project_id }}"
    loadbalancer_id: "{{ loadbalancer_id }}"

Inputs

    
limit:
    description:
    - Limit the number of returned limit request entities.
    required: false
    type: int

offset:
    description:
    - Offset value is used to exclude the first set of records from the result.
    required: false
    type: int

api_key:
    description:
    - GCore API auth key
    - Can be passed as I(CLOUD_API_KEY) environment variable.
    type: str

api_host:
    default: https://api.gcore.com/cloud
    description:
    - GCore API base host
    - Can be passed as I(CLOUD_API_HOST) environment variable.
    type: str

region_id:
    description:
    - GCore API region ID
    - Required if I(region_name) is not passed
    - Can be passed as I(CLOUD_REGION_ID) environment variable.
    type: int

metadata_k:
    description:
    - Filter by metadata keys. Must be a valid JSON string.
    required: false
    type: str

project_id:
    description:
    - GCore API project ID
    - Required if I(project_name) is not passed
    - Can be passed as I(CLOUD_PROJECT_ID) environment variable.
    type: int

show_stats:
    description:
    - Show statistics.
    required: false
    type: bool

api_timeout:
    default: 30
    description:
    - Timeout in seconds to polling GCore API
    type: int

metadata_kv:
    description:
    - Filter by metadata key-value pairs. Must be a valid JSON string.
    required: false
    type: str

region_name:
    description:
    - GCore API region name
    - Required if I(region_id) is not passed
    - Can be passed as I(CLOUD_REGION_NAME) environment variable.
    type: str

project_name:
    description:
    - GCore API project name
    - Required if I(project_id) is not passed
    - Can be passed as I(CLOUD_PROJECT_NAME) environment variable.
    type: str

loadbalancer_id:
    description:
    - The ID of loadbalancer you want to get.
    - The module will fail if the provided ID is invalid.
    required: false
    type: str

logging_enabled:
    description:
    - With or without logging.
    required: false
    type: bool

assigned_floating:
    description:
    - With or without assigned floating IP.
    required: false
    type: bool

Outputs

loadbalancer_info:
  contains:
    created_at:
      description: Loadbalancer create datetime
      returned: always
      sample: 2020-01-24T13:57:12+0000
      type: str
    ddos_profile:
      description: Logging configuration
      returned: if available
      sample:
        fields:
        - base_field: 10
          default: null
          description: ARK server ports. Valid port values are in range 1000-65535
          field_type: null
          field_value:
          - 45046
          - 45047
          id: 11
          name: ARK Ports
          required: true
          validation_schema:
            items:
              maximum: 65535
              minimum: 1000
              type: integer
            minItems: 1
            type: array
          value: null
        id: 0
        ip_address: 123.123.123.1
        options:
          active: true
          bgp: true
        profile_template:
          description: test client profile template
          fields:
          - default: null
            description: ARK server ports. Valid port values are in range 1000-65535
            field_type: null
            id: 11
            name: ARK Ports
            required: true
            validation_schema:
              items:
                maximum: 65535
                minimum: 1000
                type: integer
              minItems: 1
              type: array
          id: 0
          name: test_client_profile_template
        profile_template_description: ARK server ports. Valid port values are in range
          1000-65535
        protocols:
        - additionalProp1: string
          additionalProp2: string
          additionalProp3: string
        site: ED
        status:
          error_description: An error occurred while deleting profile
          status: Error Deleting
      type: dict
    flavor:
      description: Load balancer flavor
      returned: always
      sample:
        flavor_id: 1d276f53-2834-4855-9859-aa922f073055
        flavor_name: lb1-1-2
        ram: 2048
        vcpus: 1
      type: dict
    floating_ips:
      description: List of assigned floating IPs
      elements: dict
      returned: always
      sample:
      - created_at: 2019-06-13T13:58:12+0000
        creator_task_id: d1e1500b-e2be-40aa-9a4b-cc493fa1af30
        dns_domain: gcore.com
        dns_name: string
        fixed_ip_address: None
        floating_ip_address: 172.24.4.34
        id: c64e5db1-5f1f-43ec-a8d9-5090df85b82d
        metadata:
        - key: hosting
          read_only: false
          value: some value
        port_id: ee2402d0-f0cd-4503-9b75-69be1d11c5f1
        project_id: 1
        region: Luxembourg 1
        region_id: 1
        router_id: 11005a33-c5ac-4c96-ab6f-8f2827cc7da6
        status: DOWN
        subnet_id: b1a3dd16-04c1-4f13-b8f9-f6569f74bb15
        task_id: a4eb4b29-048e-42f6-a5e1-2c18bc001c45
        updated_at: 2019-06-13T13:58:12+0000
      type: list
    id:
      description: Loadbalancer ID
      returned: always
      sample: e8ab1be4-1521-4266-be69-28dad4148a30
      type: str
    listeners:
      description: Load balancer listeners
      elements: dict
      returned: always
      sample:
      - id: 43658ea9-54bd-4807-90b1-925921c9a0d1
      type: list
    logging:
      description: Logging configuration
      returned: if available
      sample:
        destination_region_id: 1
        enabled: false
        retention_policy:
          period: 45
        topic_name: some_topic_name
      type: dict
    metadata:
      description: Create one or more metadata items for a loadbalancers
      elements: dict
      returned: if available
      sample:
      - key: type
        read_only: false
        value: standart
      type: list
    name:
      description: Loadbalancer name
      returned: always
      sample: lbaas_test_lb
      type: str
    operating_status:
      description: Load balancer operating status
      returned: always
      sample: ONLINE
      type: str
    project_id:
      description: Project ID
      returned: always
      sample: 1
      type: int
    provisioning_status:
      description: Load balancer lifecycle status
      returned: always
      sample: ACTIVE
      type: str
    region:
      description: Region name
      returned: always
      sample: Luxembourg 1
      type: str
    region_id:
      description: Region ID
      returned: always
      sample: 1
      type: int
    stats:
      description: Statistic of the load balancer. It is available only in get functions
        by a flag
      returned: if available
      sample:
        active_connections: 0
        bytes_in: 34942398609
        bytes_out: 304777113641
        request_errors: 4
        total_connections: 21095970
      type: dict
    task_id:
      description: Active task. If None, action has been performed immediately in
        the request itself
      returned: always
      sample: 4966d73a-451a-4768-9fb7-65661f246fad
      type: str
    updated_at:
      description: Loadbalancer update datetime
      returned: always
      sample: 2020-01-24T13:57:35+0000
      type: str
    vip_address:
      description: Load balancer IP address
      returned: always
      sample: 5.5.5.5
      type: str
    vip_port_id:
      description: Port ID
      returned: always
      sample: 5eee7e6f-55d6-4044-b205-4988247d2540
      type: str
    vrrp_ips:
      description: List of VRRP IP addresses
      elements: dict
      returned: always
      sample:
      - vrrp_ip: 127.0.0.1
      type: list
  description:
  - When I(loadbalancer_id) is passed, it is a dict of resource.
  - Otherwise it is a list of dictionaries.
  returned: always
  type: complex

See also