dell / dellemc-openmanage-ansible-modules

Dell OpenManage Ansible Modules
GNU General Public License v3.0
335 stars 163 forks source link

Firmware Update issue #35

Closed kumaresan078 closed 4 years ago

kumaresan078 commented 5 years ago

Team,

I am trying to automate firmware upgrade with dell ansible module found below playbook not workings as expected.Can someone help to troubleshoot?

Playbook:


Results:

PLAY [all] *****

TASK [Gathering Facts] ***** ok: [192.168.2.14]

TASK [Update Firmware Inventory] *** fatal: [192.168.2.14]: FAILED! => {"changed": false, "msg": "Could not find device driver for iDRAC with IP Address: 192.168.2.14"} to retry, use: --limit @/Test/Dell-EMC-Ansible-Modules-for-iDRAC-master/examples/installfirmware.retry

PLAY RECAP ***** 192.168.2.14 : ok=1 changed=0 unreachable=0 failed=1

When running playbook with -vvvvv shows me below output

The full traceback is: File "/tmp/ansible_ODjapd/ansible_module_dellemc_idrac_firmware.py", line 203, in main with iDRACConnection(module.params) as idrac: File "/tmp/ansible_ODjapd/ansible_modlib.zip/ansible/module_utils/remote_management/dellemc/dellemc_idrac.py", line 52, in enter raise RuntimeError(msg)

fatal: [192.168.2.14]: FAILED! => { "changed": false, "invocation": { "module_args": { "catalog_file_name": "Dell_710_730_1.00_Catalog.xml", "idrac_ip": " 192.168.2.14", "idrac_port": 443, "idrac_pwd": "VALUE_SPECIFIED_IN_NO_LOG_PARAMETER", "idrac_user": "root", "job_wait": true, "reboot": false, "share_mnt": "/mnt", "share_name": "192.168.2.15:/opt/dell/dellemcrepositorymanager/export", "share_pwd": "{'required': False}", "share_user": "{'required': False}" } }, "msg": "Could not find device driver for iDRAC with IP Address: 192.168.2.14" } to retry, use: --limit @/Test/Public/Dell-EMC-Ansible-Modules-for-iDRAC-master/examples/installfirmware.retry

PLAY RECAP ***** 192.168.2.14 : ok=1 changed=0 unreachable=0 failed=1

Ansible version : 2.4.2.0 Python version : 2.7.5 dellemc-openmanage-ansible-modules-devel : 1.2

Server Model : R730 Idrac Firm : 2.52.52.52

Regards Kumar

anupamaloke commented 5 years ago

@kumaresan078, are you still facing this issue?

kumaresan078 commented 5 years ago

Hi,

Yes i still have issue.Bu this time have installed freshly on other server.

Appears to me the DRAC update firmware gets downloaded but fail with http timeout error.

fatal: [192.168.2.14]: FAILED! => { "changed": false, "invocation": { "module_args": { "catalog_file_name": "Catalog.xml", "idrac_ip": "192.168.2.14", "idrac_port": 443, "idrac_pwd": "VALUE_SPECIFIED_IN_NO_LOG_PARAMETER", "idrac_user": "root", "job_wait": true, "reboot": false, "share_mnt": "/mnt", "share_name": "192.168.2.15:/opt/dell/dellemcrepositorymanager/export", "share_pwd": null, "share_user": null } }, "msg": "Failed to update firmware.", "update_status": { "Fault.Data": { "Reason": { "Text": "HTTP Timeout error" } }, "Message": "HTTP Timeout error", "Status": "Found Client (SDK) Side Fault", "file": "192.168.2.15:/opt/dell/dellemcrepositorymanager/exportCatalog.xml", "retval": false } }

Ansible version: 2.4.2.0 OMSDK: 1.2.345 Openmanage: 1.0.2

Server Model: R630 IDRAC Firm: 2.40.40.40

Regards Kumar

anupamaloke commented 5 years ago

@kumaresan078, can you check from your iDRAC GUI whether iDRAC is able to download the catalog file and update packages?

kumaresan078 commented 5 years ago

Hi Anupa,

I can see the catalog and update packages are downloaded from DRAC GUI.However the playbook exist before downloading those packages with below error?

fatal: []: FAILED! => {"changed": false, "msg": "Failed to update firmware.", "update_status": {"Fault.Data": {"Reason": {"Text": "HTTP Timeout error"}}, "Message": "HTTP Timeout error", "Status": "Found Client (SDK) Side Fault", "file": "192.168.2.15:/opt/dell/dellemcrepositorymanager/export/Dell_1.00_Catalog.xml", "retval": false}}

ibt23sec5 commented 5 years ago

Hello,

I have reproduced the same issue on my server receiving HTTP Timeout error despite the fact that the connection outside still OK.

iDRAC version: 7 Current firmware version: 2.61.60.60

  idrac_firmware:
    idrac_ip: "{{ idrac_ip }}"
    idrac_user: "{{ idrac_user }}"
    idrac_password: "{{ idrac_password }}"
    share_name: "{{ nfs_image_path }}"
    share_mnt: "{{ dest_iso_mount_dir }}"
    reboot: True
    job_wait: True
    catalog_file_name: "Catalog.xml"

Output:

    "changed": false, 
    "invocation": {
        "module_args": {
            "catalog_file_name": "Catalog.xml", 
            "idrac_ip": "xxx.xxx.xxx.xxx", 
            "idrac_password": "VALUE_SPECIFIED_IN_NO_LOG_PARAMETER", 
            "idrac_port": 443, 
            "idrac_user": "root", 
            "job_wait": true, 
            "reboot": true, 
            "share_mnt": "/mnt/nfs-share/", 
            "share_name": "xxxxxxx:/data/nfs-share", 
            "share_password": null, 
            "share_user": null
        }
    }, 
    "msg": "Failed to update firmware.", 
    "update_status": {
        "Fault.Data": {
            "Reason": {
                "Text": "HTTP Timeout error"
            }
        }, 
        "Message": "HTTP Timeout error", 
        "Status": "Found Client (SDK) Side Fault", 
        "file": "xxxxxxx:/data/nfs-share/Catalog.xml", 
        "retval": false
    }
}
nextnely commented 5 years ago

I experienced the same issue. Have you tried resetting the idrac prior to updating the firmware?

`- name: Reset iDRAC dellemc_idrac_reset: idrac_ip: "{{ idrac_ip }}" idrac_user: "{{ idrac_user }}" idrac_password: "{{ idrac_password }}"'

'- name: Waiting for iDRAC to respond wait_for: host: "{{ idrac_ip }}" port: 443 delay: 60 connect_timeout: 300`

rajeevarakkal commented 4 years ago

Are you still facing this issue? Try once with our latestidrac_firmware module and update us

rajeevarakkal commented 4 years ago

@nextnely Closing this issue as of now since no hear back