Kako povezati Ansible v Windows z Ubuntu?

Naj vam na hitro pokažem, kako povezati Windows strežnik z Ansible, ki deluje na Ubuntu.


Če želite slediti spodnjim korakom, morate v obeh sistemih namestiti python 3.x in Ansible. Če potrebujete pomoč, lahko sledite spodnjim člankom.

Kako namestiti in konfigurirati odgovor na Ubuntu?

Kako namestiti Ansible v sistem Windows?

Spodaj so podrobnosti obeh strežnikov, ki jih uporabljam:

  • Odgovorni krmilnik – 192.168.0.108
  • Windows Server – 192.168.0.102

1. korak: Ustvari uporabnika uporabnika sistema Windows

Ustvarite novega uporabnika za nastavitev povezave Ansible Windows.

  • V sistemu Windows odprite Upravljanje računalnika in pojdite na Lokalne uporabnike in skupine.
  • Z desno miškino tipko kliknite Uporabniki in ustvarite novega uporabnika.
  • Potrdite potrditveno polje Geslo nikoli ne poteče in kliknite ustvari.

uporabni uporabnik

  • Zdaj med skupinami, ki so na voljo, z desno miškino tipko kliknite skupino Skrbniki in kliknite lastnosti.
  • Kliknite Dodaj in v imena predmetov vnesite ansible.
  • Kliknite možnost čekovnih imen in nato V redu.

ansible skupine

Zdaj je uporabniški uporabnik v sistemu Windows stroj pripravljen.

2. korak: Nastavitev knjižnic in WinRM

Pojdite do naprave za nadzor uporabnikov, jo posodobite in namestite spodaj navedene knjižnice.

[zaščitena e-pošta]: ~ $ sudo apt-get update
[zaščitena e-pošta]: ~ $ sudo apt-get install gcc python-dev
[zaščitena e-pošta]: ~ $ sudo apt namestite python3-pip

WinRM pomeni za oddaljeno upravljanje Windows. Omogoča vam izvajanje nalog upravljanja na oddaljenih sistemih Windows. Vgradili bomo python3-winrm, odjemalec python, ki se uporablja za povezavo s sistemom Windows.

[zaščitena e-pošta]: ~ $ sudo apt-get install python3-winrm
Branje seznamov paketov … Končano
Gradnja drevesa odvisnosti
Branje državnih informacij … Končano
Naslednji paketi so bili samodejno nameščeni in niso več potrebni:
gyp libc-ares2 libhttp-parser2.8 libjs-async libjs-podeduje libjs-is-typedarray libjs-vozlišče-uuid libuv1 libuv1-dev vozlišče-krajv vozlišče-ajv
vozlišče-ansi vozlišče-ansi-barvna tabela vozlišče-ansi-regeks vozlišče-ansi-stili vozlišče-ansistil vozlišče-aproba vozlišče-arhiv vozlišče-smo-smo-tam-še vozlišče-asinciranje

