Skip to content

Read timeout / Error using REST for version #347

Description

@robertattenberger

Summary

Occasionally, when using netapp.ontap modules, I receive error messages like that:

Error using REST for version, error: HTTPSConnectionPool(host='XXXXXXXXXXXXXXX', port=443): Read timed out. (read timeout=60). Error using REST for version, status_code: None.

Error getting lun_map /vol/XXXXXXXX/XXXXXXXX: calling: protocols/san/lun-maps: got HTTPSConnectionPool(host='XXXXXXXXXXXXXXXXXXX', port=443): Read timed out. (read timeout=60).

The error occurs with a wide variety of modules across different playbooks. In most cases, playbook execution is successful; only occasionally do playbooks fail.

Component Name

netapp.ontap

Ansible Version

Ansible-core: 2.18.16
Python: 3.12

ONTAP Collection Version

23.4.0

ONTAP Version

NetApp Release 9.16.1P12: Wed Mar 11 12:37:44 UTC 2026

Playbook

- name: Netzwerkinfos des VServer ermitteln
  netapp.ontap.na_ontap_rest_info:
    fields: "*"
    gather_subset:
      - "network/fc/interfaces"
      - "network/ip/service-policies"
      - "network/ip/interfaces"
      - "network/ip/routes"
    hostname: "XXXXXXXXXXXXXXXXXXXX"
    https: true
    max_records: 1000000
    parameters:
      svm.name: "MYSVM"
    password: "XXXXXXXXXXXXXXXXXX"
    use_python_keys: true
    use_rest: always
    username: "XXXXXXXXXXXXXXXXXXXXXX"
    validate_certs: false
  delegate_to: localhost
  register: __manage_vserver_networkconfig__network_infos

-----------------------

- name: LUN-Mappings konfigurieren
  netapp.ontap.na_ontap_lun_map:
    hostname: "XXXXXXXXXXXXXXXXXXXXXX"
    https: "true"
    initiator_group_name: "myinitiator"
    lun_id: "54"
    password: "XXXXXXXXXXXXXXXXXXX"
    path: "/vol/XXXXXXXX/XXXXXXXX"
    state: present
    use_rest: always
    username: "XXXXXXXXXXXXXXXXXXXX"
    validate_certs: false
    vserver: MYSVM
  loop: "{{ lunmappings }}"
  loop_control:
    loop_var: lunmapping
  register: __manage_vserver_lunmappings__log
  delegate_to: localhost

Steps to Reproduce

---
- name: Netzwerkinfos des VServer ermitteln
  netapp.ontap.na_ontap_rest_info:
    fields: "*"
    gather_subset:
      - "network/fc/interfaces"
      - "network/ip/service-policies"
      - "network/ip/interfaces"
      - "network/ip/routes"
    hostname: "XXXXXXXXXXXXXXXXXXXX"
    https: true
    max_records: 1000000
    parameters:
      svm.name: "MYSVM"
    password: "XXXXXXXXXXXXXXXXXX"
    use_python_keys: true
    use_rest: always
    username: "XXXXXXXXXXXXXXXXXXXXXX"
    validate_certs: false
  delegate_to: localhost
  register: __manage_vserver_networkconfig__network_infos


- name: LUN-Mappings konfigurieren
  netapp.ontap.na_ontap_lun_map:
    hostname: "XXXXXXXXXXXXXXXXXXXXXX"
    https: "true"
    initiator_group_name: "myinitiator"
    lun_id: "54"
    password: "XXXXXXXXXXXXXXXXXXX"
    path: "/vol/XXXXXXXX/XXXXXXXX"
    state: present
    use_rest: always
    username: "XXXXXXXXXXXXXXXXXXXX"
    validate_certs: false
    vserver: MYSVM
  loop: "{{ lunmappings }}"
  loop_control:
    loop_var: lunmapping
  register: __manage_vserver_lunmappings__log
  delegate_to: localhost

Expected Results

I expected that the informations are collected / the action is done reliable successful, but sometimes it fails.

Actual Results

{
  "msg": "Error using REST for version, error: HTTPSConnectionPool(host='XXXXXXXXXXXXXXXXXXXX', port=443): Read timed out. (read timeout=60).  Error using REST for version, status_code: None.",
  "invocation": {
    "module_args": {
      "fields": [
        "*"
      ],
      "gather_subset": [
        "network/fc/interfaces",
        "network/ip/service-policies",
        "network/ip/interfaces",
        "network/ip/routes"
      ],
      "hostname": "XXXXXXXXXXXXXXXXXXXX",
      "https": true,
      "max_records": 1000000,
      "parameters": {
        "svm.name": "MYSVM"
      },
      "password": "VALUE_SPECIFIED_IN_NO_LOG_PARAMETER",
      "use_python_keys": true,
      "use_rest": "always",
      "username": "XXXXXXXXXXXXXXXXXXXXXX",
      "validate_certs": false,
      "use_lambda": false,
      "hal_linking": true,
      "http_port": null,
      "feature_flags": null,
      "cert_filepath": null,
      "key_filepath": null,
      "force_ontap_version": null,
      "state": null,
      "owning_resource": null,
      "ignore_api_errors": null
    }
  },
  "_ansible_no_log": false,
  "changed": false,
  "_ansible_delegated_vars": {
    "ansible_host": "localhost",
    "ansible_port": null,
    "ansible_user": "XXXXXXXXXXXX",
    "ansible_connection": "local"
  }
}


-----------------------


{
  "msg": "Error getting lun_map /vol/XXXXXXXX/XXXXXXXX: calling: protocols/san/lun-maps: got HTTPSConnectionPool(host='XXXXXXXXXXXXXXXXXXXXXX', port=443): Read timed out. (read timeout=60).",
  "invocation": {
    "module_args": {
      "hostname": "XXXXXXXXXXXXXXXXXXXXXX",
      "https": true,
      "initiator_group_name": "myinitiator",
      "lun_id": "54",
      "password": "VALUE_SPECIFIED_IN_NO_LOG_PARAMETER",
      "path": "/vol/XXXXXXXX/XXXXXXXX",
      "state": "present",
      "use_rest": "always",
      "username": "automation",
      "validate_certs": false,
      "vserver": "MYSVM",
      "use_lambda": false,
      "http_port": null,
      "ontapi": null,
      "feature_flags": null,
      "cert_filepath": null,
      "key_filepath": null,
      "force_ontap_version": null,
      "lambda_config": null
    }
  },
  "_ansible_no_log": false,
  "changed": false,
  "lunmapping": {
    "vserver_name": "MYSVM",
    "vol_name": "XXXXXXXX",
    "qtree_name": "",
    "lun_name": "XXXXXXXX",
    "lun_id": 54,
    "cluster_name": "MYSVM",
    "initiator_group_name": "myinitiator",
    "lun_path": "/vol/XXXXXXXX/XXXXXXXX"
  },
  "ansible_loop_var": "lunmapping",
  "_ansible_item_label": {
    "vserver_name": "MYSVM",
    "vol_name": "XXXXXXXX",
    "qtree_name": "",
    "lun_name": "XXXXXXXX",
    "lun_id": 54,
    "cluster_name": "MYSVM",
    "initiator_group_name": "myinitiator",
    "lun_path": "/vol/XXXXXXXX/XXXXXXXX"
  },
  "_ansible_delegated_vars": {
    "ansible_host": "localhost",
    "ansible_port": null,
    "ansible_user": "XXXXXXXXXXXXXXXXXXX",
    "ansible_connection": "local"
  }
}

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions