dellemc.powerflex.dellemc_powerflex_device (1.1.1) — module

Manage device on Dell EMC PowerFlex

| "added in version" 1.1.0 of dellemc.powerflex"

Authors: Rajshree Khare (@khareRajshree) <ansible.team@dell.com>

preview | supported by community

Install collection

Install with ansible-galaxy collection install dellemc.powerflex:==1.1.1


Add to requirements.yml

  collections:
    - name: dellemc.powerflex
      version: 1.1.1

Description

Managing device on PowerFlex storage system includes adding new device, getting details of device, and removing a device.


Requirements

Usage examples

  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Add a device
  dellemc.powerflex.dellemc_powerflex_device:
    gateway_host: "{{gateway_host}}"
    username: "{{username}}"
    password: "{{password}}"
    verifycert: "{{verifycert}}"
    port: "{{port}}"
    current_pathname: "/dev/sdb"
    sds_name: "node1"
    media_type: "HDD"
    device_name: "device2"
    storage_pool_name: "pool1"
    protection_domain_name: "domain1"
    external_acceleration_type: "ReadAndWrite"
    state: "present"
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Get device details using device_id
  dellemc.powerflex.dellemc_powerflex_device:
    gateway_host: "{{gateway_host}}"
    username: "{{username}}"
    password: "{{password}}"
    verifycert: "{{verifycert}}"
    port: "{{port}}"
    device_id: "d7fe088900000000"
    state: "present"
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Get device details using (current_pathname, sds_name)
  dellemc.powerflex.dellemc_powerflex_device:
    gateway_host: "{{gateway_host}}"
    username: "{{username}}"
    password: "{{password}}"
    verifycert: "{{verifycert}}"
    port: "{{port}}"
    current_pathname: "/dev/sdb"
    sds_name: "node0"
    state: "present"
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Get device details using (current_pathname, sds_id)
  dellemc.powerflex.dellemc_powerflex_device:
    gateway_host: "{{gateway_host}}"
    username: "{{username}}"
    password: "{{password}}"
    verifycert: "{{verifycert}}"
    port: "{{port}}"
    current_pathname: "/dev/sdb"
    sds_id: "5717d71800000000"
    state: "present"
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Remove a device using device_id
  dellemc.powerflex.dellemc_powerflex_device:
   gateway_host: "{{gateway_host}}"
   username: "{{username}}"
   password: "{{password}}"
   verifycert: "{{verifycert}}"
   port: "{{port}}"
   device_id: "76eb7e2f00010000"
   state: "absent"
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Remove a device using (current_pathname, sds_id)
  dellemc.powerflex.dellemc_powerflex_device:
   gateway_host: "{{gateway_host}}"
   username: "{{username}}"
   password: "{{password}}"
   verifycert: "{{verifycert}}"
   port: "{{port}}"
   current_pathname: "/dev/sdb"
   sds_name: "node1"
   state: "absent"

Inputs

    
port:
    default: 443
    description:
    - Port number through which communication happens with PowerFlex gateway host.
    required: false
    type: int

state:
    choices:
    - present
    - absent
    description:
    - State of the device.
    required: true
    type: str

sds_id:
    description:
    - The ID of the SDS.
    - Required while adding a device.
    - Mutually exclusive with sds_name.
    type: str

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

sds_name:
    description:
    - The name of the SDS.
    - Required while adding a device.
    - Mutually exclusive with sds_id.
    type: str

username:
    description:
    - The username of the PowerFlex gateway host.
    required: true
    type: str

device_id:
    description:
    - Device ID.
    - Mutually exclusive with device_name.
    type: str

media_type:
    choices:
    - HDD
    - SSD
    - NVDIMM
    description:
    - Device media types.
    - Required while adding a device.
    type: str

verifycert:
    choices:
    - true
    - false
    default: true
    description:
    - Boolean variable to specify whether or not to validate SSL certificate.
    - True - Indicates that the SSL certificate should be verified.
    - False - Indicates that the SSL certificate should not be verified.
    required: false
    type: bool

