Configurare Ansible per la gestione della configurazione su Ubuntu 14.04: creazione di Playbook

I Playbook in Ansible sono ciò che rende Ansible così utile. I playbook consentono di eseguire attività di routine con diversi moduli. Quando dovremmo usare i playbook?

Diamo un'occhiata a un'attività di manutenzione ordinaria: l'aggiornamento dei server. Non avremmo dovuto usare un playbook per questo, dato che si tratta di un solo comando: apt-get update. Potremmo usare un solo comando per aggiornare il software su tutti i nostri server. Tuttavia, per distribuire qualcosa come un web o un server di database, è necessario più lavoro: non solo un singolo comando. I playbook sono perfetti per questo caso. Consentono di utilizzare più moduli, che sono comandi che possono essere eseguiti su un server. Ad esempio, ci sono moduli per copiare file ed eseguire comandi shell su SSH.

Quindi, come possiamo usare i playbook? Iniziamo!

Passaggio 1: creazione di un file YAML ( .yml)

I playbook sensibili sono scritti come .ymlfile; Ansible non può interpretare altri formati. Un playbook Ansible di esempio è simile al seguente:

---
- hosts: webservers
  vars:
    http_port: 80
    max_clients: 200
  remote_user: root
  tasks:
  - name: ensure apache is at the latest version
    yum: pkg=httpd state=latest
  - name: write the apache config file
    template: src=/srv/httpd.j2 dest=/etc/httpd.conf
    notify:
    - restart apache
  - name: ensure apache is running (and enable it at boot)
    service: name=httpd state=started enabled=yes
  handlers:
    - name: restart apache
      service: name=httpd state=restarted

(Tratto dalla documentazione di Ansible)

Passaggio 2: comprensione dei libri di testo: attività e gestori

Come puoi vedere, ci sono più sezioni in questo playbook. Prima di tutto, vedrai la hosts:linea. Questo determina su quali host deve essere eseguito il playbook. Puoi anche vedere che abbiamo definito un paio di variabili a cui è possibile accedere e utilizzare in tutto il playbook. Vedrai quindi una serie di attività. Queste attività potrebbero essere chiamate ad esempio "Installa Apache". La seconda attività nell'esempio scrive nella configurazione di Apache. Vedrai quindi quanto segue:

    notify:
    - restart apache

Questo dice a un'attività di eseguire un certo gestore. In questo caso, si riferisce al gestore restart apache, che si trova nella parte inferiore del playbook:

  handlers:
    - name: restart apache
      service: name=httpd state=restarted

I gestori sono utili perché, prendendo l'esempio, potresti voler riavviare Apache più volte. In questo caso, non è necessario ripetere la creazione di un'attività per ogni singola volta in cui è necessario riavviare Apache, ma è possibile fare semplicemente riferimento allo stesso gestore ogni volta.

Passaggio 3: esecuzione dei playbook

Supponi di voler distribuire un server Apache. Bene, come puoi vedere, abbiamo appena creato un playbook per questo. L'esecuzione di playbook può essere eseguita utilizzando il ansible-playbookcomando. Ad esempio, se dovessimo eseguire questo playbook su tutti i server della webserverscategoria (dovrai avere questa categoria nel tuo /etc/ansible/hostsfile), avresti eseguito il seguente comando dato che il nome del tuo file playbook è apache.yml:

ansible-playbook -i webservers apache.yml

Congratulazioni! Ora hai eseguito un playbook su tutti i server della tua webserverscategoria. Ora dovrai solo attendere il completamento della distribuzione e vedrai che Apache è stato installato e configurato correttamente su questi server.



Leave a Comment

Come installare la piattaforma del carrello LiteCart su Ubuntu 16.04

Come installare la piattaforma del carrello LiteCart su Ubuntu 16.04

LiteCart è una piattaforma di carrello degli acquisti gratuita e open source scritta in PHP, jQuery e HTML 5. È un software di e-commerce semplice, leggero e facile da usare

Come installare Blacklistd su FreeBSD 11.1

Come installare Blacklistd su FreeBSD 11.1

Introduzione Qualsiasi servizio connesso a Internet è un potenziale bersaglio di attacchi di forza bruta o accesso ingiustificato. Esistono strumenti come fail2ba

Installa un TeamTalk Server su Linux

