dellemc.powermax.info (3.0.0) — module

Gathers information about PowerMax or VMAX storage entities

| "added in version" 1.0.0 of dellemc.powermax"

Authors: Arindam Datta (@dattaarindam) <ansible.team@dell.com>, Rajshree Khare (@khareRajshree) <ansible.team@dell.com>, Pavan Mudunuri (@Pavan-Mudunuri) <ansible.team@dell.com>, Trisha Datta (@trisha-dell) <ansible.team@dell.com>

Install collection

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


Add to requirements.yml

  collections:
    - name: dellemc.powermax
      version: 3.0.0

Description

Gathers the list of specified PowerMax or VMAX storage system entities, such as the list of registered arrays, storage groups, hosts, host groups, storage groups, storage resource pools, port groups, masking views, initiators, array health status, alerts and metro DR environments, so on.


Requirements

Usage examples

  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.

- name: Get list of volumes with filter -- all TDEV volumes of size equal to 5 GB
  dellemc.powermax.info:
    unispherehost: "{{unispherehost}}"
    universion: "{{universion}}"
    verifycert: "{{verifycert}}"
    user: "{{user}}"
    password: "{{password}}"
    serial_no: "{{serial_no}}"
    gather_subset:
      - vol
    filters:
      - filter_key: "tdev"
        filter_operator: "equal"
        filter_value: "True"
      - filter_key: "cap_gb"
        filter_operator: "equal"
        filter_value: "5"
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Get list of volumes and storage groups with filter
  dellemc.powermax.info:
    unispherehost: "{{unispherehost}}"
    universion: "{{universion}}"
    verifycert: "{{verifycert}}"
    user: "{{user}}"
    password: "{{password}}"
    serial_no: "{{serial_no}}"
    gather_subset:
      - vol
      - sg
    filters:
      - filter_key: "tdev"
        filter_operator: "equal"
        filter_value: "True"
      - filter_key: "cap_gb"
        filter_operator: "equal"
        filter_value: "5"
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Get list of storage groups with capacity between 2 GB to 10 GB
  dellemc.powermax.info:
    unispherehost: "{{unispherehost}}"
    universion: "{{universion}}"
    verifycert: "{{verifycert}}"
    user: "{{user}}"
    password: "{{password}}"
    serial_no: "{{serial_no}}"
    gather_subset:
      - sg
    filters:
      - filter_key: "cap_gb"
        filter_operator: "greater"
        filter_value: "2"
      - filter_key: "cap_gb"
        filter_operator: "lesser"
        filter_value: "10"
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Get the list of arrays for a given Unisphere host
  dellemc.powermax.info:
    unispherehost: "{{unispherehost}}"
    universion: "{{universion}}"
    verifycert: "{{verifycert}}"
    user: "{{user}}"
    password: "{{password}}"
  register: array_list
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Get list of TDEV-volumes
  dellemc.powermax.info:
    unispherehost: "{{unispherehost}}"
    universion: "{{universion}}"
    verifycert: "{{verifycert}}"
    user: "{{user}}"
    password: "{{password}}"
    serial_no: "{{serial_no}}"
    tdev_volumes: true
    gather_subset:
      - vol
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Get the list of arrays for a given Unisphere host
  dellemc.powermax.info:
    unispherehost: "{{unispherehost}}"
    universion: "{{universion}}"
    verifycert: "{{verifycert}}"
    user: "{{user}}"
    password: "{{password}}"
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Get array health status
  dellemc.powermax.info:
    unispherehost: "{{unispherehost}}"
    universion: "{{universion}}"
    verifycert: "{{verifycert}}"
    user: "{{user}}"
    password: "{{password}}"
    serial_no: "{{serial_no}}"
    gather_subset:
      - health
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Get array alerts summary
  dellemc.powermax.info:
    unispherehost: "{{unispherehost}}"
    universion: "{{universion}}"
    verifycert: "{{verifycert}}"
    user: "{{user}}"
    password: "{{password}}"
    serial_no: "{{serial_no}}"
    gather_subset:
      - alert
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Get the list of Metro DR environments for a given Unisphere host
  dellemc.powermax.info:
    unispherehost: "{{unispherehost}}"
    universion: "{{universion}}"
    verifycert: "{{verifycert}}"
    user: "{{user}}"
    password: "{{password}}"
    serial_no: "{{serial_no}}"
    gather_subset:
      - metro_dr_env
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Get list of storage groups
  dellemc.powermax.info:
    unispherehost: "{{unispherehost}}"
    universion: "{{universion}}"
    verifycert: "{{verifycert}}"
    user: "{{user}}"
    password: "{{password}}"
    serial_no: "{{serial_no}}"
    gather_subset:
      - sg
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Get list of Storage Resource Pools
  dellemc.powermax.info:
    unispherehost: "{{unispherehost}}"
    universion: "{{universion}}"
    verifycert: "{{verifycert}}"
    user: "{{user}}"
    password: "{{password}}"
    serial_no: "{{serial_no}}"
    gather_subset:
      - srp
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Get list of ports
  dellemc.powermax.info:
    unispherehost: "{{unispherehost}}"
    universion: "{{universion}}"
    verifycert: "{{verifycert}}"
    user: "{{user}}"
    password: "{{password}}"
    serial_no: "{{serial_no}}"
    gather_subset:
      - port
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Get list of Port Groups
  dellemc.powermax.info:
    unispherehost: "{{unispherehost}}"
    universion: "{{universion}}"
    verifycert: "{{verifycert}}"
    user: "{{user}}"
    password: "{{password}}"
    serial_no: "{{serial_no}}"
    gather_subset:
      - pg
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Get list of hosts
  dellemc.powermax.info:
    unispherehost: "{{unispherehost}}"
    universion: "{{universion}}"
    verifycert: "{{verifycert}}"
    user: "{{user}}"
    password: "{{password}}"
    serial_no: "{{serial_no}}"
    gather_subset:
      - host
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Get list of Host Groups
  dellemc.powermax.info:
    unispherehost: "{{unispherehost}}"
    universion: "{{universion}}"
    verifycert: "{{verifycert}}"
    user: "{{user}}"
    password: "{{password}}"
    serial_no: "{{serial_no}}"
    gather_subset:
      - hg
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Get list of Masking Views
  dellemc.powermax.info:
    unispherehost: "{{unispherehost}}"
    universion: "{{universion}}"
    verifycert: "{{verifycert}}"
    user: "{{user}}"
    password: "{{password}}"
    serial_no: "{{serial_no}}"
    gather_subset:
      - mv
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Get list of RDF Groups
  dellemc.powermax.info:
    unispherehost: "{{unispherehost}}"
    universion: "{{universion}}"
    verifycert: "{{verifycert}}"
    user: "{{user}}"
    password: "{{password}}"
    serial_no: "{{serial_no}}"
    gather_subset:
      - rdf
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Get list of snapshot policies
  dellemc.powermax.info:
    unispherehost: "{{unispherehost}}"
    universion: "{{universion}}"
    verifycert: "{{verifycert}}"
    user: "{{user}}"
    password: "{{password}}"
    serial_no: "{{serial_no}}"
    gather_subset:
      - snapshot_policies
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Get list of initiators
  dellemc.powermax.info:
    unispherehost: "{{unispherehost}}"
    universion: "{{universion}}"
    verifycert: "{{verifycert}}"
    user: "{{user}}"
    password: "{{password}}"
    serial_no: "{{serial_no}}"
    gather_subset:
      - initiators
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Get list of masking view connections with filter
  dellemc.powermax.info:
    unispherehost: "{{unispherehost}}"
    universion: "{{universion}}"
    verifycert: "{{verifycert}}"
    user: "{{user}}"
    password: "{{password}}"
    serial_no: "{{serial_no}}"
    gather_subset:
      - mv_connections
    filters:
      - filter_key: "logged_in"
        filter_operator: "equal"
        filter_value: "True"
      - filter_key: "cap_gb"
        filter_operator: "equal"
        filter_value: "10"