device_name:
    description:
    - Device name.
    - Mutually exclusive with device_id.
    type: str

gateway_host:
    description:
    - IP or FQDN of the PowerFlex gateway host.
    required: true
    type: str

storage_pool_id:
    description:
    - Storage Pool ID.
    - Used while adding a storage device.
    - Media type supported are SSD and HDD.
    - Mutually exclusive with storage_pool_name, acceleration_pool_id and acceleration_pool_name.
    type: str

current_pathname:
    description:
    - Full path of the device to be added.
    - Required while adding a device.
    type: str

storage_pool_name:
    description:
    - Storage Pool name.
    - Used while adding a storage device.
    - Mutually exclusive with storage_pool_id, acceleration_pool_id and acceleration_pool_name.
    type: str

acceleration_pool_id:
    description:
    - Acceleration Pool ID.
    - Used while adding an acceleration device.
    - Media type supported are SSD and NVDIMM.
    - Mutually exclusive with acceleration_pool_name, storage_pool_name and storage_pool_id.
    type: str

protection_domain_id:
    description:
    - Protection domain ID.
    - Used while identifying a storage pool along with storage_pool_name.
    - Mutually exclusive with protection_domain_name.
    type: str

acceleration_pool_name:
    description:
    - Acceleration Pool Name.
    - Used while adding an acceleration device.
    - Media type supported are SSD and NVDIMM.
    - Mutually exclusive with storage_pool_id, storage_pool_name and acceleration_pool_name.
    type: str

protection_domain_name:
    description:
    - Protection domain name.
    - Used while identifying a storage pool along with storage_pool_name.
    - Mutually exclusive with protection_domain_id.
    type: str

external_acceleration_type:
    choices:
    - Invalid
    - None
    - Read
    - Write
    - ReadAndWrite
    description:
    - Device external acceleration types.
    - Used while adding a device.
    type: str

Outputs

changed:
  description: Whether or not the resource has changed.
  returned: always
  sample: 'false'
  type: bool