node-validate-npm-paket-licence node-wcwidth.js node-kateri vozlišče-kateri-modul vozlišče široko poravnava vozlišče-zaviti-ansi vozlišče-omotno vozlišče-y18n
node-yallist node-yargs node-yargs-razčlenjevalnik nodejs nodejs-doc
Za odstranitev uporabite ‘sudo apt autoremove’.
Naslednji dodatni paketi bodo nameščeni:
python3-kerberos python3-ntlm-auth python3-zahteve-kerberos python3-zahteve-ntlm python3-xmltodict
Naslednji NOVI paketi bodo nameščeni:
python3-kerberos python3-ntlm-auth python3-zahteve-kerberos python3-zahteve-ntlm python3-winrm python3-xmltodict
0 nadgrajenih, 6 na novo nameščenih, 0 odstraniti in 231 ne nadgraditi.
Potrebno je dobiti 84,8 kB arhivov.
Po tej operaciji bo uporabljenih 442 kB dodatnega prostora na disku.
Ali želite nadaljevati? [Y / n] Y
Pridobite: 1 http://old-releases.ubuntu.com/ubuntu kozmično / vesolje amd64 python3-kerberos amd64 1.1.14-1build1 [16.8 kB]
Pridobite: 2 http://old-releases.ubuntu.com/ubuntu kozmično / vesolje amd64 python3-ntlm-auth vse 1.1.0-1 [19.6 kB]
Pridobite: 3 http://old-releases.ubuntu.com/ubuntu kozmično / vesolje amd64 python3-zahteve-kerberos vse 0.11.0-2 [10.1 kB]
Pridobite: 4 http://old-releases.ubuntu.com/ubuntu kozmično / vesolje amd64 python3-zahteve-ntlm vse 1.1.0-1 [6,004 B]
Pridobite: 5 http://old-releases.ubuntu.com/ubuntu kozmično / vesolje amd64 python3-xmltodict vse 0.11.0-2 [10.6 kB]
Pridobite: 6 http://old-releases.ubuntu.com/ubuntu kozmično / vesolje amd64 python3-winrm vse 0.3.0-2 [21.7 kB]
Pridobljenih 84,8 kB v 1 s (70,3 kB / s)
Izbira predhodno neizbranega paketa python3-kerberos.
(Branje podatkovne baze … 244430 datotek in imenikov je trenutno nameščeno.)
Priprava za razpakiranje … / 0-python3-kerberos_1.1.14-1build1_amd64.deb …
Odpakiranje python3-kerberos (1.1.14-1build1) …
Izbira predhodno neizbranega paketa python3-ntlm-auth.
Izbira predhodno neizbranega paketa python3-xmltodict.
Priprava na razpakiranje … / 4-python3-xmltodict_0.11.0-2_all.deb …
Odpakiranje python3-xmltodict (0.11.0-2) …
Izbira predhodno neizbranega paketa python3-winrm.
Priprava na razpakiranje … / 5-python3-winrm_0.3.0-2_all.deb …
Odpakiranje python3-winrm (0.3.0-2) …
Nastavitev python3-kerberos (1.1.14-1build1) …
Nastavitev python3-winrm (0.3.0-2) …

3. korak: Posodobite datoteko z seznamom odgovorov

Zdaj bom uredil datoteko ansible gostiteljev z naslovom IP sistema Windows. Zdaj bo ansible vedel, na kateri sistem Windows se mora povezati.

[zaščitena e-pošta]: ~ $ sudo gedit / etc / ansible / gostitelji

[zmaga]
192.168.0.102

4. korak: Posodobite spremenljivke skupine odgovorov

Ustvarite imenik za vstavljanje spremenljivk, ki se morajo povezati s sistemom Windows.

[zaščitena e-pošta]: ~ $ mkdir / etc / ansible / group_vars
[zaščitena e-pošta]: ~ $ sudo chmod -R 777 / itd / ansible /

Ustvarite datoteko win.yaml in v 1. korak postavite podrobnosti o uporabniku, ki ste jih ustvarili, in še nekaj spremenljivk, potrebnih za povezavo s sistemom Windows.

[zaščitena e-pošta]: ~ $ gedit /etc/ansible/group_vars/win.yaml

ansible_user: ansible

ansible_password: ansible

ansible_connection: winrm

ansible_winrm_server_cert_validation: prezreti

ansible_winrm_transport: osnovno

ansible_winrm_port: 5985

ansible_python_interpreter: C: \ Uporabniki \ geekflare \ AppData \ Local \ Programi \ Python \ Python37 \ python

5. korak: Konfigurirajte strežnike Windows za upravljanje

Odprite lupino za napajanje sistema Windows in jo nadgradite. Na operacijskem sistemu Windows morate imeti Powershell 3.0 in .NET Framework 4.0.

PS C: \ WINDOWS \ system32> $ url = "https://raw.githubusercontent.com/jborean93/ansible-windows/master/scripts/Upgrade-PowerShell.ps1"
PS C: \ WINDOWS \ system32> $ file = "$ env: temp \ Upgrade-PowerShell.ps1"
PS C: \ WINDOWS \ system32> $ username = "odgovoren"
PS C: \ WINDOWS \ system32> $ geslo = "odgovoren"
PS C: \ WINDOWS \ system32> (New-Object -TypeName System.Net.WebClient) .DownloadFile ($ url, $ file)
PS C: \ WINDOWS \ system32> Set-ExecutionPolicy -ExecutionPolicy Unrestricted -Force
PS C: \ WINDOWS \ system32> &$ datoteka -Version 5.1 -Izbrano uporabniško ime $ uporabniško ime -Geslo $ geslo -Verboza

Za konfiguriranje sistema WinRM v sistemu Windows s funkcijo ansible je zagotovil skript za oddaljeno konfiguracijo ansible. Zaženite skript v PowerShellu.

