Puncte:1

Comanda Ansible Ad-Hoc - modulul brut nu funcționează pe dispozitivele Cisco IOS

drapel us

încercând să folosesc comenzi ad-hoc atât pe routerul meu Cisco ios, cât și pe comutatorul meu -m crud Modul. Dar obținem următoarea eroare în schimb.

$ansible -i inventory_file02.ini netgrp -m raw -a „afișează versiunea” -u abdo -K

Eroare====

DEVENI parola: 
R1 | EȘUT | rc=127 >>
/bin/sh: 1: arată: nu a fost găsit
cod de returnare diferit de zero
SW1 | EȘUT | rc=127 >>
/bin/sh: 1: arată: nu a fost găsit
cod de returnare diferit de zero

Fișier de inventar=====

R1 ansible_host=192.168.20.1
SW1 ansible_host=192.168.10.2

[netgrp]
R1
SW1

group_vars/netgrp.yml===

---
ansible_connection: network_cli
ansible_network_os: ios
ansible_user: abdo
parola_absible: kali/abdo
ansible_become: da
ansible_become_method: activare
ansible_ssh_pass: kali/abdo

$ ansible -i inventory_file02.ini netgrp -m raw -a „afișați versiunea” -u abdo -kK -vvv

ansible [core 2.12.6]
  fișier de configurare = /etc/ansible/ansible.cfg
  cale de căutare a modulului configurat = ['/home/kali/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
  Locația modulului python ansible = /usr/local/lib/python3.10/dist-packages/ansible
  Locație de colectare ansible = /home/kali/.ansible/collections:/usr/share/ansible/collections
  locație executabilă = /usr/local/bin/ansible
  versiunea python = 3.10.4 (principal, 24 martie 2022, 13:07:27) [GCC 11.2.0]
  versiunea jinja = 3.0.3
  libyaml = Adevărat
Folosind /etc/ansible/ansible.cfg ca fișier de configurare
Parola SSH: 
DEVENI parolă [implicit la parola SSH]: 
host_list a refuzat analizarea /home/kali/ansible_play01/net_play02/inventory_file02.ini deoarece nu a trecut metoda sa verify_file()                                                                                                        
scriptul a refuzat analizarea /home/kali/ansible_play01/net_play02/inventory_file02.ini deoarece nu a trecut metoda sa verify_file()                                                                                                           
a refuzat automat analizarea /home/kali/ansible_play01/net_play02/inventory_file02.ini deoarece nu a trecut metoda sa verify_file()                                                                                                             
yaml a refuzat analizarea /home/kali/ansible_play01/net_play02/inventory_file02.ini deoarece nu a trecut metoda sa verify_file()                                                                                                             
Sursa de inventar /home/kali/ansible_play01/net_play02/inventory_file02.ini analizată cu pluginul ini
Omiterea apelului înapoi „implicit”, deoarece avem deja un apel invers stdout.
Sari peste apel invers „minimal”, deoarece avem deja un apel invers stdout.
Se omite apelul invers „oneline”, deoarece avem deja un apel invers stdout.
META: conducătorii de conducere
redirecționare (tip: conexiune) ansible.builtin.network_cli către ansible.netcommon.network_cli
redirecționare (tip: conexiune) ansible.builtin.network_cli către ansible.netcommon.network_cli
redirecționare (tip: terminal) ansible.builtin.ios către cisco.ios.ios
redirecționarea (tip: cliconf) ansible.builtin.ios către cisco.ios.ios
redirecționare (tip: terminal) ansible.builtin.ios către cisco.ios.ios
redirecționare (tip: devenit) ansible.builtin.enable la ansible.netcommon.enable
redirecționarea (tip: cliconf) ansible.builtin.ios către cisco.ios.ios
redirecționare (tip: devenit) ansible.builtin.enable la ansible.netcommon.enable
<192.168.10.2> STABILIȚI CONEXIUNEA LOCALĂ PENTRU UTILIZATOR: kali
<192.168.10.2> versiunea de afișare EXEC
<192.168.20.1> STABILIȚI CONEXIUNEA LOCALĂ PENTRU UTILIZATOR: kali
<192.168.20.1> versiunea de afișare EXEC
SW1 | EȘUT | rc=127 >>
/bin/sh: 1: arată: nu a fost găsit
cod de returnare diferit de zero
R1 | EȘUT | rc=127 >>
/bin/sh: 1: arată: nu a fost găsit
cod de returnare diferit de zero
Puncte:0
drapel cn

STABILISȚI LEGĂTURA LOCALA nu este un mesaj -vvv la care m-aș aștepta, pluginul de conexiune locală execută doar comenzi pe localhost. Rețineți shell-ul /bin/sh, nu s-a găsit ceva pe IOS. Pentru network_cli, m-aș aștepta LOCAL a fi în schimb PARAMIKO sau LIBSSH. (Cu ani în urmă, dispozitivele de rețea foloseau pluginuri de conexiune locală plus parametrii modulului, dar acest lucru este de mult învechit de pluginurile de conexiune actuale.)

Ghid de depanare a rețelei sugerează că ar putea fi doar STABILIȚI CONEXIUNEA. Dar asta ar putea fi depășit; pluginurile moderne de conexiune prin convenție includ numele lor.

Deci variabilele de conexiune sunt în concordanță cu modul în care se face configurați conexiunile la IOS, dar este posibil să nu se aplice corect. Pe care îl puneți în group_vars, ceea ce este o alegere bună. Cu toate acestea, cred că definirea gazdelor R1 și SW1 de două ori provoacă probleme.

Păstrând inventarul în format ini, ștergeți gazdele din afara grupului, dar păstrați variabilele gazdei:

[netgrp]
R1 ansible_host=192.168.20.1
SW1 ansible_host=192.168.10.2

Vars pot fi definite aproape oriunde. Încercați să le definiți în alte locuri, pentru a vedea ce funcționează și ce pare natural. De exemplu, există sintaxă pentru definire variabile la nivel de grup în inventar care ar putea înlocui utilizarea grupului_vars pentru detaliile conexiunii.

[netgrp:vars]
ansible_connection=network_cli
ansible_network_os=ios
ansible_user=abdo
ansible_become_method=activare

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.