uncowandy
uncowandy

Reputation: 105

Ansible Reload Cisco Devices Hangs

I have a task that reloads a number of Cisco Routers and Cisco Firewalls. For some reason the playbook always hangs at this task after the playbook have already reloaded the first device. The reload command is actually sent to the second device and I can see the device restart but the task will eventually fail.

Output:

Task [Reload Host Device]
fatal: [firewall2]: FAILED! => {"changed: false, "msg": "command timeout triggered, timeout value is 30 secs. \nsee the timeout setting options in the Network Debug and Troubleshooting Guide."} ...ignoring

Task:

- name: Reload Host Device 
  cli_command:
    command: "reload"
    prompt:
      - "Proceed with reload?"
    answer:
      - "y"
  ignore_errors: yes

Upvotes: 1

Views: 473

Answers (1)

U880D
U880D

Reputation: 12122

According the given description, task and error message

command timeout triggered ... see the timeout setting options in the Network Debug and Troubleshooting Guide.

the devices which Ansible are connects to are going to restart faster than Ansible and the module cli_command can maintain his own connection. Meaning, close and disconnect the session.

According the Command Reference and Cisco Router: Auto restart in x seconds you may try with

- name: Schedule Host Device Reload in 1 min
  cli_command:
    command: "reload in 1"
    prompt:
      - "Proceed with reload?"
    answer:
      - "y"
  register: result

- name: Show result
  debug:
    var: result

Further Reading

An other approach which was used in the past for Linux systems

Upvotes: 1

Related Questions