Torna al blog

Utilizzo di Ansible per installare e configurare WordPress con LAMP su Ubuntu

Utilizzo di Ansible per installare e configurare WordPress con LAMP su Ubuntu

Introduzione

Ci sono sempre momenti in cui abbiamo bisogno di configurare nuovi server. Questo potrebbe servire per distribuire il carico di lavoro o semplicemente perché abbiamo bisogno di più server. Quando si configurano nuovi server, gli utenti devono utilizzare l'automazione dei server per configurarli. Questo viene fatto per ridurre al minimo l'intervento manuale. Ansible è uno degli strumenti di gestione della configurazione che possono essere utilizzati per configurare automaticamente un nuovo server, riducendo le possibilità di errore umano rispetto alla configurazione manuale del server.

Ansible è uno strumento ricco di funzionalità pur avendo un'architettura semplice. Facilita la configurazione dei server tramite script. Grazie alla sua architettura concisa, Ansible non richiede l'installazione di altri software sui nodi.

In questo tutorial, ti mostreremo come utilizzare Ansible per automatizzare l'installazione di WordPress con lo stack LAMP in esecuzione su un server Ubuntu. WordPress è un CMS utilizzato per creare blog e siti web che utilizza PHP come linguaggio di programmazione e il database MySQL per memorizzare i dati. Una volta installato WordPress, gli utenti possono amministrare il sito utilizzando il frontend web.

Prerequisiti

Riepilogo delle azioni del Playbook Ansible

In questa sezione vedremo cosa fa il nostro Playbook Ansible quando lo eseguiamo. Questa procedura è un'alternativa alla configurazione manuale fornita qui: Come installare WordPress con LAMP su Ubuntu 20.04.

Quando eseguiamo il Playbook, Ansible provvederà a:

  • Installare aptitude che è il gestore di pacchetti preferito da Ansible.
  • Installare e configurare le estensioni PHP e i pacchetti LAMP.
  • Creare un nuovo Apache VirtualHost per il sito web WordPress.
  • Abilitare il modulo mod_rewrite e disabilitare il sito web predefinito offerto da Apache.
  • Impostare la password per l'utente root di MySQL.
  • Rimuovere gli account MySQL anonimi e il database di test.
  • Creare un nuovo utente e un nuovo database. Questi verranno utilizzati dal sito web WordPress.
  • Configurare UFW per consentire il traffico HTTP sulla porta configurata ( 80 per impostazione predefinita).
  • Scaricare ed estrarre WordPress.
  • Configurare i permessi e i proprietari delle directory.
  • Configurare un nuovo file wp-config.php utilizzando il suo modello.

Guida al Playbook Ansible per WordPress su LAMP

Per prima cosa, dovremo ottenere il playbook WordPress su LAMP e le sue dipendenze dal repository do-community/ansible-playbooks. Cloneremo questo repository all'interno del nodo di controllo Ansible.

Puoi eseguire il comando git pull come indicato di seguito:

Assicurati di avere il pull aggiornato del repository sopra menzionato. Questo nel caso in cui tu abbia già clonato il repository in precedenza. Di seguito viene mostrato come ottenere l'aggiornamento:

Ora dobbiamo individuare i file all'interno della cartella wordpress-lamp_ubuntu . Il nome di questa cartella può variare a seconda della versione di Ubuntu in uso. A colpo d'occhio, vedrai la seguente struttura in questa directory:

Using Ansible to Install and Configure WordPress with LAMP on Ubuntu Dir Struc

Riassumiamo di seguito lo scopo di questi file:

  • files/apache.conf.j2: Apache utilizza VirtualHost. Questo file viene utilizzato per specificare le impostazioni per VirtualHost.
  • files/wp-config.php.j2: Questo file contiene le impostazioni per la configurazione di WordPress.
  • vars/default.yml: Configura le impostazioni del playbook.
  • playbook.yml: Se ci sono attività che devono essere eseguite su un server remoto, questo file viene utilizzato per configurarle.
  • readme.md: Guida all'uso del playbook.

