dellemc.powerstore.nasserver (3.2.0) — module

NAS Server operations for PowerStore Storage system

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

Authors: Arindam Datta (@dattaarindam) <ansible.team@dell.com>, Jennifer John (@johnj9) <ansible.team@dell.com>

Install collection

Install with ansible-galaxy collection install dellemc.powerstore:==3.2.0


Add to requirements.yml

  collections:
    - name: dellemc.powerstore
      version: 3.2.0

Description

Supports getting the details, creating, modifying the attributes of a NAS server and deleting a NAS server.


Requirements

Usage examples

  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Create a NAS Server
  dellemc.powerstore.nasserver:
    array_ip: "{{ array_ip }}"
    validate_certs: "{{ validate_certs }}"
    user: "{{ user }}"
    password: "{{ password }}"
    nas_server_name: "test-nas-server"
    description: "NAS Server test"
    current_unix_directory_service: "LDAP"
    default_unix_user: "user1"
    default_windows_user: "user2"
    is_username_translation_enabled: true
    is_auto_user_mapping_enabled: true
    protection_policy: "ansible_policy"
    state: "present"
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Get details of NAS Server by name
  dellemc.powerstore.nasserver:
    array_ip: "{{ array_ip }}"
    validate_certs: "{{ validate_certs }}"
    user: "{{ user }}"
    password: "{{ password }}"
    nas_server_name: "{{ nas_server_name }}"
    state: "present"
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Get Details of NAS Server by ID
  dellemc.powerstore.nasserver:
    array_ip: "{{ array_ip }}"
    validate_certs: "{{ validate_certs }}"
    user: "{{ user }}"
    password: "{{ password }}"
    nas_server_id: "{{ nas_id }}"
    state: "present"
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Rename NAS Server by Name
  dellemc.powerstore.nasserver:
    array_ip: "{{ array_ip }}"
    validate_certs: "{{ validate_certs }}"
    user: "{{ user }}"
    password: "{{ password }}"
    nas_server_name: "{{ nas_server_name }}"
    nas_server_new_name: "{{ nas_server_new_name }}"
    state: "present"
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Modify NAS Server attributes by ID
  dellemc.powerstore.nasserver:
    array_ip: "{{ array_ip }}"
    validate_certs: "{{ validate_certs }}"
    user: "{{ user }}"
    password: "{{ password }}"
    nas_server_id: "{{ nas_id }}"
    current_unix_directory_service: "LOCAL_FILES"
    current_node: "{{ cur_node_n1 }}"
    preferred_node: "{{ prefered_node }}"
    protection_policy: "protection_policy_1"
    state: "present"
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Remove protection policy
  dellemc.powerstore.nasserver:
    array_ip: "{{ array_ip }}"
    validate_certs: "{{ validate_certs }}"
    user: "{{ user }}"
    password: "{{ password }}"
    nas_server_id: "{{ nas_id }}"
    protection_policy: ""
    state: "present"
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Delete NAS Server
  dellemc.powerstore.nasserver:
    array_ip: "{{ array_ip }}"
    validate_certs: "{{ validate_certs }}"
    user: "{{ user }}"
    password: "{{ password }}"
    nas_server_id: "{{ nas_id }}"
    state: "absent"

Inputs

    
port:
    description:
    - Port number for the PowerStore array.
    - If not passed, it will take 443 as default.
    type: int

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

state:
    choices:
    - absent
    - present
    description:
    - Define whether the nas server should exist or not.
    required: true
    type: str

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

array_ip:
    description:
    - IP or FQDN of the PowerStore management system.
    required: true
    type: str

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

description:
    description:
    - Description of the NAS server.
    type: str

current_node:
    description:
    - Unique identifier or name of the node on which the NAS server is running.
    type: str

nas_server_id:
    description:
    - Unique id of the NAS server. Mutually exclusive with I(nas_server_name).
    type: str

preferred_node:
    description:
    - Unique identifier or name of the preferred node for the NAS server. The initial
      value (on NAS server create) is taken from the current node.
    type: str

validate_certs:
    aliases:
    - verifycert
    default: true
    description:
    - Boolean variable to specify whether to validate SSL certificate or not.
    - C(true) - indicates that the SSL certificate should be verified. Set the environment
      variable REQUESTS_CA_BUNDLE to the path of the SSL certificate.
    - C(false) - indicates that the SSL certificate should not be verified.
    type: bool

nas_server_name:
    description:
    - Name of the NAS server. Mutually exclusive with I(nas_server_id).
    type: str

default_unix_user:
    description:
    - Default Unix user name used for granting access in case of Windows to Unix user
      mapping failure. When empty, access in such case is denied.
    type: str

protection_policy:
    description:
    - Name/ID of the protection policy applied to the nas server.
    - Policy can be removed by passing an empty string in the I(protection_policy) parameter.
    type: str

nas_server_new_name:
    description:
    - New name of the NAS server for a rename operation.
    type: str

