Retour au blog

Utilisation d'Ansible pour installer et configurer WordPress avec LAMP sur Ubuntu

Utilisation d'Ansible pour installer et configurer WordPress avec LAMP sur Ubuntu

Introduction

Il y a toujours des moments où nous devons configurer de nouveaux serveurs. Cela peut être pour répartir la charge de travail ou si nous avons simplement besoin de plus de serveurs. Lors de la configuration de nouveaux serveurs, les utilisateurs doivent utiliser l'automatisation des serveurs pour les configurer. Cela est fait afin de minimiser l'intervention manuelle. Ansible est l'un des outils de gestion de configuration qui peut être utilisé pour configurer automatiquement un nouveau serveur, réduisant ainsi les risques d'erreur humaine lors de la configuration manuelle du serveur.

Ansible est un outil riche en fonctionnalités tout en ayant une architecture simple. Il facilite la configuration des serveurs via des scripts. En raison de son architecture concise, Ansible ne nécessite l'installation d'aucun autre logiciel sur les nœuds.

Dans ce tutoriel, nous allons vous montrer comment utiliser Ansible pour automatiser l'installation de WordPress avec la pile LAMP s'exécutant sur un serveur Ubuntu. WordPress est un CMS utilisé pour créer des blogs et des sites web en utilisant PHP comme langage de programmation et une base de données MySQL pour stocker les données. Une fois WordPress installé, les utilisateurs peuvent administrer le site à l'aide de l'interface web.

Prérequis

Résumé des actions du Playbook Ansible

Dans cette section, nous verrons ce que fait notre Playbook Ansible lorsque nous l'exécutons. Cette procédure est une alternative à la configuration manuelle fournie ici : Comment installer WordPress avec LAMP sur Ubuntu 20.04.

Lorsque nous exécutons le Playbook, Ansible va :

  • Installer aptitude qui est un gestionnaire de paquets Ansible préféré.
  • Installer et configurer les extensions PHP et les paquets LAMP.
  • Créer un nouvel Apache VirtualHost pour le site web WordPress.
  • Activer le module mod_rewrite et désactiver le site web par défaut proposé par Apache.
  • Définir le mot de passe de l'utilisateur root MySQL.
  • Supprimer les comptes MySQL anonymes et la base de données de test.
  • Créer un nouvel utilisateur et une nouvelle base de données. Ceux-ci seront utilisés par le site web WordPress.
  • Configurer UFW pour autoriser le trafic HTTP sur le port configuré ( 80 par défaut).
  • Télécharger et décompresser WordPress.
  • Configurer les permissions et les propriétaires des répertoires.
  • Configurer un nouveau fichier wp-config.php en utilisant son modèle.

Guide du Playbook Ansible WordPress sur LAMP

Tout d'abord, nous devrons obtenir le playbook WordPress sur LAMP et ses dépendances à partir du dépôt do-community/ansible-playbooks. Nous allons cloner ce dépôt à l'intérieur du nœud de contrôle Ansible.

Vous pouvez exécuter la commande git pull comme mentionné ci-dessous :

Assurez-vous d'avoir la version mise à jour du dépôt mentionné ci-dessus. C'est le cas si vous avez déjà cloné le dépôt auparavant. Voici comment obtenir la mise à jour :

Maintenant, nous devons localiser les fichiers à l'intérieur du dossier wordpress-lamp_ubuntu . Le nom de ce dossier peut être différent selon la version d'Ubuntu que vous utilisez. En un coup d'œil, vous verrez la structure suivante dans ce répertoire :

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

Résumons le but de ces fichiers ci-dessous :

  • files/apache.conf.j2 : Apache utilise VirtualHost. Ce fichier est utilisé pour spécifier les paramètres de VirtualHost.
  • files/wp-config.php.j2 : Ce fichier contient les paramètres de configuration de WordPress.
  • vars/default.yml : Il configure les paramètres du playbook.
  • playbook.yml : Si des tâches doivent être exécutées sur un serveur distant, ce fichier est utilisé pour les configurer.
  • readme.md : Guide d'utilisation du playbook.

Nous devons modifier le fichier de variables du playbook afin de personnaliser l'installation. Tout d'abord, ouvrez le vars/default.yaml fichier qui se trouve dans le répertoire mentionné ci-dessus :