Dobbiamo modificare il file delle variabili del playbook per personalizzare l'installazione. Per prima cosa, apri il vars/default.yaml file che si trova all'interno della directory sopra menzionata:

Questo file è piuttosto lungo. Contiene una serie di configurazioni per aiutarci con la nostra installazione:

Qui ci interessano le seguenti variabili:

  • php_modules: Un array contenente le estensioni PHP che dovrebbero essere installate per supportare la tua configurazione di WordPress. Se desideri installare altri moduli, puoi specificarlo qui.
  • mysql_root_password: La password per l'account root MySQL.
  • mysql_db: Specifica il nome del database MySQL che verrà utilizzato da WordPress.
  • mysql_user: Il nome dell'utente MySQL che dovrebbe essere creato per WordPress.
  • mysql_password: La password per il nuovo utente MySQL.
  • http_host: Nome di dominio o IP del server.
  • http_conf: Il nome del file di configurazione che verrà creato all'interno di Apache.
  • http_port: Porta HTTP per questo virtual host. Questa porta viene utilizzata per accedere al sito web. Il valore predefinito è 80.

Successivamente, inserisci i valori nel file sopra indicato, salva e chiudi. Per gli utenti che utilizzano l'editor nano, premi CTRL+X, Y, e premi INVIO.

Ora sei pronto per eseguire questo playbook. Puoi eseguire questo playbook su uno o più server. Se desideri eseguire questo playbook su un server specifico, puoi utilizzare il -l flag. Inoltre, se devi specificare l'utente per connetterti al server remoto, specifica l'utente utilizzando il -u flag.

Supponiamo di voler eseguire il nostro playbook su un server, srvr1 utilizzando l'utente u1, possiamo eseguire il comando seguente:

Una volta eseguito il comando precedente, otterrai un output simile al seguente:

Attendi il completamento dell'esecuzione del playbook. Quindi, naviga su server_name sul tuo browser web:

Vedrai la schermata:

WP Page

Successivamente, seleziona la lingua desiderata e premi Continua. Apparirà la schermata successiva che richiederà alcuni dettagli per concludere l'installazione:

Using Ansible to Install and Configure WordPress with LAMP on Ubuntu Set User Pass

Dopodiché, inserisci le informazioni e premi Installa WordPress. Ci vorrà un po' di tempo e poi vedrai una schermata come quella qui sotto:

Using Ansible to Install and Configure WordPress with LAMP on Ubuntu Install Success

Seleziona Login per accedere al tuo sito web e configurare le impostazioni:

Homepage

Contenuto del Playbook Ansible

Ricorda la cartella wordpress-lamp_ubuntu . Contiene alcuni file al suo interno. Esaminiamoli uno alla volta:

●    vars/default.yml

Questo file contiene i valori utilizzati per configurare le impostazioni del tuo sito web WordPress:

●    files/apache.conf.j2

Questo file viene utilizzato per configurare il VirtualHost di Apache:

●    files/wp-config.php.j2

Questo file viene utilizzato per configurare WordPress. Contiene chiavi e salt univoci generati da funzioni hash:

●    playbook.yml

Questo file contiene tutte le attività definite da questa configurazione. Inizia elencando un gruppo di server che sono l'obiettivo di questa configurazione. Include il vars/default.yml file delle variabili per caricare le opzioni di configurazione:

Puoi modificare questi file come necessario per adattarli alle tue esigenze specifiche per il sito web che stai creando.

Conclusione

In questo tutorial, abbiamo mostrato come automatizzare l'installazione e la configurazione di un sito web WordPress in esecuzione su uno stack LAMP sull'ultimo sistema operativo Ubuntu con Ansible.

Per altre guide sull'utilizzo di Ansible, puoi consultare i seguenti tutorial sul nostro blog:

Buon computing!

author

Preslav Dobrev

Autore · CloudSigma

Preslav Dobrev è un designer creativo presso CloudSigma, con un focus su un'identità aziendale coerente attraverso l'uso di canali di marketing tradizionali e innovativi. È abile nel fondere la visione artistica con il marketing strategico per creare narrazioni di brand di grande impatto.

Commenti

Ancora nessun commento. Scrivi il primo.