Mange mennesker har misoppfatninger om Ansible og plattformene den støtter, og tror at det bare er tilgjengelig for Ubuntu. Imidlertid kan Ansible også brukes til å kontrollere Windows PC -er, tilkoblede enheter, Internett -sikkerhetsenheter, webtjenester, applikasjoner og andre ting. Vi skal snakke om å bruke Windows med Ansible i denne opplæringen.
Ansible -konfigurasjonsverktøyet kan administrere og utføre viktige oppgaver i Windows -installasjoner, for eksempel eksterne ledere med WINRM og beskyttelsesvarsler. Til tross for at Ubuntu skal operere i Ansible, kan Microsoft Controllers administrere og administrere enhetene sine ved å bruke Ansible til tross for at de har noen tidligere erfaring med Ubuntu -terminaler. Microsoft Controllers vil kunne administrere Microsoft Windows ved å bruke Ansible på en slags måte som er relevant for dem på grunn av Native Windows -funksjonalitet som bruker Microsoft Windows PowerShell Remote. Avanserte løsninger for å kontrollere og administrere Microsoft Windows -plattformer er inkludert i Ansible Software Platform for Organizational Management. Du kan automatisere distribusjon, programvareaktivering og systemintegrasjon for et multivendor -miljø ved hjelp av Ansible Software Platform.
I Ansible gjelder de fleste av terminologien og retningslinjene som brukes til å administrere eksterne verter av Linux, så vel som disse terminologiene like mye for Microsoft Windows -verter. Men det er fremdeles visse særegenheter når det gjelder variabler av Ansible som baneparatorer eller OS-spesifikke aktiviteter. WinRM må settes opp for å muliggjøre tilgang til Windows -systemer fra Ansible Controller. Du kan få igangsatt å bruke Ansible for Microsoft Windows i dine utviklings- eller overvåkningsinnstillinger ved å kjøre PowerShell -skriptet. Hver autoriserte Microsoft Windows -vert er konfigurert av skriptet for WINRM.
Forutsetninger:
Forsikre deg om at du alltid har hatt disse kravene:
Versjon: Vi kommer til å bruke Ansible Controller versjon 2.9. For at det skal gjøre endringer, trenger vi en kontrollerende server for Ansible, og i dette tilfellet bruker vi Ansible som en kontroller med IP -adressen 192.168.5.220.
Windows -vert: Vi krever at de samhandler med de lokale vertene. Videre bruker vi Windows -verten i dette tilfellet som en målsemålingsserver i løpet av operasjonen.
Python: Din Ansible Controller Host -enhet vil bli konfigurert til å kjøre Python. Python vil bruke versjon 2, mens versjon 3 også er et alternativ.
Pakke: Windows Host -serveren vil bli konfigurert til å installere “PIP” -pakken.
Windows Workstation: Du må tilbringe tid på en Windows-konsoll når vi forhåndskonfigurerer verten som Microsoft vil bruke til å håndtere Ansible.
Kraftskall: Windows -serveren vil ha muligheten til å kontrollere PowerShell Remote Access.
Eksempel: Etablere en Microsoft Windows -vert for å tillate tilkoblinger med Ansible Controller
I dette eksemplet vil vi først jobbe for Target Remote Host som er Windows_host. Deretter vil vi jobbe med Ansible, så det vil ikke være noen forvirring for brukeren.
Target Window_host
Det er ingen servere som trengs for Ansible. Så både SSH og Windows Remote Manager er kompatible med Windows WinRM. WinRM betyr Windows Remote Manager og den brukes ofte over SSH på grunn av den stramme integrasjonen av WINRM.
PS C: \ Windows \ System32> WinRM Få WinRM/Config/ServiceSett opp WinRM
Etter det skal vi oppdatere WINRM i Microsoft Windows. Ansible -programvaren har laget kommandoer som er tilgjengelige for å evaluere WINRM og utføre de nødvendige justeringene slik at Ansible kan få tilgang til disse kommandoene. Selv om vi bare ønsker å bruke grunnleggende legitimasjon, så foretrekker vi å bruke noe sikrere for å få tilgang til det. Følgende er trinnene for oppdateringen av WINRM:
Lagrer kommandoen
Vi vil bruke kommandoene, så for det lanserer vi først Microsoft PowerShell Terminal -vinduet slik at vi kan lagre kommandoen.
PS C: \> $ url = "https: // rå.GitHubUserContent.com/ansible/ansible/utvikling/eksempler/skript/Vi bruker URL nedenfor slik at vi enkelt kan lagre kommandoene der:
Ps c: \> $ file = "$ env: temp \ configuReMotingForable.PS1 "Last ned kommandoene og vis dem lokalt
Nå vil vi laste ned kommandoene, og vi vil vise disse kommandoene i et lokalt dokument.
PS C: \> (nytt -objekt -typename -system.Nett.WebClient).Last ned File ($ url, $ fil)Kjør kommandoene
For å utføre, er kommandoen banen som viser utførelsen av dokumentet.
PS C: \> PowerShell.exe -executionPolicy bypass -file $ filEtter å ha skrevet banen over, vil vi få utdataene nedenfor i PowerShell i Windows.
Kontroller WinRM -tilkoblingen
Dette for å sjekke om tilkoblingen til WINRM er bygget med Ansible eller ikke.
PS C: \> WINRM UNIUMERATE WINRM/CONFIG/LISTERSom vist er Ansible og WinRM kompatible med hverandre.
Ansible Controller
Dette er det som fungerer i Ansible -verktøyet, og kommandoene brukes av kontrolleren, slik at det kan konfigurere informasjonen og bygge forbindelsen mellom Windows og Ansible. Først vil vi lage spillboken.
Opprette spillboken
Nå vil vi administrere distribusjon og oppdatering av pakker. For det, la oss lage en spillbok i Ansible først:
[root@master ansible]# nano win_ping.ymlHer er erklæringen fra Ansible Playbook. Når spillboken vinner_ping.YML opprettes, så blir den lansert i den nye terminalen til Ansible. Her vil vi skrive vertene og oppgaven vi ønsker å utføre. I WIN_PING.yml, vi navngir spillboken som vi vil gjøre i spillboken.
Deretter vil vi skrive navnet på vertene, da vi konfigurerer dataene til Microsoft Windows -verten. Så navnet på målverten er "Windows_host". Deretter har vi gitt det "falske" til alternativet Gathering_Fact. Deretter har vi listet opp oppgavene i spillboken. Vi ønsker å sjekke forbindelsen mellom Ansible Playbook Controller og Target Windows -verten, slik at vi vil passere Playbook -navnet i oppgaven.
- Navn: Win_ping Module TestOpprette varelagerfilen
Etter opprettelse og avslutning av spillboken, bygger vi varelagerfilen slik at vi vil gi informasjonen om Windows -verten her. Vi skriver IP -adressen, navnet på brukeren, passord, tilkoblingsnavn, portnummer og WinRM -validering. Dette er uttalelsen vi vil skrive for å bygge inventarfilen i Ansible.
[root@master ansible]# nano win_ping.yml alle:Etter å ha gitt nødvendig informasjon om Target Windows -verten, vil vi utføre spillboken sammen med varelagerfilen. For å gjøre det, skriv kommandoen nedenfor:
[root@master ansible]# ansible-playbook win_ping.yml -i vert.ymlSom vist har forbindelsen mellom Ansible -kontrolleren og Windows -verten blitt gjort med hell.
Konklusjon
Ved hjelp av WinRM -pakken i Ansible har vi lært hvordan du automatiserer Microsoft Windows i dette foredraget. Vi beskrev i detalj hvordan du setter opp en Microsoft Windows -vert for Ansible. Ansible er et verktøy som historisk har vært assosiert med Linux, selv om det også kan brukes på Microsoft Windows.