Inputs

    
user:
    description:
    - The username of the Unisphere host.
    required: true
    type: str

filters:
    description:
    - List of filters to support filtered output for storage entities.
    - Each filter is a tuple of {filter_key, filter_operator, filter_value}.
    - Supports passing of multiple filters.
    - The storage entities, 'rdf', 'health', 'snapshot_policies' and 'metro_dr_env', does
      not support filters. Filters are ignored if passed.
    elements: dict
    required: false
    suboptions:
      filter_key:
        description:
        - Name identifier of the filter.
        required: true
        type: str
      filter_operator:
        choices:
        - equal
        - greater
        - lesser
        - like
        description:
        - Operation to be performed on filter key.
        required: true
        type: str
      filter_value:
        description:
        - Value of the filter key.
        required: true
        type: str
    type: list

timeout:
    default: 120
    description:
    - Time after which the connection will get terminated.
    - It is to be mentioned in seconds.
    type: int

password:
    description:
    - The password of the Unisphere host.
    required: true
    type: str

serial_no:
    default: ''
    description:
    - The serial number of the PowerMax or VMAX array. It is not required for getting
      the list of arrays.
    required: false
    type: str

universion:
    choices:
    - 91
    - 92
    - 100
    - 101
    description:
    - Unisphere version, currently '91', '92', '100' and '101' versions are supported.
    required: false
    type: int

