Puncte:1

Cum să win_ping la gazde cu fișiere de inventar și group_vars?

drapel uz
  • Încerc să scriu o linie de comandă corectă care va trimite ping către toate gazdele care sunt detaliate în fișierul meu de inventar
  • fișierul meu docker:
DIN centos:7

RUN yum check-update; \
    yum install -y gcc libffi-devel python3 epel-release; \
    yum install -y python3-pip; \
    yum install -y wget; \
    yum curata tot

RUN pip3 install --upgrade pip; \
    pip3 instalează „ansible”; \
    wget -q https://raw.githubusercontent.com/ansible-collections/azure/dev/requirements-azure.txt; \
    pip3 install -r requirements-azure.txt; \
    rm requirements-azure.txt; \
    ansible-galaxy collection install azure.azcollection \

WORKDIR /github
CMD ["/usr/sbin/init"]
  • Toate gazdele sunt gazde Windows OS
  • Sub structura bibliotecii mele Ansible
C:.
ââââbla_produs
    ââââcore
        ââââansible
        â ââââinventare
        â â ââââproducție
        â â ââââmontarea în scenă
        â â ââââtest
        â â âââânor
        â â ââââonpremis
        â â ââââdomain.com
        â â â lab_x.yml
        â â â
        â â ââââgroup_vars
        â â windows.yml
        â â
        â ââââplaybooks
        â ââââroluri
  • fișierul meu de inventar lab_x.yml arată astfel:
---
toate:
  copii:
    rădăcină:
      copii:
        centru:
          copii:
            servere de aplicație:
              gazde:
                centeriis.domain.com:
                  ansible_host: 200.10.0.100
            qservere:
              gazde:
                centerq.domain.com:
                  gazdă_ansible: 200.10.0.101
            dbservers:
              gazde:
                centerdb.domain.com:
                  gazdă_ansible: 200.10.0.102
        serverfarms:
          gazde:
          copii:
            gateway-uri:
              gazde:
        sud:
          copii:
            brooklyn:
              gazde:
                  srv1.domain.com:
                    gazdă_ansible: 200.10.0.103
              copii:
                puncte finale:
                  gazde:
                    client1.domain.com:
                      ansible_host: 200.10.0.105
                    client2.domain.com:
                      gazdă_ansible: 200.10.0.106
        Nord:
          copii:
            New York:
              gazde:
                srv2.domain.com:
                  gazdă_ansible: 200.10.0.104
              copii:
                puncte finale:
                  gazde:
                    client3.domain.com:
                      gazdă_ansible: 200.10.0.107
  • The windows.yml fișierul include detalii de conexiune care se referă la toate gazdele, deoarece toate sunt gazde ale sistemului de operare Windows:
---
ansible_connection: winrm
utilizator_ansible: domeniu\utilizator
ansible_password: parola
  • Rulați următoarea comandă ansible all -i lab_r.yml -m win_ping rezultate:
[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.
centeriis.domain.com | DE NEATINS! => {
    „schimbat”: fals,
    "msg": "[Errno None] Imposibil de conectat la portul 22 pe 200.10.0.100",
    „inaccesibil”: adevărat
}
  • încercând pe acesta ansible windows.yml -i lab_r.yml -m win_ping ofera:
[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 s-a putut potrivi modelul de gazdă furnizat, ignorând: windows.yml
[AVERTISMENT]: Nicio gazdă nu a fost egalată, nimic de făcut
  • Ce îmi lipsește din această „poveste”?
  • Problema este cu fișierele SAU comenzile?
  • Care este motivul pentru care Ansible folosește portul 22 în loc să utilizeze protocolul WinRM?
  • Comanda win_ping poate funcționa în această fază SAU trebuie să dețin un playbook și fișiere de rol (sarcină) pentru ca aceasta să funcționeze?
  • Cum fac să funcționeze toată afacerea (o comandă care utilizează fișierele din Inventaries și folderul group_vars)?
Puncte:1
drapel in

Niciuna dintre gazdele din inventarul dvs. nu se află într-un grup numit „windows”, așa că windows.yml nu este niciodată folosit și Ansible revine la protocolul implicit, care este ssh.

Dacă aveți doar servere Windows, cea mai simplă soluție ar fi să puneți informațiile de conectare în all.yml.

drapel uz
Adaug următoarea linie la fișierul meu docker: ```pip3 install "pywinrm>=0.2.2" ```. de asemenea, schimbați fișierul în ```all.yml```.executarea comenzii cu calea explicită a fișierului de inventar astfel: ```ansible all -i inventories/test/onpremis/domain.com/lab_r.yml -m win_ping``` reușește atunci.

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.