device_details:
  contains:
    accelerationPoolId:
      description: Acceleration pool ID.
      type: str
    accelerationPoolName:
      description: Acceleration pool name.
      type: str
    accelerationProps:
      description: Indicates acceleration props.
      type: str
    aggregatedState:
      description: Indicates aggregated state.
      type: str
    ataSecurityActive:
      description: Indicates ATA security active state.
      type: bool
    autoDetectMediaType:
      description: Indicates auto detection of media type.
      type: str
    cacheLookAheadActive:
      description: Indicates cache look ahead active state.
      type: bool
    capacity:
      description: Device capacity.
      type: int
    capacityLimitInKb:
      description: Device capacity limit in KB.
      type: int
    deviceCurrentPathName:
      description: Device current path name.
      type: str
    deviceOriginalPathName:
      description: Device original path name.
      type: str
    deviceState:
      description: Indicates device state.
      type: str
    deviceType:
      description: Indicates device type.
      type: str
    errorState:
      description: Indicates error state.
      type: str
    externalAccelerationType:
      description: Indicates external acceleration type.
      type: str
    fglNvdimmMetadataAmortizationX100:
      description: Indicates FGL NVDIMM meta data amortization value.
      type: int
    fglNvdimmWriteCacheSize:
      description: Indicates FGL NVDIMM write cache size.
      type: int
    firmwareVersion:
      description: Indicates firmware version.
      type: str
    id:
      description: Device ID.
      type: str
    ledSetting:
      description: Indicates LED setting.
      type: str
    links:
      contains:
        href:
          description: Device instance URL.
          type: str
        rel:
          description: Relationship of device with different entities.
          type: str
      description: Device links.
      type: list
    logicalSectorSizeInBytes:
      description: Logical sector size in bytes.
      type: int
    longSuccessfulIos:
      description: Indicates long successful IOs.
      type: list
    maxCapacityInKb:
      description: Maximum device capacity limit in KB.
      type: int
    mediaFailing:
      description: Indicates media failing.
      type: bool
    mediaType:
      description: Indicates media type.
      type: str
    modelName:
      description: Indicates model name.
      type: str
    name:
      description: Device name.
      type: str
    persistentChecksumState:
      description: Indicates persistent checksum state.
      type: str
    physicalSectorSizeInBytes:
      description: Physical sector size in bytes.
      type: int
    protectionDomainId:
      description: Protection domain ID.
      type: str
    protectionDomainName:
      description: Protection domain name.
      type: str
    raidControllerSerialNumber:
      description: RAID controller serial number.
      type: str
    rfcacheErrorDeviceDoesNotExist:
      description: Indicates RF cache error device does not exist.
      type: bool
    rfcacheProps:
      description: RF cache props.
      type: str
    sdsId:
      description: SDS ID.
      type: str
    sdsName:
      description: SDS name.
      type: str
    serialNumber:
      description: Indicates Serial number.
      type: str
    spSdsId:
      description: Indicates SPs SDS ID.
      type: str
    ssdEndOfLifeState:
      description: Indicates SSD end of life state.
      type: str
    storagePoolId:
      description: Storage Pool ID.
      type: str
    storagePoolName:
      description: Storage Pool name.
      type: str
    storageProps:
      description: Storage props.
      type: list
    temperatureState:
      description: Indicates temperature state.
      type: str
    vendorName:
      description: Indicates vendor name.
      type: str
    writeCacheActive:
      description: Indicates write cache active.
      type: bool
  description: Details of the device.
  returned: When device exists
  sample:
    accelerationPoolId: null
    accelerationProps: null
    aggregatedState: NeverFailed
    ataSecurityActive: false
    autoDetectMediaType: SSD
    cacheLookAheadActive: false
    capacity: 0
    capacityLimitInKb: 365772800
    deviceCurrentPathName: /dev/sdb
    deviceOriginalPathName: /dev/sdb
    deviceState: Normal
    deviceType: Unknown
    errorState: None
    externalAccelerationType: None
    fglNvdimmMetadataAmortizationX100: 150
    fglNvdimmWriteCacheSize: 16
    firmwareVersion: null
    id: b6efa59900000000
    ledSetting: 'Off'
    links:
    - href: /api/instances/Device::b6efa59900000000
      rel: self
    - href: /api/instances/Device::b6efa59900000000/relationships /Statistics
      rel: /api/Device/relationship/Statistics
    - href: /api/instances/Sds::8f3bb0ce00000000
      rel: /api/parent/relationship/sdsId
    - href: /api/instances/StoragePool::e0d8f6c900000000
      rel: /api/parent/relationship/storagePoolId
    - href: /api/instances/SpSds::fedf6f2000000000
      rel: /api/parent/relationship/spSdsId
    logicalSectorSizeInBytes: 0
    longSuccessfulIos:
      longWindow: null
      mediumWindow: null
      shortWindow: null
    maxCapacityInKb: 365772800
    mediaFailing: false
    mediaType: HDD
    modelName: null
    name: device230
    persistentChecksumState: Protected
    physicalSectorSizeInBytes: 0
    protectionDomainId: 9300c1f900000000
    protectionDomainName: domain1
    raidControllerSerialNumber: null
    rfcacheErrorDeviceDoesNotExist: false
    rfcacheProps: null
    sdsId: 8f3bb0ce00000000
    sdsName: node1
    serialNumber: null
    slotNumber: null
    spSdsId: fedf6f2000000000
    ssdEndOfLifeState: NeverFailed
    storagePoolId: e0d8f6c900000000
    storagePoolName: pool1
    storageProps:
      destFglAccDeviceId: null
      destFglNvdimmSizeMb: 0
      fglAccDeviceId: null
      fglNvdimmSizeMb: 0
    temperatureState: NeverFailed
    vendorName: null
    writeCacheActive: false
  type: complex