У нас есть 2 специализированных поставщика, которые разрешают соединения между двумя центрами обработки данных / сетями. Когда один поставщик временно недоступен, мы должны изменить отображение маршрута stati c в обоих коммутаторах.
Ситуация 1: Сразу после отключения
Ситуация 2: Когда состояние c отображение маршрута необходимо изменить на Коммутаторе A
Для достижения Ситуация 2 у нас,
$ telnet Switch_A
> no ip route 1.1.1.0 255.255.255.0 20.1.1.1
> add ip route 1.1.1.0 255.255.255.0 30.1.1.1
Ситуация 3: Когда состояние c необходимо изменить отображение маршрута на коммутаторе B
Для достижения Ситуация 3 мы делаем,
$ telnet Switch_A
> telnet Switch_B
>> no ip route 2.2.2.0 255.255.255.0 20.1.1.2
>> add ip route 2.2.2.0 255.255.255.0 30.1.1.2
Здесь я должен набрать lnet, чтобы переключить B изнутри переключателя A, потому что поставщик Y отключен.
Я написал следующую книгу, но она дает мне ошибку. Подскажите пожалуйста как мне этого добиться используя ansible. Я не могу использовать s sh.
- name: SHOW VERSION
hosts: switch_A
connection: local
gather_facts: false
tasks:
- name: show version
telnet:
user: userA
password: *****
login_prompt: "Username: "
prompts:
- '[>|#]'
command:
- terminal length 0
- show version
- telnet:
host: 30.1.1.2 // switchB
user: userB
password: *****
login_prompt: "login: "
prompts:
- '[>|#]'
command:
- terminal length 0
- show version
Ошибка, которую я получаю:
TASK [show version] *****************************************************************************************************
An exception occurred during task execution. To see the full traceback, use -vvv. The error was: TypeError: unsupported operand type(s) for +: 'dict' and 'str'
fatal: FAILED! => {"msg": "Unexpected failure during module execution.", "stdout": ""}