Installa un TeamTalk Server su Linux

TeamTalk è un sistema di conferenza che consente agli utenti di avere conversazioni audio / video di alta qualità, chat di testo, trasferire file e condividere schermate. Io

Come installare e configurare CyberPanel sul server CentOS 7

Come installare e configurare CyberPanel sul server CentOS 7

Usi un sistema diverso? Introduzione CyberPanel è uno dei primi pannelli di controllo sul mercato che è sia open source che utilizza OpenLiteSpeed. Che cosa

Come installare e configurare Sensu Monitoring su CentOS 7

Come installare e configurare Sensu Monitoring su CentOS 7

Introduzione Sensu è una soluzione di monitoraggio gratuita e open source che può essere utilizzata per monitorare server, applicazioni e vari servizi di sistema. Sensu i

Installazione di Fuel CMS su Ubuntu 16.04 LTS

Installazione di Fuel CMS su Ubuntu 16.04 LTS

Usi un sistema diverso? Fuel CMS è un sistema di gestione dei contenuti basato su CodeIgniter. Il suo codice sorgente è ospitato su GitHub. Questa guida ti mostrerà come t

Come installare Couch CMS 2.0 su un VPS Debian 9 LAMP

Come installare Couch CMS 2.0 su un VPS Debian 9 LAMP

Usi un sistema diverso? Couch CMS è un sistema di gestione dei contenuti (CMS) semplice e flessibile, gratuito e open source che consente ai web designer di progettare

Come installare OpenMeetings su CentOS 7

Come installare OpenMeetings su CentOS 7

Usi un sistema diverso? Apache OpenMeetings è unapplicazione per conferenze Web open source. È scritto in Java e supporta più server di database. io

Come installare Quassel su Debian 9

Come installare Quassel su Debian 9

IRC è popolare tra gli sviluppatori e gli utenti di software open source. Uno degli svantaggi di IRC è quando non sei in linea, potresti perdere Importan

Installa TaskServer (taskd) su FreeBSD 11

Installa TaskServer (taskd) su FreeBSD 11

Usi un sistema diverso? TaskWarrior è uno strumento di gestione del tempo open source che è un miglioramento dellapplicazione Todo.txt e dei suoi cloni. A causa di th

Come installare RabbitMQ su CentOS 7

Come installare RabbitMQ su CentOS 7

Usando un sistema diverso? RabbitMQ è un broker di messaggi open source ampiamente utilizzato scritto nel linguaggio di programmazione Erlang. Come middleware orientato ai messaggi

Come installare Subrion 4.1 CMS su un Fedora 26 LAMP VPS

Come installare Subrion 4.1 CMS su un Fedora 26 LAMP VPS

Usi un sistema diverso? Subrion 4.1 CMS è un sistema di gestione dei contenuti (CMS) open source potente e flessibile che offre un contenuto intuitivo e chiaro

Come installare e configurare CyberPanel su Ubuntu 18.04 LTS

Come installare e configurare CyberPanel su Ubuntu 18.04 LTS

Usi un sistema diverso? Introduzione CyberPanel è uno dei primi pannelli di controllo sul mercato che è sia open source che utilizza OpenLiteSpeed. Che cosa

Come installare Couch CMS 2.0 su un Fedora 26 LAMP VPS

Come installare Couch CMS 2.0 su un Fedora 26 LAMP VPS

Usi un sistema diverso? Couch CMS è un sistema di gestione dei contenuti (CMS) semplice e flessibile, gratuito e open source che consente ai web designer di progettare

Come costruire Brotli dalla fonte su Debian 9

Come costruire Brotli dalla fonte su Debian 9

Usi un sistema diverso? Brotli è un nuovo metodo di compressione con un rapporto di compressione migliore di Gzip. Il suo codice sorgente è ospitato pubblicamente su Github. Thi

Installa TaskServer (taskd) su Fedora 26

Installa TaskServer (taskd) su Fedora 26

Usi un sistema diverso? TaskWarrior è uno strumento di gestione del tempo open source che è un miglioramento dellapplicazione Todo.txt e dei suoi cloni. A causa di th

Come installare TaskBoard 0.3.1 su CentOS 7

Come installare TaskBoard 0.3.1 su CentOS 7

TaskBoard è unapp Web di gestione del tempo gratuita e open source. Ispirato da Kanban, TaskBoard può aiutarti a tenere traccia delle cose che devono essere fatte in a

