GNU/Linux >> Linux Esercitazione >  >> Linux

Come gestire l'host Windows remoto utilizzando Ansible

Abile sta diventando sempre più la piattaforma di riferimento per l'implementazione di applicazioni e il provisioning di software tra gli sviluppatori grazie alla sua facilità d'uso e flessibilità. Inoltre, è facile da configurare e non è necessario installare alcun agente sui nodi remoti, mentre Ansible utilizza l'autenticazione SSH senza password per gestire host Unix/Linux remoti. In questo argomento, tuttavia, vedremo come gestire Windows Host utilizzando Ansible.

Configurazione del laboratorio

Utilizzeremo la configurazione seguente per raggiungere il nostro obiettivo

  • Nodo Ansible Control   –    CentOS 8          –     IP:192.168.43.13
  • Nodo Windows 10         –    Windows 10     –     IP:192.168.43.147

Parte 1:Installazione di Ansible sul nodo Control (CentOS 8)

Prima di ogni altra cosa, dobbiamo installare Ansible sul nodo Control che è il sistema CentOS 8.

Passaggio 1:verifica che Python3 sia installato sul nodo di controllo Ansible

Innanzitutto, dobbiamo confermare se Python3 è installato. CentOS 8 viene fornito con Python3 ma se manca per qualsiasi motivo, installa utilizzando il comando:

# sudo dnf install python3

Quindi, imposta Python3 come versione predefinita di Python eseguendo:

# sudo alternatives --set python /usr/bin/python3

Per verificare se python3 è installato, esegui il comando:

# python --version

 

Leggi anche : Come installare Ansible (strumento di automazione) su CentOS 8/RHEL 8

Fase 2:installa un ambiente virtuale per l'esecuzione di Ansible

Per questo esercizio è preferibile un ambiente isolato per l'esecuzione e il test di Ansible. Ciò manterrà a bada problemi come problemi di dipendenza e conflitti di pacchetti. L'ambiente isolato che creeremo è chiamato ambiente virtuale.

Innanzitutto, iniziamo con l'installazione dell'ambiente virtuale su CentOS 8.

# sudo dnf install python3-virtualenv

Dopo l'installazione dell'ambiente virtuale, crea uno spazio di lavoro virtuale eseguendo:

# virtualenv env

# source env/bin/activate

Grande! Osservare che il prompt ora è cambiato in (env).

Passaggio 3:installa Ansible

Dopo la creazione dell'ambiente virtuale, procedi e installa lo strumento di automazione Ansible utilizzando pip come mostrato:

# pip install ansible

Successivamente puoi confermare l'installazione di Ansible usando il comando:

# ansible --version

Per testare Ansible e vedere se funziona sul nostro server Ansible Control, esegui:

# ansible localhost -m ping

Grande! Successivamente, è necessario definire l'host o il sistema Windows su un file host sul nodo di controllo Ansible. Pertanto, apri il file hosts predefinito

# vim /etc/ansible/hosts

Definisci gli host Windows come mostrato di seguito.

Nota: Il nome utente e la password puntano all'utente sul sistema host Windows.

Quindi, salva ed esci dal file di configurazione.

Fase 4:installa Pywinrm

A differenza dei sistemi Unix in cui Ansible utilizza SSH per comunicare con host remoti, con Windows è tutta un'altra storia. Per comunicare con gli host Windows, devi installare Winrm.

Per installare winrm, ancora una volta, usa lo strumento pip come mostrato:

# pip install pywinrm

Parte 2:Configurazione dell'host Windows

In questa sezione, configureremo il nostro sistema host remoto Windows 10 per la connessione con il nodo Ansible Control. Stiamo per installare il Ascoltatore WinRM- abbreviazione di Windows Remote – che consentirà la connessione tra il sistema host Windows e il server Ansible.

Ma prima di farlo, il tuo sistema host Windows deve soddisfare alcuni requisiti affinché l'installazione abbia successo:

  • Il tuo sistema host Windows dovrebbe essere Windows 7 o successivo . Per i server, assicurati di utilizzare Windows Server 2008 e versioni successive.
  • Assicurati che sul tuo sistema sia in esecuzione .NET Framework 4.0 e successivi.
  • Windows PowerShell dovrebbe essere la versione 3.0 e successive

Con tutti i requisiti soddisfatti, ora segui i passaggi indicati di seguito:

Passaggio 1:scarica lo script WinRM sull'host Windows 10

WinRM può essere installato utilizzando uno script che puoi scaricare da questo link. Copia l'intero script e incollalo nell'editor del blocco note. Successivamente, assicurati di salvare lo script WinRM nella posizione più comoda. Nel nostro caso, abbiamo salvato il file sul desktop con il nome ConfiguraRemotingForAnsible.ps1

Passaggio 2:esegui lo script WinRM sull'host Windows 10

Quindi, esegui PowerShell come amministratore

Passare alla posizione dello script ed eseguirlo. In questo caso, siamo passati alla posizione del desktop in cui abbiamo salvato lo script. Quindi, procedi ed esegui lo script WinRM sull'host Windows:

.\ConfigureRemotingForAnsible.ps1

Questo richiede circa un minuto e dovresti ottenere l'output mostrato di seguito. L'output mostra che WinRM è stato installato correttamente.

Parte 3:Connessione a Windows Host da Ansible Control Node

Per testare la connettività all'host Windows 10, esegui il comando:

# ansible winhost -m win_ping

L'output mostra che abbiamo effettivamente stabilito una connessione all'host Windows 10 remoto dal nodo Ansible Control. Ciò implica che ora possiamo gestire l'host Windows remoto utilizzando Ansible Playbooks. Creiamo un playbook di esempio per il sistema host Windows.

Parte 4:creazione ed esecuzione di un playbook per l'host Windows 10

In questa sezione finale, creeremo un playbook e creeremo un'attività che installerà Chocolatey sull'host remoto. Chocolatey è un gestore di pacchetti per il sistema Windows. Il gioco è definito come mostrato:

# vim chocolatey.yml
---
- hosts: winhost
  gather_facts: no
  tasks:
   - name: Install Chocolatey on Windows10
     win_chocolatey: name=procexp  state=present

Salva e chiudi il file yml. Quindi, esegui il playbook come mostrato

# ansible-playbook chocolatey.yml

L'output è un puntatore che tutto è andato bene. E questo conclude questo argomento su come gestire l'host Windows utilizzando Ansible.

Leggi anche Come creare ruoli Ansible e utilizzarli in Playbook


Linux
  1. Come montare la condivisione Windows remota su Linux

  2. Come creare un utente Linux usando Ansible

  3. Come eseguire il desktop remoto da Windows a desktop Linux utilizzando XRDP

  4. Come monitorare la macchina Windows remota usando Nagios su Linux

  5. Come connettere l'host remoto usando il comando ssh

Come gestire le istanze AWS EC2 utilizzando aws-cli

Come gestire AWS Cloudwatch utilizzando aws-cli

Come gestire i pacchetti Python utilizzando PIP

Come utilizzare Ansible per inviare un'e-mail utilizzando Gmail

Come installare Ansible su Ubuntu 20.04

Come eseguire il backup dell'host Linux remoto utilizzando l'utilità rsnapshot rsync