verifycert:
    description:
    - Specifies system whether to validate SSL certificate or not, Values can be True
      or False or a custom file path for SSL certificate with .pem extension or .cer with
      base 64 encoding.
    required: true
    type: str

tdev_volumes:
    choices:
    - true
    - false
    default: true
    description:
    - Boolean variable to filter the volume list. This has a small performance impact.
      The default setting is True and; only TDEV volumes will be returned.
    - True - Returns only the TDEV volumes.
    - False - Rreturns all the volumes.
    required: false
    type: bool

gather_subset:
    choices:
    - alert
    - health
    - vol
    - srp
    - sg
    - pg
    - host
    - hg
    - port
    - mv
    - rdf
    - metro_dr_env
    - snapshot_policies
    - initiators
    - mv_connections
    description:
    - List of string variables to specify the PowerMax or VMAX entities for which information
      is required.
    - Required only if the serial_no is present.
    - List of all PowerMax or VMAX entities supported by the module.
    - To get alert summary information - alert.
    - To get health status of a specific PowerMax array - health.
    - To get volumes - vol.
    - To get storage resource pools - srp.
    - To get storage groups - sg.
    - To get port groups - pg.
    - To get hosts - host.
    - To get host groups - hg.
    - To get ports - port.
    - To get masking views - mv.
    - To get RDF groups - rdf.
    - To get Metro DR environments - metro_dr_env.
    - To get snapshot policies - snapshot_policies.
    - To get initiators - initiators.
    - To get masking view connections - mv_connections.
    elements: str
    required: false
    type: list

unispherehost:
    description:
    - IP or FQDN of the Unisphere host
    required: true
    type: str

masking_view_name:
    description:
    - The name of the masking view to fetch the masking view connections.
    type: str

Outputs

Alerts:
  contains:
    acknowledged:
      description: Whether or not this alert is acknowledged.
      type: str
    alertId:
      description: Unique ID of alert.
      type: str
    array:
      description: The serial number of the array.
      type: str
    created_date:
      description: The creation date.
      type: str
    created_date_milliseconds:
      description: The creation date presented in milliseconds.
      type: str
    description:
      description: The description of the alert.
      type: str
    object:
      description: An object description.
      type: str
    object_type:
      description: Resource class.
      type: str
    severity:
      description: The severity of the alert.
      type: str
    state:
      description: The state of the alert.
      type: str
    type:
      description: The type of the alert.
      type: str
  description: Alert summary of the array.
  returned: When the alert exists.
  type: list
Arrays:
  description: Aviliable list of arrays in Unisphere.
  returned: When the arrays in Unisphere exist.
  type: list
Health:
  contains:
    health_score_metric:
      contains:
        cached_date:
          description: A timestamp in epoch format from the date when it was cached.
          type: int
        data_date:
          description: A timestamp in epoch format from the date it was collected.
          type: int
        expired:
          description: A flag to indicate the expiry of the score.
          type: bool
        health_score:
          description: An overall health score in numbers.
          type: int
        instance_metrics:
          contains:
            health_score_instance_metric:
              description: The health score of a specific instance.
              type: int
          description: Metrics about a specific instance.
          type: list
        metric:
          description: Information about the sub-system , such as SYSTEM_UTILIZATION,
            CONFIGURATION,CAPACITY, and so on.
          type: str
      description: An overall health score for the specified storage system.
      type: list
    num_failed_disks:
      description: Numbers of the disk failure in this system.
      type: int
  description: The health status of the array.
  returned: When the array exist.
  type: complex
