dellemc.powerscale.networkpool (3.0.0) — module

Manages Network Pools on PowerScale Storage System

| "added in version" 1.4.0 of dellemc.powerscale"

Authors: Meenakshi Dembi (@dembim) <ansible.team@dell.com>, Pavan Mudunuri (@Pavan-Mudunuri) <ansible.team@dell.com>, Bhavneet Sharma (@Bhavneet-Sharma) <ansible.team@dell.com>

Install collection

Install with ansible-galaxy collection install dellemc.powerscale:==3.0.0


Add to requirements.yml

  collections:
    - name: dellemc.powerscale
      version: 3.0.0

Description

Managing Network Pools on the PowerScale Storage System includes creating, modifying, deleting and reterving details of network pool.


Requirements

Usage examples

  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Create Network Pool
  dellemc.powerscale.networkpool:
    onefs_host: "{{onefs_host}}"
    api_user: "{{api_user}}"
    api_password: "{{api_password}}"
    verify_ssl: "{{verify_ssl}}"
    groupnet: "groupnet0"
    subnet: "subnet0"
    additional_pool_params:
    ranges:
      - low: "10.230.**.***"
        high: "10.230.**.***"
    range_state: "add"
    ifaces:
      - iface: "ext-1"
        lnn: 1
    iface_state: "add"
    sc_params:
      sc_dns_zone: "10.230.**.***"
      sc_connect_policy: "throughput"
      sc_failover_policy: "throughput"
      rebalance_policy: "auto"
      alloc_method: "static"
      sc_auto_unsuspend_delay: 200
      sc_ttl: 200
      sc_dns_zone_aliases:
        - "Test"
      static_routes:
        - gateway: "10.**.**.**"
          prefix_len: 21
          subnet: "10.**.**.**"
          route_state: "add"
    pool: "Test_Pool_2"
    access_zone: "system"
    state: "present"
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Get Network Pool
  dellemc.powerscale.networkpool:
    onefs_host: "{{onefs_host}}"
    api_user: "{{api_user}}"
    api_password: "{{api_password}}"
    verify_ssl: "{{verify_ssl}}"
    groupnet: "groupnet0"
    subnet: "subnet0"
    pool: "Test_Pool_2"
    state: "present"
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Modify Network Pool
  dellemc.powerscale.networkpool:
    onefs_host: "{{onefs_host}}"
    api_user: "{{api_user}}"
    api_password: "{{api_password}}"
    verify_ssl: "{{verify_ssl}}"
    groupnet: "groupnet0"
    subnet: "subnet0"
    pool: "Test_Pool_2"
    additional_pool_params:
      ranges:
        - low: "10.230.**.***"
          high: "10.230.**.***"
      range_state: "add"
      ifaces:
        - iface: "ext-1"
          lnn: 1
      iface_state: "add"
    sc_params:
      sc_dns_zone: "10.230.**.***"
      sc_connect_policy: "throughput"
      sc_failover_policy: "throughput"
      rebalance_policy: "auto"
      alloc_method: "static"
      sc_auto_unsuspend_delay: 200
      sc_ttl: 200
      sc_dns_zone_aliases:
        - "Test"
      static_routes:
        - gateway: "10.**.**.**"
          prefix_len: 21
          subnet: "10.**.**.**"
          route_state: "remove"
        - gateway: "10.**.**.**"
          prefix_len: 24
          subnet: "10.**.**.**"
          route_state: "add"
      aggregation_mode: "fec"
    description: "Pool Created by Ansible Modify"
    state: "present"
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Delete Network Pool
  dellemc.powerscale.networkpool:
    onefs_host: "{{onefs_host}}"
    api_user: "{{api_user}}"
    api_password: "{{api_password}}"
    verify_ssl: "{{verify_ssl}}"
    groupnet: "groupnet0"
    subnet: "subnet0"
    pool: "Test_Pool_2"
    state: "absent"
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Rename a network Pool
  dellemc.powerscale.networkpool:
    onefs_host: "{{onefs_host}}"
    api_user: "{{api_user}}"
    api_password: "{{api_password}}"
    verify_ssl: "{{verify_ssl}}"
    groupnet_name: "groupnet0"
    subnet_name: "subnet0"
    pool_name: "Test_Pool"
    new_pool_name: "Test_Pool_Rename"
    state: "present"

Inputs

    
state:
    choices:
    - absent
    - present
    description:
    - The state option is used to mention the existence of pool.
    required: true
    type: str

port_no:
    default: '8080'
    description:
    - Port number of the PowerScale cluster.It defaults to 8080 if not specified.
    required: false
    type: str

api_user:
    description:
    - username of the PowerScale cluster.
    required: true
    type: str

pool_name:
    description:
    - The Name of the pool.
    required: true
    type: str