default_windows_user:
    description:
    - Default Windows user name used for granting access in case of Unix to Windows user
      mapping failure. When empty, access in such case is denied.
    type: str

is_auto_user_mapping_enabled:
    description:
    - To automatically generate the unix user (uid), if the windows user does not have
      any in the configured Unix Directory Service (UDS).
    - In a pure SMB or non multi-protocol environment, this should be set to true.
    type: bool
    version_added: 2.2.0
    version_added_collection: dellemc.powerstore

current_unix_directory_service:
    choices:
    - NIS
    - LDAP
    - LOCAL_FILES
    - LOCAL_THEN_NIS
    - LOCAL_THEN_LDAP
    description:
    - Define the Unix directory service used for looking up identity information for Unix
      such as UIDs, GIDs, net groups, and so on.
    type: str

is_username_translation_enabled:
    description:
    - Enable the possibility to match a Windows account with an Unix account with different
      names.
    type: bool
    version_added: 2.2.0
    version_added_collection: dellemc.powerstore

Outputs

changed:
  description: Whether or not the resource has changed.
  returned: always
  sample: 'false'
  type: bool
nasserver_details:
  contains:
    backup_IPv4_interface_id:
      description: Unique identifier of the preferred IPv4 backup interface.
      type: str
    backup_IPv6_interface_id:
      description: Unique identifier of the preferred IPv6 backup interface.
      type: str
    current_node:
      description: Unique identifier and name of the node on which the NAS server
        is running.
      type: dict
    current_unix_directory_service:
      description: Define the Unix directory service used for looking up identity
        information for Unix such as UIDs, GIDs, net groups, and so on.
      type: str
    default_unix_user:
      description: Default Unix user name used for granting access in case of Windows
        to Unix user mapping failure.
      type: str
    description:
      description: Additional information about the nas server.
      type: str
    file_interfaces:
      description: This is the inverse of the resource type file_interface association.
        Will return the id,name & ip_address of the associated file interface.
      type: dict
    file_ldaps:
      description: This is the inverse of the resource type file_ldap association.
      type: str
    file_systems:
      description: This is the inverse of the resource type file_system association.
      type: dict
    id:
      description: The system generated ID given to the nas server.
      type: str
    is_username_translation_enabled:
      description: Enable the possibility to match a windows account to a Unix account
        with different names.
      type: bool
    name:
      description: Name of the nas server.
      type: str
    nfs_servers:
      description: This is the inverse of the resource type nfs_server association.
      type: str
    operational_status:
      description: NAS server operational status.
      type: str
    preferred_node:
      description: Unique identifier and name of the preferred node for the NAS server.
      type: dict
    production_IPv4_interface_id:
      description: Unique identifier of the preferred IPv4 production interface.
      type: str
    production_IPv6_interface_id:
      description: Unique identifier of the preferred IPv6 production interface.
      type: str
    protection_policy_id:
      description: Id of the protection policy applied to the nas server.
      type: str
    smb_servers:
      description: This is the inverse of the resource type smb_server association.
      type: str
  description: Details about the nas server.
  returned: When nas server exists
  sample:
    backup_IPv4_interface_id: null
    backup_IPv6_interface_id: null
    current_node:
      id: N2
      name: Appliance-WND8977-node-B
    current_node_id: Appliance-WND8977-node-B
    current_preferred_IPv4_interface_id: 60c02-b5d8-9d9b-7e6f-feb93c9
    current_preferred_IPv6_interface_id: null
    current_unix_directory_service: LDAP
    current_unix_directory_service_l10n: LDAP
    default_unix_user: null
    default_windows_user: null
    description: ''
    file_interfaces:
    - id: 0c05652-b5d8-9d9b-7e6f-fe8be1eb93c9
      ip_address: 1.2.3.4
      name: PROD001_827ee18708a9_6
    file_ldaps:
    - id: 60c05ba8-362e-159a-0205-ee6f605dfe5a
    file_nises: []
    file_systems:
    - id: 61c55b57-4a70-08dd-a240-96e8abdcbab0
      name: sample_fs
    id: 60c0564a-4a6e-04b6-4d5e-fe8be1eb93c9
    is_auto_user_mapping_enabled: true
    is_username_translation_enabled: false
    name: ansible_nas_server_2
    nfs_servers:
    - id: 60c05653-4fd3-2033-2da0-ee6f605dfe5a
    operational_status: Started
    operational_status_l10n: Started
    preferred_node:
      id: N2
      name: Appliance-WND8977-node-B
    preferred_node_id: Appliance-WND8977-node-B
    production_IPv4_interface_id: 60c05652-b5d8-9d9b-7e6f-fe8be1eb93c
    production_IPv6_interface_id: null
    protection_policy_id: null
    smb_servers:
    - id: 60c05c18-6806-26ae-3b0d-fe8be1eb93c
  type: complex