HostGroups:
  description: A list of Host Groups present on the array.
  returned: When the hostgroups exist.
  type: list
Hosts:
  description: A list of hosts present on the array.
  returned: When the hosts exist.
  type: list
Initiators:
  description: A list of initiators on the array.
  returned: When an initiator exists.
  type: list
MVConnections:
  contains:
    connections:
      description: A list of the masking view connections.
      type: list
    masking_view_id:
      description: The ID of the masking view.
      type: str
  description: A list of the masking view connections on the array.
  returned: When the masking view connections exists.
  sample:
    masking_view_connections:
    - alias: 100000xxxx/100000xxxxxxxxx
      cap_gb: '10.0'
      dir_port: XX-XX:11
      host_lun_address: '0001'
      initiatorId: 100000aaaaaaa
      logged_in: true
      on_fabric: true
      volumeId: 000XX
    masking_view_id: mv-id-1
  type: complex
MaskingViews:
  description: A list of masking views present on the array.
  returned: When the masking views exist.
  type: list
MetroDREnvironments:
  description: A list of Metro DR environments on the array.
  returned: When an environment exists.
  type: list
PortGroups:
  description: A list of Port Groups on the array.
  returned: When the Port Groups exist.
  type: list
Ports:
  contains:
    directorId:
      description: The director ID of the port.
      type: str
    portId:
      description: The number of the port.
      type: str
  description: A list of ports on the array.
  returned: When the ports exist.
  type: complex
RDFGroups:
  contains:
    label:
      description: Name of the RDF group.
      type: str
    rdfgNumber:
      description: An unique identifier of the RDF group.
      type: int
  description: A list of RDF groups on the array.
  returned: When the RDF groups exist.
  type: complex
SnapshotPolicies:
  description: A list of the snapshot policies on the array.
  returned: When a snapshot policy exists.
  type: list
StorageGroups:
  description: A list of storage groups on the array.
  returned: When the storage groups exist.
  type: list
StorageResourcePools:
  contains:
    diskGroupId:
      description: The ID of the disk group.
      type: list
    emulation:
      description: The type of volume emulation.
      type: str
    num_of_disk_groups:
      description: The number of disk groups.
      type: int
    rdfa_dse:
      description: A flag for RDFA Delta Set Extension.
      type: bool
    reserved_cap_percent:
      description: The reserved capacity percentage.
      type: int
    srpId:
      description: An unique Identifier for SRP.
      type: str
    srp_capacity:
      contains:
        effective_used_capacity_percent:
          description: The percentage of effectively used capacity.
          type: int
        snapshot_modified_tb:
          description: The snapshot modified in TB.
          type: int
        snapshot_total_tb:
          description: The total snapshot size in TB.
          type: int
        subscribed_allocated_tb:
          description: Subscribed allocated size in TB.
          type: int
        subscribed_total_tb:
          description: Subscribed total size in TB.
          type: int
        usable_total_tb:
          description: The usable total size in TB.
          type: int
        usable_used_tb:
          description: The usable used size in TB.
          type: int
      description: The different entities to measure SRP capacity.
      type: dict
    srp_efficiency:
      contains:
        compression_state:
          description: Depicts the compression state of the SRP.
          type: str
        data_reduction_enabled_percent:
          description: The percentage of data reduction enabled in the SRP.
          type: int
        data_reduction_ratio_to_one:
          description: The data reduction ratio of SRP.
          type: int
        overall_efficiency_ratio_to_one:
          description: The overall efficiency ratio of SRP.
          type: int
        snapshot_savings_ratio_to_one:
          description: The snapshot savings ratio of SRP.
          type: int
        virtual_provisioning_savings_ratio_to_one:
          description: The virtual provisioning savings ratio of SRP.
          type: int
      description: The different entities to measure SRP efficiency.
      type: dict
    total_srdf_dse_allocated_cap_gb:
      description: The total SRDF DSE allocated capacity in GB.
      type: int
  description: A list of storage pools on the array.
  returned: When the storage pools exist.
  type: complex
Volumes:
  description: A list of volumes on the array.
  returned: When the volumes exist.
  type: list