Ce fichier est assez long. Il contient un certain nombre de configurations pour nous aider dans notre installation :

Ici, nous nous intéressons aux variables suivantes :

  • php_modules : Un tableau contenant les extensions PHP qui doivent être installées pour prendre en charge votre configuration WordPress. Si vous souhaitez installer plus de modules, vous pouvez les spécifier ici.
  • mysql_root_password : Le mot de passe pour le compte root MySQL.
  • mysql_db : Spécifie le nom de la base de données MySQL que WordPress utilisera.
  • mysql_user : Le nom de l'utilisateur MySQL qui doit être créé pour WordPress.
  • mysql_password : Le mot de passe pour le nouvel utilisateur MySQL.
  • http_host : Nom de domaine ou IP du serveur.
  • http_conf : Le nom du fichier de configuration qui sera créé dans Apache.
  • http_port : Port HTTP pour cet hôte virtuel. Ce port est utilisé pour accéder au site web. La valeur par défaut est 80.

Ensuite, saisissez les valeurs dans le fichier ci-dessus, puis enregistrez et fermez. Pour les utilisateurs de l'éditeur nano, appuyez sur CTRL+X, Y, puis appuyez sur ENTRÉE.

Vous êtes maintenant prêt à exécuter ce playbook. Vous pouvez exécuter ce playbook sur un ou plusieurs serveurs. Si vous souhaitez exécuter ce playbook sur un serveur spécifique, vous pouvez utiliser l'option -l . De plus, si vous devez spécifier l'utilisateur pour vous connecter au serveur distant, spécifiez l'utilisateur à l'aide de l'option -u .

Supposons que nous voulions exécuter notre playbook sur un serveur, srvr1 en utilisant l'utilisateur u1, nous pouvons exécuter la commande ci-dessous :

Une fois que vous aurez exécuté la commande ci-dessus, vous obtiendrez une sortie semblable à celle-ci :

Attendez que l'exécution du playbook soit terminée. Ensuite, accédez à server_name dans votre navigateur web :

Vous verrez l'écran :

WP Page

Ensuite, sélectionnez la langue de votre choix et appuyez sur Continuer. Vous accéderez à l'écran suivant vous demandant quelques détails pour terminer l'installation :

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

Après cela, saisissez les informations et appuyez sur Installer WordPress. Cela prendra un certain temps, puis vous verrez un écran comme celui-ci :

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

Sélectionnez Connexion pour vous connecter à votre site web et configurer les paramètres :

Homepage

Contenu du Playbook Ansible

Rappelez-vous du dossier wordpress-lamp_ubuntu . Il contient quelques fichiers. Passons-les en revue un par un :

●    vars/default.yml

Ce fichier contient des valeurs qui sont utilisées pour configurer les paramètres de votre site web WordPress :

●    files/apache.conf.j2

Ce fichier est utilisé pour configurer le VirtualHost Apache :

●    files/wp-config.php.j2

Ce fichier est utilisé pour configurer WordPress. Il contient des clés uniques et des sels générés par des fonctions de hachage :

●    playbook.yml

Ce fichier contient toutes les tâches définies à partir de cette configuration. Il commence par lister un groupe de serveurs ciblés par cette configuration. Il inclut le vars/default.yml fichier de variables pour charger les options de configuration :

Vous pouvez modifier ces fichiers selon vos besoins pour les adapter aux exigences spécifiques du site web que vous construisez.

Conclusion

Dans ce tutoriel, nous avons démontré comment vous pouvez automatiser l'installation et la configuration d'un site web WordPress fonctionnant sur la pile LAMP sur le dernier système d'exploitation Ubuntu avec Ansible.

Pour plus de guides sur l'utilisation d'Ansible, vous pouvez consulter les tutoriels suivants sur notre blog:

Bonne informatique !

author

Preslav Dobrev

Auteur · CloudSigma

Preslav Dobrev est un designer créatif chez CloudSigma, axé sur une identité commerciale cohérente à travers des canaux marketing traditionnels et innovants. Il excelle à fusionner la vision artistique avec le marketing stratégique pour créer des récits de marque percutants.

Commentaires

Aucun commentaire pour l'instant. Soyez le premier.