Puncte:0

ansible nu găsește rolul menționat în playbook

drapel uz

Sunt destul de nou cu Ansible, așa că s-ar putea să configurez lucrurile greșit
[Am un container Docker care rulează serviciul Ansible
Am un depozit Ansible care include fișierele Ansible (acesta este un depozit .Git]

Voința mea a fost să revine automat fiecare laborator din serverul vCenter la un anumit instantaneu
Deci, eu (cu ajutorul lui ghid-roluri-ansible-explicate-cu-exemple):

  • Am creat un rol cu ansible-galaxie init numele comenzii vcenter (vezi arborele directoare de mai jos)
  • Am creat câteva fișiere de activități vcenter în interior sarcini folder (vezi arborele directoare de mai jos). Iată un exemplu de rever.yml fișier de activitate:
- nume: Reveniți la un instantaneu
  vmware_guest_snapshot:
    nume gazdă: „{{ vcenter_hostname }}”
    nume de utilizator: „{{ vcenter_username }}”
    parola: „{{ vcenter_password }}”
    datacenter: „{{ datacenter_name }}”
    stare: revenire
    snapshot_name: CLEAN
  delegate_to: localhost
  • Acreditările vCenter furnizate în vcenter\vars\main.yml fișier, așa:
# fișier vars pentru vcenter
vcenter_hostname: vcenter.foo.com
vcenter_username: [email protected]
vcenter_parola: f#0$o#1$0o
  • A inclus sarcinile în tasks\main.yml dosar cu sarcină-import cheie, așa:
---
# fișier de sarcini pentru roluri/vcenter
- import_tasks: poweroff.yml
- import_tasks: poweron.yml
- import_tasks: revert.yml
- import_tasks: shutdown.yml
  • A creat un rever_lab.yml manual care include rolul, ca acesta
---
- nume: reveniți la un laborator onpremis
  gazde: toate
  roluri:
  - vcenter

Înainte de a executa manualul pentru a reveni la toate mașinile din laborator, am făcut o mică verificare a sintaxei playbook-ului:

ansible-playbook playbooks/revert_lab.yml --syntax-check

Eroarea pe care am primit-o a fost:

[AVERTISMENT]: Ansible este rulat într-un director mondial de scriere (/ansible), ignorându-l ca sursă ansible.cfg. Pentru mai multe informații vezi
https://docs.ansible.com/ansible/devel/reference_appendices/config.html#cfg-in-world-writable-dir
[AVERTISMENT DE DEPRECARE]: Ansible va necesita Python 3.8 sau mai nou pe controler începând cu Ansible 2.12. Versiunea actuală: 3.6.8 (implicit, 16 noiembrie 2020, 16:55:22) [GCC
 4.8.5 20150623 (Red Hat 4.8.5-44)]. Această caracteristică va fi eliminată din ansible-core în versiunea 2.12. Avertismentele de depreciere pot fi dezactivate prin setare 
deprecation_warnings=Fals în ansible.cfg.
[AVERTISMENT]: Nu a fost analizat niciun inventar, doar localhost implicit este disponibil
[AVERTISMENT]: cu condiția ca lista de gazde să fie goală, doar localhost este disponibilă. Rețineți că localhost implicit nu se potrivește cu „toate”
EROARE! rolul „vcenter” nu a fost găsit în /ansible/playbooks/roles:/root/.ansible/roles:/usr/share/ansible/roles:/etc/ansible/roles:/ansible/playbooks

Eroarea pare să fie în „/ansible/playbooks/revert_lab.yml”: rândul 5, coloana 5, dar poate
fi în altă parte în fișier, în funcție de problema exactă de sintaxă.

Linia ofensiva pare a fi:

  roluri:
  - vcenter
    ^ aici

Am decis să adaug ansible.cfg la depozitul meu cu a calea_rolurilor cheie:

[implicit]
inventar = /ansible/inventories
calea_rolurilor = /ansible/roles
# roles_path = ./roles:..~/ansible/roles

Am alergat din nou pe --verificare-sintaxă comanda dar a primit aceeași eroare. Am încercat diferite tipuri de declarații pentru calea rolului - și am primit aceeași eroare. Desigur ansible-playbook comanda nu a funcționat (cu același mesaj de eroare):

ansible-playbook playbooks/revert_lab.yml -i inventories/test/onpremis/domain.com/lab_r.yml

Asa de, Cum pot să îmi recunosc rolul?
Cum fac posibil să rulez cu succes registrul meu de joc?
Este ansible.cfg relevant sau irelevant pentru „poveste”?

Depozitul meu:

C:.
ââââansible
â â ansible.cfg
â ââââinventare
â â ââââtest
â â âââânor
â â ââââonpremis
â â ââââdomain.com
â â â lab_j.yml
â â â lab_r.yml
â â ââââgroup_vars
â â all.yml
â ââââplaybooks
â â revert_lab.yml
â ââââroluri
â ââââvcenter
â ââââsarcini
â â principal.yml
â â poweroff.yml
â â poweron.yml
â â retur.yml
â â shutdown.yml
â ââââvars
â principal.yml
Puncte:0
drapel cz

Ansible ți-a spus ce este în neregulă:

[AVERTISMENT]: Ansible este rulat într-un director mondial de scriere (/ansible), ignorându-l ca sursă ansible.cfg. Pentru mai multe informații, consultați https://docs.ansible.com/ansible/devel/reference_appendices/config.html#cfg-in-world-writable-dir

Aceasta înseamnă că modificările dvs. în ansible.cfg sunt ignorate.

Remediați permisiunile din acest director și încercați din nou.

drapel uz
```chmod o-w``` pe directorul ansible

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.