sc_params:
    description:
    - SmartConnect Parameters.
    suboptions:
      aggregation_mode:
        choices:
        - roundrobin
        - failover
        - lacp
        - fec
        description:
        - OneFS supports the following C(NIC) aggregation modes.
        type: str
      alloc_method:
        choices:
        - dynamic
        - static
        description:
        - Specifies how IP address allocation is done among pool members.
        type: str
      rebalance_policy:
        choices:
        - auto
        - manual
        description:
        - Rebalance policy.
        type: str
      sc_auto_unsuspend_delay:
        description:
        - Time delay in seconds before a node which has been automatically unsuspended
          becomes usable in SmartConnect responses for pool zones.
        type: int
      sc_connect_policy:
        choices:
        - round_robin
        - conn_count
        - throughput
        - cpu_usage
        description:
        - SmartConnect client connection balancing policy.
        type: str
      sc_dns_zone:
        description:
        - SmartConnect zone name for the pool.
        type: str
      sc_dns_zone_aliases:
        description:
        - List of SmartConnect zone aliases (DNS names) to the pool.
        elements: str
        type: list
      sc_failover_policy:
        choices:
        - round_robin
        - conn_count
        - throughput
        - cpu_usage
        description:
        - SmartConnect IP failover policy.
        type: str
      sc_subnet:
        description:
        - Name of SmartConnect service subnet for this pool.
        type: str
      sc_ttl:
        description:
        - Time to live value for SmartConnect DNS query responses in seconds.
        type: int
      static_routes:
        description:
        - List of static routes in the pool.
        elements: dict
        suboptions:
          gateway:
            description:
            - Address of the gateway in the format yyy.yyy.yyy.yyy.
            required: true
            type: str
          prefix_len:
            description:
            - The subnet mask length.
            required: true
            type: int
          route_state:
            choices:
            - add
            - remove
            default: add
            description:
            - This signifies if route needs to be added or removed.
            type: str
          subnet:
            description:
            - Network address in the format xxx.xxx.xxx.xxx.
            required: true
            type: str
        type: list
    type: dict

onefs_host:
    description:
    - IP address or FQDN of the PowerScale cluster.
    required: true
    type: str

verify_ssl:
    choices:
    - true
    - false
    description:
    - boolean variable to specify whether to validate SSL certificate or not.
    - C(true) - indicates that the SSL certificate should be verified.
    - C(false) - indicates that the SSL certificate should not be verified.
    required: true
    type: bool

access_zone:
    description:
    - Name of access zone to be associated with pool.
    type: str

description:
    description:
    - Description of the pool.
    type: str

subnet_name:
    description:
    - The name of the subnet.
    required: true
    type: str

api_password:
    description:
    - the password of the PowerScale cluster.
    required: true
    type: str

groupnet_name:
    description:
    - The name of the groupnet.
    required: true
    type: str

new_pool_name:
    description:
    - Name of the pool when renaming an existing pool.
    type: str

additional_pool_params:
    description:
    - Define additional parameters for pool.
    suboptions:
      iface_state:
        choices:
        - add
        - remove
        description:
        - This signifies if interface needs to be added or removed.
        type: str
      ifaces:
        description:
        - List of Pool interface members.
        elements: dict
        suboptions:
          iface:
            description:
            - Pool interface members
            type: str
          lnn:
            description:
            - Logical Node Number
            type: int
        type: list
      range_state:
        choices:
        - add
        - remove
        description:
        - This signifies if range needs to be added or removed.
        type: str
      ranges:
        description:
        - List of IP address ranges in this pool.
        elements: dict
        suboptions:
          high:
            description:
            - Upper limit.
            type: str
          low:
            description:
            - Lower limit.
            type: str
        type: list
    type: dict

Outputs

changed:
  description: Whether or not the resource has changed.
  returned: always
  sample: 'false'
  type: bool
pools:
  contains:
    access_zone:
      description: Name of a valid access zone to map IP address pool to the zone.
      type: str
    addr_family:
      description: IP address format.
      type: str
    aggregation_mode:
      description: OneFS supports the following NIC aggregation modes.
      type: str
    alloc_method:
      description: Specifies how IP address allocation is done among pool members.
      type: str
    description:
      description: A description of the pool.
      type: str
    groupnet:
      description: Name of the groupnet this pool belongs to.
      type: str
    id:
      description: Unique Pool ID.
      type: str
    ifaces:
      description: List of interface members in this pool.
      type: str
    name:
      description: The name of the pool. It must be unique throughout the given subnet.
        It's a required field with POST method.
      type: str
    ranges:
      description: List of IP address ranges in this pool.
      type: str
    rebalance_policy:
      description: Rebalance policy.
      type: str
    sc_auto_unsuspend_delay:
      description: Time delay in seconds before a node which has been automatically
        unsuspended becomes usable in SmartConnect responses for pool zones.
      type: int
    sc_connect_policy:
      description: SmartConnect client connection balancing policy.
      type: str
    sc_dns_zone:
      description: SmartConnect zone name for the pool.
      type: str
    sc_dns_zone_aliases:
      description: List of SmartConnect zone aliases (DNS names) to the pool.
      type: list
    sc_failover_policy:
      description: SmartConnect IP failover policy.
      type: str
    sc_subnet:
      description: Name of SmartConnect service subnet for this pool.
      type: str
    sc_suspended_nodes:
      description: List of LNNs showing currently suspended nodes in SmartConnect.
      type: list
    sc_ttl:
      description: Time to live value for SmartConnect DNS query responses in seconds.
      type: int
    static_routes:
      description: List of static routes in the pool.
      type: list
    subnet:
      description: The name of the subnet.
      type: str
  description: Details of the network pool.
  returned: always
  sample:
    pools:
    - access_zone: System
      addr_family: ipv4
      aggregation_mode: roundrobin
      alloc_method: static
      description: ''
      groupnet: groupnet0
      id: groupnet0.subnet0.Test_10
      ifaces: []
      name: Test_10
      nfsv3_rroce_only: false
      ranges: []
      rebalance_policy: auto
      rules: []
      sc_auto_unsuspend_delay: 0
      sc_connect_policy: round_robin
      sc_dns_zone: 10.**.**.**
      sc_dns_zone_aliases:
      - Testststst
      - tesrtdsb1
      sc_failover_policy: round_robin
      sc_subnet: ''
      sc_suspended_nodes: []
      sc_ttl: 0
      static_routes:
      - gateway: 10.**.**.**
        prefixlen: 21
        subnet: 10.**.**.**
      subnet: subnet0
  type: complex