PS C: \ WINDOWS \ system32> $ url = "https://raw.githubusercontent.com/ansible/ansible/devel/examples/scripts/ConfigureRemotingForAnsible.ps1"
PS C: \ WINDOWS \ system32> $ file = "$ env: temp \ ConfigureRemotingForAnsible.ps1"
PS C: \ WINDOWS \ system32> (New-Object -TypeName System.Net.WebClient) .DownloadFile ($ url, $ file)
PS C: \ WINDOWS \ system32> datoteka datotekehehell.exe -ExecutionPolicy ByPass -File $
PS C: \ WINDOWS \ system32> winrm našteva winrm / config / poslušalca

Poslušalec
Naslov = *
Transport = HTTP
Pristanišče = 5985
Ime gostitelja
Omogočeno = res
URLPrefix = wsman

CertificateThumbprint
PoslušanjeOn = 127.0.0.1, 169.254.8.240, 169.254.36.9, 169.254.102.217, 169.254.215.170, 192.168.0.102, :: 1, fe80 :: 3131: c6d7: 9ef5: 8f0% 7, fe80 :: 51b7: 9134: 550d: d7aa% 22, fe80 :: 88f1: 1229: e1dd: 2409% 16, fe80 :: 99cf: 5796: 4f8e: f5c1% 15, fe80 :: fd77: c19d: e0f2: 66d9% 9

Poslušalec
Naslov = *
Transport = HTTPS
Pristanišče = 5986
Ime gostitelja = DESKTOP-2L8QMI6
Omogočeno = res
URLPrefix = wsman

CertificateThumbprint = C83B3FC8B274D0B650F0FD647DC7AC129BBE3FA0
PoslušanjeOn = 127.0.0.1, 169.254.8.240, 169.254.36.9, 169.254.102.217, 169.254.215.170, 192.168.0.102, :: 1, fe80 :: 3131: c6d7: 9ef5: 8f0% 7, fe80 :: 51b7: 9134: 550d: d7aa% 22, fe80 :: 88f1: 1229: e1dd: 2409% 16, fe80 :: 99cf: 5796: 4f8e: f5c1% 15, fe80 :: fd77: c19d: e0f2: 66d9% 9

Nastavite winrm, da omogočite promet HTTP.

PS C: \ WINDOWS \ system32> winrm nastavljen winrm / config / service ‘@ {AllowUnencrypted ="prav"} ‘
Storitev
RootSDDL = O: NSG: BAD: P (A; GA;; BA) (A;; GR;; IU) S: P (AU; FA; GA;;; WD) (AU; SA; GXGW; ;; WD)

MaxConcurrentOperations = 4294967295

MaxConcurrentOperationsPerUser = 1500

EnumerationTimeoutms = 240000
MaxConnections = 300

MaxPacketRetrievalTimeSeconds = 120
AllowUnencrypted = res
Avt
Osnovno = res
Kerberos = res
Pogajati = res
Potrdilo = napačno
CredSSP = napačno

CbtHardeningLevel = Sproščeno
Privzeti del
HTTP = 5985
HTTPS = 5986
IPv4Filter = *
IPv6Filter = *

EnableCompatibilityHttpListener = false

EnableCompatibilityHttpsListener = napačno

CertificateThumbprint
AllowRemoteAccess = res

Nastavite pristnost na basic v wirm.

PS C: \ WINDOWS \ system32> winrm nastavljen winrm / config / service / auth ‘@ {Basic ="prav"} ‘
Avt
Osnovno = res
Kerberos = res
Pogajati = res
Potrdilo = napačno
CredSSP = napačno
CbtHardeningLevel = Sproščeno

6. korak: Preizkusite povezljivost s sistemom Windows Server

Zdaj so vsi koraki na stroju narejeni. Pojdite na stroj za krmiljenje ansible in s pomočjo win_ping ansible modula pomikajte sistem Windows Server.

[zaščitena e-pošta]: ~ $ ansible win -m win_ping
192.168.0.102 | USPEH => {

"spremenjena": napačno,
"ping": "pong"
}

Sporočilo o uspehu kaže, da je bila povezava vzpostavljena. Zdaj je sistem Windows pripravljen za upravljanje na daljavo od Ansible, ki deluje na Ubuntu.

Oznake:

  • Odgovorno

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map