Come installare Gradle su CentOS 7

Come installare Gradle su CentOS 7

Usi un sistema diverso? Gradle è un set di strumenti di automazione di build gratuito e open source basato sui concetti di Apache Ant e Apache Maven. Gradle fornisce

Installa un server FTP con ProFTPd su CentOS 6 o CentOS 7

Installa un server FTP con ProFTPd su CentOS 6 o CentOS 7

Usi un sistema diverso? In questa guida, vedremo come configurare un server FTP (ProFTPd) per trasferire file tra il tuo PC e il tuo server.

Come installare Kanboard su Debian 9

Come installare Kanboard su Debian 9

Usi un sistema diverso? Introduzione Kanboard è un programma software di gestione dei progetti gratuito e open source progettato per facilitare e visualizzare

Lintelligenza artificiale può combattere con un numero crescente di attacchi ransomware?

Lintelligenza artificiale può combattere con un numero crescente di attacchi ransomware?

Gli attacchi ransomware sono in aumento, ma l'intelligenza artificiale può aiutare ad affrontare l'ultimo virus informatico? L'intelligenza artificiale è la risposta? Leggi qui sai è AI boone o bane

ReactOS: è questo il futuro di Windows?

ReactOS: è questo il futuro di Windows?

ReactOS, un sistema operativo open source e gratuito è qui con l'ultima versione. Può essere sufficiente alle esigenze degli utenti Windows moderni e abbattere Microsoft? Scopriamo di più su questo vecchio stile, ma un'esperienza del sistema operativo più recente.

Rimani connesso tramite lapp desktop WhatsApp 24*7

Rimani connesso tramite lapp desktop WhatsApp 24*7

Whatsapp ha finalmente lanciato l'app desktop per utenti Mac e Windows. Ora puoi accedere facilmente a Whatsapp da Windows o Mac. Disponibile per Windows 8+ e Mac OS 10.9+

In che modo lintelligenza artificiale può portare lautomazione dei processi al livello successivo?

In che modo lintelligenza artificiale può portare lautomazione dei processi al livello successivo?

Leggi questo per sapere come l'intelligenza artificiale sta diventando popolare tra le aziende di piccole dimensioni e come sta aumentando le probabilità di farle crescere e dare un vantaggio ai loro concorrenti.

Laggiornamento del supplemento macOS Catalina 10.15.4 sta causando più problemi che risolverli

Laggiornamento del supplemento macOS Catalina 10.15.4 sta causando più problemi che risolverli

Recentemente Apple ha rilasciato macOS Catalina 10.15.4 un aggiornamento supplementare per risolvere i problemi, ma sembra che l'aggiornamento stia causando più problemi che portano al bricking delle macchine mac. Leggi questo articolo per saperne di più

13 strumenti commerciali per lestrazione dei dati dai Big Data

13 strumenti commerciali per lestrazione dei dati dai Big Data

13 strumenti commerciali per l'estrazione dei dati dai Big Data

Che cosè un file system di journaling e come funziona?

Che cosè un file system di journaling e come funziona?

Il nostro computer memorizza tutti i dati in un modo organizzato noto come file system di journaling. È un metodo efficiente che consente al computer di cercare e visualizzare i file non appena si preme search.https://wethegeek.com/?p=94116&preview=true

Singolarità tecnologica: un lontano futuro della civiltà umana?

Singolarità tecnologica: un lontano futuro della civiltà umana?

Man mano che la scienza si evolve a un ritmo rapido, assumendo gran parte dei nostri sforzi, aumentano anche i rischi di sottoporci a una singolarità inspiegabile. Leggi, cosa potrebbe significare per noi la singolarità.

Uno sguardo a 26 tecniche di analisi dei Big Data: Parte 1

Uno sguardo a 26 tecniche di analisi dei Big Data: Parte 1

Uno sguardo a 26 tecniche di analisi dei Big Data: Parte 1

Limpatto dellintelligenza artificiale nella sanità 2021

Limpatto dellintelligenza artificiale nella sanità 2021

L'intelligenza artificiale nell'assistenza sanitaria ha compiuto grandi passi avanti negli ultimi decenni. Pertanto, il futuro dell'IA in sanità continua a crescere giorno dopo giorno.